From 65af56af565a47e191aa76ede4a62ab3fd91e789 Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期一, 24 七月 2023 09:10:28 +0800
Subject: [PATCH] 质量巡检添添加优化
---
igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml | 242 ++++++++++++++++++++++++++++------------
igds-inout/src/main/java/com/ld/igds/m/view/ContractManage.view.xml | 5
igds-inout/src/main/java/com/ld/igds/m/view/PlanManage01.view.xml | 2
igds-inout/src/main/java/com/ld/igds/m/view/InoutDriver.view.xml | 9 +
igds-inout/src/main/java/models/inout.model.xml | 5
igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java | 54 +++++---
6 files changed, 218 insertions(+), 99 deletions(-)
diff --git a/igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java b/igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java
index 5762679..3349e2c 100644
--- a/igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java
+++ b/igds-core/src/main/java/com/ld/igds/m/service/HQualityManageService.java
@@ -1,6 +1,7 @@
package com.ld.igds.m.service;
import com.bstek.bdf2.core.orm.hibernate.HibernateDao;
+import com.bstek.dorado.data.entity.EntityUtils;
import com.bstek.dorado.data.provider.Page;
import com.ld.igds.check.mapper.CheckStandardMapper;
import com.ld.igds.constant.RedisConst;
@@ -10,8 +11,10 @@
import com.ld.igds.util.RedisUtil;
import org.apache.commons.lang3.StringUtils;
import org.hibernate.Session;
+import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
+
import java.util.Date;
import java.util.HashMap;
import java.util.List;
@@ -28,8 +31,7 @@
private CheckStandardMapper checkStandardMapper;
-
- public void listQuality(Page<MQuality> page, Map<String, Object> param) throws Exception{
+ public void listQuality(Page<MQuality> page, Map<String, Object> param) throws Exception {
String hql = " from " + MQuality.class.getName()
+ " where companyId =:companyId and deptId =:deptId";
@@ -39,20 +41,20 @@
if (null != param) {
String str = (String) param.get("depotId");
- if(StringUtils.isNotEmpty(str)){
+ if (StringUtils.isNotEmpty(str)) {
hql += " and depotId =:depotId";
- args.put("depotId", str );
+ args.put("depotId", str);
}
str = (String) param.get("type");
- if(StringUtils.isNotEmpty(str)){
+ if (StringUtils.isNotEmpty(str)) {
hql += " and type =:type";
- args.put("type", str );
+ args.put("type", str);
}
Date date = (Date) param.get("start");
- if(null != date) {
+ if (null != date) {
hql += " and time >=:start";
args.put("start", DateUtil.getCurZero(date));
}
@@ -72,12 +74,13 @@
/**
* 鑾峰彇浠撳簱鏈�鏂颁竴鏉¤川妫�鏁版嵁
+ *
* @param depotId
* @return
* @throws Exception
*/
- public MQuality getLastData(String depotId){
- if(StringUtils.isEmpty(depotId)){
+ public MQuality getLastData(String depotId) {
+ if (StringUtils.isEmpty(depotId)) {
return null;
}
String hql = " from " + MQuality.class.getName()
@@ -86,12 +89,12 @@
args.put("companyId", ContextUtil.getCompanyId());
hql += " and depotId =:depotId";
- args.put("depotId", depotId );
+ args.put("depotId", depotId);
hql += " order by time DESC";
- List<MQuality> list = this.query(hql,args);
- if(list != null && list.size() > 0){
+ List<MQuality> list = this.query(hql, args);
+ if (list != null && list.size() > 0) {
MQuality quality = list.get(0);
- quality.setCheckItems(checkStandardMapper.getCheckItemById(quality.getId(),ContextUtil.getCompanyId()));
+ quality.setCheckItems(checkStandardMapper.getCheckItemById(quality.getId(), ContextUtil.getCompanyId()));
return list.get(0);
}
return null;
@@ -99,23 +102,25 @@
/**
* 浠庣紦瀛樿幏鍙栧綋鍓嶄粨搴撶殑鏈�鏂颁竴鏉¤川妫�鏁版嵁
+ *
* @param depotId
* @return
* @throws Exception
*/
public MQuality getCacheLastData(String depotId) {
- if(StringUtils.isEmpty(depotId)){
+ if (StringUtils.isEmpty(depotId)) {
return null;
}
- MQuality quality = (MQuality) redisUtil.get(RedisConst.buildKey(ContextUtil.getCompanyId(),RedisConst.KEY_DEPOT_QUALITY,depotId));
- if(quality == null){
+ MQuality quality = (MQuality) redisUtil.get(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, depotId));
+ if (quality == null) {
quality = this.getLastData(depotId);
- if(quality != null ){
- redisUtil.set(RedisConst.buildKey(ContextUtil.getCompanyId(),RedisConst.KEY_DEPOT_QUALITY,depotId),quality,60 * 60 *24);
+ if (quality != null) {
+ redisUtil.set(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, depotId), quality, 60 * 60 * 24);
}
}
return quality;
}
+
public void saveQuality(String id, MQuality data) {
if (null == data.getCompanyId()) {
data.setCompanyId(ContextUtil.getCompanyId());
@@ -124,6 +129,7 @@
data.setDeptId(ContextUtil.subDeptId(null));
}
Session session = this.getSessionFactory().openSession();
+ data.setUpdateTime(new Date());
try {
if (null == data.getId()) {
data.setId(id);
@@ -131,9 +137,16 @@
} else {
session.update(data);
}
- redisUtil.del(RedisConst.buildKey(ContextUtil.getCompanyId(),RedisConst.KEY_DEPOT_QUALITY,data.getDepotId()));
+ redisUtil.del(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, data.getDepotId()));
+ MQuality newData;
+ if (EntityUtils.isEntity(data)) {
+ newData = new MQuality();
+ BeanUtils.copyProperties(data, newData, new String[]{"checkItems"});
+ } else {
+ newData = data;
+ }
- redisUtil.set(RedisConst.buildKey(ContextUtil.getCompanyId(),RedisConst.KEY_DEPOT_QUALITY,data.getDepotId()),data,60 * 60 *24);
+ redisUtil.set(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, data.getDepotId()), newData, 60 * 60 * 24);
} catch (Exception e) {
e.printStackTrace();
} finally {
@@ -147,6 +160,7 @@
try {
if (null != data.getId()) {
session.delete(data);
+ redisUtil.del(RedisConst.buildKey(ContextUtil.getCompanyId(), RedisConst.KEY_DEPOT_QUALITY, data.getDepotId()));
}
} catch (Exception e) {
e.printStackTrace();
diff --git a/igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml b/igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml
index 711df16..1da57df 100644
--- a/igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml
+++ b/igds-core/src/main/java/com/ld/igds/m/view/QualityManager.view.xml
@@ -5,12 +5,11 @@
<Model>
<DataType name="dtMain">
<ClientEvent name="onDataChange">if(arg.property =="depotId"){
- autoByDepot(arg.newValue);
- }
- if(arg.property =="foodVariety"){
- checkByFood(arg.newValue);
- }
- </ClientEvent>
+ autoByDepot(arg.newValue);
+}
+if(arg.property =="foodVariety"){
+ checkByFood(arg.newValue);
+} </ClientEvent>
<Property name="creationType">com.ld.igds.models.MQuality</Property>
<PropertyDef name="id">
<Property name="label">ID</Property>
@@ -92,20 +91,27 @@
<PropertyDef name="checkUser">
<Property name="label">鎵︽牱浜�</Property>
</PropertyDef>
- <PropertyDef name="checkNum">
+ <PropertyDef name="ypsl">
<Property name="label">鏍峰搧鏁伴噺</Property>
- <Property name="displayFormat">0.0%</Property>
<Property name="dataType">Double</Property>
+ <Property name="displayFormat">0.## KG</Property>
</PropertyDef>
<PropertyDef name="checkTime">
<Property name="label">鎵︽牱鏃堕棿</Property>
<Property name="dataType">Date</Property>
</PropertyDef>
- <PropertyDef name="checkRepresent">
- <Property name="label">鏍峰搧浠h〃</Property>
+ <PropertyDef name="dbsl">
+ <Property name="label">鏍峰搧浠h〃鏁伴噺</Property>
+ <Property name="dataType">Double</Property>
+ <Property name="displayFormat">0.## KG</Property>
</PropertyDef>
- <PropertyDef name="checkLevel">
+ <PropertyDef name="ypdj">
<Property name="label">鏍峰搧绛夌骇</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("dicTriggerPR#dicTrigger").getResult("FOOD_LEVEL_")}</Property>
+ <Property name="keyProperty">code</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
</PropertyDef>
<PropertyDef name="normalYear">
<Property name="label">姝e父瀛樺偍骞撮檺</Property>
@@ -203,6 +209,62 @@
</PropertyDef>
<PropertyDef name="remarks">
<Property name="label">鍖栭獙缁撴灉</Property>
+ </PropertyDef>
+ <PropertyDef name="operaSymbolValue">
+ <Property/>
+ </PropertyDef>
+ <PropertyDef name="operaSymbol">
+ <Property/>
+ <Property name="label">杩愮畻绗﹀彿</Property>
+ </PropertyDef>
+ <PropertyDef name="ruleNum">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵i噸绯绘暟</Property>
+ </PropertyDef>
+ <PropertyDef name="ruleAdd">
+ <Property name="dataType">Double</Property>
+ <Property name="label">澧為噸%</Property>
+ </PropertyDef>
+ <PropertyDef name="ruleAddEnd">
+ <Property name="dataType">Double</Property>
+ <Property name="label">澧為噸涓婇檺%</Property>
+ </PropertyDef>
+ <PropertyDef name="ruleReduce">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵i噸鍊�%</Property>
+ </PropertyDef>
+ <PropertyDef name="rulePrice">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵h垂绯绘暟</Property>
+ </PropertyDef>
+ <PropertyDef name="ruleReducePrice">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵h垂</Property>
+ </PropertyDef>
+ <PropertyDef name="addNum">
+ <Property name="dataType">Double</Property>
+ <Property name="label">澧為噸</Property>
+ </PropertyDef>
+ <PropertyDef name="deNum">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵i噸</Property>
+ </PropertyDef>
+ <PropertyDef name="addPrice">
+ <Property name="dataType">Double</Property>
+ <Property name="label">澧炰环</Property>
+ </PropertyDef>
+ <PropertyDef name="dePrice">
+ <Property name="dataType">Double</Property>
+ <Property name="label">鎵d环</Property>
+ </PropertyDef>
+ <PropertyDef name="result">
+ <Property/>
+ <Property name="label">妫�楠岀粨鏋�</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("inoutDataPR#triggerResult").getResult()}</Property>
+ <Property name="keyProperty">code</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
</PropertyDef>
</DataType>
<DataType name="dataTypeUser">
@@ -337,30 +399,28 @@
</Model>
<View layout="padding:5;regionPadding:5">
<ClientEvent name="onReady">var deptId = window.parent.DEPT_ID;//鐖堕〉闈腑鐨勫垎搴撶紪鐮�
- 
- //鏍规嵁浠撳簱鑷姩鍥炲~绮鍝佺锛岀櫥璁帮紝浜у湴鏂�
- autoByDepot = function(depotId){
- view.get("#ajaxGetDepot").set("parameter",depotId).execute(function(result){
- if(result){
- var data = view.get("#dsMain.data:#");
- data.set("foodLocation",result.foodLocation);
- data.set("foodLevel",result.foodLevel);
- data.set("foodVariety",result.foodVariety);
- data.set("foodType",result.foodType);
- }
- });
- };
- 
- //鏍规嵁绮鍝佺鏌ヨ鍖栭獙椤瑰苟鍥炴樉
- checkByFood = function(foodVariety){
- view.get("#ajaxGetCheck").set("parameter",{foodVariety:foodVariety,deptId:deptId}).execute(function(result){
- if(result){
- var data = view.get("#dsMain.data:#");
- data.set("checkItems",result);
- }
- }); 
- };
- </ClientEvent>
+
+//鏍规嵁浠撳簱鑷姩鍥炲~绮鍝佺锛岀櫥璁帮紝浜у湴鏂�
+autoByDepot = function(depotId){
+ view.get("#ajaxGetDepot").set("parameter",depotId).execute(function(result){
+ if(result){
+ var data = view.get("#dsMain.data:#");
+ data.set("foodLocation",result.foodLocation);
+ data.set("foodLevel",result.foodLevel);
+ data.set("foodVariety",result.foodVariety);
+ data.set("foodType",result.foodType);
+ }
+});
+};
+//鏍规嵁绮鍝佺鏌ヨ鍖栭獙椤瑰苟鍥炴樉
+checkByFood = function(foodVariety){
+view.get("#ajaxGetCheck").set("parameter",{foodVariety:foodVariety,deptId:deptId}).execute(function(result){
+if(result){
+ var data = view.get("#dsMain.data:#");
+ data.set("checkItems",result);
+ }
+ }); 
+}; </ClientEvent>
<Property name="packages">font-awesome,css-common</Property>
<DataSet id="dsMain">
<Property name="loadMode">lazy</Property>
@@ -474,10 +534,9 @@
</AutoForm>
<DataGrid layoutConstraint="center padding:5px">
<ClientEvent name="onDataRowDoubleClick">var data = view.get("#dsMain.data:#");
- if(data){
- view.get("#dialogMain").show();
- }
- </ClientEvent>
+if(data){
+ view.get("#dialogMain").show();
+} </ClientEvent>
<Property name="dataSet">dsMain</Property>
<Property name="readOnly">true</Property>
<RowNumColumn/>
@@ -625,8 +684,8 @@
<Editor/>
</AutoFormElement>
<AutoFormElement>
- <Property name="name">checkNum</Property>
- <Property name="property">checkNum</Property>
+ <Property name="name">ypsl</Property>
+ <Property name="property">ypsl</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
@@ -651,13 +710,13 @@
<Editor/>
</AutoFormElement>
<AutoFormElement>
- <Property name="name">checkRepresent</Property>
- <Property name="property">checkRepresent</Property>
+ <Property name="name">dbsl</Property>
+ <Property name="property">dbsl</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
- <Property name="name">checkLevel</Property>
- <Property name="property">checkLevel</Property>
+ <Property name="name">ypdj</Property>
+ <Property name="property">ypdj</Property>
<Editor/>
</AutoFormElement>
<AutoFormElement>
@@ -697,51 +756,90 @@
<Buttons/>
<Children>
<DataGrid id="dataGridCheckItem">
+ <ClientEvent name="onCellValueEdit">var data = arg.entity
+if (data) {
+ //濉啓鐨勬暟鎹��;
+ var newValue = data.get("value");
+ //鏍囧噯鍊�;
+ var limit = data.get("upperLimit");
+ //杩愮畻绗�;
+ var symbol = data.get("operaSymbol");
+ if (symbol && limit && newValue) {
+ if (">=" == symbol) {
+ if (newValue < limit) {
+ data.set("result", "0");
+ }
+ else {
+ data.set("result", "1");
+ }
+ }
+ if ("<=" == symbol) {
+ if (newValue > limit) {
+ data.set("result", "0");
+ }
+ else {
+ data.set("result", "1");
+ }
+ }
+ if ("==" == symbol) {
+ if (newValue != limit) {
+ data.set("result", "0");
+ }
+ else {
+ data.set("result", "1");
+ }
+ }
+ }
+}</ClientEvent>
<Property name="dataPath">#.checkItems</Property>
<Property name="dataSet">dsMain</Property>
<Property name="hideMode">display</Property>
<Property name="highlightCurrentRow">false</Property>
<Property name="visible">true</Property>
<RowNumColumn/>
- <DataColumn>
- <Property name="name">standardName</Property>
+ <DataColumn name="standardName">
<Property name="property">standardName</Property>
<Property name="align">center</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
</DataColumn>
- <DataColumn>
- <Property name="name">value</Property>
+ <DataColumn name="value">
<Property name="property">value</Property>
<Property name="align">center</Property>
- <Editor/>
</DataColumn>
- <DataColumn>
- <Property name="name">upperLimit</Property>
- <Property name="property">upperLimit</Property>
- <Property name="align">center</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </DataColumn>
- <DataColumn>
- <Property name="name">lowerLimit</Property>
- <Property name="property">lowerLimit</Property>
- <Property name="align">center</Property>
- <Property name="readOnly">true</Property>
- <Editor/>
- </DataColumn>
- <DataColumn>
- <Property name="name">unit</Property>
+ <DataColumn name="unit">
<Property name="property">unit</Property>
<Property name="align">center</Property>
<Property name="readOnly">true</Property>
- <Editor/>
</DataColumn>
- <DataColumn>
- <Property name="name">remarks</Property>
+ <DataColumn name="operaSymbolValue">
+ <Property name="property">operaSymbolValue</Property>
+ <Property name="align">center</Property>
+ <Property name="caption">鏍囧噯鍊�</Property>
+ <Property name="readOnly">true</Property>
+ </DataColumn>
+ <DataColumn name="deNum">
+ <Property name="property">deNum</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="addNum">
+ <Property name="property">addNum</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="dePrice">
+ <Property name="property">dePrice</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="addPrice">
+ <Property name="property">addPrice</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="result">
+ <Property name="property">result</Property>
+ <Property name="align">center</Property>
+ <Property name="readOnly">true</Property>
+ </DataColumn>
+ <DataColumn name="remarks">
<Property name="property">remarks</Property>
<Property name="align">center</Property>
- <Editor/>
</DataColumn>
</DataGrid>
</Children>
diff --git a/igds-inout/src/main/java/com/ld/igds/m/view/ContractManage.view.xml b/igds-inout/src/main/java/com/ld/igds/m/view/ContractManage.view.xml
index 1b9053c..f711c52 100644
--- a/igds-inout/src/main/java/com/ld/igds/m/view/ContractManage.view.xml
+++ b/igds-inout/src/main/java/com/ld/igds/m/view/ContractManage.view.xml
@@ -741,11 +741,6 @@
<Property name="property">signAddress</Property>
<Editor/>
</AutoFormElement>
- <AutoFormElement layoutConstraint="colSpan:3">
- <Property name="name">remark</Property>
- <Property name="property">remark</Property>
- <Editor/>
- </AutoFormElement>
</AutoForm>
</Children>
</FieldSet>
diff --git a/igds-inout/src/main/java/com/ld/igds/m/view/InoutDriver.view.xml b/igds-inout/src/main/java/com/ld/igds/m/view/InoutDriver.view.xml
index bbb1642..cf27350 100644
--- a/igds-inout/src/main/java/com/ld/igds/m/view/InoutDriver.view.xml
+++ b/igds-inout/src/main/java/com/ld/igds/m/view/InoutDriver.view.xml
@@ -21,7 +21,7 @@
</PropertyDef>
<PropertyDef name="nation">
<Property></Property>
- <Property name="label">鍚嶆棌</Property>
+ <Property name="label">姘戞棌</Property>
</PropertyDef>
<PropertyDef name="address">
<Property></Property>
@@ -160,25 +160,32 @@
<DataColumn name="name">
<Property name="property">name</Property>
<Property name="width">300</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="nation">
<Property name="property">nation</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="mobile">
<Property name="property">mobile</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="sex">
<Property name="property">sex</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="birthday">
<Property name="property">birthday</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="address">
<Property name="property">address</Property>
<Property name="width">300</Property>
+ <Property name="align">center</Property>
</DataColumn>
<DataColumn name="updateTime">
<Property name="property">updateTime</Property>
+ <Property name="align">center</Property>
</DataColumn>
</DataGrid>
</Container>
diff --git a/igds-inout/src/main/java/com/ld/igds/m/view/PlanManage01.view.xml b/igds-inout/src/main/java/com/ld/igds/m/view/PlanManage01.view.xml
index 115b4a6..6dc7347 100644
--- a/igds-inout/src/main/java/com/ld/igds/m/view/PlanManage01.view.xml
+++ b/igds-inout/src/main/java/com/ld/igds/m/view/PlanManage01.view.xml
@@ -475,7 +475,7 @@
</Label>
<Button layoutConstraint="left">
<ClientEvent name="onClick">var list = view.get("#dsMain.data:#").get("details");
- list.insert({});</ClientEvent>
+list.insert({});</ClientEvent>
<Property name="caption">鏂板</Property>
<Property name="exClassName">btn-default</Property>
<Property name="iconClass">fa fa-plus</Property>
diff --git a/igds-inout/src/main/java/models/inout.model.xml b/igds-inout/src/main/java/models/inout.model.xml
index 69a099a..a4a2461 100644
--- a/igds-inout/src/main/java/models/inout.model.xml
+++ b/igds-inout/src/main/java/models/inout.model.xml
@@ -56,6 +56,11 @@
<PropertyDef name="bank">
<Property></Property>
<Property name="label">寮�鎴烽摱琛�</Property>
+ <Property name="mapping">
+ <Property name="mapValues">${dorado.getDataProvider("dicTriggerPR#dicTrigger").getResult("KHKHH")}</Property>
+ <Property name="keyProperty">code</Property>
+ <Property name="valueProperty">name</Property>
+ </Property>
</PropertyDef>
<PropertyDef name="bankNum">
<Property></Property>
--
Gitblit v1.9.3