From 68c374208d9738d9bddb186f4cd675eb0c93694c Mon Sep 17 00:00:00 2001
From: YYC <1833023622@qq.com>
Date: 星期五, 14 七月 2023 23:10:14 +0800
Subject: [PATCH] 问题修改

---
 igds-inout/src/main/java/com/ld/igds/inout/view/InoutHand.view.xml |  386 +++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 249 insertions(+), 137 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 8c65ab9..36e41ab 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(&quot;inoutDataPR#triggerResult&quot;).getResult()}</Property>
+        </Property>
+      </PropertyDef>
     </DataType>
   </Model>
   <View layout="padding:5;regionPadding:5">
     <ClientEvent name="onReady">var TYPE = &quot;${request.getParameter('type')}&quot;;&#xD;
+&#xD;
+var PROGRESS = &quot;WEIGHT_TAG&quot;;&#xD;
 &#xD;
 /**&#xD;
  * 鍒锋柊椤甸潰&#xD;
@@ -149,137 +185,6 @@
 &#xD;
 		}&#xD;
 	});&#xD;
-}</ClientEvent>
-    <ClientEvent name="onCreate">&#xD;
-/**&#xD;
- * 鑷姩璁$畻锛屽綋鍓嶉〉闈笉鑷姩鍏宠仈鎵︽牱璁板綍锛屽叏閮ㄧ敱鎵嬪姩涓哄噯&#xD;
- * &#xD;
- * 1.鍑�閲� = 姣涢噸 - 鐨噸&#xD;
- * 2.鎬绘墸閲� = 鐜板満鎵i噸 + 鍏朵粬鎵i噸 + 鎵f按鏉傝川&#xD;
- * 3.缁撶畻閲嶉噺 = 鍑�閲� - 鎬绘墸閲� 锛堝惈姘存潅澧為噸锛�&#xD;
- * 4.鍑�/鍏ュ簱閲嶉噺 = 鍑�閲� - 鎬绘墸閲� 锛堜笉鍚按鏉傚閲嶏級&#xD;
- * &#xD;
- * 5.鍏ュ簱鏃讹細鎵f按鏉� 姝f暟 = 鎵i噸锛岃礋鏁� = 澧為噸&#xD;
- * 6.鍑哄簱鏃讹細姘村垎澧為噸锛屾鏁�=澧為噸锛岃礋鏁�=鎵i噸&#xD;
- */&#xD;
-deAutoByWeight = function(name){&#xD;
-	&#xD;
-	if(null == name) name = &quot;1&quot;;&#xD;
-	&#xD;
-	var curData = view.get(&quot;#dsMain.data:#&quot;);&#xD;
-	var fullWeight = curData.get(&quot;fullWeight&quot;);&#xD;
-	var emptyWeight = curData.get(&quot;emptyWeight&quot;);&#xD;
-	&#xD;
-	if(fullWeight == 0 || emptyWeight == 0){&#xD;
-		return;&#xD;
-	}&#xD;
-	// 鍑�閲�&#xD;
-	var netWeight = Number(fullWeight) - Number(emptyWeight);&#xD;
-	&#xD;
-	if (netWeight &lt;= 0){&#xD;
-		$notify(&quot;鍑�閲嶅皬浜�0锛屽綋鍓嶇О閲嶅瓨鍦ㄩ�昏緫闂&quot;);&#xD;
-		return;&#xD;
-	}&#xD;
-	&#xD;
-	 //姹囨�荤粨鏋�&#xD;
-    var deSum = 0, addSum = 0, settleWeight = 0, recordWeight = 0;&#xD;
-    //鎵f按鏉�&#xD;
-    var deWet = curData.get(&quot;deWet&quot;), deImpurity = curData.get(&quot;deImpurity&quot;);&#xD;
-	&#xD;
-	var impurity = curData.get(&quot;impurity&quot;), wet = curData.get(&quot;wet&quot;);&#xD;
-	&#xD;
-	&#xD;
-	 var deBase = 0, multiple = 0;&#xD;
-	 var checkItems = curData.get(&quot;checkItems&quot;);&#xD;
-    //姘村垎鏉傝川锛屾洿鏀规瘮渚嬪苟涓旀按鍒嗘墸閲嶈繕娌¤绠楁儏鍐典笅&#xD;
-    if (&quot;wet&quot; == name) {&#xD;
-        var checkItem = this.getCheckItem(checkItems,&quot;C01&quot;, &quot;C020101&quot;);&#xD;
-        if (checkItem) {&#xD;
-            deBase = Number(wet) - Number(checkItem.get(&quot;upperLimit&quot;));&#xD;
-            if (deBase == 0) return;&#xD;
-            multiple = parseInt(deBase / checkItem.get(&quot;ruleNum&quot;));//鍊嶆暟&#xD;
-            deWet = (netWeight * multiple * checkItem.get(&quot;ruleReduce&quot;) / 100.00).toFixed(0);&#xD;
-        }&#xD;
-    }&#xD;
-	&#xD;
-    //鏉傝川&#xD;
-    if (&quot;impurity&quot; == name) {&#xD;
-        checkItem = this.getCheckItem(recordData.checkItems, &quot;C02&quot;,&quot;C01010301&quot;);&#xD;
-        if (checkItem) {&#xD;
-            deBase = Number(impurity) - Number(checkItem.get(&quot;upperLimit&quot;));&#xD;
-            if (deBase == 0) return;&#xD;
-            multiple = parseInt(deBase / checkItem.get(&quot;ruleNum&quot;));&#xD;
-            deImpurity = (netWeight * multiple * checkItem.get(&quot;ruleReduce&quot;) / 100.00).toFixed(0);&#xD;
-        }&#xD;
-    }&#xD;
-&#xD;
-    /** 鎬绘墸閲嶏紝涓嶅惈澧為噸*/&#xD;
-    deSum = Number(curData.get(&quot;deOther&quot;)) + Number(curData.get(&quot;deHandle&quot;));&#xD;
-	&#xD;
-	//鍑哄簱&#xD;
-	if (&quot;OUT&quot; == curData.get(&quot;type&quot;)) {&#xD;
-		if (Number(deWet) > 0) {//澧為噸&#xD;
-        	addSum = addSum + Number(deWet);&#xD;
-    	} else {&#xD;
-        	deSum = deSum + Number(deWet);&#xD;
-    	}&#xD;
-&#xD;
-    	if (Number(deImpurity) > 0) {//鎵i噸&#xD;
-        	deSum = deSum + Number(deImpurity);&#xD;
-   	 	} else {&#xD;
-        	addSum = addSum + Number(deImpurity);&#xD;
-    	}&#xD;
-	}else{&#xD;
-		if (Number(deWet) > 0) {//鎵i噸&#xD;
-        	deSum = deSum + Number(deWet);&#xD;
-    	} else {&#xD;
-        	addSum = addSum + Number(deWet);&#xD;
-    	}&#xD;
-    	if (Number(deImpurity) > 0) {//鎵i噸&#xD;
-       	 deSum = deSum + Number(deImpurity);&#xD;
-    	} else {&#xD;
-        	addSum = addSum + Number(deImpurity);&#xD;
-    	}&#xD;
-	}&#xD;
-	&#xD;
-    deSum = deSum.toFixed(0);&#xD;
-    /** 澧為噸杞鏁帮紝渚夸簬璁$畻  */&#xD;
-    addSum = Math.abs(addSum).toFixed(0);&#xD;
-	&#xD;
-    /** 鍏ュ簱閲嶉噺 = 鍑�閲� - 鎬绘墸閲�  */&#xD;
-    recordWeight = Number(netWeight) - Number(deSum);&#xD;
-	&#xD;
-    /** 缁撶畻閲嶉噺 = 鍑�閲� - 鎬绘墸閲� + 澧為噸 */&#xD;
-    settleWeight = Number(netWeight) - Number(deSum) + Number(addSum);&#xD;
-	&#xD;
-	curData.set(&quot;impurity&quot;,impurity);&#xD;
-	curData.set(&quot;wet&quot;,wet);&#xD;
-	curData.set(&quot;deImpurity&quot;,deImpurity);&#xD;
-	curData.set(&quot;deWet&quot;,deWet);&#xD;
-	curData.set(&quot;deSum&quot;,deSum);&#xD;
-	curData.set(&quot;netWeight&quot;,netWeight);&#xD;
-	curData.set(&quot;settleWeight&quot;,settleWeight);&#xD;
-	curData.set(&quot;recordWeight&quot;,recordWeight);&#xD;
-};&#xD;
-&#xD;
-&#xD;
-/**&#xD;
- * 鏍规嵁鍖栭獙椤瑰拰浼犻�掕繃鏉ョ殑鍙傛暟鑾峰彇褰撳墠鍙傛暟鐨勯厤缃俊鎭�&#xD;
- * @param checkItems&#xD;
- * @param code1 绯荤粺鍙傛暟ID&#xD;
- * @param code2 鍥芥爣鍙傛暟ID&#xD;
- * @returns {undefined}&#xD;
- */&#xD;
-function getCheckItem(checkItems, code1, code2) {&#xD;
-    if (!checkItems) return null;&#xD;
-    $.each(checkItems, function (index, checkItem) {&#xD;
-        if (checkItem.get(&quot;standardId&quot;) == code1 || checkItem.get(&quot;standardId&quot;) == code2) {&#xD;
-            if (checkItem.get(&quot;ruleNum&quot;) &amp;&amp; checkItem.get(&quot;upperLimit&quot;) > 0.0) {&#xD;
-                return checkItem;&#xD;
-            }&#xD;
-        }&#xD;
-    });&#xD;
-    return null;&#xD;
 }</ClientEvent>
     <Property name="packages">font-awesome,css-common</Property>
     <Property name="javaScriptFile">./static/plugins/lodop/LodopFuncs.js</Property>
@@ -323,7 +228,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>
@@ -632,7 +537,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>
@@ -686,8 +591,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&#xD;
+if (data) {&#xD;
+	//濉啓鐨勬暟鎹��;&#xD;
+	var newValue = data.get(&quot;value&quot;);&#xD;
+	//鏍囧噯鍊�;&#xD;
+	var limit = data.get(&quot;upperLimit&quot;);&#xD;
+	//杩愮畻绗�;&#xD;
+	var symbol = data.get(&quot;operaSymbol&quot;);&#xD;
+	if (symbol &amp;&amp; limit &amp;&amp; newValue) {&#xD;
+		if (&quot;>=&quot; == symbol) {&#xD;
+			if (newValue &lt; limit) {&#xD;
+				data.set(&quot;result&quot;, &quot;0&quot;);&#xD;
+			}&#xD;
+			else {&#xD;
+				data.set(&quot;result&quot;, &quot;1&quot;);&#xD;
+			}&#xD;
+		}&#xD;
+		if (&quot;&lt;=&quot; == symbol) {&#xD;
+			if (newValue > limit) {&#xD;
+				data.set(&quot;result&quot;, &quot;0&quot;);&#xD;
+			}&#xD;
+			else {&#xD;
+				data.set(&quot;result&quot;, &quot;1&quot;);&#xD;
+			}&#xD;
+		}&#xD;
+		if (&quot;==&quot; == symbol) {&#xD;
+			if (newValue != limit) {&#xD;
+				data.set(&quot;result&quot;, &quot;0&quot;);&#xD;
+			}&#xD;
+			else {&#xD;
+				data.set(&quot;result&quot;, &quot;1&quot;);&#xD;
+			}&#xD;
+		}&#xD;
+	}&#xD;
+}</ClientEvent>
             <Property name="dataSet">dsMain</Property>
             <Property name="dataPath">#.checkItems</Property>
             <Property name="highlightCurrentRow">false</Property>
@@ -709,17 +665,91 @@
               <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 = &quot;WEIGHT_EMPTY&quot;;&#xD;
+</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 = &quot;WEIGHT_FULL&quot;;&#xD;
+</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 = &quot;HANDLE&quot;;</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>
+            </DataGrid>
+          </Children>
+        </FieldSet>
       </ControlTab>
     </TabControl>
     <YearDropDown id="yearDropDown"/>
@@ -736,6 +766,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>
@@ -852,5 +887,82 @@
         </DataGrid>
       </Container>
     </CustomDropDown>
+    <UploadAction id="uploadImg">
+      <ClientEvent name="beforeFileUploaded">var data = view.get(&quot;#dsMain.data:#&quot;)&#xD;
+var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+self.set(&quot;parameter&quot;,{&#xD;
+	plateNum:plateNum,&#xD;
+	bizTag:&quot;EMPTY_WEIGHT&quot;&#xD;
+})</ClientEvent>
+      <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�&#xD;
+var mainData = view.get(&quot;#dsMain.data&quot;);&#xD;
+var fileName = arg.returnValue;&#xD;
+var files = mainData.get(&quot;files&quot;);&#xD;
+files.insert({bizTag:view.PROGRESS,fileName:fileName,createTime:new Date()});</ClientEvent>
+      <ClientEvent name="beforeFileUploaded">var data = view.get(&quot;#dsMain.data:#&quot;)&#xD;
+if(data){&#xD;
+	var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+	self.set(&quot;parameter&quot;,{&#xD;
+		plateNum:plateNum&#xD;
+	})&#xD;
+}</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(&quot;#dsMain.data:#&quot;)&#xD;
+&#xD;
+var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+self.set(&quot;parameter&quot;,{&#xD;
+	plateNum:plateNum,&#xD;
+	bizTag:&quot;FULL_WEIGHT&quot;&#xD;
+})</ClientEvent>
+      <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�&#xD;
+var mainData = view.get(&quot;#dsMain.data&quot;);&#xD;
+var fileName = arg.returnValue;&#xD;
+var files = mainData.get(&quot;files&quot;);&#xD;
+files.insert({bizTag:view.PROGRESS,fileName:fileName});</ClientEvent>
+      <ClientEvent name="beforeFileUploaded">var data = view.get(&quot;#dsMain.data:#&quot;)&#xD;
+if(data){&#xD;
+	var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+	self.set(&quot;parameter&quot;,{&#xD;
+		plateNum:plateNum&#xD;
+	})&#xD;
+}</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(&quot;#dsMain.data:#&quot;)&#xD;
+&#xD;
+var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+self.set(&quot;parameter&quot;,{&#xD;
+	plateNum:plateNum,&#xD;
+	bizTag:&quot;HAND&quot;&#xD;
+})</ClientEvent>
+      <ClientEvent name="onFileUploaded">//闄勪欢涓婁紶瀹屾垚鍚庢坊鍔犱笟鍔℃暟鎹�&#xD;
+var mainData = view.get(&quot;#dsMain.data&quot;);&#xD;
+var fileName = arg.returnValue;&#xD;
+var files = mainData.get(&quot;files&quot;);&#xD;
+files.insert({bizTag:view.PROGRESS,fileName:fileName});</ClientEvent>
+      <ClientEvent name="beforeFileUploaded">var data = view.get(&quot;#dsMain.data:#&quot;)&#xD;
+if(data){&#xD;
+	var plateNum = data.get(&quot;plateNum&quot;);&#xD;
+	self.set(&quot;parameter&quot;,{&#xD;
+		plateNum:plateNum&#xD;
+	})&#xD;
+}</ClientEvent>
+      <Property name="maxFileSize">20MB</Property>
+      <Property name="successMessage">涓婁紶鎴愬姛</Property>
+      <Property name="parameter"></Property>
+      <Property name="fileResolver">inoutDataPR#uploadImage</Property>
+      <Filters/>
+    </UploadAction>
   </View>
 </ViewConfig>

--
Gitblit v1.9.3