From 878b6958363308a7d07b7b8197dc19662f3e1198 Mon Sep 17 00:00:00 2001
From: sgj <1442489573@qq.com>
Date: 星期五, 27 三月 2026 15:40:22 +0800
Subject: [PATCH] 获取出入库id,逻辑优化调整

---
 fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCamera.view.xml |  277 ++++++++++++++++++++++++++++++++++++++++--------------
 1 files changed, 203 insertions(+), 74 deletions(-)

diff --git a/fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCamera.view.xml b/fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCamera.view.xml
index ad29ee1..17a0c0c 100644
--- a/fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCamera.view.xml
+++ b/fzzy-igdss-view/src/main/java/com/fzzy/igds/SecCamera.view.xml
@@ -133,11 +133,10 @@
         <Property></Property>
         <Property name="label">鎵�灞炲簱鍖�</Property>
         <Property name="mapping">
-          <Property name="mapValues">${dorado.getDataProvider(&quot;deptPR#getAllData&quot;).getResult()}</Property>
+          <Property name="mapValues">${dorado.getDataProvider(&quot;deptPR#getDeptByUserType&quot;).getResult()}</Property>
           <Property name="keyProperty">id</Property>
           <Property name="valueProperty">kqmc</Property>
         </Property>
-        <Property name="readOnly">true</Property>
       </PropertyDef>
       <PropertyDef name="name">
         <Property></Property>
@@ -188,7 +187,6 @@
       </PropertyDef>
       <PropertyDef name="sort">
         <Property name="label">閰嶅搴忓彿</Property>
-        <Property name="required">true</Property>
         <Property name="mapping">
           <Property name="mapValues">
             <Collection>
@@ -260,6 +258,16 @@
         <Property name="label">鎶撴媿鏂瑰紡</Property>
         <Property name="mapping">
           <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#triggerSnapType&quot;).getResult()}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="ptzType">
+        <Property></Property>
+        <Property name="label">浜戝彴鏂瑰紡</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#triggerPtzType&quot;).getResult()}</Property>
           <Property name="keyProperty">dictValue</Property>
           <Property name="valueProperty">dictLabel</Property>
         </Property>
@@ -471,6 +479,29 @@
         <Property name="readOnly">true</Property>
       </PropertyDef>
     </DataType>
+    <DataType name="dtPull">
+      <Property name="creationType">com.fzzy.igds.domain.Camera</Property>
+      <PropertyDef name="deptId">
+        <Property></Property>
+        <Property name="label">鍚屾搴撳尯</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;deptPR#getDeptByUserType&quot;).getResult()}</Property>
+          <Property name="keyProperty">id</Property>
+          <Property name="valueProperty">kqmc</Property>
+        </Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+      <PropertyDef name="playType">
+        <Property></Property>
+        <Property name="label">鎾斁鏂瑰紡</Property>
+        <Property name="mapping">
+          <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#triggerPlayType&quot;).getResult()}</Property>
+          <Property name="keyProperty">dictValue</Property>
+          <Property name="valueProperty">dictLabel</Property>
+        </Property>
+        <Property name="required">true</Property>
+      </PropertyDef>
+    </DataType>
   </Model>
   <View layout="padding:10">
     <ClientEvent name="onClick">&#xD;
@@ -542,10 +573,14 @@
       <ClientEvent name="onReady">self.insert({});</ClientEvent>
       <Property name="dataType">dtSecCameraParam</Property>
     </DataSet>
+    <DataSet id="dsPull">
+      <ClientEvent name="onReady">self.insert({});</ClientEvent>
+      <Property name="dataType">dtPull</Property>
+    </DataSet>
     <Container>
       <Property name="className">c-param</Property>
       <AutoForm>
-        <Property name="cols">*,*,*,*,90,90</Property>
+        <Property name="cols">*,*,*,*,90,90,120</Property>
         <Property name="dataSet">dsParam</Property>
         <Property name="labelAlign">right</Property>
         <Property name="labelWidth">100</Property>
@@ -571,7 +606,7 @@
         </AutoFormElement>
         <Button>
           <ClientEvent name="onClick">var param = view.get(&quot;#dsParam.data&quot;);&#xD;
-view.get(&quot;#dsMain&quot;).set(&quot;parameter&quot;,param.toJSON()).flushAsync();</ClientEvent>
+view.get(&quot;#dsMain&quot;).set(&quot;parameter&quot;,param).flushAsync();</ClientEvent>
           <Property name="caption">鎼滅储</Property>
           <Property name="iconClass">fa fa-search</Property>
           <Property name="exClassName">btn-q1</Property>
@@ -581,6 +616,15 @@
           <Property name="caption">閲嶇疆</Property>
           <Property name="exClassName">btn-q2</Property>
           <Property name="iconClass">fa fa-refresh</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">
+            var url = &quot;/com.fzzy.igds.ConfByDept.d&quot;;&#xD;
+            window.$openTab(&quot;搴撳尯閰嶇疆&quot;, url);
+          </ClientEvent>
+          <Property name="caption">搴撳尯閰嶇疆</Property>
+          <Property name="exClassName">btn-q1</Property>
+          <Property name="iconClass">fa fa-plus-square</Property>
         </Button>
       </AutoForm>
     </Container>
@@ -631,6 +675,13 @@
           <Property name="iconClass">fa fa-refresh</Property>
           <Property name="width">100</Property>
           <Property name="action">refreshCache</Property>
+        </ToolBarButton>
+        <ToolBarButton>
+          <ClientEvent name="onClick">view.get(&quot;#dialogPull&quot;).show();</ClientEvent>
+          <Property name="caption">鍚屾鐩戞帶</Property>
+          <Property name="exClassName">btn2</Property>
+          <Property name="iconClass">fa fa-random</Property>
+          <Property name="width">100</Property>
         </ToolBarButton>
       </ToolBar>
       <DataGrid id="dataGridCamera" layoutConstraint="padding:8">
@@ -705,19 +756,20 @@
           <Editor/>
         </DataColumn>
       </DataGrid>
-    </Container>
-    <Container layoutConstraint="bottom">
-      <Property name="className">c-bottom</Property>
-      <DataPilot layoutConstraint="right">
-        <Property name="dataSet">dsMain</Property>
-        <Property name="itemCodes">pageSize,pages</Property>
-      </DataPilot>
+      <ToolBar layoutConstraint="bottom">
+        <Fill/>
+        <DataPilot layoutConstraint="right">
+          <Property name="itemCodes">pageSize,pages</Property>
+          <Property name="dataSet">dsMain</Property>
+        </DataPilot>
+      </ToolBar>
     </Container>
     <Dialog id="dialogMain" layout="regionPadding:8">
       <Property name="iconClass">fa fa-tasks</Property>
-      <Property name="width">1200</Property>
+      <Property name="width">80%</Property>
       <Property name="caption">鐩戞帶淇℃伅</Property>
       <Property name="closeable">false</Property>
+      <Property name="height">90%</Property>
       <Buttons>
         <Button>
           <ClientEvent name="onClick">var data = view.get(&quot;#dsMain.data:#&quot;);&#xD;
@@ -786,6 +838,21 @@
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement>
+                <Property name="name">type</Property>
+                <Property name="property">type</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">brand</Property>
+                <Property name="property">brand</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
+                <Property name="name">ip</Property>
+                <Property name="property">ip</Property>
+                <Editor/>
+              </AutoFormElement>
+              <AutoFormElement>
                 <Property name="name">chanNum</Property>
                 <Property name="property">chanNum</Property>
                 <Editor/>
@@ -796,8 +863,8 @@
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement>
-                <Property name="name">ip</Property>
-                <Property name="property">ip</Property>
+                <Property name="name">spdwlx</Property>
+                <Property name="property">spdwlx</Property>
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement>
@@ -808,16 +875,6 @@
               <AutoFormElement>
                 <Property name="name">webPort</Property>
                 <Property name="property">webPort</Property>
-                <Editor/>
-              </AutoFormElement>
-              <AutoFormElement>
-                <Property name="name">spdwlx</Property>
-                <Property name="property">spdwlx</Property>
-                <Editor/>
-              </AutoFormElement>
-              <AutoFormElement>
-                <Property name="name">sort</Property>
-                <Property name="property">sort</Property>
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement>
@@ -886,13 +943,9 @@
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement layoutConstraint="colSpan:2">
-                <Property name="name">sn</Property>
-                <Property name="property">sn</Property>
-                <Editor>
-                  <TextEditor id="sn">
-                    <Property name="blankText"> -- 娴佸獟浣撳钩鍙颁腑璁惧SN --</Property>
-                  </TextEditor>
-                </Editor>
+                <Property name="name">ptzType</Property>
+                <Property name="property">ptzType</Property>
+                <Editor/>
               </AutoFormElement>
               <AutoFormElement layoutConstraint="colSpan:3">
                 <Property name="name">mediaAddr</Property>
@@ -901,6 +954,15 @@
                 <Editor>
                   <TextEditor id="mediaAddr">
                     <Property name="blankText"> -- 鐐瑰嚮鍙充晶閫夋嫨锛屾垨鑰呮墜鍔ㄥ~鍐� --</Property>
+                  </TextEditor>
+                </Editor>
+              </AutoFormElement>
+              <AutoFormElement layoutConstraint="colSpan:5">
+                <Property name="name">sn</Property>
+                <Property name="property">sn</Property>
+                <Editor>
+                  <TextEditor id="sn">
+                    <Property name="blankText"> -- 娴佸獟浣撳钩鍙颁腑璁惧SN --</Property>
                   </TextEditor>
                 </Editor>
               </AutoFormElement>
@@ -938,28 +1000,69 @@
                 <Editor/>
               </AutoFormElement>
               <AutoFormElement>
-                <Property name="name">createBy</Property>
-                <Property name="property">createBy</Property>
-                <Editor/>
-              </AutoFormElement>
-              <AutoFormElement>
-                <Property name="name">createTime</Property>
-                <Property name="property">createTime</Property>
-                <Editor/>
-              </AutoFormElement>
-              <AutoFormElement>
                 <Property name="name">updateBy</Property>
                 <Property name="property">updateBy</Property>
-                <Editor/>
-              </AutoFormElement>
-              <AutoFormElement>
-                <Property name="name">updateTime</Property>
-                <Property name="property">updateTime</Property>
                 <Editor/>
               </AutoFormElement>
             </AutoForm>
           </Children>
         </FieldSet>
+      </Children>
+      <Tools/>
+    </Dialog>
+    <Dialog id="dialogPull" layout="regionPadding:8">
+      <Property name="iconClass">fa fa-tasks</Property>
+      <Property name="width">35%</Property>
+      <Property name="caption">鍚屾鐩戞帶淇℃伅</Property>
+      <Property name="closeable">false</Property>
+      <Buttons>
+        <Button>
+          <ClientEvent name="onClick">var data = view.get(&quot;#dsPull.data:#&quot;);&#xD;
+if(data.validate() != 'ok'){&#xD;
+    $notify(&quot;鏁版嵁鏍¢獙澶辫触锛侊紒&quot;);&#xD;
+    return;&#xD;
+}&#xD;
+view.get(&quot;#ajaxRemoteMedia&quot;).set(&quot;parameter&quot;,data).execute(function(result){&#xD;
+    if(result){&#xD;
+        $alert(result);&#xD;
+    }else{&#xD;
+        self.get(&quot;parent&quot;).hide();&#xD;
+        query();&#xD;
+    }&#xD;
+});</ClientEvent>
+          <Property name="caption">鍚屾</Property>
+          <Property name="iconClass">fa fa-check-circle</Property>
+          <Property name="exClassName">btn1</Property>
+          <Property name="width">120</Property>
+        </Button>
+        <Button>
+          <ClientEvent name="onClick">var cur = view.get(&quot;#dsMain.data:#&quot;);&#xD;
+            if(cur) cur.cancel();&#xD;
+            self.get(&quot;parent&quot;).hide();</ClientEvent>
+          <Property name="caption">鍙栨秷</Property>
+          <Property name="exClassName">btn3</Property>
+          <Property name="iconClass">fa fa-times-circle</Property>
+          <Property name="width">120</Property>
+        </Button>
+      </Buttons>
+      <Children>
+        <AutoForm>
+          <Property name="dataSet">dsPull</Property>
+          <Property name="cols">*</Property>
+          <Property name="labelWidth">100</Property>
+          <Property name="labelAlign">right</Property>
+          <Property name="labelSeparator">锛�</Property>
+          <AutoFormElement>
+            <Property name="name">deptId</Property>
+            <Property name="property">deptId</Property>
+            <Editor/>
+          </AutoFormElement>
+          <AutoFormElement>
+            <Property name="name">playType</Property>
+            <Property name="property">playType</Property>
+            <Editor/>
+          </AutoFormElement>
+        </AutoForm>
       </Children>
       <Tools/>
     </Dialog>
@@ -974,6 +1077,13 @@
       <Property name="confirmMessage">纭畾瑕佸垹闄ゅ悧锛�</Property>
       <Property name="service">secCameraPR#delCamera</Property>
     </AjaxAction>
+    <UpdateAction id="ajaxRemoteMedia">
+      <Property name="dataResolver">secCameraPR#flushByMedia</Property>
+      <UpdateItem>
+        <Property name="dataSet">dsPull</Property>
+        <Property name="dataPath">[#current]</Property>
+      </UpdateItem>
+    </UpdateAction>
     <Dialog id="dialogVideo">
       <Property name="width">1320</Property>
       <Property name="caption">瑙嗛棰勮</Property>
@@ -994,7 +1104,8 @@
 </ClientEvent>
     </Trigger>
     <Dialog id="dialogMeidaSelect" layout="vbox padding:10">
-      <Property name="width">650</Property>
+      <Property name="width">800</Property>
+      <Property name="height">80%</Property>
       <Property name="caption">娴佸獟浣撳湴鍧�閫夋嫨</Property>
       <Buttons/>
       <Children>
@@ -1010,10 +1121,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text1.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1028,10 +1140,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text2.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1046,10 +1159,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text3.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1064,10 +1178,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text4.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1082,10 +1197,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text5.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1100,10 +1216,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text6.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1118,10 +1235,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text7.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1136,10 +1254,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text8.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1154,10 +1273,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text9.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1172,10 +1292,11 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text10.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
         </Container>
         <Container>
@@ -1190,18 +1311,26 @@
           </Label>
           <Button layoutConstraint="right">
             <ClientEvent name="onClick">view.get(&quot;#mediaAddr&quot;).set(&quot;text&quot;,view.get(&quot;#text11.text&quot;));&#xD;
-view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
-</ClientEvent>
+              view.get(&quot;#dialogMeidaSelect&quot;).hide();&#xD;
+            </ClientEvent>
             <Property name="caption">閫夋嫨</Property>
             <Property name="iconClass">fa fa-check</Property>
+            <Property name="exClassName">btn1</Property>
           </Button>
+        </Container>
+        <Container>
+          <Label>
+            <Property name="text">淇℃伅璇存槑</Property>
+            <Property name="style">
+              <Property name="font-weight">bold</Property>
+            </Property>
+          </Label>
+          <Label>
+            <Property name="text">{0}=鐢ㄦ埛鍚嶏紱{1}=瀵嗙爜锛泏2}=IP锛泏3}=绔彛锛泏4}=閫氶亾鍙凤紱{5}=搴忓垪鍙凤紱</Property>
+          </Label>
         </Container>
       </Children>
       <Tools/>
     </Dialog>
-    <AjaxAction id="ajaxRemoteMedia">
-      <Property name="confirmMessage">纭畾瑕佸悓姝ヤ箞锛�</Property>
-      <Property name="service">secCameraPR#flushByMedia</Property>
-    </AjaxAction>
   </View>
 </ViewConfig>

--
Gitblit v1.9.3