sige 1 year ago
parent
commit
c0a1d263df
  1. 2
      pom.xml
  2. 3
      src/main/java/com/iflytop/uf/UfActiveRecordCriteria.java
  3. 11
      src/main/java/com/iflytop/uf/UfActiveRecordMapper.java
  4. 5
      src/main/java/com/iflytop/uf/actuator/UfActPipette.java
  5. 14
      src/main/java/com/iflytop/uf/model/UfMdbDictItem.java
  6. 28
      src/main/java/com/iflytop/uf/model/UfMdbOption.java
  7. 11
      src/main/java/com/iflytop/uf/util/UfJsonHelper.java

2
pom.xml

@ -10,7 +10,7 @@
</parent> </parent>
<groupId>com.iflytop</groupId> <groupId>com.iflytop</groupId>
<artifactId>uf</artifactId> <artifactId>uf</artifactId>
<version>0.0.19</version>
<version>0.0.30</version>
<name>uf</name> <name>uf</name>
<description>uf</description> <description>uf</description>
<properties> <properties>

3
src/main/java/com/iflytop/uf/UfActiveRecordCriteria.java

@ -1,4 +1,5 @@
package com.iflytop.uf; package com.iflytop.uf;
import java.util.HashMap;
import java.util.Map; import java.util.Map;
public class UfActiveRecordCriteria { public class UfActiveRecordCriteria {
// table name // table name
@ -9,4 +10,6 @@ public class UfActiveRecordCriteria {
public Integer limit; public Integer limit;
// offset // offset
public Integer offset; public Integer offset;
// orders
public Map<String, String> orders;
} }

11
src/main/java/com/iflytop/uf/UfActiveRecordMapper.java

@ -10,9 +10,12 @@ public interface UfActiveRecordMapper {
"SELECT * FROM ${tableName} " + "SELECT * FROM ${tableName} " +
"<if test='conditions != null'>" + "<if test='conditions != null'>" +
"WHERE " + "WHERE " +
"<foreach collection='conditions' item='value' index='key' separator=' AND '>${key} = #{value}</foreach>" +
"<foreach collection='conditions' item='value' index='key' separator=' AND '>`${key}` = #{value}</foreach>" +
"</if> " +
"<if test='orders != null'>" +
"ORDER BY " +
"<foreach collection='orders' item='value' index='key' separator=','>`${key}` ${value}</foreach>" +
"</if> " + "</if> " +
"ORDER BY id DESC " +
"<if test='limit != null'>LIMIT #{limit}</if> " + "<if test='limit != null'>LIMIT #{limit}</if> " +
"<if test='offset != null'>OFFSET #{offset}</if>" + "<if test='offset != null'>OFFSET #{offset}</if>" +
"</script>" "</script>"
@ -24,7 +27,7 @@ public interface UfActiveRecordMapper {
"SELECT COUNT(*) FROM ${tableName} " + "SELECT COUNT(*) FROM ${tableName} " +
"<if test='conditions != null'>" + "<if test='conditions != null'>" +
"WHERE " + "WHERE " +
"<foreach collection='conditions' item='value' index='key' separator=' AND '>${key} = #{value}</foreach>" +
"<foreach collection='conditions' item='value' index='key' separator=' AND '>`${key}` = #{value}</foreach>" +
"</if>" + "</if>" +
"</script>" "</script>"
) )
@ -36,7 +39,7 @@ public interface UfActiveRecordMapper {
@Insert( @Insert(
"<script>" + "<script>" +
"INSERT INTO ${tableName} " + "INSERT INTO ${tableName} " +
"<foreach collection='data' item='value' index='key' open='(' separator=',' close=')'>${key}</foreach>" +
"<foreach collection='data' item='value' index='key' open='(' separator=',' close=')'>`${key}`</foreach>" +
"VALUES " + "VALUES " +
"<foreach collection='data' item='value' index='key' open='(' separator=',' close=')'>#{value}</foreach>" + "<foreach collection='data' item='value' index='key' open='(' separator=',' close=')'>#{value}</foreach>" +
"</script>" "</script>"

5
src/main/java/com/iflytop/uf/actuator/UfActPipette.java

@ -9,4 +9,9 @@ public class UfActPipette extends UfActuatorBase {
public String ctrlPutTip(UfMdbActuatorCmd cmd) { public String ctrlPutTip(UfMdbActuatorCmd cmd) {
return this.executeAndWaitForFinish(cmd); return this.executeAndWaitForFinish(cmd);
} }
@UfActuatorCommand(name = "pipette_ctrl_move_to_ul")
public String ctrlMoveToUl(UfMdbActuatorCmd cmd) {
return this.executeAndWaitForFinish(cmd);
}
} }

14
src/main/java/com/iflytop/uf/model/UfMdbDictItem.java

@ -36,4 +36,18 @@ public class UfMdbDictItem extends UfActiveRecord {
assert item != null; assert item != null;
return item.itemName; return item.itemName;
} }
// get key value
public static String getValue( String groupKey, String itemKey ) {
var item = UfActiveRecord.findOne(UfMdbDictItem.class, Map.of("groupKey", groupKey, "itemKey", itemKey));
assert item != null;
return item.itemValue;
}
// match
public static Boolean match( String groupKey, String itemKey, String value ) {
var item = UfActiveRecord.findOne(UfMdbDictItem.class, Map.of("groupKey", groupKey, "itemKey", itemKey));
assert item != null;
return item.itemValue.equals(value);
}
} }

28
src/main/java/com/iflytop/uf/model/UfMdbOption.java

@ -35,6 +35,15 @@ public class UfMdbOption extends UfActiveRecord {
return option.value; return option.value;
} }
// get option string
public static String getString( String key ) {
var option = UfActiveRecord.findOne(UfMdbOption.class, Map.of("key", key));
if ( null == option ) {
throw new RuntimeException("Option not found : " + key);
}
return option.value;
}
// get option // get option
public static Integer getInteger(String key, Integer defaultValue ) { public static Integer getInteger(String key, Integer defaultValue ) {
var option = UfMdbOption.getString(key, defaultValue.toString()); var option = UfMdbOption.getString(key, defaultValue.toString());
@ -42,15 +51,34 @@ public class UfMdbOption extends UfActiveRecord {
} }
// get option // get option
public static Integer getInteger( String key ) {
var option = UfMdbOption.getString(key);
return Integer.parseInt(option);
}
// get option
public static Double getDouble(String key, Double defaultValue ) { public static Double getDouble(String key, Double defaultValue ) {
var option = UfMdbOption.getString(key, defaultValue.toString()); var option = UfMdbOption.getString(key, defaultValue.toString());
return Double.parseDouble(option); return Double.parseDouble(option);
} }
// get option value as double
public static Double getDouble( String key ) {
var option = UfMdbOption.getString(key);
return Double.parseDouble(option);
}
// get as boolean // get as boolean
public static Boolean getBoolean( String key, Boolean defaultValue ) { public static Boolean getBoolean( String key, Boolean defaultValue ) {
var option = UfMdbOption.getString(key, defaultValue ? "1" : "0"); var option = UfMdbOption.getString(key, defaultValue ? "1" : "0");
option = option.toLowerCase(); option = option.toLowerCase();
return "1".equals(option) || "true".equals(option) || "yes".equals(option) || "on".equals(option); return "1".equals(option) || "true".equals(option) || "yes".equals(option) || "on".equals(option);
} }
// get option value as boolean
public static Boolean getBoolean( String key ) {
var option = UfMdbOption.getString(key);
option = option.toLowerCase();
return "1".equals(option) || "true".equals(option) || "yes".equals(option) || "on".equals(option);
}
} }

11
src/main/java/com/iflytop/uf/util/UfJsonHelper.java

@ -1,4 +1,5 @@
package com.iflytop.uf.util; package com.iflytop.uf.util;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
public class UfJsonHelper { public class UfJsonHelper {
// object to json // object to json
@ -10,4 +11,14 @@ public class UfJsonHelper {
throw new RuntimeException(e); throw new RuntimeException(e);
} }
} }
// json to node
public static JsonNode jsonToNode(String json) {
ObjectMapper mapper = new ObjectMapper();
try {
return mapper.readTree(json);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
} }
Loading…
Cancel
Save