From 4d2251a4054b3d799a9ee8d0c04da82cbd6f34a2 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 30 一月 2024 15:05:11 +0800
Subject: [PATCH] 开发业务接口

---
 company/src/views/business/dispatchUnit.vue                                                |  191 +++++++++++++++++++++----------------
 server/service/src/main/java/com/doumee/dao/business/model/DuWorktype.java                 |    3 
 company/src/components/business/dispatchReview.vue                                         |    9 +
 server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java |   43 ++++----
 company/src/components/business/dispatchUnitDetailsPlat.vue                                |    8 
 company/.env.development                                                                   |    5 
 6 files changed, 146 insertions(+), 113 deletions(-)

diff --git a/company/.env.development b/company/.env.development
index bbd9546..51176a4 100644
--- a/company/.env.development
+++ b/company/.env.development
@@ -2,13 +2,12 @@
 NODE_ENV = 'development'
 
 # 浼佷笟绔�-浠佸悍
-VUE_APP_API = 'http://192.168.0.134:10025/'
+#VUE_APP_API = 'http://192.168.0.134:10025/'
 
 # 骞冲彴绔�-浠佸悍
 # VUE_APP_API = 'http://192.168.0.134:10023/'
 
-# VUE_APP_API = 'http://192.168.0.134:10023/'
 
+ VUE_APP_API = 'http://localhost:10023/'
 # VUE_APP_API = 'http://localhost:10023/'
 
-# VUE_APP_API = 'http://192.168.0.134:10023/'
diff --git a/company/src/components/business/dispatchReview.vue b/company/src/components/business/dispatchReview.vue
index 6a3dfad..207d2c7 100644
--- a/company/src/components/business/dispatchReview.vue
+++ b/company/src/components/business/dispatchReview.vue
@@ -10,7 +10,7 @@
         <div class="form_item">
           <div class="form_item_label"><span>*</span>瀹℃牳璇存槑锛�</div>
           <div class="form_item_val">
-            <el-input type="textarea" v-model="form.checkInfo" :rows="2" placeholder="璇疯緭鍏�"></el-input>
+            <el-input type="textarea" v-model="checkInfo" :rows="2" placeholder="璇疯緭鍏�"></el-input>
           </div>
         </div>
       </div>
@@ -67,8 +67,8 @@
         data () {
             return {
                 // 琛ㄥ崟鏁版嵁
+              checkInfo:'',
                 form: {
-                  checkInfo:'',
                   duSolutionList:[]
                 },
               duSolutionList:[],
@@ -90,7 +90,8 @@
             this.title=title
             this.visible=true
             this.form ={}
-            this.form = target;
+            this.checkInfo=''
+            this.form = target
             this.duSolutionList=[]
             var duSolutionList = this.form.duSolutionList;
             duSolutionList.forEach(item => {
@@ -115,7 +116,7 @@
             this.$dialog.messageConfirm('纭杩涜璇ユ搷浣滃悧锛�')
                 .then(() => {
                   this.isWorking = true
-                  checkWorktype({id:this.form.id,checkInfo:this.form.checkInfo,worktypeStatus:type})
+                  checkWorktype({id:this.form.id,checkInfo:this.checkInfo,worktypeStatus:type})
                       .then(response => {
                         this.visible = false
                         this.$emit('success')
diff --git a/company/src/components/business/dispatchUnitDetailsPlat.vue b/company/src/components/business/dispatchUnitDetailsPlat.vue
index afbdb8a..6af26fc 100644
--- a/company/src/components/business/dispatchUnitDetailsPlat.vue
+++ b/company/src/components/business/dispatchUnitDetailsPlat.vue
@@ -67,9 +67,9 @@
                             <el-table-column
                                 label="鐘舵��">
                                 <template slot-scope="{row}">
-                                    <span v-if="row.status === 0">寰呭鏍�</span>
-                                    <span v-if="row.status === 1">瀹℃牳閫氳繃</span>
-                                    <span v-if="row.status === 2">瀹℃牳涓嶉�氳繃</span>
+                                    <span style="color:#2E68EC"  v-if="row.status === 0">寰呭鏍�</span>
+                                    <span style="color:green"  v-if="row.status === 1">瀹℃牳閫氳繃</span>
+                                    <span style="color:red"  v-if="row.status === 2">瀹℃牳涓嶉�氳繃</span>
                                 </template>
                             </el-table-column>
 <!--                            <el-table-column
@@ -188,8 +188,8 @@
           duSolutionList: [],
           saveDuSolutionDTOList:[ ]
         }
-
         this.form.id = target.id
+        this.form.checkInfo=''
         this.getDetails()
       },
       async getDetails() {
diff --git a/company/src/views/business/dispatchUnit.vue b/company/src/views/business/dispatchUnit.vue
index ba4cdc2..f2d86fd 100644
--- a/company/src/views/business/dispatchUnit.vue
+++ b/company/src/views/business/dispatchUnit.vue
@@ -1,88 +1,115 @@
 <template>
-    <TableLayout :permissions="['business:dispatchunit:query']">
-        <!-- 鎼滅储琛ㄥ崟 -->
-        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
-            <el-form-item label="鎵�灞炲晢鎴�" prop="name">
-                <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ユ墍灞炲晢鎴�" @keypress.enter.native="search"></el-input>
-            </el-form-item>
-            <el-form-item label="娲鹃仯鍗曚綅" prop="name">
-                <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ユ淳閬e崟浣�" @keypress.enter.native="search"></el-input>
-            </el-form-item>
-            <section>
-                <el-button type="primary" @click="search">鎼滅储</el-button>
-                <el-button @click="reset">閲嶇疆</el-button>
-            </section>
-        </el-form>
-        <!-- 琛ㄦ牸鍜屽垎椤� -->
-        <template v-slot:table-wrap>
-<!--            <ul class="toolbar" v-permissions="['business:dispatchunit:create']">-->
-<!--                <li><el-button type="primary" @click="$refs.operaDispatchUnitWindow.open('娲鹃仯鍗曚綅璇︽儏')" icon="el-icon-plus" v-permissions="['business:dispatchunit:create']">鏂板缓</el-button></li>-->
-<!--            </ul>-->
-            <el-table
-                v-loading="isWorking.search"
-                :data="tableData.list"
-                stripe
-            >
-                <el-table-column label="搴忓彿" width="80px">
-                    <template slot-scope="scope">
-                        <span>{{scope.$index + 1}}</span>
-                    </template>
-                </el-table-column>
-                <el-table-column prop="companyId" label="鎵�灞炰紒涓�"></el-table-column>
-                <el-table-column prop="companyId" label="娲鹃仯鍗曚綅"></el-table-column>
-                <el-table-column prop="companyId" label="淇濋櫓鏂规"></el-table-column>
-                <el-table-column prop="unitStatus" label="浼佷笟鐘舵��" min-width="100px">
-                    <template slot-scope="{row}">
-                        <span v-if="row.unitStatus === 0">寰呭鏍�</span>
-                        <span v-if="row.unitStatus === 1">瀹℃牳閫氳繃</span>
-                        <span v-if="row.unitStatus === 2">瀹℃牳涓嶉�氳繃</span>
-                    </template>
-                </el-table-column>
-                <el-table-column prop="unitStatus" label="鎿嶄綔" min-width="100px">
-                    <template slot-scope="{row}">
-                        <span v-if="row.unitStatus === 0">寰呭鏍�</span>
-                        <span v-if="row.unitStatus === 1">瀹℃牳閫氳繃</span>
-                        <span v-if="row.unitStatus === 2">瀹℃牳涓嶉�氳繃</span>
-                    </template>
-                </el-table-column>
-            </el-table>
-            <pagination
-                @size-change="handleSizeChange"
-                @current-change="handlePageChange"
-                :pagination="tableData.pagination"
-            >
-            </pagination>
-        </template>
-        <!-- 璇︽儏 -->
-        <OperaDispatchUnitWindow ref="operaDispatchUnitWindow" @success="handlePageChange"/>
-    </TableLayout>
+  <TableLayout :permissions="['business:dispatchunit:query']">
+    <!-- 鎼滅储琛ㄥ崟 -->
+    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+      <el-form-item label="鎵�灞炰笟" prop="companyId">
+        <el-select v-model="searchForm.companyId" placeholder="璇烽�夋嫨" @change="search">
+          <el-option
+              v-for="item in companyList"
+              :key="item.id"
+              :label="item.name"
+              :value="item.id">
+          </el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="娲鹃仯鍗曚綅" prop="name">
+        <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ユ淳閬e崟浣�" @keypress.enter.native="search"></el-input>
+      </el-form-item>
+      <section>
+        <el-button type="primary" @click="search">鎼滅储</el-button>
+        <el-button @click="reset">閲嶇疆</el-button>
+      </section>
+    </el-form>
+    <!-- 琛ㄦ牸鍜屽垎椤� -->
+    <template v-slot:table-wrap>
+      <el-table
+          v-loading="isWorking.search"
+          :data="tableData.list"
+          stripe
+      >
+        <el-table-column label="搴忓彿" width="80px">
+          <template slot-scope="scope">
+            <span>{{scope.$index + 1}}</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="companyName" label="鎵�灞炰紒涓�" min-width="100px"></el-table-column>
+        <el-table-column prop="name" label="娲鹃仯鍗曚綅" min-width="100px"></el-table-column>
+        <el-table-column label="娲鹃仯鍗曚綅鐘舵��" min-width="100px">
+          <template slot-scope="{row}">
+            <span style="color: #2E68EC" v-if="row.unitStatus === 0">寰呭鏍�</span>
+            <span v-if="row.unitStatus === 1">
+                            <span style="color:#2E68EC" v-if="row.worktypeStatus ==null || row.worktypeStatus === 0">宸ョ寰呭</span>
+                            <span style="color: green" v-else-if="row.worktypeStatus === 1">瀹℃牳閫氳繃</span>
+                            <span style="color: red"  v-else-if="row.worktypeStatus === 2">宸ョ瀹℃牳涓嶉�氳繃</span>
+                        </span>
+            <span style="color: red" v-if="row.unitStatus === 2">瀹℃牳涓嶉�氳繃</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="createDate" label="鎻愪氦鏃ユ湡" min-width="100px"></el-table-column>
+        <el-table-column
+            v-if="containPermissions(['business:dispatchunit:update', 'business:dispatchunit:delete'])"
+            label="鎿嶄綔"
+            min-width="120"
+            fixed="right"
+        >
+          <template slot-scope="{row}">
+            <el-button type="text" @click="$refs.dispatchUnitDetailsPlat.open('娲鹃仯鍗曚綅璇︽儏', row)" icon="el-icon-edit" v-permissions="['business:dispatchunit:update']">鏌ョ湅璇︽儏</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+          @size-change="handleSizeChange"
+          @current-change="handlePageChange"
+          :pagination="tableData.pagination"
+      >
+      </pagination>
+    </template>
+    <!-- 鏂板缓/淇敼 -->
+    <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="handlePageChange"/>
+  </TableLayout>
 </template>
 
 <script>
-    import BaseTable from '@/components/base/BaseTable'
-    import TableLayout from '@/layouts/TableLayout'
-    import Pagination from '@/components/common/Pagination'
-    import OperaDispatchUnitWindow from '@/components/business/OperaDispatchUnitWindow'
-    export default {
-        name: 'DispatchUnit',
-        extends: BaseTable,
-        components: { TableLayout, Pagination, OperaDispatchUnitWindow },
-        data () {
-            return {
-                // 鎼滅储
-                searchForm: {
-                    name: ''
-                }
-            }
-        },
-        created () {
-            this.config({
-                module: '娲鹃仯鍗曚綅淇℃伅琛�',
-                api: '/business/dispatchUnit',
-                'field.id': 'id',
-                'field.main': 'id'
-            })
-            this.search()
-        }
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import dispatchUnitDetailsPlat from '@/components/business/dispatchUnitDetailsPlat'
+import {pageAll as companyAll} from '@/api/business/company'
+export default {
+  name: 'dispatchUnitReview',
+  extends: BaseTable,
+  components: { TableLayout, Pagination, dispatchUnitDetailsPlat },
+  data () {
+    return {
+      // 鎼滅储
+      searchForm: {
+        name: '',
+        companyId: ''
+      },
+      companyList:[]
     }
+  },
+  created () {
+    this.config({
+      module: '娲鹃仯鍗曚綅淇℃伅琛�',
+      api: '/business/dispatchUnit',
+      'field.id': 'id',
+      'field.main': 'id'
+    })
+    this.search()
+    this.loadSelectList()
+  },
+  methods:{
+    // handlePageChange() {
+    //   this.search()
+    // },
+    loadSelectList() {
+      companyAll({}).then(res => {
+        this.companyList = res
+      }).catch(err => {
+      })
+    }
+
+  }
+}
 </script>
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/DuWorktype.java b/server/service/src/main/java/com/doumee/dao/business/model/DuWorktype.java
index ed0c608..bc00a59 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/DuWorktype.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/DuWorktype.java
@@ -71,6 +71,9 @@
     @ApiModelProperty(value = "瑙嗛璧勬枡鍦板潃")
     @ExcelColumn(name="瑙嗛璧勬枡鍦板潃")
     private String videoUrl;
+    @ApiModelProperty(value = "娲鹃仯鍗曚綅缂栫爜锛堝叧鑱攄ispatch_unit", example = "1")
+    @ExcelColumn(name="娲鹃仯鍗曚綅缂栫爜锛堝叧鑱攄ispatch_unit")
+    private Integer dispatchUnitId;
 
     @ApiModelProperty(value = "瀹℃牳鏃堕棿")
     @ExcelColumn(name="瀹℃牳鏃堕棿")
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
index c14e455..09930a0 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/DispatchUnitServiceImpl.java
@@ -103,6 +103,9 @@
         if(Constants.equalsInteger(param.getWorktypeStatus(),Constants.ONE)){
             //瀹℃牳閫氳繃锛屼慨鏀圭姸鎬侊紝浜х敓鍘嗗彶鐗堟湰
             newVersionData(dispatchUnitMapper.selectById(param.getId()),update);
+            //瀛樺偍鎿嶄綔鍘嗗彶
+            this.saveDuLog(update,Constants.DispatchUnitLogType.WORK_TYPE_AUDIT_PASS,update.getCheckInfo());
+
         }else{
             //鏇存柊鏄庣粏鏁版嵁涓哄鏍稿け璐�
             duSolutionMapper.update(null,new UpdateWrapper<DuSolution>().lambda()
@@ -111,6 +114,17 @@
                     .set(DuSolution::getCheckUserId,update.getCheckUserId())
                     .set(DuSolution::getCheckInfo,update.getCheckInfo())
                     .eq(DuSolution::getDispatchUnitId,update.getId()));
+
+            duWorktypeMapper.update(null,new UpdateWrapper<DuWorktype>().lambda()
+                    .set(DuWorktype::getStatus,Constants.TWO)
+                    .set(DuWorktype::getCheckUserId,update.getCheckUserId())
+                    .set(DuWorktype::getCheckInfo,update.getCheckInfo())
+                    .set(DuWorktype::getCheckDate,new Date() )
+                    .eq(DuWorktype::getIsdeleted,Constants.ZERO)
+                    .eq(DuWorktype::getStatus,Constants.ZERO)
+                    .eq(DuWorktype::getDispatchUnitId,update.getId()));
+            //瀛樺偍鎿嶄綔鍘嗗彶
+            this.saveDuLog(update,Constants.DispatchUnitLogType.WORK_TYPE_AUDIT_UN_PASS,update.getCheckInfo());
         }
         return  1;
     }
@@ -228,7 +242,7 @@
             //瀹℃牳閫氳繃锛屼慨鏀圭姸鎬侊紝浜х敓鍘嗗彶鐗堟湰
             newVersionData(dispatchUnit,update);
             //瀛樺偍鎿嶄綔鍘嗗彶
-            this.saveDuLog(dispatchUnit,Constants.DispatchUnitLogType.AUDIT_PASS,null);
+            this.saveDuLog(dispatchUnit,Constants.DispatchUnitLogType.AUDIT_PASS,update.getCheckInfo());
         }else{
             //鏇存柊鏄庣粏鏁版嵁涓哄鏍稿け璐�
             duSolutionMapper.update(null,new UpdateWrapper<DuSolution>().lambda()
@@ -238,25 +252,14 @@
                     .set(DuSolution::getCheckInfo,update.getCheckInfo())
                     .eq(DuSolution::getDispatchUnitId,update.getId()));
 
-
-            List<DuSolution> solutions = duSolutionMapper.selectList(new QueryWrapper<DuSolution>().lambda()
-                    .eq(DuSolution::getIsdeleted,Constants.ZERO)
-                    .eq(DuSolution::getDispatchUnitId,model.getId()));
-
-            if(solutions == null || solutions.size() ==0){
-                throw  new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(),"瀵逛笉璧凤紝璇ユ淳閬e崟浣嶆湭璁剧疆鏂规宸ョ淇℃伅锛屽鏍搁�氳繃澶辫触锛�");
-            }
-            for (DuSolution s : solutions){
-                duWorktypeMapper.update(null,new UpdateWrapper<DuWorktype>().lambda()
-                        .set(DuWorktype::getStatus,Constants.TWO)
-                        .set(DuWorktype::getCheckUserId,update.getCheckUserId())
-                        .set(DuWorktype::getCheckInfo,update.getCheckInfo())
-                        .set(DuWorktype::getCheckDate,new Date() )
-                        .eq(DuWorktype::getIsdeleted,Constants.ZERO)
-                        .eq(DuWorktype::getStatus,Constants.ZERO)
-                        .eq(DuWorktype::getDuSolutionId,s.getId()));
-            }
-
+            duWorktypeMapper.update(null,new UpdateWrapper<DuWorktype>().lambda()
+                    .set(DuWorktype::getStatus,Constants.TWO)
+                    .set(DuWorktype::getCheckUserId,update.getCheckUserId())
+                    .set(DuWorktype::getCheckInfo,update.getCheckInfo())
+                    .set(DuWorktype::getCheckDate,new Date() )
+                    .eq(DuWorktype::getIsdeleted,Constants.ZERO)
+                    .eq(DuWorktype::getStatus,Constants.ZERO)
+                    .eq(DuWorktype::getDispatchUnitId,update.getId()));
             //瀛樺偍鎿嶄綔鍘嗗彶
             this.saveDuLog(dispatchUnit,Constants.DispatchUnitLogType.AUDIT_UN_PASS,update.getCheckInfo());
         }

--
Gitblit v1.9.3