Browse Source

Merge remote-tracking branch 'origin/master'

ZC 4 weeks ago
parent
commit
7e2dd3d3bd

+ 9 - 0
ruoyi-ui/src/api/system/tender/committee.js

@@ -93,3 +93,12 @@ export function updateLeader(params) {
     params,
   });
 }
+
+// 修改专家状态
+export function updateExpertStatus(data) {
+  return request({
+    url: "/bidding/committee/updateExpertStatus",
+    method: "put",
+    data,
+  });
+}

+ 9 - 0
ruoyi-ui/src/api/system/tender/tenderNotice.js

@@ -44,6 +44,15 @@ export function updateNotice(data) {
   });
 }
 
+// 修改开标时间
+export function updateOpenTime(data) {
+  return request({
+    url: "/bidding/notice/updateOpenTime",
+    method: "put",
+    data: data,
+  });
+}
+
 // 删除招标公告
 export function delNotice(uid) {
   return request({

+ 45 - 6
ruoyi-ui/src/components/tender/components/CompPurchase.vue

@@ -73,12 +73,10 @@
     <!-- 编辑弹窗 -->
     <el-dialog :title="dialogEdit.title" :visible.sync="dialogEdit.visible" width="1080px" append-to-body
       :close-on-click-modal="false" :close-on-press-escape="false">
-
       <el-form ref="form" :model="form" :rules="rules" label-width="120px">
         <el-form-item label="公告标题" prop="uTitle">
           <el-input v-model="form.uTitle" placeholder="请输入公告标题" />
         </el-form-item>
-
         <el-form-item label="公告类型" prop="fjType" class="form-input">
           <el-select v-model="form.fjType" placeholder="请选择公告类型" clearable>
             <el-option v-for="fjType in dict.type.jc_publicity_type" :key="fjType.value" :label="fjType.label"
@@ -152,6 +150,8 @@
             </el-descriptions-item>
             <el-descriptions-item label="开标时间" :span="2" v-if="dialogDetail.detail.fjType === '1'">
               {{ dialogDetail.detail.uKaiTime }}
+              <el-button type="primary" plain @click="openDelayKaibiao" 
+                style="margin-left: 12px" size="mini">延期</el-button>
             </el-descriptions-item>
             <el-descriptions-item label="虚拟子账户" :span="2" v-if="dialogDetail.detail.fjType==='1'">
               <div v-if="dialogDetail.detail.bankAccount">
@@ -209,8 +209,6 @@
         </el-tab-pane>
       </el-tabs>
       <div slot="footer" class="dialog-footer">
-
-
         <el-button v-if="dialogDetail.detail.fjStatus === 1" type="primary" v-has-role="['operator']"
           @click="handleSubmitApproval">提交审批</el-button>
 
@@ -231,6 +229,18 @@
         <el-button @click="handleCancelDialogDetail">取 消</el-button>
       </div>
     </el-dialog>
+
+    <el-dialog title="修改开标时间" :visible.sync="dialogEditTime.visible" width="800px" append-to-body
+      :close-on-click-modal="false" :close-on-press-escape="false">
+      <el-date-picker v-model="dialogEditTime.uKaiTime" type="datetime" placeholder="请选择开标时间"
+        value-format="yyyy-MM-dd HH:mm:ss" default-time="09:00:00">
+      </el-date-picker>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button type="primary" @click="delayKaibiao" :loading="delayLoading">提 交</el-button>
+        <el-button @click="dialogEditTime.visible = false">取 消</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -240,7 +250,8 @@ import {
   addNotice as apiAdd,
   updateNotice as apiUpdate,
   delNotice as apiDel,
-  getNotice as apiDetail
+  getNotice as apiDetail,
+  updateOpenTime
 } from "@/api/system/tender/tenderNotice";
 import { listRecord } from "@/api/system/approval";
 import { getBankAccount } from '@/api/bank/account';
@@ -295,6 +306,10 @@ export default {
         visible: false,
         type: 'add',
       },
+      dialogEditTime: {
+        visible: false,
+        uKaiTime: null
+      },
       dialogDetail: {
         visible: false,
         detail: {
@@ -378,7 +393,8 @@ export default {
         data: []
       },
 
-      accountLoading: false
+      accountLoading: false,
+      delayLoading: false
     }
   },
   created () {
@@ -539,6 +555,29 @@ export default {
       })
     },
 
+    openDelayKaibiao() {
+      this.dialogEditTime.visible = true
+      this.dialogEditTime.uKaiTime = this.dialogDetail.detail.uKaiTime
+    },
+
+    // 延期
+    delayKaibiao() {
+      this.delayLoading = true
+      updateOpenTime({
+        uid: this.dialogDetail.detail.uid,
+        uKaiTime: this.dialogEditTime.uKaiTime
+      })
+      .then(res => {
+        this.dialogEditTime.visible = false
+        this.delayLoading = false
+        this.$message.success(res?.msg);
+        this.$tab.closePage();
+      })
+      .catch(err => {
+        this.delayLoading = false
+      })
+    },
+
     /** 查看 */
     handleInfo (row) {
       this.resetDetail()

+ 16 - 4
ruoyi-ui/src/views/tender/tender1/components/CompExpert.vue

@@ -73,7 +73,11 @@
           class-name="small-padding fixed-width">
           <template slot-scope="scope">
             <el-button v-if="scope.row.status == '3' && scope.row.isLeader != 1" size="mini" type="text"
-              icon="el-icon-delete" @click="handleSetLeader(scope.row)">选为组长</el-button>
+              icon="el-icon-check" @click="handleSetLeader(scope.row)">选为组长</el-button>
+            <el-button v-if="scope.row.status == '2'" size="mini" type="text"
+              icon="el-icon-plus" @click="updateExpertStatus(scope.row, 3)">改为到场</el-button>
+            <el-button v-if="scope.row.status == '3'" size="mini" type="text"
+              icon="el-icon-minus" @click="updateExpertStatus(scope.row, 2)">确认不到场</el-button>
             <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button>
           </template>
         </el-table-column>
@@ -98,7 +102,7 @@
 <script>
 import {
   listCommittee, getCommittee, delCommittee, addCommittee, updateCommittee,
-  findCommitAndExpert, updateLeader, getCommitteeList, saveAddCommittee
+  findCommitAndExpert, updateLeader, getCommitteeList, saveAddCommittee, updateExpertStatus
 } from "@/api/system/tender/committee";
 import { findTenderNotice, getTender, updateIsApply } from "@/api/system/tender/tender";
 import { listExpert, followExpert } from "@/api/system/expert";
@@ -215,8 +219,16 @@ export default {
       updateLeader({ pbId: row.pbId }).then(res => {
         this.$message.success('选为组长成功')
         this.getExerptList()
-
-
+      })
+    },
+    // 修改专家状态
+    updateExpertStatus(row, status) {
+      updateExpertStatus({ 
+        pbId: row.pbId,
+        status
+      }).then(res => {
+        this.$message.success('已成功修改状态')
+        this.getExerptList()
       })
     },
     handleSelectionChange (val) {