igds-dzhwk-core/src/main/java/com/fzzy/igds/dzhwk/domain/DepotConf.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,165 @@ package com.fzzy.igds.dzhwk.domain; import com.bstek.dorado.annotation.PropertyDef; import com.fzzy.igds.dzhwk.constant.Constant; import com.fzzy.igds.dzhwk.constant.GrainFrequence; import lombok.Data; import javax.persistence.*; import java.io.Serializable; /** * ä»åºé ç½® ç¨äºé 置粮æ åæºçé ç½®ï¼æ°ä½ééé ç½®ç */ @Data @Entity @Table(name = "D_DEPOT_CONF") public class DepotConf implements Serializable { @Id @Column(name = "DEPOT_ID_", length = 50) @PropertyDef(label = "æå±ä»åº") private String depotId; @Column(name = "COMPANY_ID_", length = 10) @PropertyDef(label = "ç»ç»ç¼ç ") private String companyId; @Column(name = "DEPT_ID_", length = 40) @PropertyDef(label = "æå±ååº") private String deptId; @Column(name = "GRAIN_SER_", length = 40) @PropertyDef(label = "ç²®æ åæº", description = "ä» ä» ç²®æ ééåæº") private String grainSer; @Column(name = "TH_SER_", length = 40) @PropertyDef(label = "æ¸©æ¹¿åº¦åæº", description = "仿¸©ä»æ¹¿çåæº") private String thSer; @Column(name = "ES_SER_", length = 40) @PropertyDef(label = "è½èåæº") private String esSer; @Column(name = "ES_SER_TAG_", length = 40) @PropertyDef(label = "å¤è½èåæº") private String esSerTag; @Column(name = "GAS_SER_", length = 40) @PropertyDef(label = "æ°ä½åæº") private String gasSer; @Column(name = "GAS_SER_TAG_", length = 40) @PropertyDef(label = "夿°ä½åæº") private String gasSerTag; @Column(name = "PEST_SER_", length = 40) @PropertyDef(label = "è«å®³åæº") private String pestSer; @Column(name = "PEST_SER_TAG_", length = 40) @PropertyDef(label = "å¤è«å®³åæº") private String pestSerTag; @Column(name = "VERB_SER_", length = 40) @PropertyDef(label = "éé£åæº") private String verbSer; @Column(name = "GRAIN_FREQ_", length = 4) @PropertyDef(label = "ç²®æ ä¿åé¢ç", description = "é»è®¤ä¸å¤©å¤æ¬¡") private String grainFreq = GrainFrequence.FREQ_01.getCode(); @Column(name = "TH_CONF_", length = 5) @PropertyDef(label = "仿¸©ä»æ¹¿éé") private String thConf = "1"; @Column(name = "CABLE_RULE_", length = 20) @PropertyDef(label = "å¸çº¿è§å", description = "å¹³æ¹ä»è¡¨ç¤ºå±è¡åï¼çä»è¡¨ç¤ºæ¯åçåæ°") private String cableRule; @Column(name = "CABLE_CIR_", length = 20) @PropertyDef(label = "çä»å±è§å", description = "é对çä»") private String cableCir; @Column(name = "CABLE_CONE_", length = 2) @PropertyDef(label = "çä»é¥å½¢", description = "é对çä»é¥å½¢ï¼0=æ 夿ï¼1=ä¸é¥å½¢ï¼2=ä¸é¥å½¢") private String cableCone = Constant.CABLE_CONE_0; @Column(name = "CABLE_START_") @PropertyDef(label = "çµç¼å¼å§å") private int cableStart; @Column(name = "CABLE_END_") @PropertyDef(label = "çµç¼æªè³å") private int cableEnd; @Column(name = "START_ORIENTATION_", length = 20) @PropertyDef(label = "çµç¼èµ·å§æ¹ä½", description = "é»è®¤å³è¾¹(å³è¾¹ãå³ä¸ã左边ãå·¦ä¸)") private String startOrientation = Constant.GRAIN_START_ORIENTATION_RIGHT; @Column(name = "START_DIRECTION_", length = 20) @PropertyDef(label = "çµç¼èµ·å§æ¹å", description = "é»è®¤çºµå(纵åãæ¨ªå)") private String startDirection = Constant.GRAIN_START_DIRECTION_PORTRAIT; @Column(name = "START_POINT_", length = 20) @PropertyDef(label = "çµç¼èµ·å§ç¹ä½", description = "é»è®¤é¡¶é¨(é¡¶é¨ãåºé¨)") private String startPoint = Constant.GRAIN_START_POINT_TOP; @Column(name = "START_CONVERT_", length = 20) @PropertyDef(label = "å±è¡è½¬æ¢", description = "é»è®¤ä¸è½¬æ¢(é»è®¤ã顺æ¶éãéæ¶é)") private String startConvert = Constant.GRAIN_CONVERT_DEFAULT; @Column(name = "TEMP_MAX_") @PropertyDef(label = "温度ä¸é") private Double tempMax; @Column(name = "GAS_START_") @PropertyDef(label = "æ°ä½ééç¹å¼å§") private int gasStart; @Column(name = "GAS_END_") @PropertyDef(label = "æ°ä½ééç¹æªè³") private int gasEnd; @Column(name = "N2_MAX_") @PropertyDef(label = "æ°®æ°ä¸é") private Double n2Max; @Column(name = "CO2_MAX_") @PropertyDef(label = "äºæ°§å碳ä¸é") private Double co2Max; @Column(name = "O2_MAX_") @PropertyDef(label = "æ°§æ°ä¸é") private Double o2Max; @Column(name = "PH3_MAX_") @PropertyDef(label = "ç£·åæ°¢ä¸é") private Double ph3Max; @Column(name = "PEST_START_") @PropertyDef(label = "è«å®³ééç¹å¼å§") private int pestStart; @Column(name = "PEST_END_") @PropertyDef(label = "è«å®³ééç¹æªè³") private int pestEnd; @Column(name = "PEST_MAX_") @PropertyDef(label = "è«å®³ä¸é") private Double pestMax; @Column(name = "IS_ONLY_TH_", length = 2) @PropertyDef(label = "ç²®æ æ¯å¦æ¸©æ¹¿åº¦", description = "é»è®¤å¦ã") private String isOnlyTH = Constant.YN_N; // ä»åºåç§° @Transient private String depotName; //ä»åºç±»å @Transient private String depotType; } igds-dzhwk-core/src/main/java/com/fzzy/igds/dzhwk/domain/DeviceModbus.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,101 @@ package com.fzzy.igds.dzhwk.domain; import com.bstek.dorado.annotation.PropertyDef; import com.fzzy.igds.dzhwk.constant.BizType; import com.fzzy.igds.dzhwk.constant.Constant; import lombok.Data; import javax.persistence.*; import java.io.Serializable; import java.util.List; /** * æ ¹æ®è®¾å¤é ç½®çModbus-TCPåæ°é ç½® */ @Data @Entity @Table(name = "D_DEVICE_MODBUS") public class DeviceModbus implements Serializable { private static final long serialVersionUID = 1L; @Id @Column(name = "ID_", length = 40) @PropertyDef(label = "ID") private String id; @Column(name = "DEVICE_CODE_", length = 40) @PropertyDef(label = "设å¤ç¼ç ") private String deviceCode; @Column(name = "BIZ_TYEP_", length = 10) @PropertyDef(label = "ä¸å¡ç±»å") private String bizType = BizType.AREATION.getCode(); @Column(name = "OPEN_", length = 10) @PropertyDef(label = "å¼å°å", description = "å¼å°åãè½è读åå°å") private String open = Constant.YN_N; @Column(name = "OPEN_FUN", length = 4) @PropertyDef(label = "åè½å·") private String openFun = "99"; @Column(name = "CLOSE_", length = 10) @PropertyDef(label = "å ³å°å", description = "å ³å°åãç©ºè°æ¸©åº¦è®¾ç½®å°å") private String close = Constant.YN_N; @Column(name = "CLOSE_FUN", length = 4) @PropertyDef(label = "åè½å·") private String closeFun = "99"; @Column(name = "STOP_", length = 10) @PropertyDef(label = "åå°å") private String stop = Constant.YN_N; @Column(name = "STOP_FUN", length = 4) @PropertyDef(label = "åè½å·") private String stopFun = "99"; @Column(name = "OPEN_END_", length = 10) @PropertyDef(label = "å¼å°ä½å°å", description = "å¼å°ä½å°åãè¿è¡ç¶æå°å(飿ºå空è°)") private String openEnd = Constant.YN_N; @Column(name = "OPEN_END_FUN", length = 4) @PropertyDef(label = "åè½å·") private String openEndFun = "99"; @Column(name = "CLOSE_END_", length = 10) @PropertyDef(label = "å ³å°ä½å°å") private String closeEnd = Constant.YN_N; @Column(name = "CLOSE_END_FUN", length = 4) @PropertyDef(label = "åè½å·") private String closeEndFun = "99"; @Column(name = "OPEN_ERROR_", length = 10) @PropertyDef(label = "弿 éå°å") private String openError = Constant.YN_N; @Column(name = "OPEN_ERROR_FUN", length = 4) @PropertyDef(label = "åè½å·") private String openErrorFun = "99"; @Column(name = "CLOSE_ERROR_", length = 10) @PropertyDef(label = "å ³æ éå°å") private String closeError = Constant.YN_N; @Column(name = "CLOSE_ERROR_FUN", length = 4) @PropertyDef(label = "åè½å·") private String closeErrorFun = "99"; //è½´æµé£æºåè½´æµçªå¯è½ä¸å¨ä¸ä¸ªåæºä¸ï¼IPä¸å @Column(name = "SER_ID_", length = 10) @PropertyDef(label = "æå±åæº") private String serId; @Transient private List<GasModbus> listGas; } igds-dzhwk-core/src/main/java/com/fzzy/igds/dzhwk/domain/GasModbus.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,60 @@ package com.fzzy.igds.dzhwk.domain; import com.bstek.dorado.annotation.PropertyDef; import com.fzzy.igds.dzhwk.constant.Constant; import lombok.Data; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; import java.io.Serializable; /** * é ç½®æµæ°åæµè«çMODBUSï¼TCPé ç½®ä¿¡æ¯ */ @Data @Entity @Table(name = "D_GAS_MODBUS") public class GasModbus implements Serializable { private static final long serialVersionUID = 1L; @Id @Column(name = "ID_", length = 40) @PropertyDef(label = "ID") private String id; @Column(name = "DEPOT_ID_", length = 50) @PropertyDef(label = "æå±ä»åº") private String depotId; @Column(name = "PASS_CODE_") @PropertyDef(label = "éé") private int passcode; @Column(name = "CO2_", length = 10) @PropertyDef(label = "äºæ°§å碳") private String co2 = Constant.YN_N; @Column(name = "CO2_FUN", length = 4) @PropertyDef(label = "åè½å·") private String co2Fun = "99"; @Column(name = "O2_", length = 10) @PropertyDef(label = "æ°§æ°") private String o2 = Constant.YN_N; @Column(name = "O2_FUN", length = 4) @PropertyDef(label = "åè½å·") private String o2Fun = "99"; @Column(name = "PH3_", length = 10) @PropertyDef(label = "ç£·åæ°¢") private String ph3= Constant.YN_N; @Column(name = "PH3_FUN", length = 4) @PropertyDef(label = "åè½å·") private String ph3Fun = "99"; } igds-dzhwk-core/src/main/java/com/fzzy/igds/sys/DepotConfService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,251 @@ package com.fzzy.igds.sys; import com.fzzy.igds.dzhwk.constant.RedisConst; import com.fzzy.igds.dzhwk.domain.Depot; import com.fzzy.igds.dzhwk.domain.DepotConf; import com.fzzy.igds.sys.repository.DepotConfRepository; import com.fzzy.igds.util.ContextUtil; import com.ruoyi.common.core.redis.RedisCache; import com.ruoyi.common.utils.StringUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Collection; import java.util.List; import java.util.stream.Collectors; /** * @Description * @Author CZT * @Date 2024/11/25 14:56 */ @Slf4j @Service("sys.depotConfService") public class DepotConfService { @Resource private DepotConfRepository depotConfRepository; @Resource private DepotService depotService; @Resource private RedisCache redisCache; /** * jpaæ¥è¯¢é ç½®ä¿¡æ¯ * * @param companyId * @param deptId * @return */ public List<DepotConf> getConfList(String companyId, String deptId) { if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getCompanyId(); } if (StringUtils.isEmpty(deptId)) { deptId = ContextUtil.subDeptId(null); } //æ¥è¯¢é ç½®ä¿¡æ¯ List<DepotConf> list = depotConfRepository.getDepotConf(companyId, deptId); //é 置信æ¯ä¸ºç©ºï¼åèªå¨çæ if(null == list || list.isEmpty()){ addConfByDepot(companyId); } return depotConfRepository.getDepotConf(companyId, deptId); } /** * jpaæ´æ°ä¿åé ç½®ä¿¡æ¯ * * @param conf */ public void saveConf(DepotConf conf) { if (StringUtils.isEmpty(conf.getCompanyId())) { conf.setCompanyId(ContextUtil.getCompanyId()); } if (StringUtils.isEmpty(conf.getDeptId())) { conf.setDeptId(ContextUtil.subDeptId(null)); } depotConfRepository.save(conf); flushConfCache(conf.getCompanyId()); } /** * jpaå é¤é ç½®ä¿¡æ¯ * * @param conf * @return */ public void deleteDepotConf(DepotConf conf) { depotConfRepository.delete(conf); //å é¤é ç½®ç¼å this.delCacheDepotConf(conf, conf.getCompanyId()); } /** * 设置ç¼åä¿¡æ¯ * * @param list * @param companyId */ public void setCacheDepotConf(List<DepotConf> list, String companyId) { if (null != list) { Depot depot; String key; for (DepotConf depotConf : list) { depot = depotService.getCacheDepot(companyId, depotConf.getDepotId()); if (null != depot) { depotConf.setDepotName(depot.getName()); depotConf.setDepotType(depot.getDepotType()); } key = RedisConst.buildKey(companyId, RedisConst.KEY_DEPOT_CONF, depotConf.getDepotId()); redisCache.setCacheObject(key, depotConf); } } } /** * å é¤ç¼åä¿¡æ¯ * * @param depotConf * @param companyId */ public void delCacheDepotConf(DepotConf depotConf, String companyId) { if (null == depotConf) { return; } if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getCompanyId(); } String key = RedisConst.buildKey(companyId, RedisConst.KEY_DEPOT_CONF, depotConf.getDepotId()); redisCache.deleteObject(key); } /** * è·åç¼å-æ ¹æ®ç»ç»ç¼ç è·åé 置信æ¯éå * * @param companyId * @return */ public List<DepotConf> getCacheDepotConfList(String companyId) { if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getCompanyId(); } String patten = RedisConst.buildKey(companyId, RedisConst.KEY_DEPOT_CONF) + "*"; Collection<String> keys = redisCache.keys(patten); if (null == keys || keys.isEmpty()) { return null; } List<DepotConf> result = new ArrayList<>(); for (String key : keys) { result.add((DepotConf) redisCache.getCacheObject(key)); } return result; } /** * è·åç¼å-æ ¹æ®ç»ç»ç¼ç åç²®æ åæºIDè·åé 置信æ¯éå * * @param companyId * @param serId * @return */ public List<DepotConf> getCacheDepotConfList(String companyId, String serId) { List<DepotConf> list = getCacheDepotConfList(companyId); if (null == list || list.isEmpty()) { return null; } return list.stream() .filter(item -> null != item.getGrainSer() && item.getGrainSer().equals(serId)) .collect(Collectors.toList()); } /** * è·åç¼å-æ ¹æ®ç»ç»ç¼ç åç²®æ åæºIDè·åé ç½®ä¿¡æ¯ * * @param companyId * @param serId * @return */ public DepotConf getCacheDepotConfBySerId(String companyId, String serId) { List<DepotConf> data = getCacheDepotConfList(companyId); if (null == data) { return null; } return data.stream().filter(item -> (serId.equals(item.getGrainSer()) || serId.equals(item.getGasSer()) || serId.equals(item.getEsSer()))) .findAny().orElse(null); } /** * è·åç¼å-æ ¹æ®ç»ç»ç¼ç åä»åºç¼ç è·åé ç½®ä¿¡æ¯ * * @param companyId * @param depotId * @return */ public DepotConf getCacheDepotConfByDepotId(String companyId, String depotId) { if (StringUtils.isEmpty(depotId)) { return null; } if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getCompanyId(); } String key = RedisConst.buildKey(companyId, RedisConst.KEY_DEPOT_CONF, depotId); DepotConf depotConf = redisCache.getCacheObject(key); if (null == depotConf) { depotConf = depotConfRepository.getDepotConfByDepotId(companyId, depotId); redisCache.setCacheObject(key, depotConf); } return depotConf; } /** * æ ¹æ®ä»åºå表ï¼èªå¨çæä»åºé ç½®ä¿¡æ¯ * @param companyId */ private void addConfByDepot(String companyId) { List<Depot> list = depotService.getCacheDepotList(companyId); if (null == list || list.isEmpty()) { return; } DepotConf conf; for (Depot depot : list) { conf = new DepotConf(); conf.setDepotId(depot.getId()); conf.setCompanyId(depot.getCompanyId()); conf.setDeptId(depot.getDeptId()); this.saveConf(conf); } } /** * å·æ°ä»åºé ç½®ç¼å * @param companyId */ public void flushConfCache(String companyId) { if (StringUtils.isEmpty(companyId)) { companyId = ContextUtil.getCompanyId(); } List<DepotConf> list = depotConfRepository.getDepotConfByCompanyId(companyId); this.setCacheDepotConf(list, companyId); } /** * æ´æ°ç²®æ ä¿åé¢ç * @param freq */ public void updateFreq(String freq) { depotConfRepository.updateGrainFreq(ContextUtil.getCompanyId(), ContextUtil.subDeptId(null), freq); } } igds-dzhwk-core/src/main/java/com/fzzy/igds/sys/repository/DepotConfRepository.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,56 @@ package com.fzzy.igds.sys.repository; import com.fzzy.igds.dzhwk.domain.DepotConf; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.Modifying; import org.springframework.data.jpa.repository.Query; import org.springframework.data.repository.query.Param; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; /** * @Description * @Author CZT * @Date 2024/11/25 14:59 */ @Service public interface DepotConfRepository extends JpaRepository<DepotConf, String> { /** * æ ¹æ®ç»ç»ç¼ç è·åä»åºè´§ä½ä¿¡æ¯ * * @param companyId * @return */ @Query("from DepotConf where companyId =:companyId order by depotId") List<DepotConf> getDepotConfByCompanyId(@Param("companyId") String companyId); /** * æ ¹æ®ç»ç»ç¼ç ååºåºç¼ç è·åä»åºè´§ä½ä¿¡æ¯ * * @param companyId * @param deptId * @return */ @Query("from DepotConf where companyId =:companyId and deptId =:deptId order by depotId") List<DepotConf> getDepotConf(@Param("companyId") String companyId, @Param("deptId") String deptId); /** * æ ¹æ®ç»ç»ç¼ç åä»åºç¼ç è·åä»åºè´§ä½ä¿¡æ¯ * @param companyId * @param depotId * @return */ @Query("from DepotConf where companyId =:companyId and depotId =:depotId") DepotConf getDepotConfByDepotId(@Param("companyId") String companyId, @Param("depotId") String depotId); @Transactional @Modifying @Query("update DepotConf set grainFreq=:grainFreq where companyId=:companyId and deptId =:deptId") int updateGrainFreq(@Param("grainFreq") String grainFreq, @Param("companyId") String companyId, @Param("deptId") String deptId); } igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/Depot.view.xml
@@ -131,18 +131,8 @@ */
 query = function(){
 view.get("#dataSetdepot").flushAsync();
 }
 //æå°è´§ä½å¡
 printBill = function (htmlStr) {
 var LODOP = CLODOP;
 LODOP.PRINT_INIT("è´§ä½å¡");
 LODOP.SET_PRINT_PAGESIZE(1, 0, 0, "A4");
 //LODOP.SET_PRINT_PAGESIZE(1, 0, '90mm', "A4");
 LODOP.ADD_PRINT_HTM(0, 0, "96%", "100%", htmlStr);
 LODOP.PREVIEW();
 };</ClientEvent> }
</ClientEvent> <Property name="packages">font-awesome,css-common</Property> <Property name="javaScriptFile">./static/js/plugins/lodop/LodopFuncs.js</Property> <DataSet id="dataSetdepot"> <Property name="dataProvider">depotPR#getData</Property> <Property name="dataType">[dtDepot]</Property> igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/DepotConf.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,509 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model/> <View layout="padding:5;regionPadding:5"> <ClientEvent name="onReady">var depotList = null;
 </ClientEvent> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="dataProvider">depotConfPR#getConfList</Property> <Property name="dataType">[dtDepotConf]</Property> </DataSet> <Container layout="regionPadding:10" layoutConstraint="top"> <Property name="exClassName">bg-color</Property> <Property name="height">55</Property> <Property name="contentOverflow">hidden</Property> <Label layoutConstraint="left"> <Property name="text">èåæ ï¼</Property> </Label> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#dsMain").insert();
 view.get("#depotId").set("readOnly",false);
 view.get("#dgMain").show();</ClientEvent> <Property name="caption">æ°å¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-plus</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#dgMain").show();
 view.get("#depotId").set("readOnly",true);
 }else{
 $notify("è¯·éæ©éè¦ä¿®æ¹çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">ä¿®æ¹</Property> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-pencil</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">
 
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#ajaxDel2").set("parameter",select).execute(function(result){
 if(result){
 $alert(result);
 }else{
 entity.remove();
 }
 });
 }else{
 $notify("è¯·éæ©éè¦å é¤çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> <Property name="iconClass">fa fa-trash-o</Property> </Button> <Button layoutConstraint="left"> <Property name="caption">å·æ°ç¼å</Property> <Property name="exClassName">btn-flush</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="action">ajaxRefreshCache</Property> </Button> </Container> <DataGrid id="dataGridMain" layoutConstraint="center "> <ClientEvent name="onDataRowDoubleClick">var cur = view.get("#dsMain.data:#");
 if(!cur) return ;
 view.get("#depotId").set("readOnly",true);
 view.get("#dgMain").show();</ClientEvent> <Property name="dataSet">dsMain</Property> <Property name="readOnly">true</Property> <Property name="selectionMode">singleRow</Property> <RowSelectorColumn/> <RowNumColumn/> <DataColumn name="depotId"> <Property name="property">depotId</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="grainSer"> <Property name="property">grainSer</Property> <Property name="align">center</Property> </DataColumn> <DataColumn> <Property name="property">cableRule</Property> <Property name="align">center</Property> <Property name="name">cableRule</Property> </DataColumn> <DataColumn name="cableCir"> <Property name="property">cableCir</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="tempMax"> <Property name="property">tempMax</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="grainFreq"> <Property name="property">grainFreq</Property> </DataColumn> <DataColumn name="n2Max"> <Property name="property">n2Max</Property> </DataColumn> <DataColumn name="co2Max"> <Property name="property">co2Max</Property> </DataColumn> <DataColumn name="o2Max"> <Property name="property">o2Max</Property> </DataColumn> <DataColumn name="ph3Max"> <Property name="property">ph3Max</Property> </DataColumn> </DataGrid> <UpdateAction id="uaMain"> <Property name="dataResolver">depotConfPR#saveConf</Property> <UpdateItem> <Property name="dataSet">dsMain</Property> <Property name="dataPath">[#current]</Property> </UpdateItem> </UpdateAction> <AjaxAction id="ajaxRefreshCache"> <Property name="service">depotConfPR#flushConfCache</Property> <Property name="successMessage">å·æ°æåï¼</Property> <Property name="confirmMessage">ç¡®å®è¦å·æ°ç¼åä¹ï¼</Property> </AjaxAction> <Dialog id="dgMain" layout="regionPadding:10"> <ClientEvent name="onShow">//æ ¹æ®ä»åºç±»åä¸åï¼æ¾ç¤ºä¸åçé 置信æ¯</ClientEvent> <Property name="caption">æ£æµé ç½®åæ°</Property> <Property name="width">75%</Property> <Property name="closeable">false</Property> <Property name="height">600</Property> <Buttons> <Button> <ClientEvent name="onClick">view.get("#uaMain").execute(function(){
 view.get("#dgMain").hide();
 });</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®è®¤æ´æ°</Property> <Property name="exClassName">btn1</Property> </Button> <Button> <ClientEvent name="onClick">view.get("#dsMain.data:#").cancel();
 view.get("#dgMain").hide();</ClientEvent> <Property name="caption">åæ¶æ´æ°</Property> <Property name="iconClass">fa fa-share-square-o</Property> <Property name="exClassName">btn3</Property> </Button> </Buttons> <Children> <FieldSet layout="padding:5"> <Property name="caption">ç²®æ¸©æ£æµé ç½®</Property> <Buttons/> <Children> <AutoForm layoutConstraint="padding:5"> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*,*,*</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">120</Property> <AutoFormElement id="depotId"> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Property name="readOnly">true</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">cableRule</Property> <Property name="property">cableRule</Property> <Property name="label">å¸çº¿è§å</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:2"> <Property name="text">说æï¼å¹³æ¹ä»ï¼å±-è¡-åï¼çä»ï¼ç¬¬1åæ ¹æ°-第2åæ ¹æ°-第nåæ ¹æ°</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement> <Property name="name">grainSer</Property> <Property name="property">grainSer</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">cableCir</Property> <Property name="property">cableCir</Property> <Property name="label">å±è§å</Property> <Editor/> </AutoFormElement> <Label layoutConstraint="colSpan:2"> <Property name="text">说æï¼åªé对çä»ï¼ç¬¬1å屿°-第2å屿°-第nå屿°</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement> <Property name="name">cableStart</Property> <Property name="property">cableStart</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">cableEnd</Property> <Property name="property">cableEnd</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="property">startConvert</Property> <Property name="name">startConvert</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="property">cableCone</Property> <Property name="name">cableCone</Property> <Property name="editable">false</Property> <Property name="trigger">autoMappingDropDown1</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">tempMax</Property> <Property name="property">tempMax</Property> <Property name="label">粮温ä¸é</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="property">startOrientation</Property> <Property name="name">startOrientation</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="property">startDirection</Property> <Property name="name">startDirection</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="property">startPoint</Property> <Property name="name">startPoint</Property> <Property name="editable">false</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">thSer</Property> <Property name="property">thSer</Property> <Property name="trigger">autoMappingDropDown2</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">thConf</Property> <Property name="property">thConf</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">isOnlyTH</Property> <Property name="property">isOnlyTH</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">说æï¼é»è®¤ç²®æ çµç¼ï¼ä¸ºæ¸©æ¹¿åº¦è®¾å¤ééæ©ï¼</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement> <Property name="name">grainFreq</Property> <Property name="property">grainFreq</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var grainFreq = view.get("#dsMain.data:#").get("grainFreq");
 
 if(grainFreq){
 view.get("#ajaxUpdateFreq").set("parameter",grainFreq).execute(function(){
 view.get("#dgMain").hide();
 view.get("#dsMain").flushAsync();
 });
 }else{
 $alert("请å é ç½®æ´æ°é¢çï¼")
 }</ClientEvent> <Property name="caption">é¢ç忥</Property> <Property name="tip">æ´æ°ææä»åºé¢çä¸è´</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn2</Property> </Button> </AutoForm> </Children> </FieldSet> <FieldSet layout="padding:5"> <Property name="caption">æ°ä½æ£æµé ç½®</Property> <Buttons/> <Children> <AutoForm layoutConstraint="padding:5"> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*,*,*</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">120</Property> <AutoFormElement> <Property name="name">gasSer</Property> <Property name="property">gasSer</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">gasStart</Property> <Property name="property">gasStart</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">gasEnd</Property> <Property name="property">gasEnd</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var depotId = view.get("#dsMain.data:#").get("depotId");
 var path = "com.fzzy.igds.sys.GasModbus.d?depotId="+depotId;
 view.get("#iframModbus").set("path",path);
 view.get("#dialogModbus").show();</ClientEvent> <Property name="caption">Modbusé ç½®</Property> <Property name="tip">é对Modbusåè®®çé ç½®</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn4</Property> </Button> <AutoFormElement> <Property name="name">gasSerTag</Property> <Property name="property">gasSerTag</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var depotId = view.get("#dsMain.data:#").get("depotId");
 var path = "com.fzzy.igds.sys.GasSerConf.d?depotId="+depotId;
 view.get("#iframGasSerConf").set("path",path);
 view.get("#dialogGasSerConf").show();</ClientEvent> <Property name="caption">夿°ä½åæºé ç½®</Property> <Property name="tip">é坹夿°ä½åæºçé ç½®</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn2</Property> </Button> <Label layoutConstraint="colSpan:2"> <Property name="text">说æï¼å¤æ°ä½åæºæ¶ï¼ææåæºéè¦å ¨é¨é ç½®ãæ°ä½æ£æµé ç½®ééé»è®¤å ¨é¨ééï¼</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement> <Property name="name">n2Max</Property> <Property name="property">n2Max</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">co2Max</Property> <Property name="property">co2Max</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">o2Max</Property> <Property name="property">o2Max</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">ph3Max</Property> <Property name="property">ph3Max</Property> <Editor/> </AutoFormElement> </AutoForm> </Children> </FieldSet> <FieldSet layout="padding:5"> <Property name="caption">è«å®³æ£æµé ç½®</Property> <Buttons/> <Children> <AutoForm layoutConstraint="padding:5"> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*,*,*</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">120</Property> <AutoFormElement> <Property name="name">pestSer</Property> <Property name="property">pestSer</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">pestStart</Property> <Property name="property">pestStart</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">pestEnd</Property> <Property name="property">pestEnd</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var depotId = view.get("#dsMain.data:#").get("depotId");
 var path = "com.fzzy.igds.modbus.PestModbus.d?depotId="+depotId;
 view.get("#iframModbus").set("path",path);
 view.get("#dialogModbus").show();</ClientEvent> <Property name="caption">Modbusé ç½®</Property> <Property name="tip">é对Modbusåè®®çé ç½®</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn4</Property> </Button> <AutoFormElement> <Property name="name">pestSerTag</Property> <Property name="property">pestSerTag</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var depotId = view.get("#dsMain.data:#").get("depotId");
 var path = "com.fzzy.igds.sys.GasSerConf.d?depotId="+depotId;
 view.get("#iframGasSerConf").set("path",path);
 view.get("#dialogGasSerConf").show();</ClientEvent> <Property name="caption">å¤è«å®³åæºé ç½®</Property> <Property name="tip">é对å¤è«å®³åæºçé ç½®</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn2</Property> </Button> <Label layoutConstraint="colSpan:2"> <Property name="text">说æï¼å¤è«å®³åæºæ¶ï¼ææåæºéè¦å ¨é¨é ç½®ãè«å®³æ£æµé ç½®ééé»è®¤å ¨é¨ééï¼</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement> <Property name="name">pestMax</Property> <Property name="property">pestMax</Property> <Editor/> </AutoFormElement> </AutoForm> </Children> </FieldSet> <FieldSet layout="padding:5"> <Property name="caption">å ¶ä»é ç½®</Property> <Buttons/> <Children> <AutoForm layoutConstraint="padding:5"> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*,*,*</Property> <Property name="labelSeparator">ï¼</Property> <Property name="labelWidth">100</Property> <AutoFormElement> <Property name="name">esSer</Property> <Property name="property">esSer</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">esSerTag</Property> <Property name="property">esSerTag</Property> <Editor/> </AutoFormElement> <Button> <ClientEvent name="onClick">var depotId = view.get("#dsMain.data:#").get("depotId");
 var path = "com.fzzy.igds.sys.GasSerConf.d?depotId="+depotId;
 view.get("#iframGasSerConf").set("path",path);
 view.get("#dialogGasSerConf").show();</ClientEvent> <Property name="caption">å¤è½èåæºé ç½®</Property> <Property name="tip">é对å¤è½èåæºçé ç½®</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="exClassName">btn2</Property> </Button> <Label layoutConstraint="colSpan:1"> <Property name="text">说æï¼å¤è½èåæºæ¶ï¼ææåæºéè¦å ¨é¨é ç½®ã</Property> <Property name="style"> <Property name="color">blue</Property> </Property> </Label> <AutoFormElement layoutConstraint="colSpan:3"> <Property name="name">verbSer</Property> <Property name="property">verbSer</Property> <Editor/> </AutoFormElement> </AutoForm> </Children> </FieldSet> </Children> <Tools/> </Dialog> <AjaxAction id="ajaxUpdateFreq"> <Property name="confirmMessage">ç¡®å®è¦æ´æ°ææä»åºï¼</Property> <Property name="service">depotConfPR#updateFreq</Property> </AjaxAction> <AjaxAction id="ajaxDel2"> <Property name="successMessage">å 餿å</Property> <Property name="service">depotConfPR#delDepotConf</Property> <Property name="executingMessage">æ£å¨å é¤</Property> <Property name="confirmMessage">ç¡®å®è¦å é¤ä¹ï¼</Property> </AjaxAction> <Dialog id="dialogModbus"> <Property name="width">80%</Property> <Property name="height">95%</Property> <Property name="caption">Modbus-TCPé ç½®</Property> <Buttons/> <Children> <IFrame id="iframModbus"> <Property name="path">com.fzzy.igds.sys.GasModbus.d</Property> </IFrame> </Children> <Tools/> </Dialog> <Dialog id="dialogGasSerConf"> <Property name="width">80%</Property> <Property name="height">95%</Property> <Property name="caption">æ°ä½å¤åæºé ç½®</Property> <Buttons/> <Children> <IFrame id="iframGasSerConf"> <Property name="path">com.fzzy.igds.sys.GasSerConf.d</Property> </IFrame> </Children> <Tools/> </Dialog> </View> </ViewConfig> igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/DepotStatusConfirm.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,460 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model> <DataType name="dtMain"> <Property name="creationType">com.fzzy.igds.dzhwk.domain.DepotStatusConfirm</Property> <PropertyDef name="fcqrdh"> <Property></Property> <Property name="label">å°ä»ç¡®è®¤åå·</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="companyId"> <Property></Property> <Property name="label">ç»ç»ç¼ç </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">æå±åºåº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">è´§ä½</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="fcrq"> <Property name="dataType">Date</Property> <Property name="label">å°ä»æ¥æ</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="foodVariety"> <Property></Property> <Property name="label">ç²®é£åç§</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_VARIETY_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="foodType"> <Property></Property> <Property name="label">ç²®é£æ§è´¨</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("FOOD_TYPE_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="foodLevel"> <Property></Property> <Property name="label">ç²®é£ç级</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerFoodLevel").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="foodLocation"> <Property></Property> <Property name="label">产å°åç§°</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="foodYear"> <Property></Property> <Property name="label">æ¶è´§å¹´åº¦</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="country"> <Property></Property> <Property name="label">å½å«</Property> <Property name="readOnly">true</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("GB_")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="storeKeeperName"> <Property></Property> <Property name="label">ä¿ç®¡å</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="fcsl"> <Property name="dataType">Double</Property> <Property name="label">å°ä»æ°é</Property> <Property name="readOnly">true</Property> <Property name="displayFormat">#,##0 KG</Property> </PropertyDef> <PropertyDef name="applyUser"> <Property></Property> <Property name="label">ç³è¯·äºº</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="deptAuditUser"> <Property></Property> <Property name="label">é¨é¨å®¡æ ¸äºº</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="leaderAuditUser"> <Property></Property> <Property name="label">é¢å¯¼å®¡æ ¸äºº</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="remarks"> <Property></Property> <Property name="label">夿³¨ä¿¡æ¯</Property> <Property name="readOnly">true</Property> </PropertyDef> <PropertyDef name="updateTime"> <Property name="dataType">Date</Property> <Property name="label">æ°æ®æ´æ°æ¶é´</Property> <Property name="readOnly">true</Property> </PropertyDef> </DataType> <DataType name="dtQuery"> <PropertyDef name="depotId"> <Property></Property> <Property name="label">ä»åºè´§ä½</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="start"> <Property></Property> <Property name="label">å¼å§æ¥æ</Property> <Property name="dataType">Date</Property> </PropertyDef> <PropertyDef name="end"> <Property></Property> <Property name="label">ç»ææ¥æ</Property> <Property name="dataType">Date</Property> </PropertyDef> </DataType> </Model> <View layout="padding:5;regionPadding:5"> <ClientEvent name="onReady">view.get("#dsQuery").insert();
 
 </ClientEvent> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="dataProvider"> depotStatusConfirmPR#pageDepotStatusConfirm</Property> <Property name="pageSize">20</Property> <Property name="loadMode">lazy</Property> <Property name="dataType">[dtMain]</Property> </DataSet> <DataSet id="dsQuery"> <Property name="dataType">dtQuery</Property> </DataSet> <AutoForm> <Property name="cols">*,*,*,*,*</Property> <Property name="exClassName">bg-color</Property> <Property name="dataSet">dsQuery</Property> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">start</Property> <Property name="property">start</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">end</Property> <Property name="property">end</Property> <Editor/> </AutoFormElement> <Container layout="hbox regionPadding:10" layoutConstraint="colSpan:2"> <Button> <ClientEvent name="onClick">var param = view.get("#dsQuery.data");
 view.get("#dsMain").set("parameter",param.toJSON()).flushAsync(); </ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="iconClass">fa fa-search</Property> <Property name="exClassName">btn1</Property> </Button> <Button> <ClientEvent name="onClick">var select = view.get("#dgMain").get("selection");
 if(select){
 view.get("#dialogMain").show();
 }else{
 $notify("è¯·éæ©éè¦ä¿®æ¹çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">æ¥ç详æ </Property> <Property name="iconClass">fa fa-pencil</Property> <Property name="exClassName">btn2</Property> </Button> <Button> <ClientEvent name="onClick">
 var select = view.get("#dgMain").get("selection");
 if(select){
 view.get("#ajaxDel").set("parameter",select).execute(function(){
 select.remove();
 });
 }else{
 $notify("è¯·éæ©éè¦å é¤çæ°æ®â¦â¦");
 }
 </ClientEvent> <Property name="action">actionDeviceDelete</Property> <Property name="iconClass">fa fa-minus</Property> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> </Button> </Container> </AutoForm> <DataGrid id="dgMain" layoutConstraint="center "> <ClientEvent name="onDataRowDoubleClick">view.get("#actionDeviceUpdate").execute();</ClientEvent> <Property name="dataSet">dsMain</Property> <Property name="readOnly">true</Property> <Property name="selectionMode">singleRow</Property> <RowSelectorColumn/> <RowNumColumn/> <DataColumn name="fcqrdh"> <Property name="property">fcqrdh</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="depotId"> <Property name="property">depotId</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="fcrq"> <Property name="property">fcrq</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodVariety"> <Property name="property">foodVariety</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodType"> <Property name="property">foodType</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodLevel"> <Property name="property">foodLevel</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodLocation"> <Property name="property">foodLocation</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodYear"> <Property name="property">foodYear</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="storeKeeperName"> <Property name="property">storeKeeperName</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="fcsl"> <Property name="property">fcsl</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="updateTime"> <Property name="property">updateTime</Property> <Property name="align">center</Property> </DataColumn> </DataGrid> <ToolBar layoutConstraint="bottom"> <Fill/> <DataPilot layoutConstraint="right"> <Property name="dataSet">dsMain</Property> <Property name="itemCodes">pageSize,pages</Property> </DataPilot> </ToolBar> <Dialog id="dialogMain"> <ClientEvent name="onHide">view.id("dsMain").getData().cancel();</ClientEvent> <Property name="caption">ç¼è¾é¡µé¢</Property> <Property name="width">800</Property> <Buttons> <Button> <ClientEvent name="onClick">view.get("#dialogMain").hide();</ClientEvent> <Property name="caption">åæ¶</Property> <Property name="action">actionCancel</Property> <Property name="width">90</Property> <Property name="iconClass">fa fa-times-circle-o</Property> <Property name="exClassName">btn3</Property> </Button> </Buttons> <Children> <AutoForm> <Property name="dataSet">dsMain</Property> <Property name="cols">*,*</Property> <Property name="labelWidth">100</Property> <AutoFormElement> <Property name="name">fcqrdh</Property> <Property name="property">fcqrdh</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">companyId</Property> <Property name="property">companyId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">deptId</Property> <Property name="property">deptId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">fcrq</Property> <Property name="property">fcrq</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodType</Property> <Property name="property">foodType</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodLevel</Property> <Property name="property">foodLevel</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodLocation</Property> <Property name="property">foodLocation</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodYear</Property> <Property name="property">foodYear</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">country</Property> <Property name="property">country</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">storeKeeperName</Property> <Property name="property">storeKeeperName</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">fcsl</Property> <Property name="property">fcsl</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">applyUser</Property> <Property name="property">applyUser</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">deptAuditUser</Property> <Property name="property">deptAuditUser</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">leaderAuditUser</Property> <Property name="property">leaderAuditUser</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">remarks</Property> <Property name="property">remarks</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">updateTime</Property> <Property name="property">updateTime</Property> <Editor/> </AutoFormElement> </AutoForm> </Children> <Tools/> </Dialog> <AjaxAction id="ajaxDel"> <Property name="service">depotStatusConfirmPR#delData</Property> <Property name="confirmMessage">ç¡®å®è¦å é¤åï¼</Property> </AjaxAction> <CustomDropDown id="ddFoodOrigin"> <Property name="minHeight">500</Property> <Property name="assignmentMap">foodLocation=name</Property> <Property name="minWidth">500</Property> <Container layout="regionPadding:5"> <DataSet id="dsFoodOrigin"> <Property name="dataProvider">dicAreaPR#pageList</Property> <Property name="parameter"></Property> <Property name="pageSize">30</Property> <Property name="dataType">[dtArea]</Property> </DataSet> <Container layout="hbox regionPadding:5"> <TextEditor id="key2"> <Property name="blankText"> -- ç¼ç æè åç§° --</Property> <Property name="width">200</Property> </TextEditor> <Button> <ClientEvent name="onClick">var key = view.get("#key2.value");
 view.get("#dsFoodOrigin").set("parameter",{key:key}).flushAsync();</ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">var data = view.get("#dsFoodOrigin.data:#");
 if(data){
 view.get("#ddFoodOrigin").close(data.toJSON());
 }</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®å®</Property> </Button> </Container> <DataGrid> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsFoodOrigin.data:#");
 if(data){
 view.get("#ddFoodOrigin").close(data.toJSON());
 }</ClientEvent> <Property name="dataSet">dsFoodOrigin</Property> <Property name="readOnly">true</Property> <DataColumn name="code"> <Property name="property">code</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="name"> <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = "bold";
 arg.processDefault = true;</ClientEvent> <Property name="property">name</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="simple"> <Property name="property">simple</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> </DataGrid> <DataPilot layoutConstraint="bottom"> <Property name="dataSet">dsFoodOrigin</Property> </DataPilot> </Container> </CustomDropDown> </View> </ViewConfig> igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/DepotStore.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,476 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model> <DataType name="dtMain" parent="dtDepotStore"/> <DataType name="dtQuery"> <PropertyDef name="start"> <Property name="dataType">Date</Property> <Property name="label">å¼å§æ¶é´</Property> </PropertyDef> <PropertyDef name="end"> <Property name="dataType">Date</Property> <Property name="label">ç»ææ¶é´</Property> </PropertyDef> <PropertyDef name="depotId"> <Property></Property> <Property name="label">æå±ä»æ¿</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="depotStatus"> <Property name="label">仿¿ç¶æ</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerDepotStatus").getResult()}</Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> </DataType> </Model> <View layout="padding:5;regionPadding:5"> <ClientEvent name="onReady">//é»è®¤æ¥è¯¢æ¥è¯¢ææ¡ä»¶
 view.get("#dsQuery").insert({});</ClientEvent> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="pageSize">20</Property> <Property name="dataType">[dtMain]</Property> <Property name="dataProvider">depotStorePR#pageList</Property> <Property name="loadMode">lazy</Property> </DataSet> <DataSet id="dsQuery"> <Property name="dataType">dtQuery</Property> </DataSet> <AutoForm> <Property name="cols">*,*,*,*,*</Property> <Property name="dataSet">dsQuery</Property> <Property name="exClassName">bg-color</Property> <Property name="labelAlign">right</Property> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">start</Property> <Property name="property">start</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">end</Property> <Property name="property">end</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">depotStatus</Property> <Property name="property">depotStatus</Property> <Editor/> </AutoFormElement> <Container layout="regionPadding:15"> <Button layoutConstraint="left"> <ClientEvent name="onClick">//æ¥è¯¢
 var data = view.get("#dsQuery.data");
 view.get("#dsMain").set("parameter",data).flushAsync();
 </ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#dsQuery").setData({});</ClientEvent> <Property name="caption">éç½®</Property> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-refresh</Property> </Button> </Container> </AutoForm> <Container layout="regionPadding:10" layoutConstraint="top"> <Property name="exClassName">bg-color</Property> <Property name="height">55</Property> <Property name="contentOverflow">hidden</Property> <Label layoutConstraint="left"> <Property name="text">èåæ ï¼</Property> </Label> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#dsMain").insert();
 view.get("#dialogMain").show();</ClientEvent> <Property name="caption">æ°å¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-plus</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#dialogMain").show();
 }else{
 $notify("è¯·éæ©éè¦ä¿®æ¹çæ°æ®â¦â¦");
 }</ClientEvent> <Property name="caption">ä¿®æ¹</Property> <Property name="exClassName">btn2</Property> <Property name="iconClass">fa fa-pencil</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">
 var select = view.get("#dataGridMain").get("selection");
 if(select){
 view.get("#ajaxDel").set("parameter",select).execute(function(){
 select.remove();
 });
 }else{
 $notify("è¯·éæ©éè¦å é¤çæ°æ®â¦â¦");
 }
 
 </ClientEvent> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> <Property name="iconClass">fa fa-trash-o</Property> </Button> </Container> <Container layout="regionPadding:1" layoutConstraint="center"> <Property name="exClassName">bg-color</Property> <DataGrid id="dataGridMain"> <Property name="dataSet">dsMain</Property> <Property name="readOnly">true</Property> <Property name="selectionMode">singleRow</Property> <RowSelectorColumn/> <RowNumColumn/> <DataColumn> <Property name="property">depotId</Property> <Property name="align">center</Property> <Property name="name">depotId</Property> </DataColumn> <DataColumn name="depotStatus"> <Property name="property">depotStatus</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodType"> <Property name="property">foodType</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodVariety"> <Property name="property">foodVariety</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodLevel"> <Property name="property">foodLevel</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodLocation"> <Property name="property">foodLocation</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="foodYear"> <Property name="property">foodYear</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="storageReal"> <Property name="property">storageReal</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="storageSettle"> <Property name="property">storageSettle</Property> </DataColumn> <DataColumn name="updateDate"> <Property name="property">updateDate</Property> <Property name="align">center</Property> </DataColumn> </DataGrid> <ToolBar layoutConstraint="bottom"> <Fill/> <DataPilot layoutConstraint="right"> <Property name="itemCodes">pageSize,pages</Property> <Property name="dataSet">dsMain</Property> </DataPilot> </ToolBar> </Container> <Dialog id="dialogMain"> <Property name="caption">åºåä¿¡æ¯</Property> <Property name="width">800</Property> <Property name="closeable">false</Property> <Buttons> <Button> <ClientEvent name="onClick">var data = view.get("#dsMain.data:#");
 view.get("#uaAction").execute(function(result){
 if(result){
 $alert(result);
 }else{
 self.get("parent").hide();
 }
 });</ClientEvent> <Property name="caption">ä¿å</Property> <Property name="iconClass">fa fa-check</Property> <Property name="exClassName">btn1</Property> </Button> <Button> <ClientEvent name="onClick">view.get("#dsMain.data:#").cancel();
 self.get("parent").hide();</ClientEvent> <Property name="caption">åæ¶</Property> <Property name="iconClass">fa fa-times</Property> <Property name="exClassName">btn3</Property> </Button> </Buttons> <Children> <AutoForm> <Property name="dataSet">dsMain</Property> <Property name="readOnly">false</Property> <Property name="labelSeparator"> : </Property> <Property name="labelAlign">right</Property> <Property name="cols">*,*</Property> <Property name="labelWidth">120</Property> <Property name="height">85%</Property> <AutoFormElement> <Property name="name">depotId</Property> <Property name="property">depotId</Property> <Property name="trigger">autoMappingDropDown1</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">depotStatus</Property> <Property name="property">depotStatus</Property> <Property name="trigger">autoMappingDropDown1</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">storeType</Property> <Property name="property">storeType</Property> <Property name="trigger">autoMappingDropDown1</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodType</Property> <Property name="property">foodType</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodVariety</Property> <Property name="property">foodVariety</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodLevel</Property> <Property name="property">foodLevel</Property> <Property name="trigger">autoMappingDropDown1</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">lqgsdwdm</Property> <Property name="property">lqgsdwdm</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">manageType</Property> <Property name="property">manageType</Property> <Editor/> </AutoFormElement> <AutoFormElement> <Property name="name">foodYear</Property> <Property name="property">foodYear</Property> <Property name="trigger">yearDropDown1</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»/å ¥åºä¸/åºåºä¸ï¼å¿ å¡«</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">country</Property> <Property name="property">country</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»/å ¥åºä¸/åºåºä¸ï¼å¿ å¡«</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">foodLocation</Property> <Property name="property">foodLocation</Property> <Property name="trigger">ddFoodOrigin</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»/å ¥åºä¸/åºåºä¸ï¼å¿ å¡«</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">storageReal</Property> <Property name="property">storageReal</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">å¿ å¡«ï¼ç©ºä»=0ï¼å ¥åº/åºåºæ°éä¹å</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">storageSettle</Property> <Property name="property">storageSettle</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">å¿ å¡«ï¼ç©ºä»=0ï¼å ¥åº/åºåºç»ç®æ°éä¹å</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">fullDate</Property> <Property name="property">fullDate</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»/åºåºä¸ï¼å¿ å¡«</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">storeDate</Property> <Property name="property">storeDate</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»/å ¥åºä¸/åºåºä¸ï¼å¿ å¡«ã第ä¸è½¦å ¥ä»æ¶é´</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">outDate</Property> <Property name="property">outDate</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=空ä»ï¼å¿ å¡«ãæåä¸è½¦ç²®é£åºä»æ¶é´</Property> <Property name="style"> <Property name="color">red</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">grainHeight</Property> <Property name="property">grainHeight</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»ï¼å¯å¡«</Property> <Property name="style"> <Property name="color">blue</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement> <Property name="name">grainVolume</Property> <Property name="property">grainVolume</Property> <Editor/> </AutoFormElement> <Label> <Property name="text">è´§ä½ç¶æ=å°ä»ï¼å¯å¡«</Property> <Property name="style"> <Property name="color">blue</Property> <Property name="font-size">12px</Property> </Property> </Label> <AutoFormElement layoutConstraint="colSpan:2"> <Property name="name">remark</Property> <Property name="property">remark</Property> <Editor/> </AutoFormElement> </AutoForm> </Children> <Tools/> </Dialog> <UpdateAction id="uaAction"> <Property name="successMessage">æ§è¡æå!</Property> <Property name="executingMessage">æ£å¨æ§è¡ä¸..</Property> <Property name="dataResolver">depotStorePR#saveDepotStore</Property> <UpdateItem> <Property name="dataSet">dsMain</Property> <Property name="dataPath">[#current]</Property> </UpdateItem> </UpdateAction> <AjaxAction id="ajaxDel"> <Property name="confirmMessage">ç¡®å®è¦å é¤åï¼</Property> <Property name="service">depotStorePR#delDepotStore</Property> </AjaxAction> <YearDropDown id="yearDropDown1"/> <CustomDropDown id="ddFoodOrigin"> <Property name="minHeight">500</Property> <Property name="assignmentMap">foodLocation=name,foodLocationId=code</Property> <Property name="minWidth">500</Property> <Container layout="regionPadding:5"> <DataSet id="dsFoodOrigin"> <Property name="dataProvider">dicAreaPR#pageList</Property> <Property name="dataType">[dtArea]</Property> <Property name="parameter"></Property> <Property name="pageSize">30</Property> </DataSet> <Container layout="hbox regionPadding:5"> <TextEditor id="key2"> <Property name="blankText"> -- åç§° --</Property> <Property name="width">200</Property> </TextEditor> <Button> <ClientEvent name="onClick">var key = view.get("#key2.value");
 view.get("#dsFoodOrigin").set("parameter",{key:key}).flushAsync();</ClientEvent> <Property name="caption">æ¥è¯¢</Property> <Property name="iconClass">fa fa-search</Property> </Button> <Button> <ClientEvent name="onClick">var data = view.get("#dsFoodOrigin.data:#");
 if(data){
 view.get("#ddFoodOrigin").close(data.toJSON());
 }</ClientEvent> <Property name="iconClass">fa fa-check</Property> <Property name="caption">ç¡®å®</Property> </Button> </Container> <DataGrid> <ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsFoodOrigin.data:#");
 if(data){
 view.get("#ddFoodOrigin").close(data.toJSON());
 }</ClientEvent> <Property name="dataSet">dsFoodOrigin</Property> <Property name="readOnly">true</Property> <DataColumn name="code"> <Property name="property">code</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="name"> <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = "bold";
 arg.processDefault = true;</ClientEvent> <Property name="property">name</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> <DataColumn name="simple"> <Property name="property">simple</Property> <Property name="readOnly">true</Property> <Property name="align">center</Property> </DataColumn> </DataGrid> <DataPilot layoutConstraint="bottom"> <Property name="dataSet">dsFoodOrigin</Property> </DataPilot> </Container> </CustomDropDown> </View> </ViewConfig> igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/DeviceModbus.view.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,313 @@ <?xml version="1.0" encoding="UTF-8"?> <ViewConfig> <Arguments/> <Context/> <Model> <DataType name="dtMain"> <Property name="creationType">com.fzzy.igds.dzhwk.domain.DeviceModbus</Property> <PropertyDef name="id"> <Property></Property> <Property name="label">ID</Property> </PropertyDef> <PropertyDef name="deviceCode"> <Property></Property> <Property name="label">设å¤ç¼ç </Property> </PropertyDef> <PropertyDef name="open"> <Property></Property> <Property name="label">å¼å°å</Property> </PropertyDef> <PropertyDef name="openFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="close"> <Property></Property> <Property name="label">å ³å°å</Property> </PropertyDef> <PropertyDef name="closeFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="stop"> <Property></Property> <Property name="label">åå°å</Property> </PropertyDef> <PropertyDef name="stopFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="openEnd"> <Property></Property> <Property name="label">åå°å</Property> </PropertyDef> <PropertyDef name="openEndFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="closeEnd"> <Property></Property> <Property name="label">å ³å°ä½å°å</Property> </PropertyDef> <PropertyDef name="closeEndFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="openError"> <Property></Property> <Property name="label">弿 éå°å</Property> </PropertyDef> <PropertyDef name="openErrorFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="closeError"> <Property></Property> <Property name="label">å ³æ éå°å</Property> </PropertyDef> <PropertyDef name="closeErrorFun"> <Property></Property> <Property name="label">åè½å·</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceModbusPR#triggerFun").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="bizType"> <Property></Property> <Property name="label">ä¸å¡ç±»å</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerBizType").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="serId"> <Property></Property> <Property name="label">æå±åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> </DataType> </Model> <View layout="padding:5;regionPadding:5"> <Property name="packages">font-awesome,css-common</Property> <DataSet id="dsMain"> <Property name="loadMode">lazy</Property> <Property name="dataType">[dtMain]</Property> <Property name="dataProvider">deviceModbusPR#listAll</Property> </DataSet> <Container layout="regionPadding:10" layoutConstraint="top"> <Property name="exClassName">bg-color</Property> <Property name="contentOverflow">hidden</Property> <Property name="height">55</Property> <Label layoutConstraint="left"> <Property name="text">èåæ ï¼</Property> </Label> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#dsMain").insert({});</ClientEvent> <Property name="caption">æ°å¢</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-plus</Property> </Button> <Button> <ClientEvent name="onClick"> view.get("#uaAction").execute(); </ClientEvent> <Property name="caption">ä¿å</Property> <Property name="iconClass">fa fa-check</Property> <Property name="exClassName">btn2</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">var data = view.get("#dsMain.data:#");
 if(!data){
 return;
 }
 view.get("#ajaxDel").set("parameter",data).execute(function(result){
 if(result){
 $alert(result);
 return;
 }else{
 data.remove();
 }
 }); </ClientEvent> <Property name="caption">å é¤</Property> <Property name="exClassName">btn3</Property> <Property name="iconClass">fa fa-minus</Property> </Button> <Button layoutConstraint="left"> <ClientEvent name="onClick">view.get("#dsMain").flushAsync(); </ClientEvent> <Property name="caption">å·æ°</Property> <Property name="exClassName">btn4</Property> <Property name="iconClass">fa fa-refresh</Property> </Button> <Button layoutConstraint="left"> <Property name="caption">å·æ°ç¼å</Property> <Property name="exClassName">btn1</Property> <Property name="iconClass">fa fa-refresh</Property> <Property name="action">ajaxFlushCache</Property> </Button> </Container> <Container layout="regionPadding:10" layoutConstraint="center"> <Property name="exClassName">bg-color</Property> <DataGrid layoutConstraint="center padding:5px"> <Property name="dataSet">dsMain</Property> <RowNumColumn/> <DataColumn name="deviceCode"> <Property name="property">deviceCode</Property> </DataColumn> <DataColumn name="serId"> <Property name="property">serId</Property> </DataColumn> <DataColumn name="bizType"> <Property name="property">bizType</Property> </DataColumn> <ColumnGroup> <Property name="caption">弿ä½</Property> <DataColumn name="open"> <Property name="property">open</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="openFun"> <Property name="property">openFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">å ³æä½</Property> <DataColumn name="close"> <Property name="property">close</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="closeFun"> <Property name="property">closeFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">åæä½</Property> <DataColumn name="stop"> <Property name="property">stop</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="stopFun"> <Property name="property">stopFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">å¼å°ä½</Property> <DataColumn name="openEnd"> <Property name="property">openEnd</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="openEndFun"> <Property name="property">openEndFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">å ³å°ä½</Property> <DataColumn name="closeEnd"> <Property name="property">closeEnd</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="closeEndFun"> <Property name="property">closeEndFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">弿 é</Property> <DataColumn name="openError"> <Property name="property">openError</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="openErrorFun"> <Property name="property">openErrorFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> <ColumnGroup> <Property name="caption">å ³æ é</Property> <DataColumn name="closeError"> <Property name="property">closeError</Property> <Property name="caption">å°å</Property> <Property name="width">80</Property> </DataColumn> <DataColumn name="closeErrorFun"> <Property name="property">closeErrorFun</Property> <Property name="caption">åè½</Property> <Property name="width">100</Property> <Property name="trigger">autoMappingDropDown1</Property> </DataColumn> </ColumnGroup> </DataGrid> </Container> <UpdateAction id="uaAction"> <Property name="dataResolver">deviceModbusPR#updateData</Property> <UpdateItem> <Property name="dataSet">dsMain</Property> <Property name="dataPath">!DIRTY_TREE</Property> </UpdateItem> </UpdateAction> <AjaxAction id="ajaxDel"> <Property name="service">deviceModbusPR#delData</Property> <Property name="confirmMessage">ç¡®å®è¦å é¤ä¹ï¼</Property> </AjaxAction> <AjaxAction id="ajaxFlushCache"> <Property name="service">deviceModbusPR#flushCache</Property> <Property name="successMessage">ç¼åæ´æ°æå</Property> </AjaxAction> </View> </ViewConfig> igds-dzhwk-view/src/main/java/com/fzzy/igds/sys/pr/DepotConfPR.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,75 @@ package com.fzzy.igds.sys.pr; import com.bstek.dorado.annotation.DataProvider; import com.bstek.dorado.annotation.DataResolver; import com.bstek.dorado.annotation.Expose; import com.fzzy.igds.dzhwk.domain.DepotConf; import com.fzzy.igds.sys.DepotConfService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Component; import javax.annotation.Resource; import java.util.List; /** * @author jiazx */ @Slf4j @Component public class DepotConfPR { @Resource private DepotConfService depotConfService; /** * åæ°é ç½®å表 depotConfPR#getConfList * * @return */ @DataProvider public List<DepotConf> getConfList() { return depotConfService.getConfList(null,null); } /** * depotConfPR#saveConf åæ°é ç½®æ´æ°ï¼å æ¬æ°å¢åä¿®æ¹ * * @param conf */ @DataResolver public void saveConf(DepotConf conf) { DepotConf depotConf = new DepotConf(); BeanUtils.copyProperties(conf, depotConf); depotConfService.saveConf(depotConf); } /** * depotConfPR#delDepotConf å é¤åæ°é ç½® * * @param conf */ @Expose public void delDepotConf(DepotConf conf) { DepotConf depotConf = new DepotConf(); BeanUtils.copyProperties(conf, depotConf); depotConfService.deleteDepotConf(depotConf); } /** * depotConfPR#flushConfCache å·æ°é ç½®ç¼å */ @Expose public void flushConfCache() { depotConfService.flushConfCache(null); } /** * depotConfPR#updateFreq æ´æ°ææç²®åºçç²®æ é¢ç */ @Expose public void updateFreq(String freq) { depotConfService.updateFreq(freq); } } igds-dzhwk-view/src/main/java/models/igds.model.xml
@@ -413,4 +413,281 @@ <Property name="required">false</Property> </PropertyDef> </DataType> <DataType name="dtDepotConf"> <Property name="creationType">com.fzzy.igds.dzhwk.domain.DepotConf</Property> <PropertyDef name="depotId"> <Property></Property> <Property name="label">æå±ä»åº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("depotPR#getAllCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="deptId"> <Property></Property> <Property name="label">æå±ååº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deptPR#loadParents").getResult()}</Property> <Property name="keyProperty">deptId</Property> <Property name="valueProperty">deptName</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="companyId"> <Property></Property> <Property name="label">ç»ç»ç¼ç </Property> </PropertyDef> <PropertyDef name="grainSer"> <Property></Property> <Property name="label">ç²®æ åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> <Property name="required">true</Property> </PropertyDef> <PropertyDef name="grainFreq"> <Property></Property> <Property name="label">ä¿åé¢ç</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#sysDictData").getResult("GRAIN_FREQ")}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="thConf"> <Property></Property> <Property name="label">温湿度éé</Property> </PropertyDef> <PropertyDef name="cableStart"> <Property name="dataType">int</Property> <Property name="label">çµç¼å¼å§å</Property> </PropertyDef> <PropertyDef name="cableEnd"> <Property name="dataType">int</Property> <Property name="label">çµç¼æªè³å</Property> </PropertyDef> <PropertyDef name="tempMax"> <Property name="dataType">Double</Property> <Property name="label">温度ä¸é</Property> </PropertyDef> <PropertyDef name="gasStart"> <Property name="dataType">int</Property> <Property name="label">ééå¼å§ç¹</Property> </PropertyDef> <PropertyDef name="gasEnd"> <Property name="dataType">int</Property> <Property name="label">éæªè³éç¹</Property> </PropertyDef> <PropertyDef name="n2Max"> <Property name="dataType">Double</Property> <Property name="label">æ°®æ°ä¸é</Property> </PropertyDef> <PropertyDef name="co2Max"> <Property name="dataType">Double</Property> <Property name="label">äºæ°§å碳ä¸é</Property> </PropertyDef> <PropertyDef name="o2Max"> <Property name="dataType">Double</Property> <Property name="label">æ°§æ°ä¸é</Property> </PropertyDef> <PropertyDef name="ph3Max"> <Property name="dataType">Double</Property> <Property name="label">ç£·åæ°¢ä¸é</Property> </PropertyDef> <PropertyDef name="pestStart"> <Property name="dataType">int</Property> <Property name="label">ééå¼å§ç¹</Property> </PropertyDef> <PropertyDef name="pestEnd"> <Property name="dataType">int</Property> <Property name="label">ééæªè³ç¹</Property> </PropertyDef> <PropertyDef name="pestMax"> <Property name="dataType">Double</Property> <Property name="label">è«å®³ä¸é</Property> </PropertyDef> <PropertyDef name="thSer"> <Property></Property> <Property name="label">æ¸©æ¹¿åº¦åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="cableRule"> <Property></Property> <Property name="label">å¸çº¿è§å</Property> </PropertyDef> <PropertyDef name="cableCir"> <Property></Property> <Property name="label">çä»å±è§å</Property> </PropertyDef> <PropertyDef name="esSer"> <Property></Property> <Property name="label">è½èåæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="esSerTag"> <Property></Property> <Property name="label">æ¯å¦å¤åæº</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="code">Y</Property> <Property name="name">æ¯</Property> </Entity> <Entity> <Property name="code">N</Property> <Property name="name">å¦</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="startOrientation"> <Property></Property> <Property name="label">çµç¼èµ·å§æ¹ä½</Property> <Property name="mapping"> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerStartOrientation").getResult()}</Property> </Property> </PropertyDef> <PropertyDef name="startDirection"> <Property name="label">çµç¼å¸çº¿æ¹å</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerStartDirection").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="startPoint"> <Property name="label">çµç¼èµ·å§ç¹ä½</Property> <Property name="mapping"> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerStartPoint").getResult()}</Property> </Property> </PropertyDef> <PropertyDef name="startConvert"> <Property name="label">å±è¡è½¬æ¢</Property> <Property name="mapping"> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerStartConvert").getResult()}</Property> </Property> </PropertyDef> <PropertyDef name="depotName"> <Property></Property> </PropertyDef> <PropertyDef name="depotType"> <Property></Property> </PropertyDef> <PropertyDef name="cableCone"> <Property name="label">çä»é¥å½¢</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("dicPR#triggerCableCone").getResult()}</Property> <Property name="keyProperty">dictValue</Property> <Property name="valueProperty">dictLabel</Property> </Property> </PropertyDef> <PropertyDef name="isOnlyTH"> <Property></Property> <Property name="label">ç²®æ ç±»å</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="code">Y</Property> <Property name="name">温湿度设å¤</Property> </Entity> <Entity> <Property name="code">N</Property> <Property name="name">ç²®æ çµç¼</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="gasSer"> <Property></Property> <Property name="label">æ°ä½åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="gasSerTag"> <Property></Property> <Property name="label">æ¯å¦å¤åæº</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="code">Y</Property> <Property name="name">æ¯</Property> </Entity> <Entity> <Property name="code">N</Property> <Property name="name">å¦</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="pestSer"> <Property></Property> <Property name="label">è«å®³åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="pestSerTag"> <Property></Property> <Property name="label">æ¯å¦å¤åæº</Property> <Property name="mapping"> <Property name="mapValues"> <Collection> <Entity> <Property name="code">Y</Property> <Property name="name">æ¯</Property> </Entity> <Entity> <Property name="code">N</Property> <Property name="name">å¦</Property> </Entity> </Collection> </Property> <Property name="keyProperty">code</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> <PropertyDef name="verbSer"> <Property></Property> <Property name="label">éé£åæº</Property> <Property name="mapping"> <Property name="mapValues">${dorado.getDataProvider("deviceSerPR#getAllSerCache").getResult()}</Property> <Property name="keyProperty">id</Property> <Property name="valueProperty">name</Property> </Property> </PropertyDef> </DataType> </Model> igds-dzhwk-web/src/main/resources/static/ruoyi/js/common.js
@@ -255,9 +255,14 @@ } /** å建éé¡¹å¡ */ function createMenuItem(dataUrl, menuName, isRefresh) { var panelUrl = window.frameElement.getAttribute('data-id'), dataIndex = $.common.random(1, 100), function createMenuItem(dataUrl, menuName, isRefresh, panelId) { var panelUrl = null; if(panelId){ panelUrl = panelId; }else { panelUrl = window.frameElement.getAttribute('data-id'); } var dataIndex = $.common.random(1, 100), flag = true; if (dataUrl == undefined || $.trim(dataUrl).length == 0) return false; var topWindow = $(window.parent.document); igds-dzhwk-web/src/main/resources/static/ruoyi/js/ry-ui.js
@@ -393,6 +393,22 @@ }); }); }, // Dorado页é¢å¯¼åºæ°æ®ï¼url-跳转路å¾ï¼name-æ°æ®åç§°ï¼param-æ¥è¯¢åæ° exportExcelDorado: function(url, name, param) { $.modal.confirm("ç¡®å®å¯¼åºå½å页é¢" + name + "åï¼", function() { $.modal.loading("æ£å¨å¯¼åºæ°æ®ï¼è¯·ç¨å..."); $.post(url, param, function(result) { if (result.code == web_status.SUCCESS) { window.location.href = ctx + "common/download?fileName=" + encodeURI(result.msg) + "&delete=" + true; } else if (result.code == web_status.WARNING) { $.modal.alertWarning(result.msg) } else { $.modal.alertError(result.msg); } $.modal.closeLoading(); }); }); }, // ä¸è½½æ¨¡æ¿ importTemplate: function() { $.get(activeWindow().table.options.importTemplateUrl, function(result) { @@ -980,8 +996,8 @@ top.layer.full(index); }, // éå¡é¡µæ¹å¼æå¼ openTab: function (title, url, isRefresh) { createMenuItem(url, title, isRefresh); openTab: function (title, url, isRefresh, panelId) { createMenuItem(url, title, isRefresh, panelId); }, // éå¡é¡µåä¸é¡µç¾æå¼ parentTab: function (title, url) { @@ -1735,11 +1751,11 @@ }, // è·åobj对象é¿åº¦ getLength: function(obj) { var count = 0;ãã var count = 0; for (var i in obj) { if (obj.hasOwnProperty(i)) { count++; }ãã } } return count; },