From a3f8ef130d998973a5d36bb196e1607827de81e8 Mon Sep 17 00:00:00 2001
From: CZT <czt18638530771@163.com>
Date: 星期三, 30 八月 2023 16:06:13 +0800
Subject: [PATCH] 增加Modbus协议:温控控制
---
igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml | 447 ++++++++++++++++++++++++++++++++++++++-----------------
1 files changed, 308 insertions(+), 139 deletions(-)
diff --git a/igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml b/igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml
index 41b1093..dd23a2f 100644
--- a/igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml
+++ b/igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml
@@ -28,10 +28,16 @@
<Entity>
<Property name="checkId">$${this.checkId}</Property>
<Property name="foodVariety">$${this.foodVariety}</Property>
+ <Property name="type">$${this.type}</Property>
</Entity>
</Property>
<Property name="dataProvider">checkStandardPR#listCheckItemsByParam</Property>
<Property name="dataType">[dtCheckItems]</Property>
+ </Reference>
+ <Reference name="files">
+ <Property name="dataProvider">sys.fileManager#listFile</Property>
+ <Property name="dataType">[dtFileData]</Property>
+ <Property name="parameter">$${this.id}</Property>
</Reference>
</DataType>
<DataType name="dtCheckItems">
@@ -107,10 +113,40 @@
<Property></Property>
<Property name="label">杩愮畻绗﹀彿</Property>
</PropertyDef>
+ <PropertyDef name="operaSymbolValue">
+ <Property></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>
+ <Property name="label">妫�楠岀粨鏋�</Property>
+ <Property name="mapping">
+ <Property name="keyProperty">code</Property>
+ <Property name="valueProperty">name</Property>
+ <Property name="mapValues">${dorado.getDataProvider("inoutDataPR#triggerResult").getResult()}</Property>
+ </Property>
+ </PropertyDef>
</DataType>
</Model>
<View layout="padding:5;regionPadding:5">
<ClientEvent name="onReady">var TYPE = "${request.getParameter('type')}";
+
+var PROGRESS = "WEIGHT_TAG";

/**
* 鍒锋柊椤甸潰
@@ -145,139 +181,26 @@
view.get("#btnPrintWeigh").set("disabled",false);
view.get("#btnPrintCheck").set("disabled",false);
$alert("淇濆瓨鎴愬姛锛屽彲浠ヨ繘琛屾墦鍗板拰閲嶆柊鎻愭柊琛ㄥ崟锛�");
+ flush();
+
}
});
-}</ClientEvent>
- <ClientEvent name="onCreate">
-/**
- * 鑷姩璁$畻锛屽綋鍓嶉〉闈笉鑷姩鍏宠仈鎵︽牱璁板綍锛屽叏閮ㄧ敱鎵嬪姩涓哄噯
- * 
- * 1.鍑�閲� = 姣涢噸 - 鐨噸
- * 2.鎬绘墸閲� = 鐜板満鎵i噸 + 鍏朵粬鎵i噸 + 鎵f按鏉傝川
- * 3.缁撶畻閲嶉噺 = 鍑�閲� - 鎬绘墸閲� 锛堝惈姘存潅澧為噸锛�
- * 4.鍑�/鍏ュ簱閲嶉噺 = 鍑�閲� - 鎬绘墸閲� 锛堜笉鍚按鏉傚閲嶏級
- * 
- * 5.鍏ュ簱鏃讹細鎵f按鏉� 姝f暟 = 鎵i噸锛岃礋鏁� = 澧為噸
- * 6.鍑哄簱鏃讹細姘村垎澧為噸锛屾鏁�=澧為噸锛岃礋鏁�=鎵i噸
- */
-deAutoByWeight = function(name){
- 
- if(null == name) name = "1";
- 
- var curData = view.get("#dsMain.data:#");
- var fullWeight = curData.get("fullWeight");
- var emptyWeight = curData.get("emptyWeight");
- 
- if(fullWeight == 0 || emptyWeight == 0){
- return;
- }
- // 鍑�閲�
- var netWeight = Number(fullWeight) - Number(emptyWeight);
- 
- if (netWeight <= 0){
- $notify("鍑�閲嶅皬浜�0锛屽綋鍓嶇О閲嶅瓨鍦ㄩ�昏緫闂");
- return;
- }
- 
- //姹囨�荤粨鏋�
- var deSum = 0, addSum = 0, settleWeight = 0, recordWeight = 0;
- //鎵f按鏉�
- var deWet = curData.get("deWet"), deImpurity = curData.get("deImpurity");
- 
- var impurity = curData.get("impurity"), wet = curData.get("wet");
- 
- 
- var deBase = 0, multiple = 0;
- var checkItems = curData.get("checkItems");
- //姘村垎鏉傝川锛屾洿鏀规瘮渚嬪苟涓旀按鍒嗘墸閲嶈繕娌¤绠楁儏鍐典笅
- if ("wet" == name) {
- var checkItem = this.getCheckItem(checkItems,"C01", "C020101");
- if (checkItem) {
- deBase = Number(wet) - Number(checkItem.get("upperLimit"));
- if (deBase == 0) return;
- multiple = parseInt(deBase / checkItem.get("ruleNum"));//鍊嶆暟
- deWet = (netWeight * multiple * checkItem.get("ruleReduce") / 100.00).toFixed(0);
- }
- }
- 
- //鏉傝川
- if ("impurity" == name) {
- checkItem = this.getCheckItem(recordData.checkItems, "C02","C01010301");
- if (checkItem) {
- deBase = Number(impurity) - Number(checkItem.get("upperLimit"));
- if (deBase == 0) return;
- multiple = parseInt(deBase / checkItem.get("ruleNum"));
- deImpurity = (netWeight * multiple * checkItem.get("ruleReduce") / 100.00).toFixed(0);
- }
- }
+}

- /** 鎬绘墸閲嶏紝涓嶅惈澧為噸*/
- deSum = Number(curData.get("deOther")) + Number(curData.get("deHandle"));
- 
- //鍑哄簱
- if ("OUT" == curData.get("type")) {
- if (Number(deWet) > 0) {//澧為噸
- addSum = addSum + Number(deWet);
- } else {
- deSum = deSum + Number(deWet);
- }
-
- if (Number(deImpurity) > 0) {//鎵i噸
- deSum = deSum + Number(deImpurity);
- } else {
- addSum = addSum + Number(deImpurity);
- }
- }else{
- if (Number(deWet) > 0) {//鎵i噸
- deSum = deSum + Number(deWet);
- } else {
- addSum = addSum + Number(deWet);
- }
- if (Number(deImpurity) > 0) {//鎵i噸
- deSum = deSum + Number(deImpurity);
- } else {
- addSum = addSum + Number(deImpurity);
- }
- }
- 
- deSum = deSum.toFixed(0);
- /** 澧為噸杞鏁帮紝渚夸簬璁$畻 */
- addSum = Math.abs(addSum).toFixed(0);
- 
- /** 鍏ュ簱閲嶉噺 = 鍑�閲� - 鎬绘墸閲� */
- recordWeight = Number(netWeight) - Number(deSum);
- 
- /** 缁撶畻閲嶉噺 = 鍑�閲� - 鎬绘墸閲� + 澧為噸 */
- settleWeight = Number(netWeight) - Number(deSum) + Number(addSum);
- 
- curData.set("impurity",impurity);
- curData.set("wet",wet);
- curData.set("deImpurity",deImpurity);
- curData.set("deWet",deWet);
- curData.set("deSum",deSum);
- curData.set("netWeight",netWeight);
- curData.set("settleWeight",settleWeight);
- curData.set("recordWeight",recordWeight);
-};
-
-
-/**
- * 鏍规嵁鍖栭獙椤瑰拰浼犻�掕繃鏉ョ殑鍙傛暟鑾峰彇褰撳墠鍙傛暟鐨勯厤缃俊鎭�
- * @param checkItems
- * @param code1 绯荤粺鍙傛暟ID
- * @param code2 鍥芥爣鍙傛暟ID
- * @returns {undefined}
- */
-function getCheckItem(checkItems, code1, code2) {
- if (!checkItems) return null;
- $.each(checkItems, function (index, checkItem) {
- if (checkItem.get("standardId") == code1 || checkItem.get("standardId") == code2) {
- if (checkItem.get("ruleNum") && checkItem.get("upperLimit") > 0.0) {
- return checkItem;
- }
- }
- });
- return null;
+//鍒犻櫎闄勪欢
+delFile = function(){
+ var entity = view.get("#dgFiles").getCurrentItem();
+ view.get("#ajaxDelFile").set("parameter",{
+ fileName:entity.get("fileName"),
+ createTime:entity.get("createTime")
+ }).execute(function(result){
+ if(result){
+ $alert(result);
+ }else{
+ entity.remove();
+ $alert("鍒犻櫎鎴愬姛锛�");
+ }
+ });
}</ClientEvent>
<Property name="packages">font-awesome,css-common</Property>
<Property name="javaScriptFile">./static/plugins/lodop/LodopFuncs.js</Property>
@@ -321,7 +244,7 @@
<Property name="iconClass">fa fa-minus</Property>
</Button>
</Container>
- <TabControl id="tabControlMain">
+ <TabControl id="tabControlMain" layoutConstraint="left ">
<Property name="width">1300</Property>
<ControlTab>
<Property name="caption">鍩虹淇℃伅</Property>
@@ -630,7 +553,7 @@
</Container>
</ControlTab>
<ControlTab id="tabCheck">
- <Property name="caption">鎵︽牱鍖栭獙</Property>
+ <Property name="caption">璐ㄦ淇℃伅</Property>
<Property name="iconClass">fa fa-gavel</Property>
<Property name="width">150</Property>
<Property name="name">tabCheck</Property>
@@ -684,8 +607,59 @@
<Property name="label">璐ㄦ鏃堕棿</Property>
<Editor/>
</AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">sampleUser</Property>
+ <Property name="property">sampleUser</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">sampleTime</Property>
+ <Property name="property">sampleTime</Property>
+ <Editor/>
+ </AutoFormElement>
+ <AutoFormElement>
+ <Property name="name">sampleType</Property>
+ <Property name="property">sampleType</Property>
+ <Property name="editorType">RadioGroup</Property>
+ <Editor/>
+ </AutoFormElement>
</AutoForm>
<DataGrid id="dataGridCheckItem" layoutConstraint="padding:10">
+ <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="dataSet">dsMain</Property>
<Property name="dataPath">#.checkItems</Property>
<Property name="highlightCurrentRow">false</Property>
@@ -707,17 +681,101 @@
<Property name="property">unit</Property>
<Property name="width">80</Property>
<Property name="readOnly">true</Property>
- </DataColumn>
- <DataColumn name="standardValue">
- <Property name="property">standardValue</Property>
- <Property name="readOnly">true</Property>
<Property name="align">center</Property>
+ </DataColumn>
+ <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>
</DataColumn>
</DataGrid>
</Container>
+ </ControlTab>
+ </TabControl>
+ <TabControl id="tabControlImage" layoutConstraint="left">
+ <Property name="width">370</Property>
+ <ControlTab id="tabImage">
+ <Property name="name">tabImage</Property>
+ <Property name="caption">鍑哄叆搴撹繃绋嬭褰�</Property>
+ <FieldSet layout="regionPadding:5" layoutConstraint="top padding:10">
+ <Buttons>
+ <Button layoutConstraint="left">
+ <ClientEvent name="onClick">view.PROGRESS = "WEIGHT_EMPTY";
+</ClientEvent>
+ <Property name="exClassName">btn-default</Property>
+ <Property name="iconClass">fa fa-cloud-upload</Property>
+ <Property name="action">uploadImg</Property>
+ <Property name="caption">绌鸿溅绉�</Property>
+ </Button>
+ <Button layoutConstraint="left">
+ <ClientEvent name="onClick">view.PROGRESS = "WEIGHT_FULL";
+</ClientEvent>
+ <Property name="exClassName">btn-default</Property>
+ <Property name="iconClass">fa fa-cloud-upload</Property>
+ <Property name="action">uploadImg1</Property>
+ <Property name="caption">婊¤溅绉�</Property>
+ </Button>
+ <Button layoutConstraint="left">
+ <ClientEvent name="onClick">view.PROGRESS = "HANDLE";</ClientEvent>
+ <Property name="caption">鍊间粨</Property>
+ <Property name="exClassName">btn-default</Property>
+ <Property name="iconClass">fa fa-cloud-upload</Property>
+ <Property name="action">uploadImg2</Property>
+ </Button>
+ </Buttons>
+ <Children>
+ <DataGrid id="dgFiles">
+ <Property name="dataSet">dsMain</Property>
+ <Property name="readOnly">true</Property>
+ <Property name="selectionMode">singleRow</Property>
+ <Property name="dataPath">#.files</Property>
+ <RowNumColumn/>
+ <DataColumn name="bizTag">
+ <Property name="property">bizTag</Property>
+ <Property name="visible">false</Property>
+ </DataColumn>
+ <DataColumn name="fileName">
+ <Property name="property">fileName</Property>
+ </DataColumn>
+ <DataColumn>
+ <ClientEvent name="onRenderCell">arg.dom.innerHTML = "<a href='javascript:;' onClick='delFile()'>鍒犻櫎</a>";
+</ClientEvent>
+ <Property name="property">fileId</Property>
+ <Property name="name">fileId</Property>
+ <Property name="align">center</Property>
+ <Property name="caption">鎿嶄綔</Property>
+ <Property name="readOnly">true</Property>
+ <Property name="width">80</Property>
+ </DataColumn>
+ </DataGrid>
+ </Children>
+ </FieldSet>
</ControlTab>
</TabControl>
<YearDropDown id="yearDropDown"/>
@@ -734,6 +792,11 @@
<Property name="service">inoutDataPR#printWeightBill</Property>
<Property name="executingMessage">姝e湪鎵ц鎵撳嵃鈥︹��</Property>
<Property name="async">false</Property>
+ </AjaxAction>
+ <AjaxAction id="ajaxPrintCheckBill">
+ <Property name="async">false</Property>
+ <Property name="executingMessage">姝e湪鎵ц鎵撳嵃鈥︹��</Property>
+ <Property name="service">inoutDataPR#printShipBill</Property>
</AjaxAction>
<CustomDropDown id="ddDicArea">
<Property name="minHeight">500</Property>
@@ -799,7 +862,7 @@
<CustomDropDown id="ddNotice">
<Property name="minHeight">400</Property>
<Property name="assignmentMap">noticeId=id,customerName=customerName</Property>
- <Property name="minWidth">500</Property>
+ <Property name="minWidth">1000</Property>
<Property name="autoOpen">true</Property>
<Container layout="regionPadding:5">
<DataSet id="dsNotice">
@@ -839,16 +902,122 @@
}</ClientEvent>
<Property name="dataSet">dsNotice</Property>
<Property name="readOnly">true</Property>
+ <DataColumn name="name">
+ <Property name="property">name</Property>
+ <Property name="align">center</Property>
+ <Property name="width">100</Property>
+ </DataColumn>
<DataColumn>
<Property name="property">customerName</Property>
<Property name="align">center</Property>
<Property name="name">customerName</Property>
+ <Property name="width">240</Property>
</DataColumn>
- <DataColumn name="name">
- <Property name="property">name</Property>
+ <DataColumn name="foodVariety">
+ <Property name="property">foodVariety</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="year">
+ <Property name="property">year</Property>
+ <Property name="align">center</Property>
+ </DataColumn>
+ <DataColumn name="depotId">
+ <Property name="property">depotId</Property>
+ <Property name="align">center</Property>
+ <Property name="width">180</Property>
+ </DataColumn>
+ <DataColumn name="contractName">
+ <Property name="property">contractName</Property>
+ <Property name="align">center</Property>
+ <Property name="width">300</Property>
</DataColumn>
</DataGrid>
</Container>
</CustomDropDown>
+ <UploadAction id="uploadImg">
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+var plateNum = data.get("plateNum");
+var bizTag = "EMPTY";
+self.set("parameter",{
+ bizTag: bizTag
+})</ClientEvent>
+ <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�
+var mainData = view.get("#dsMain.data");
+var fileName = arg.returnValue;
+var files = mainData.get("files");
+files.insert({bizTag:view.PROGRESS,fileName:fileName,createTime:new Date()});</ClientEvent>
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+if(data){
+ var plateNum = data.get("plateNum");
+ var bizTag = "EMPTY";
+ self.set("parameter",{
+ bizTag:bizTag
+ })
+}</ClientEvent>
+ <Property name="maxFileSize">20MB</Property>
+ <Property name="successMessage">涓婁紶鎴愬姛</Property>
+ <Property name="parameter"></Property>
+ <Property name="fileResolver">inoutDataPR#uploadImage</Property>
+ <Filters/>
+ </UploadAction>
+ <UploadAction id="uploadImg1">
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+
+var plateNum = data.get("plateNum");
+var bizTag = "FULL";
+self.set("parameter",{
+ bizTag: bizTag
+})</ClientEvent>
+ <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�
+var mainData = view.get("#dsMain.data");
+var fileName = arg.returnValue;
+var files = mainData.get("files");
+files.insert({bizTag:view.PROGRESS,fileName:fileName});</ClientEvent>
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+if(data){
+ var plateNum = data.get("plateNum");
+ var bizTag = "FULL";
+ self.set("parameter",{
+ bizTag:bizTag
+ })
+}</ClientEvent>
+ <Property name="maxFileSize">20MB</Property>
+ <Property name="successMessage">涓婁紶鎴愬姛</Property>
+ <Property name="parameter"></Property>
+ <Property name="fileResolver">inoutDataPR#uploadImage</Property>
+ <Filters/>
+ </UploadAction>
+ <UploadAction id="uploadImg2">
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+
+var plateNum = data.get("plateNum");
+var bizTag = "HANDLE";
+self.set("parameter",{
+ bizTag: bizTag
+})</ClientEvent>
+ <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�
+var mainData = view.get("#dsMain.data");
+var fileName = arg.returnValue;
+var files = mainData.get("files");
+files.insert({bizTag:view.PROGRESS,fileName:fileName});</ClientEvent>
+ <ClientEvent name="beforeFileUploaded">var data = view.get("#dsMain.data:#")
+if(data){
+ var plateNum = data.get("plateNum");
+ var bizTag = "HANDLE";
+ self.set("parameter",{
+ bizTag:bizTag
+ })
+}</ClientEvent>
+ <Property name="maxFileSize">20MB</Property>
+ <Property name="successMessage">涓婁紶鎴愬姛</Property>
+ <Property name="parameter"></Property>
+ <Property name="fileResolver">inoutDataPR#uploadImage</Property>
+ <Filters/>
+ </UploadAction>
+ <AjaxAction id="ajaxDelFile">
+ <Property name="service">inoutDataPR#delImage</Property>
+ <Property name="async">true</Property>
+ <Property name="confirmMessage">纭畾瑕佸垹闄や箞锛�</Property>
+ </AjaxAction>
</View>
</ViewConfig>
--
Gitblit v1.9.3