From 43ba5af02280a1d222769fed87ddab421962ca8e Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期四, 18 十二月 2025 17:43:07 +0800
Subject: [PATCH] 添加第一版出入库报表

---
 fzzy-igdss-core/src/main/java/com/fzzy/igds/data/InoutParam.java       |    6 
 fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetail.view.xml |  609 ++++++++++++++++++++++++++++++++++++++++++++++
 fzzy-igdss-core/src/main/java/com/fzzy/igds/data/QuantityParam.java    |    6 
 fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetailPR.java   |  117 +++++++++
 4 files changed, 738 insertions(+), 0 deletions(-)

diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/InoutParam.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/InoutParam.java
index 146950f..0ada48e 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/InoutParam.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/InoutParam.java
@@ -17,6 +17,12 @@
 
     private String id;
 
+    public String title;
+
+    public String unit;
+
+    public String timeDesc;
+
     private String progress;
 
     private String progressTag; //琛ㄧず鏈畬鎴愮殑鍗曟嵁
diff --git a/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/QuantityParam.java b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/QuantityParam.java
index a7c5816..afc3b3d 100644
--- a/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/QuantityParam.java
+++ b/fzzy-igdss-core/src/main/java/com/fzzy/igds/data/QuantityParam.java
@@ -6,7 +6,13 @@
 import java.util.Date;
 
 
+/**
+ * 璐ㄩ噺妫�娴嬫姤琛ㄦ煡璇㈠弬鏁�
+ *
+ * @author sgj
+ * @date 2025/12/18
 
+ */
 @Data
 public class QuantityParam {
 
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetail.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetail.view.xml
new file mode 100644
index 0000000..87b6efd
--- /dev/null
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetail.view.xml
@@ -0,0 +1,609 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ViewConfig>
+  <Arguments/>
+  <Context/>
+  <Model>
+    <DataType name="dtMain">
+      <Property name="creationType">com.fzzy.igds.domain.InoutRecord</Property>
+      <PropertyDef name="id">
+        <Property></Property>
+        <Property name="label">鍗曟嵁鍙�</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="companyId">
+        <Property></Property>
+        <Property name="label">缁勭粐缂栫爜</Property>
+      </PropertyDef>
+      <PropertyDef name="progress">
+        <Property></Property>
+        <Property name="label">娴佺▼杩涘害</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;PROCESS_STATUS_&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="recordStatus">
+        <Property></Property>
+        <Property name="label">鏁版嵁鐘舵��</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;RECORD_STATUS&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="checkStatus">
+        <Property></Property>
+        <Property name="label">鎵︽牱缁撴灉</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;CHECK_STATUS&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="registerTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">鐧昏鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="registerUser">
+        <Property></Property>
+        <Property name="label">鐧昏浜哄憳</Property>
+      </PropertyDef>
+      <PropertyDef name="userName">
+        <Property></Property>
+        <Property name="label">鎵胯繍浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="userId">
+        <Property></Property>
+        <Property name="label">韬唤璇佸彿</Property>
+      </PropertyDef>
+      <PropertyDef name="userContact">
+        <Property></Property>
+        <Property name="label">鑱旂郴鏂瑰紡</Property>
+      </PropertyDef>
+      <PropertyDef name="userAddress">
+        <Property></Property>
+        <Property name="label">鎵胯繍浜哄湴鍧�</Property>
+      </PropertyDef>
+      <PropertyDef name="plateNum">
+        <Property></Property>
+        <Property name="label">杞︾墝鍙�</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="customerName">
+        <Property></Property>
+        <Property name="label">寰�鏉ュ崟浣�</Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="foodLocation">
+        <Property></Property>
+        <Property name="label">绮浜у湴</Property>
+      </PropertyDef>
+      <PropertyDef name="foodYear">
+        <Property></Property>
+        <Property name="label">绮骞翠唤</Property>
+      </PropertyDef>
+      <PropertyDef name="deOther">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鎵i噸</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="fullWeight">
+        <Property name="dataType">Double</Property>
+        <Property name="label">婊¤溅绉伴噸</Property>
+        <Property name="required">true</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="fullWeightTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">婊¤溅绉版椂闂�</Property>
+      </PropertyDef>
+      <PropertyDef name="fullWeightUser">
+        <Property></Property>
+        <Property name="label">婊¤溅绉伴噸浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="emptyWeight">
+        <Property name="dataType">Double</Property>
+        <Property name="label">绌鸿溅绉伴噸</Property>
+        <Property name="required">true</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="emptyWeightTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">绌鸿溅绉版椂闂�</Property>
+      </PropertyDef>
+      <PropertyDef name="emptyWeightUser">
+        <Property></Property>
+        <Property name="label">绌鸿溅绉伴噸浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="netWeight">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鍑�閲�</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="settleWeight">
+        <Property name="dataType">Double</Property>
+        <Property name="label">缁撶畻鍑�閲�</Property>
+        <Property name="required">true</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="recordWeight">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鍏ュ簱閲嶉噺</Property>
+        <Property name="displayFormat">0.0 KG</Property>
+      </PropertyDef>
+      <PropertyDef name="handleStart">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鍊间粨寮�濮嬫椂闂�</Property>
+      </PropertyDef>
+      <PropertyDef name="handleEnd">
+        <Property name="dataType">Date</Property>
+        <Property name="label">鍊间粨缁撴潫鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="handleUser">
+        <Property></Property>
+        <Property name="label">鍊间粨鎿嶄綔浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="completeTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">瀹屾垚鏃堕棿</Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="completeUser">
+        <Property></Property>
+        <Property name="label">瀹屾垚纭浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="remarks">
+        <Property></Property>
+        <Property name="label">澶囨敞淇℃伅</Property>
+      </PropertyDef>
+      <PropertyDef name="deptId">
+        <Property></Property>
+        <Property name="label">鎵�鍦ㄥ簱鍖�</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;deptPR#getAllData&quot;).getResult()}</Property>
+          <Property name="keyProperty">id</Property>
+          <Property name="valueProperty">kqmc</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="foodVariety">
+        <Property></Property>
+        <Property name="label">绮鍝佺</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;FOOD_VARIETY_&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="depotId">
+        <Property></Property>
+        <Property name="label">瑁呭嵏浠撳簱</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;depotPR#getAllCache&quot;).getResult()}</Property>
+          <Property name="keyProperty">id</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="type">
+        <Property name="label">鍑哄叆搴撶被鍨�</Property>
+        <Property name="mapping">
+          <Property name="mapValues">
+            <Collection>
+              <Entity>
+                <Property name="name">鍑哄簱</Property>
+                <Property name="value">OUT</Property>
+              </Entity>
+              <Entity>
+                <Property name="name">鍏ュ簱</Property>
+                <Property name="value">IN</Property>
+              </Entity>
+            </Collection>
+          </Property>
+          <Property name="keyProperty">value</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="foodLevel">
+        <Property></Property>
+        <Property name="label">绮绛夌骇</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#triggerFoodLevel&quot;).getResult()}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="checkUser">
+        <Property></Property>
+        <Property name="label">璐ㄦ浜�</Property>
+      </PropertyDef>
+      <PropertyDef name="price">
+        <Property name="dataType">double</Property>
+        <Property name="label">绮瀹氫环</Property>
+        <Property name="displayFormat">0.00 鍏�/鍏枻</Property>
+      </PropertyDef>
+      <PropertyDef name="noticeId">
+        <Property></Property>
+        <Property name="label">閫氱煡鍗曠紪鐮�</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="foodLocationId">
+        <Property></Property>
+        <Property name="label">浜у湴鍚嶇О浠g爜</Property>
+      </PropertyDef>
+      <PropertyDef name="checkTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">璐ㄦ鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="perWet">
+        <Property name="dataType">Double</Property>
+        <Property name="label">姘村垎</Property>
+        <Property name="displayFormat">0.00 %</Property>
+      </PropertyDef>
+      <PropertyDef name="perImpurity">
+        <Property name="dataType">Double</Property>
+        <Property name="label">鏉傝川</Property>
+        <Property name="displayFormat">0.00 %</Property>
+      </PropertyDef>
+      <PropertyDef name="settleMoney">
+        <Property name="dataType">Double</Property>
+        <Property name="label">缁撶畻閲戦</Property>
+        <Property name="displayFormat">0.00 鍏�</Property>
+      </PropertyDef>
+      <PropertyDef name="settleTag">
+        <Property></Property>
+        <Property name="label">鏄惁缁撶畻</Property>
+        <Property name="mapping">
+          <Property name="mapValues">
+            <Collection>
+              <Entity>
+                <Property name="name">鏈粨绠�</Property>
+                <Property name="value">N</Property>
+              </Entity>
+              <Entity>
+                <Property name="name">宸茬粨绠�</Property>
+                <Property name="value">Y</Property>
+              </Entity>
+            </Collection>
+          </Property>
+          <Property name="keyProperty">value</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="settleTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">缁撶畻鏃堕棿</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="createTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">鍒涘缓鏃堕棿</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="createBy">
+        <Property></Property>
+        <Property name="label">鍒涘缓浜�</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="updateTime">
+        <Property name="dataType">DateTime</Property>
+        <Property name="label">鏇存柊鏃堕棿</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+      <PropertyDef name="updateBy">
+        <Property></Property>
+        <Property name="label">鏇存柊浜�</Property>
+        <Property name="readOnly">true</Property>
+      </PropertyDef>
+    </DataType>
+    <DataType name="dtQuery">
+      <Property name="creationType">com.fzzy.igds.data.InoutParam</Property>
+      <PropertyDef name="type">
+        <Property name="label">鍑哄叆搴撶被鍨�</Property>
+      </PropertyDef>
+      <PropertyDef name="deptId">
+        <Property></Property>
+        <Property name="label">鎵�灞炲垎搴�</Property>
+      </PropertyDef>
+      <PropertyDef name="depotId">
+        <Property></Property>
+        <Property name="label">瑁呭嵏浠撳簱</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;depotPR#getAllCache&quot;).getResult()}</Property>
+          <Property name="keyProperty">id</Property>
+          <Property name="valueProperty">name</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="plateNum">
+        <Property name="label">杞︾墝鍙�</Property>
+      </PropertyDef>
+      <PropertyDef name="foodVariety">
+        <Property></Property>
+        <Property name="label">绮鍝佺</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;FOOD_VARIETY_&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="progress">
+        <Property></Property>
+        <Property name="label">娴佺▼杩涘害</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;PROCESS_STATUS_&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="recordStatus">
+        <Property></Property>
+        <Property name="label">鍗曟嵁鐘舵��</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#sysDictData&quot;).getResult(&quot;RECORD_STATUS&quot;)}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+      </PropertyDef>
+      <PropertyDef name="start">
+        <Property name="label">寮�濮嬫椂闂�</Property>
+        <Property name="dataType">Date</Property>
+      </PropertyDef>
+      <PropertyDef name="end">
+        <Property name="label">鎴鏃堕棿</Property>
+        <Property name="dataType">Date</Property>
+      </PropertyDef>
+      <PropertyDef name="customerName">
+        <Property></Property>
+        <Property name="label">鍗曚綅</Property>
+      </PropertyDef>
+      <PropertyDef name="unit">
+        <Property></Property>
+        <Property name="label">鍗曚綅</Property>
+      </PropertyDef>
+      <PropertyDef name="timeDesc">
+        <Property></Property>
+        <Property name="label">鏃堕棿</Property>
+      </PropertyDef>
+      <PropertyDef name="title">
+        <Property></Property>
+      </PropertyDef>
+      <PropertyDef name="none">
+        <Property></Property>
+      </PropertyDef>
+    </DataType>
+  </Model>
+  <View layout="padding:5;regionPadding:5">
+    <ClientEvent name="onReady">//var TYPE = &quot;INOUT_DETAIL&quot;;&#xD;
+var deptId = window.parent.DEPT_ID;//鐖堕〉闈腑鐨勫垎搴撶紪鐮�&#xD;
+&#xD;
+&#xD;
+//榛樿鏌ヨ鏌ヨ鎻愭潯浠�&#xD;
+view.get(&quot;#dsQuery&quot;).insert({&#xD;
+	deptId:deptId&#xD;
+});&#xD;
+&#xD;
+query = function(){&#xD;
+	var data = view.get(&quot;#dsQuery.data&quot;);&#xD;
+	view.get(&quot;#dsQuery&quot;).set(&quot;parameter&quot;,data).flushAsync();&#xD;
+};&#xD;
+query();</ClientEvent>
+    <Property name="packages">font-awesome,css-common</Property>
+    <DataSet id="dsMain">
+      <Property name="dataType">[dtMain]</Property>
+      <Property name="dataProvider">reportInoutDetailPR#listRecord</Property>
+      <Property name="loadMode">manual</Property>
+    </DataSet>
+    <DataSet id="dsQuery">
+      <Property name="dataType">dtQuery</Property>
+      <Property name="dataProvider">reportInoutDetailPR#getQuery</Property>
+      <Property></Property>
+      <Property name="loadMode">manual</Property>
+    </DataSet>
+    <AutoForm layoutConstraint="top">
+      <Property name="cols">*,*,*,*</Property>
+      <Property name="dataSet">dsQuery</Property>
+      <Property name="exClassName">bg-color</Property>
+      <Property name="labelWidth">100</Property>
+      <Property name="labelAlign">right</Property>
+      <AutoFormElement>
+        <Property name="name">type</Property>
+        <Property name="property">type</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">customerName</Property>
+        <Property name="property">customerName</Property>
+        <Property name="editable">true</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">depotId</Property>
+        <Property name="property">depotId</Property>
+        <Editor/>
+      </AutoFormElement>
+      <AutoFormElement>
+        <Property name="name">foodVariety</Property>
+        <Property name="property">foodVariety</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:15">
+        <Button>
+          <ClientEvent name="onClick">	var data = view.get(&quot;#dsQuery.data&quot;);&#xD;
+	view.get(&quot;#dsMain&quot;).set(&quot;parameter&quot;,data).flushAsync();</ClientEvent>
+          <Property name="caption">鏌ヨ</Property>
+          <Property name="exClassName">btn1</Property>
+          <Property name="iconClass">fa fa-search</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">view.get(&quot;#dsQuery&quot;).flushAsync();</ClientEvent>
+          <Property name="exClassName">btn2</Property>
+          <Property name="iconClass">fa fa-refresh</Property>
+          <Property name="caption">閲嶇疆</Property>
+        </Button>
+        <Button layoutConstraint="left">
+          <Property name="caption">瀵煎嚭EXCEL</Property>
+          <Property name="exClassName">btn4</Property>
+          <Property name="iconClass">fa fa-file-excel-o</Property>
+          <Property name="menu">menuExport</Property>
+          <Property name="action">exportExcel</Property>
+        </Button>
+      </Container>
+    </AutoForm>
+    <Container layoutConstraint="center">
+      <Property name="exClassName">bg-color</Property>
+      <AutoForm id="autoForm1" layoutConstraint="top">
+        <Property name="cols">*,*,*,*,*,*,*</Property>
+        <Property name="dataSet">dsQuery</Property>
+        <Property name="labelAlign">right</Property>
+        <Property name="showHint">false</Property>
+        <AutoFormElement layoutConstraint="colSpan:7">
+          <Property name="name">title</Property>
+          <Property name="property">title</Property>
+          <Property name="showLabel">false</Property>
+          <Property name="editorType">Label</Property>
+          <Property name="style">
+            <Property name="font">bold 30px Georgia, serif;</Property>
+            <Property name="text-align">center</Property>
+          </Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement layoutConstraint="colSpan:2">
+          <Property name="name">timeDesc</Property>
+          <Property name="property">timeDesc</Property>
+          <Property name="editorType">Label</Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement>
+          <Property name="name">none</Property>
+          <Property name="property">none</Property>
+          <Property name="editorType">Label</Property>
+          <Property name="showLabel">false</Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement>
+          <Property name="name">none</Property>
+          <Property name="property">none</Property>
+          <Property name="editorType">Label</Property>
+          <Property name="showLabel">false</Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement>
+          <Property name="name">none</Property>
+          <Property name="property">none</Property>
+          <Property name="editorType">Label</Property>
+          <Property name="showLabel">false</Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement>
+          <Property name="name">none</Property>
+          <Property name="property">none</Property>
+          <Property name="editorType">Label</Property>
+          <Property name="showLabel">false</Property>
+          <Editor/>
+        </AutoFormElement>
+        <AutoFormElement>
+          <Property name="name">unit</Property>
+          <Property name="property">unit</Property>
+          <Property name="editorType">Label</Property>
+          <Editor/>
+        </AutoFormElement>
+      </AutoForm>
+      <DataGrid id="dataGridMain" layoutConstraint="center">
+        <ClientEvent name="onRenderRow">if(arg.data.get('id') == '鍚堣'){&#xD;
+	//arg.dom.style.background = &quot;#fcc5c5&quot;;&#xD;
+	arg.dom.style.fontWeight = &quot;bold&quot;;&#xD;
+	//arg.processDefault = false;&#xD;
+}</ClientEvent>
+        <Property name="dataSet">dsMain</Property>
+        <Property name="readOnly">true</Property>
+        <Property name="highlightCurrentRow">false</Property>
+        <DataColumn>
+          <Property name="property">remarks</Property>
+          <Property name="width">50</Property>
+          <Property name="align">center</Property>
+          <Property name="name">remarks</Property>
+          <Property name="caption">搴忓彿</Property>
+        </DataColumn>
+        <DataColumn name="id">
+          <Property name="property">id</Property>
+          <Property name="width">130</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn>
+          <Property name="property">registerTime</Property>
+          <Property name="caption">鐧昏鏃堕棿</Property>
+          <Property name="width">140</Property>
+          <Property name="align">center</Property>
+          <Property name="name">registerTime</Property>
+        </DataColumn>
+        <DataColumn name="plateNum">
+          <Property name="property">plateNum</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="customerName">
+          <Property name="property">customerName</Property>
+          <Property name="width">180</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="type">
+          <Property name="property">type</Property>
+          <Property name="caption">绫诲瀷</Property>
+          <Property name="width">80</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="foodVariety">
+          <Property name="property">foodVariety</Property>
+          <Property name="caption">鍝佺</Property>
+          <Property name="width">100</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="depotId">
+          <Property name="property">depotId</Property>
+          <Property name="caption">浠撳簱</Property>
+          <Property name="width">80</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="fullWeight">
+          <Property name="property">fullWeight</Property>
+          <Property name="caption">姣涢噸</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="emptyWeight">
+          <Property name="property">emptyWeight</Property>
+          <Property name="caption">鐨噸</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="netWeight">
+          <Property name="property">netWeight</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn name="settleWeight">
+          <Property name="property">settleWeight</Property>
+          <Property name="caption">缁撶畻閲嶉噺</Property>
+          <Property name="align">center</Property>
+        </DataColumn>
+        <DataColumn>
+          <Property name="property">completeTime</Property>
+          <Property name="align">center</Property>
+          <Property name="name">completeTime</Property>
+        </DataColumn>
+        <DataColumn>
+          <Property name="property">noticeId</Property>
+          <Property name="align">center</Property>
+          <Property name="name">noticeId</Property>
+        </DataColumn>
+      </DataGrid>
+    </Container>
+  </View>
+</ViewConfig>
diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetailPR.java b/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetailPR.java
new file mode 100644
index 0000000..8285130
--- /dev/null
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/ReportInoutDetailPR.java
@@ -0,0 +1,117 @@
+package com.fzzy.igds;
+
+import com.bstek.dorado.annotation.DataProvider;
+import com.fzzy.igds.data.InoutParam;
+import com.fzzy.igds.domain.InoutRecord;
+import com.fzzy.igds.service.InoutRecordService;
+import com.fzzy.igds.service.SysDeptService;
+import com.fzzy.igds.utils.ContextUtil;
+import com.fzzy.igds.utils.DateUtil;
+import com.ruoyi.common.core.domain.entity.SysDept;
+import com.ruoyi.common.utils.StringUtils;
+import org.apache.commons.lang3.time.DateFormatUtils;
+import org.springframework.stereotype.Component;
+
+import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+@Component
+public class ReportInoutDetailPR {
+
+    @Resource
+    private InoutRecordService inoutReportService;
+    @Resource
+    private SysDeptService sysDeptService;
+
+    /**
+     * reportInoutDetailPR#getQuery 鏍规嵁鎶ヨ〃绫诲瀷锛岃幏鍙栭粯璁ゆ煡璇俊鎭紝姣斿琛ㄥご淇℃伅绛�
+     *
+     * @param
+     * @return
+     */
+    @DataProvider
+    public InoutParam getQuery(InoutParam param) {
+        InoutParam result = new InoutParam();
+        //鑾峰彇鍙傛暟涓垎搴撶紪鐮�
+        String deptId = param.getDeptId();
+        //鑾峰彇鍒嗗簱缂栫爜瀵瑰簲鐨勫垎搴撳悕绉�
+        String deptName = "";
+        SysDept subDept = sysDeptService.getCacheDept(null, ContextUtil.subDeptId(null));
+        if (null != subDept) {
+            deptName = subDept.getDeptName();
+        }
+        result.setTitle("鍑哄叆搴撴槑缁嗘眹鎬�");
+        if (StringUtils.isNotEmpty(deptName)) {
+            result.setTitle(deptName + "鍑哄叆搴撴槑缁嗘眹鎬�");
+            result.setDeptId(deptId);
+        }
+        result.setUnit("鍗冨厠锛圞G锛�");
+        result.setEnd(new Date());
+        Date start = DateUtil.getNewByDay(new Date(), -30);
+        result.setStart(start);
+
+        result.setTimeDesc(
+                DateFormatUtils.format(start, "yyyy-MM-dd") + "   鎴嚦锛�"
+                        + DateFormatUtils.format(new Date(), "yyyy-MM-dd"));
+        return result;
+    }
+
+    /**
+     * 鍑哄叆搴撴眹鎬昏〃
+     * reportInoutDetailPR#listRecord 鎶ヨ〃鏁版嵁锛屽彧鑾峰彇宸茬粡瀹屾垚鐨勶紝骞朵笖闈炲紓甯告暟鎹拰鍒犻櫎鏁版嵁
+     *
+     * @param param
+     * @return
+     */
+    @DataProvider
+    public List<InoutRecord> listRecord(InoutParam param) {
+
+        if (null == param) {
+            param = new InoutParam();
+        }
+        //澶氬弬鏁板垎椤垫煡璇�
+        com.baomidou.mybatisplus.extension.plugins.pagination.Page<InoutRecord> corePage = new com.baomidou.mybatisplus.extension.plugins.pagination.Page<>(0, 10000);
+        inoutReportService.listPageInout(corePage, param);
+        //鑾峰彇鏌ヨ鍒板緱list鏁版嵁
+        List<InoutRecord> result = corePage.getRecords();
+        if (null == result || result.isEmpty()) {
+            return result;
+        }
+
+        // 娣诲姞缁熻淇℃伅
+        double emptyWeightSum = 0.0, fullWeightSum = 0.0, deCheck = 0.0, addCheck = 0.0, deWetSum = 0.0, deImpuritySum = 0.0, deHandleSum = 0.0, deOtherSum = 0.0, deSumSum = 0.0, netWeightSum = 0.0, settleWeightSum = 0.0;
+        int index = 1;
+        List<InoutRecord> list = new ArrayList<>();
+        for (InoutRecord record : result) {
+            list.add(record);
+            record.setRemarks(String.valueOf(index));
+            emptyWeightSum += record.getEmptyWeight();
+            fullWeightSum += record.getFullWeight();
+            deOtherSum += record.getDeOther();
+            netWeightSum += record.getNetWeight();
+            settleWeightSum += record.getSettleWeight();
+            index++;
+        }
+        InoutRecord sum = new InoutRecord();
+        sum.setId("鍚堣");
+        sum.setEmptyWeight(emptyWeightSum);
+        sum.setFullWeight(fullWeightSum);
+        sum.setDeOther(deOtherSum);
+        sum.setNetWeight(netWeightSum);
+        sum.setSettleWeight(settleWeightSum);
+
+        if (sum.getNoticeId() == null) sum.setNoticeId("");
+        if (sum.getDepotId() == null) sum.setDepotId("");
+        if (sum.getProgress() == null) sum.setProgress("");
+        if (sum.getUserName() == null) sum.setUserName("");
+        if (sum.getPlateNum() == null) sum.setPlateNum("");
+        if (sum.getFoodVariety() == null) sum.setFoodVariety("");
+
+        list.add(sum);
+
+        return list;
+    }
+
+}

--
Gitblit v1.9.3