From d2057f9fd66a382e615b449d1e8b6990c34a0599 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 15 一月 2025 09:18:22 +0800
Subject: [PATCH] 对接口

---
 admin/src/views/stock/check.vue                                     |   77 +++++-------
 admin/src/views/Inspection/components/OperaYwPatrolSchemeWindow.vue |   52 ++++++++
 admin/src/views/finance/collectionSettings.vue                      |   14 ++
 admin/src/views/contract/components/terminateLease.vue              |   23 ++-
 admin/src/api/ywProblem.js                                          |   23 +++
 admin/src/api/ywTempConfig.js                                       |    8 +
 admin/src/api/ywStock.js                                            |    8 +
 admin/src/api/ywStocktaking.js                                      |   23 +++
 admin/src/views/stock/query.vue                                     |   66 +++--------
 admin/src/views/workorder/problemReporting.vue                      |   18 +-
 10 files changed, 198 insertions(+), 114 deletions(-)

diff --git a/admin/src/api/ywProblem.js b/admin/src/api/ywProblem.js
new file mode 100644
index 0000000..52c9a57
--- /dev/null
+++ b/admin/src/api/ywProblem.js
@@ -0,0 +1,23 @@
+import request from '@/utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywProblem/page', data, {
+    trim: true
+  })
+}
+
+// 鍒涘缓
+export function create (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywProblem/create', data)
+}
+
+// 鏍规嵁ID淇敼
+export function updateById (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywProblem/updateById', data)
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+  return request.get(`/visitsAdmin/cloudService/business/ywProblem/delete/${id}`)
+}
diff --git a/admin/src/api/ywStock.js b/admin/src/api/ywStock.js
new file mode 100644
index 0000000..7ef5388
--- /dev/null
+++ b/admin/src/api/ywStock.js
@@ -0,0 +1,8 @@
+import request from '@/utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywStock/page', data, {
+    trim: true
+  })
+}
diff --git a/admin/src/api/ywStocktaking.js b/admin/src/api/ywStocktaking.js
new file mode 100644
index 0000000..eda4a31
--- /dev/null
+++ b/admin/src/api/ywStocktaking.js
@@ -0,0 +1,23 @@
+import request from '@/utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywStocktaking/page', data, {
+    trim: true
+  })
+}
+
+// 鍒涘缓
+export function create (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywStocktaking/create', data)
+}
+
+// 鏍规嵁ID淇敼
+export function updateById (data) {
+  return request.post('/visitsAdmin/cloudService/business/ywStocktaking/updateById', data)
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+  return request.get(`/visitsAdmin/cloudService/business/ywStocktaking/delete/${id}`)
+}
diff --git a/admin/src/api/ywTempConfig.js b/admin/src/api/ywTempConfig.js
new file mode 100644
index 0000000..a167130
--- /dev/null
+++ b/admin/src/api/ywTempConfig.js
@@ -0,0 +1,8 @@
+import request from '@/utils/request'
+
+// 鑾峰彇鏁版嵁
+export function getCallTemp (data) {
+  return request.get('/visitsAdmin/cloudService/business/ywTempConfig/getCallTemp', data, {
+    trim: true
+  })
+}
diff --git a/admin/src/views/Inspection/components/OperaYwPatrolSchemeWindow.vue b/admin/src/views/Inspection/components/OperaYwPatrolSchemeWindow.vue
index 0e58415..343b02b 100644
--- a/admin/src/views/Inspection/components/OperaYwPatrolSchemeWindow.vue
+++ b/admin/src/views/Inspection/components/OperaYwPatrolSchemeWindow.vue
@@ -14,7 +14,7 @@
         </el-select>
       </el-form-item>
       <el-form-item label="宸℃璐熻矗浜�" prop="userIds">
-        <el-select v-model="form.userIds" filterable clearable>
+        <el-select v-model="form.userIds" multiple filterable clearable>
           <el-option v-for="item in staffList" :value="item.id" :label="item.realname"></el-option>
         </el-select>
       </el-form-item>
@@ -76,7 +76,7 @@
         status: '',
         sortnum: '',
         lineId: '',
-        userIds: '',
+        userIds: [],
         dealUserId: '',
         dealDate: '',
         dealInfo: '',
@@ -118,6 +118,52 @@
     })
   },
   methods: {
+    __confirmCreate () {
+      this.$refs.form.validate((valid) => {
+        if (!valid) {
+          return
+        }
+        let obj = JSON.parse(JSON.stringify(this.form))
+        obj.userIds = obj.userIds.join(',')
+        // 璋冪敤鏂板缓鎺ュ彛
+        this.isWorking = true
+        this.api.create(obj)
+          .then(() => {
+            this.visible = false
+            this.$tip.apiSuccess('鏂板缓鎴愬姛')
+            this.$emit('success')
+          })
+          .catch(e => {
+            // this.$tip.apiFailed(e)
+          })
+          .finally(() => {
+            this.isWorking = false
+          })
+      })
+    },
+    __confirmEdit () {
+      this.$refs.form.validate((valid) => {
+        if (!valid) {
+          return
+        }
+        let obj = JSON.parse(JSON.stringify(this.form))
+        obj.userIds = obj.userIds.join(',')
+        // 璋冪敤鏂板缓鎺ュ彛
+        this.isWorking = true
+        this.api.updateById(obj)
+          .then(() => {
+            this.visible = false
+            this.$tip.apiSuccess('淇敼鎴愬姛')
+            this.$emit('success')
+          })
+          .catch(e => {
+            // this.$tip.apiFailed(e)
+          })
+          .finally(() => {
+            this.isWorking = false
+          })
+      })
+    },
     weekClick(i) {
       this.weeks.forEach((item, index) => {
         if (i == index) { item.sel = !item.sel }
@@ -239,4 +285,4 @@
     border: 1px solid $primary-color;
   }
 }
-</style>
\ No newline at end of file
+</style>
diff --git a/admin/src/views/contract/components/terminateLease.vue b/admin/src/views/contract/components/terminateLease.vue
index 3748d6f..0f0fd5d 100644
--- a/admin/src/views/contract/components/terminateLease.vue
+++ b/admin/src/views/contract/components/terminateLease.vue
@@ -86,12 +86,19 @@
                 <el-table-column
                     width="100"
                     label="璐圭敤绫诲瀷">
-                    <template slot-scope="{row}">
-                        <span v-if="row.costType === 0">绉熻祦璐�</span>
-                        <span v-if="row.costType === 1">鐗╀笟璐�</span>
-                        <span v-if="row.costType === 4">姘寸數璐�</span>
-                        <span v-if="row.costType === 5">鏉傞」璐�</span>
-                        <span v-if="row.costType === 6">鍏朵粬</span>
+                    <template slot-scope="scope">
+                        <div style="display: flex; align-items: center;">
+                            <span v-if="scope.row.costType === 0">绉熻祦璐�</span>
+                            <span v-if="scope.row.costType === 1">鐗╀笟璐�</span>
+                            <span v-if="scope.row.costType === 4">姘寸數璐�</span>
+                            <span v-if="scope.row.costType === 5">鏉傞」璐�</span>
+                            <span v-if="scope.row.costType === 6">鍏朵粬</span>
+                            <i class="el-icon-delete"
+                               style="color: red; margin-left: 10px; font-size: 18px; cursor: pointer;"
+                               @click="deleRow(scope.$index)"
+                               v-if="scope.row.date && scope.row.date.length !==0">
+                            </i>
+                        </div>
                     </template>
                 </el-table-column>
                 <el-table-column
@@ -270,6 +277,10 @@
         this.changeBtDate(this.form.btDate)
         this.visible = true
       },
+      deleRow(index) {
+        this.info.terminateList.splice(index, 1)
+        this.countData()
+      },
       getDayTime () {
         const today = new Date();
         const year = today.getFullYear();
diff --git a/admin/src/views/finance/collectionSettings.vue b/admin/src/views/finance/collectionSettings.vue
index 6e428e0..42b37e6 100644
--- a/admin/src/views/finance/collectionSettings.vue
+++ b/admin/src/views/finance/collectionSettings.vue
@@ -25,6 +25,7 @@
 
 <script>
     import templateKeywords from './components/templateKeywords'
+    import { getCallTemp } from '@/api/ywTempConfig'
   export default {
     name: 'collectionSettings',
     data() {
@@ -34,7 +35,18 @@
         }
       }
     },
-    components: { templateKeywords }
+    components: { templateKeywords },
+    created () {
+      this.getCallTempVal()
+    },
+    methods: {
+      getCallTempVal() {
+        getCallTemp({})
+            .then(res => {
+              console.log(res)
+            })
+      }
+    }
   }
 </script>
 
diff --git a/admin/src/views/stock/check.vue b/admin/src/views/stock/check.vue
index eaebf2d..2048c22 100644
--- a/admin/src/views/stock/check.vue
+++ b/admin/src/views/stock/check.vue
@@ -5,18 +5,25 @@
       <el-button type="primary" @click="handleEx()" v-permissions="['business:ywpatrolline:create']">娣诲姞</el-button>
     </div>
     <el-table v-loading="loading" :data="list" stripe>
-      <el-table-column prop="platformName" label="鐩樼偣鍗曞悕绉�" min-width="120" show-overflow-tooltip />
-      <el-table-column prop="platformGroupName" label="鐩樼偣浠撳簱" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="carCodeFront" label="鐩樼偣鍛�" min-width="80" show-overflow-tooltip />
-      <el-table-column prop="carCodeBack" label="鐩樼偣鏃ユ湡" min-width="110" show-overflow-tooltip />
-      <el-table-column prop="param1" label="鍒涘缓浜�" min-width="80" show-overflow-tooltip />
-      <el-table-column prop="param2" label="鍒涘缓鏃堕棿" min-width="140" show-overflow-tooltip />
-      <el-table-column prop="workTime" label="鐩樼偣鐘舵��" min-width="80" show-overflow-tooltip />
+      <el-table-column prop="name" label="鐩樼偣鍗曞悕绉�" min-width="120" show-overflow-tooltip />
+      <el-table-column prop="warehouseName" label="鐩樼偣浠撳簱" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="userName" label="鐩樼偣鍛�" min-width="80" show-overflow-tooltip />
+      <el-table-column prop="dealDate" label="鐩樼偣鏃ユ湡" min-width="110" show-overflow-tooltip />
+      <el-table-column prop="createName" label="鍒涘缓浜�" min-width="80" show-overflow-tooltip />
+      <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="140" show-overflow-tooltip />
+      <el-table-column label="鐩樼偣鐘舵��" min-width="80">
+        <template v-slot="{ row }">
+          <span v-if="row.status === 0">鏈紑濮�</span>
+          <span v-if="row.status === 1">杩涜涓�</span>
+          <span v-if="row.status === 2">宸插畬鎴�</span>
+          <span v-if="row.status === 3">宸插彇娑�</span>
+        </template>
+      </el-table-column>
       <el-table-column prop="workTime" label="鎿嶄綔" min-width="140" show-overflow-tooltip>
         <template v-slot="{ row }">
-          <span class="primaryColor pointer">鏌ョ湅璇︽儏</span>
-          <span class="primaryColor pointer">鍙栨秷</span>
-          <span class="primaryColor pointer">鍒犻櫎</span>
+          <el-button type="text">鏌ョ湅璇︽儏</el-button>
+          <el-button type="text">鍙栨秷</el-button>
+          <el-button type="text">鍒犻櫎</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -32,7 +39,7 @@
 import dayjs from 'dayjs'
 import duration from 'dayjs/plugin/duration'
 dayjs.extend(duration)
-import { platformLogPage, getPlatformGroupList } from '@/api'
+import { fetchList } from '@/api/ywStocktaking'
 export default {
   components: {
     Pagination,
@@ -52,15 +59,20 @@
       queryFormConfig: {
         formItems: [
           {
-            filed: 'carCodeFront',
+            filed: 'name',
             type: 'input',
-            label: '鐩樼偣鍗�',
+            label: '鐩樼偣鍗曞悕绉�',
           },
           {
-            filed: 'platformGroupId',
+            filed: 'status',
             type: 'select',
             label: '鐩樼偣鐘舵��',
-            options: []
+            options: [
+              { value: 0, label: '鏈紑濮�' },
+              { value: 1, label: '杩涜涓�' },
+              { value: 2, label: '宸插畬鎴�' },
+              { value: 3, label: '宸插彇娑�' }
+            ]
           },
         ],
         online: true
@@ -68,50 +80,21 @@
     }
   },
   created() {
-    // this.getList()
-    // this.getGroupList()
+    this.getList()
   },
   methods: {
-    handleSub() {
-      this.$refs.ruleForm.validate((valid) => {
-        if (valid) {
-          alert('submit!')
-        }
-      })
-    },
-    handleEx() { },
-    getGroupList() {
-      getPlatformGroupList({ queryData: 0, queryType: 0 }).then(res => {
-        this.queryFormConfig.formItems[1].options = res.map(i => {
-          return {
-            value: i.id,
-            label: i.name
-          }
-        })
-        // this.queryFormConfig.formItems[1].options.unshift({ value: '', label: '鍏ㄩ儴鏈堝彴缁�' })
-      })
-    },
     getList(page) {
       const { pagination, filters } = this
       this.loading = true
-      platformLogPage({
+      fetchList({
         model: {
-          ...filters,
-          queryStatus: '6,7,8',
-          beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
-          beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null,
+          ...filters
         },
-        sorts: [{ direction: 'DESC', property: 'param1' }],
         capacity: pagination.pageSize,
         page: page || pagination.page,
       }).then(res => {
         this.loading = false
         this.list = res.records || []
-        this.list.forEach(item => {
-          item.inTypeTemp = item.inType == 0 ? '鏁存墭鐩�' : '浠剁儫'
-          item.taskOrigin = 'WMS鑾峰彇'
-          item.workTime = dayjs.duration(item.param3, 'seconds').format('H鏃秏鍒唖绉�')
-        })
         this.pagination.total = res.total || 0
       }, () => {
         this.loading = false
diff --git a/admin/src/views/stock/query.vue b/admin/src/views/stock/query.vue
index 3dd9bdb..e46add8 100644
--- a/admin/src/views/stock/query.vue
+++ b/admin/src/views/stock/query.vue
@@ -2,16 +2,16 @@
   <div class="main_app">
     <QueryForm v-model="filters" :query-form-config="queryFormConfig" @handleQuery="getList(1)" @clear="clear" />
     <div class="mt20">
-      <el-button @click="handleEx()" v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button>
+      <el-button v-permissions="['business:ywpatrolline:create']">瀵煎嚭</el-button>
     </div>
     <el-table v-loading="loading" :data="list" stripe>
-      <el-table-column prop="platformName" label="璧勪骇缂栫爜" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="platformGroupName" label="璧勪骇鍚嶇О" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="carCodeFront" label="鏉$爜" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="carCodeBack" label="鍝佺墝" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="param1" label="瑙勬牸鍨嬪彿" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="param2" label="鎵�鍦ㄤ粨搴�" min-width="100" show-overflow-tooltip />
-      <el-table-column prop="workTime" label="搴撳瓨" min-width="80" show-overflow-tooltip />
+      <el-table-column prop="materialId" label="璧勪骇缂栫爜" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="materialName" label="璧勪骇鍚嶇О" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="materialQrcode" label="鏉$爜" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="materialBrand" label="鍝佺墝" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="materialAttr" label="瑙勬牸鍨嬪彿" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="warehouseName" label="鎵�鍦ㄤ粨搴�" min-width="100" show-overflow-tooltip />
+      <el-table-column prop="stock" label="搴撳瓨" min-width="80" show-overflow-tooltip />
     </el-table>
     <div class="mt20">
       <Pagination @size-change="handleSizeChange" @current-change="getList" :pagination="pagination" />
@@ -25,7 +25,7 @@
 import dayjs from 'dayjs'
 import duration from 'dayjs/plugin/duration'
 dayjs.extend(duration)
-import { platformLogPage, getPlatformGroupList } from '@/api'
+import { fetchList } from '@/api/ywStock'
 export default {
   components: {
     Pagination,
@@ -45,72 +45,42 @@
       queryFormConfig: {
         formItems: [
           {
-            filed: 'platformGroupId',
+            filed: 'warehouseId',
             type: 'select',
             label: '鎵�鍦ㄤ粨搴�',
             options: []
           },
           {
-            filed: 'carCodeFront',
+            filed: 'materialId',
             type: 'input',
-            label: '璧勪骇淇℃伅',
-            placeholder: '璇疯緭鍏ヨ祫浜у悕绉�/缂栫爜'
+            label: '鐗╂枡鍚嶇О/缂栫爜',
+            placeholder: '璇疯緭鍏ョ墿鏂欏悕绉�/缂栫爜'
           },
           {
-            filed: 'carCodeFront',
+            filed: 'materialAttr',
             type: 'input',
             label: '鍨嬪彿',
           },
-        ],
-        online: true
+        ]
       }
     }
   },
   created() {
-    // this.getList()
-    // this.getGroupList()
+    this.getList()
   },
   methods: {
-    handleSub() {
-      this.$refs.ruleForm.validate((valid) => {
-        if (valid) {
-          alert('submit!')
-        }
-      })
-    },
-    handleEx() { },
-    getGroupList() {
-      getPlatformGroupList({ queryData: 0, queryType: 0 }).then(res => {
-        this.queryFormConfig.formItems[1].options = res.map(i => {
-          return {
-            value: i.id,
-            label: i.name
-          }
-        })
-        // this.queryFormConfig.formItems[1].options.unshift({ value: '', label: '鍏ㄩ儴鏈堝彴缁�' })
-      })
-    },
     getList(page) {
       const { pagination, filters } = this
       this.loading = true
-      platformLogPage({
+      fetchList({
         model: {
-          ...filters,
-          queryStatus: '6,7,8',
-          beginWorkDateStart: filters.selDate && filters.selDate.length > 0 ? filters.selDate[0] : null,
-          beginWorkDateEnd: filters.selDate && filters.selDate.length > 0 ? filters.selDate[1] : null,
+          ...filters
         },
-        sorts: [{ direction: 'DESC', property: 'param1' }],
         capacity: pagination.pageSize,
         page: page || pagination.page,
       }).then(res => {
         this.loading = false
         this.list = res.records || []
-        this.list.forEach(item => {
-          item.inTypeTemp = item.inType == 0 ? '鏁存墭鐩�' : '浠剁儫'
-          item.taskOrigin = 'WMS鑾峰彇'
-          item.workTime = dayjs.duration(item.param3, 'seconds').format('H鏃秏鍒唖绉�')
-        })
         this.pagination.total = res.total || 0
       }, () => {
         this.loading = false
diff --git a/admin/src/views/workorder/problemReporting.vue b/admin/src/views/workorder/problemReporting.vue
index 98a65ed..814bd32 100644
--- a/admin/src/views/workorder/problemReporting.vue
+++ b/admin/src/views/workorder/problemReporting.vue
@@ -28,20 +28,20 @@
         <!-- 琛ㄦ牸鍜屽垎椤� -->
         <template v-slot:table-wrap>
             <el-table v-loading="isWorking.search" :data="tableData.list" stripe>
-                <el-table-column prop="areaType" label="鎻忚堪" min-width="70px"></el-table-column>
-                <el-table-column prop="areaType" label="浣嶇疆" min-width="100px"></el-table-column>
+                <el-table-column prop="remark" label="鎻忚堪" min-width="70px"></el-table-column>
+                <el-table-column prop="position" label="浣嶇疆" min-width="100px"></el-table-column>
                 <el-table-column prop="categoryName" label="鐜板満鍥剧墖" min-width="100px"></el-table-column>
-                <el-table-column prop="creatorName" label="涓婃姤浜�" min-width="80px"></el-table-column>
-                <el-table-column prop="createDate" label="涓婃姤浜虹數璇�" min-width="100px"></el-table-column>
-                <el-table-column prop="dealUserName" label="涓婃姤鏃堕棿" min-width="80px"></el-table-column>
+                <el-table-column prop="name" label="涓婃姤浜�" min-width="80px"></el-table-column>
+                <el-table-column prop="phone" label="涓婃姤浜虹數璇�" min-width="100px"></el-table-column>
+                <el-table-column prop="submitDate" label="涓婃姤鏃堕棿" min-width="80px"></el-table-column>
                 <el-table-column label="澶勭悊鐘舵��" min-width="70px">
                     <template slot-scope="{row}">
                         <span v-if="row.dealStatus == 0">寰呮寚娲�</span>
                         <span v-if="row.dealStatus == 1">宸叉寚娲�</span>
                         <span v-if="row.dealStatus == 2">宸插鐞�</span>
-                    </template>
+                    </template>`
                 </el-table-column>
-                <el-table-column prop="creatorName" label="澶勭悊浜�" min-width="80px"></el-table-column>
+                <el-table-column prop="dealUserName" label="澶勭悊浜�" min-width="80px"></el-table-column>
                 <el-table-column
                     v-if="containPermissions(['business:ywworkorder:update'])"
                     label="鎿嶄綔"
@@ -91,8 +91,8 @@
     },
     created() {
       this.config({
-        module: '杩愮淮宸ュ崟淇℃伅琛�',
-        api: '/workorder/ywWorkorder',
+        module: '闂涓婃姤淇℃伅琛�',
+        api: '/ywProblem',
         'field.id': 'id',
         'field.main': 'id'
       })

--
Gitblit v1.9.3