2
3
王宇昕 vor 5 Jahren
Ursprung
Commit
ffbe51dcfd

+ 17 - 0
src/dashoo.cn/frontend_web/src/api/oilcontract/contract.js

@@ -199,4 +199,21 @@ export default {
       data: formData
     })
   },
+  // 导出合同
+  docexport (id, myAxios) {
+    return myAxios({
+      url: `/contract/exportword/${id}`,
+      method: 'get',
+    })
+  },
+
+  // 导出评论合同
+  docexportEle (id, myAxios) {
+    return myAxios({
+      url: `/contract-review/exportword/${id}`,
+      method: 'get',
+    })
+  },
+
+
 }

+ 7 - 4
src/dashoo.cn/frontend_web/src/components/oilcontract/submitPopup.vue

@@ -157,7 +157,11 @@
       examineType:{
         type: null,
         default: 0,
-      }
+      },
+      selectDeptBoolean:{
+        type: null,
+        default: true,
+      },
     },
 
 
@@ -174,7 +178,8 @@
         firOptions: [],
         fushenauditer: '', // 复审人员
         secauditerOptions: [],
-        selectDept: 100000151,
+        selectDept: this.selectDeptBoolean?100000071:'' ,// 100000071
+
         allorgunitOptions: [],
         auditform: {
           FirstAuditName: '',
@@ -213,11 +218,9 @@
       }
     },
     created() {
-
       this.getFirAuditerByDept()
       this.getDictOptions()
       this.orgtreeChange(this.majorDept)
-
     },
     methods: {
       //专业科室接收。。。。。。。。。。。。。。

+ 64 - 2
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis-year-check/index.vue

@@ -13,7 +13,10 @@
         </span>
         <span style="float: right;">
           <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">导入</el-button> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -32,7 +35,8 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
         <el-table-column label="操作" header-align="center" width="210" align="center" fixed>
           <template slot-scope="scope">
               <el-button type="text" v-if="editeBoolean"  size="small" icon="el-icon-edit"  @click="onNavigateScore(scope.row)">编辑</el-button>
@@ -142,6 +146,9 @@
       </el-pagination>
     </el-card>
 
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>
+
     <el-dialog title="高级查询" :visible.sync="dialogVisible" width="720px">
       <el-form ref="advancedsearchForm" label-width="110px" class="advancedsearchFormClass">
         <el-row>
@@ -253,6 +260,7 @@
 </template>
 <script>
   import { mapGetters } from 'vuex';
+  import apiContract from '@/api/oilcontract/contract';
   import api from '@/api/oilcontract/contractSumScore';
   import permissionApi from '@/api/oilcontract/permission';
   import FileSaver from 'file-saver'
@@ -344,6 +352,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+
         editeBoolean:false,
         deleteBoolean:false,
         tableWidth:"290px",
@@ -392,8 +404,58 @@
       this.statusFun()
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.SumStore.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.SumStore.Delete',
         }

+ 3 - 3
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis-year/index.vue

@@ -1,5 +1,5 @@
 
- 
+
 <template>
   <div>
     <el-breadcrumb class="heading">
@@ -13,7 +13,7 @@
         </span>
         <span style="float: right;">
           <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">导入</el-button> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -32,7 +32,7 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" >
         <el-table-column label="操作" header-align="center" width="100" align="center" fixed v-if="jurisdictionBoolean">
           <template slot-scope="scope">
               <el-button type="text" title="生成" size="small" icon="el-icon-edit" @click="onNavigateScore(scope.row)">生成</el-button>

+ 23 - 0
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/_opera/evaluate.vue

@@ -14,6 +14,7 @@
           <i class="icon icon-table2"></i> 编辑 - 承包商合同
         </span>
         <span style="float: right;">
+          <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Id!=0" @click="exportExcel">导出</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='7'&&auditBtn" @click="commonAuditClick(7)">企管法规处审批</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='4'&&auditBtn" @click="commonAuditClick(4)">专业处室审核</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='3'&&auditBtn" @click="commonAuditClick(3)">专业处室分办</el-button>
@@ -234,6 +235,28 @@
       this.statusFun()
     },
     methods: {
+      exportExcel () {
+        api.docexportEle(this.formData.Id, this.$axios)
+          .then(res => {
+            // response
+            if (res.data.code === 0) {
+              // this.$message({
+              //    type: 'success'
+              //    message: res.data.message
+              // })
+              let docurl = res.data.item
+              // 内网服务器专用
+              if (process.client && docurl.indexOf('upfile') === 0) {
+                const myDomain = window.location.host
+                location.href = 'http://' + myDomain + '/' + docurl
+              } else {
+                location.href = 'http://' + docurl
+              }
+            }
+          }).catch(err => {
+            console.error(err)
+          })
+      },
       //状态判断
       statusFun(){
         var data = {

+ 72 - 3
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/index.vue

@@ -15,7 +15,10 @@
           <!-- <router-link :to="'/oilcontract/contract-basis/add/operation'">
             <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">添加</el-button>
           </router-link> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -34,7 +37,9 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
+
         <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button v-if="editeBoolean" type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
@@ -178,6 +183,9 @@
       </span>
     </el-dialog>
 
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>
+
   </div>
 </template>
 <script>
@@ -250,6 +258,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+
         editeBoolean:false,
         deleteBoolean:false,
         dialogVisible: false,
@@ -415,10 +427,68 @@
       this.initDatas();
       //this.getDictOptions()
       this.statusFun()
+      // console.log(8888888,localStorage.getItem('userRoleids'))
+      // if(localStorage.getItem('userRoleids')!=''&&localStorage.getItem('userRoleids')!=undefined){
+      //   this.userRoleids = localStorage.getItem('userRoleids').indexOf('10000221')
+      //   console.log(8888888,this.userRoleids)
+      // }else{
+      //   this.userRoleids = -1
+      // }
+
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.Review.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.Review.Delete',
         }
@@ -432,7 +502,6 @@
         }).catch(err => {
           console.error(err)
         })
-
         var data = {
           percode:'oil_contract.Review.Edit',
         }

+ 64 - 14
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods-year-check/index.vue

@@ -13,9 +13,12 @@
         </span>
         <span style="float: right;">
           <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">导入</el-button> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
           <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="onChangeSelect">{{selectBoolean?'取消':'一键处理'}}</el-button>
           <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectBoolean" @click="onChangeSelectSubmit">处理</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -34,7 +37,8 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectChange">
+      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
         <el-table-column
           align="center"
           fixed
@@ -102,6 +106,9 @@
       </el-pagination>
     </el-card>
 
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>
+
     <el-dialog title="高级查询" :visible.sync="dialogVisible" width="720px">
       <el-form ref="advancedsearchForm" label-width="110px" class="advancedsearchFormClass">
         <el-row>
@@ -202,6 +209,7 @@
 </template>
 <script>
   import { mapGetters } from 'vuex';
+  import apiContract from '@/api/oilcontract/contract';
   import api from '@/api/oilcontract/contractSumScore';
   import permissionApi from '@/api/oilcontract/permission';
   import FileSaver from 'file-saver'
@@ -283,6 +291,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+
         editeBoolean:false,
         deleteBoolean:false,
         selectBoolean:false,//表格选项框
@@ -327,8 +339,58 @@
       this.statusFun()
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.SumStore.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.SumStore.Delete',
         }
@@ -356,18 +418,6 @@
         }).catch(err => {
           console.error(err)
         })
-      },
-      //选择选项
-      onSelectChange(item,index){
-        console.log(222,item,index)
-      },
-      // 打开一键处理
-      onChangeSelect(){
-        this.selectBoolean = !this.selectBoolean
-      },
-      // 一键处理
-      onChangeSelectSubmit(){
-
       },
       initDatas() {
         //分页及列表条件

+ 23 - 0
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods/_opera/evaluate.vue

@@ -14,6 +14,7 @@
           <i class="icon icon-table2"></i> 编辑 - 供应商合同
         </span>
         <span style="float: right;">
+          <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Id!=0" @click="exportExcel">导出</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='7'&&auditBtn" @click="commonAuditClick(7)">企管法规处审批</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='4'&&auditBtn" @click="commonAuditClick(4)">专业处室审核</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='3'&&auditBtn" @click="commonAuditClick(3)">专业处室分办</el-button>
@@ -234,6 +235,28 @@
       this.statusFun()
     },
     methods: {
+      exportExcel () {
+        api.docexportEle(this.formData.Id, this.$axios)
+          .then(res => {
+            // response
+            if (res.data.code === 0) {
+              // this.$message({
+              //    type: 'success'
+              //    message: res.data.message
+              // })
+              let docurl = res.data.item
+              // 内网服务器专用
+              if (process.client && docurl.indexOf('upfile') === 0) {
+                const myDomain = window.location.host
+                location.href = 'http://' + myDomain + '/' + docurl
+              } else {
+                location.href = 'http://' + docurl
+              }
+            }
+          }).catch(err => {
+            console.error(err)
+          })
+      },
       //状态判断
       statusFun(){
         var data = {

+ 64 - 2
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods/index.vue

@@ -15,7 +15,10 @@
           <!-- <router-link :to="'/oilcontract/contract-basis/add/operation'">
             <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">添加</el-button>
           </router-link> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -34,7 +37,9 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
+
         <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button type="text" v-if="editeBoolean" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
@@ -74,6 +79,9 @@
       </el-pagination>
     </el-card>
 
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>    
+
     <el-dialog title="高级查询" :visible.sync="dialogVisible" width="720px">
       <el-form ref="advancedsearchForm" label-width="110px">
         <el-row>
@@ -249,6 +257,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+
         editeBoolean:false,
         deleteBoolean:false,
         dialogVisible: false,
@@ -417,8 +429,58 @@
       this.statusFun()
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.Review.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.Review.Edit',
         }

+ 44 - 55
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-import/_opera/operation.vue

@@ -292,8 +292,8 @@
           </el-col>
 
           <el-col :span="8">
-            <el-form-item label="手机号">
-              <el-input type='number' v-model.number="formData.ConstructionTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+            <el-form-item label="手机号" prop="ConstructionTelphone">
+              <el-input  v-model="formData.ConstructionTelphone" placeholder="请输入"  style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
@@ -310,8 +310,8 @@
           </el-col>
 
           <el-col :span="8">
-            <el-form-item label="手机号">
-              <el-input type='number' v-model.number="formData.BuildTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+            <el-form-item label="手机号" prop="BuildTelphone">
+              <el-input  v-model="formData.BuildTelphone" placeholder="请输入"  style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
@@ -328,8 +328,8 @@
           </el-col>
 
           <el-col :span="8">
-            <el-form-item label="手机号">
-              <el-input type='number' v-model.number="formData.SuperviseTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+            <el-form-item label="手机号" prop="SuperviseTelphone">
+              <el-input  v-model="formData.SuperviseTelphone" placeholder="请输入"  style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
@@ -346,8 +346,8 @@
           </el-col>
 
           <el-col :span="8">
-            <el-form-item label="手机号">
-              <el-input type='number' v-model.number="formData.QualityTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+            <el-form-item label="手机号" prop="QualityTelphone">
+              <el-input  v-model="formData.QualityTelphone" placeholder="请输入"  style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
@@ -580,8 +580,23 @@
           ContractName:[
             { required: true, message: '请输入', trigger: 'blur' },
           ],
+          Telephone:[
+            // { required: true, message: '请输入联系人电话', trigger: 'blur' },
+            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+          ],
+          ConstructionTelphone:[
+            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+          ],
+          BuildTelphone:[
+            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+          ],
+          SuperviseTelphone:[
+            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+          ],
+          QualityTelphone:[
+            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+          ],
         },
-
         ContractClassDisabled:true,
         activeName: '1',
         serviceId: '',
@@ -899,52 +914,26 @@
         }
       },
       exportExcel () {
-        // let id = this.formData.Id
-        // let params = {
-        //   CertId: this.certId
-        // }
-        // dataapi.docexport(id, params, this.$axios)
-        //   .then(res => {
-        //     // response
-        //     if (res.data.code === 0) {
-        //       // this.$message({
-        //       //   type: 'success'
-        //       //   message: res.data.message
-        //       // })
-        //       let docurl = res.data.item
-        //       // 内网服务器专用
-        //       if (process.client && docurl.indexOf('upfile') === 0) {
-        //         const myDomain = window.location.host
-        //         location.href = 'http://' + myDomain + '/' + docurl
-        //       } else {
-        //         location.href = 'http://' + docurl
-        //       }
-        //     }
-        //   }).catch(err => {
-        //     console.error(err)
-        //   })
-
-        // /* generate workbook object from table */
-        // let wb = XLSX.utils.table_to_book(
-        //   document.querySelector('#rebateSetTable')
-        // )
-        // /* get binary string as output */
-        // let wbout = XLSX.write(wb, {
-        //   bookType: 'xlsx',
-        //   bookSST: true,
-        //   type: 'array'
-        // })
-        // try {
-        //   FileSaver.saveAs(
-        //     new Blob([wbout], {
-        //       type: 'application/octet-stream'
-        //     }),
-        //     'SupplierUsedName.xlsx'
-        //   )
-        // } catch (e) {
-        //   if (typeof console !== 'undefined') console.log(e, wbout)
-        // }
-        // return wbout
+        api.docexport(this.formData.Id, this.$axios)
+          .then(res => {
+            // response
+            if (res.data.code === 0) {
+              // this.$message({
+              //    type: 'success'
+              //    message: res.data.message
+              // })
+              let docurl = res.data.item
+              // 内网服务器专用
+              if (process.client && docurl.indexOf('upfile') === 0) {
+                const myDomain = window.location.host
+                location.href = 'http://' + myDomain + '/' + docurl
+              } else {
+                location.href = 'http://' + docurl
+              }
+            }
+          }).catch(err => {
+            console.error(err)
+          })
       },
       formatDateTime(date) {
         var y = date.getFullYear();

+ 2 - 0
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-import/index.vue

@@ -343,6 +343,8 @@
         </el-row>
       </el-form>
     </el-dialog>
+    
+    
 
   </div>
 </template>

+ 65 - 16
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service-year-check/index.vue

@@ -16,9 +16,11 @@
             <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">添加</el-button>
           </router-link> -->
           <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">导入</el-button> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
-          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="onChangeSelect">{{selectBoolean?'取消':'一键处理'}}</el-button>
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectBoolean" @click="onChangeSelectSubmit">处理</el-button> -->
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
+          
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -37,7 +39,8 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectChange">
+      <el-table id="rebateSetTable" stripe size="mini" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
         <el-table-column
           align="center"
           fixed
@@ -116,6 +119,9 @@
                      :page-sizes="[10, 15, 20, 25]" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
       </el-pagination>
     </el-card>
+    
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :selectDeptBoolean="false" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>
 
     <el-dialog title="高级查询" :visible.sync="dialogVisible" width="720px" class="advancedsearchFormClass">
       <el-form ref="advancedsearchForm" label-width="110px">
@@ -210,6 +216,7 @@
 </template>
 <script>
   import { mapGetters } from 'vuex';
+  import apiContract from '@/api/oilcontract/contract';
   import api from '@/api/oilcontract/contractSumScore';
   import permissionApi from '@/api/oilcontract/permission';
   import FileSaver from 'file-saver'
@@ -291,6 +298,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+        
         editeBoolean:false,
         deleteBoolean:false,
         selectBoolean:false,//表格选项框
@@ -335,8 +346,58 @@
       this.statusFun()
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.SumStore.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.SumStore.Delete',
         }
@@ -364,18 +425,6 @@
         }).catch(err => {
           console.error(err)
         })
-      },
-      //选择选项
-      onSelectChange(item,index){
-        console.log(222,item,index)
-      },
-      // 打开一键处理
-      onChangeSelect(){
-        this.selectBoolean = !this.selectBoolean
-      },
-      // 一键处理
-      onChangeSelectSubmit(){
-
       },
       //跳转评价
       onNavigateScore(item){

+ 1 - 1
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service-year/_opera/operation.vue

@@ -183,7 +183,7 @@
         </el-tabs>
       </el-card>
 
-    <submitPopup ref="submitpopup" :examineType="1" :eveId="formData.Id" :formData="formData" @refreshPage="refreshPage"></submitPopup>
+    <submitPopup ref="submitpopup" :examineType="1" :selectDeptBoolean="false" :eveId="formData.Id" :formData="formData" @refreshPage="refreshPage"></submitPopup>
 
   </div>
 </template>

+ 24 - 1
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service/_opera/evaluate.vue

@@ -14,6 +14,7 @@
           <i class="icon icon-table2"></i> 编辑 - 服务商合同
         </span>
         <span style="float: right;">
+          <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Id!=0" @click="exportExcel">导出</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='7'&&auditBtn" @click="commonAuditClick(7)">企管法规处审批</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='4'&&auditBtn" @click="commonAuditClick(4)">专业处室审核</el-button>
           <el-button type="primary" size="mini" style="margin-left: 8px" v-if="formData.Status=='3'&&auditBtn" @click="commonAuditClick(3)">专业处室分办</el-button>
@@ -127,7 +128,7 @@
       </el-tabs>
     </el-card>
 
-    <submitPopup ref="submitpopup" :eveId="formData.Id" :formData="formData" @refreshPage="refreshPage"></submitPopup>
+    <submitPopup ref="submitpopup" :eveId="formData.Id" :selectDeptBoolean="false" :formData="formData" @refreshPage="refreshPage"></submitPopup>
 
 
 
@@ -234,6 +235,28 @@
       this.statusFun()
     },
     methods: {
+      exportExcel () {
+        api.docexportEle(this.formData.Id, this.$axios)
+          .then(res => {
+            // response
+            if (res.data.code === 0) {
+              // this.$message({
+              //    type: 'success'
+              //    message: res.data.message
+              // })
+              let docurl = res.data.item
+              // 内网服务器专用
+              if (process.client && docurl.indexOf('upfile') === 0) {
+                const myDomain = window.location.host
+                location.href = 'http://' + myDomain + '/' + docurl
+              } else {
+                location.href = 'http://' + docurl
+              }
+            }
+          }).catch(err => {
+            console.error(err)
+          })
+      },
       //状态判断
       statusFun(){
         var data = {

+ 62 - 2
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service/index.vue

@@ -15,7 +15,10 @@
           <!-- <router-link :to="'/oilcontract/contract-basis/add/operation'">
             <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;">添加</el-button>
           </router-link> -->
-          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button>
+          <!-- <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" @click="exportExcel">导出</el-button> -->
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="!selectAllButtonBoolean&&userSelectBoolean" @click="onSelectAllButton">一键处理</el-button>
+          <el-button type="info" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonDelete">取消</el-button>
+          <el-button type="primary" size="mini" style="margin-left:10px; margin-top: -4px;" v-if="selectAllButtonBoolean" @click="onSelectAllButtonTrue">确定</el-button>
         </span>
         <el-form ref="form" :inline="true" style="float: right; margin-top: -10px">
           <el-form-item label="上报时间">
@@ -34,7 +37,8 @@
           </el-form-item>
         </el-form>
       </div>
-      <el-table size="mini" id="rebateSetTable" stripe :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table size="mini" id="rebateSetTable" stripe :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby" @selection-change="onSelectAll">
+        <el-table-column v-if="selectAllButtonBoolean" :selectable="selectableFun" type="selection" width="55"></el-table-column>
         <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button v-if="editeBoolean" type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
@@ -73,6 +77,8 @@
                      :page-sizes="[10, 15, 20, 25]" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
       </el-pagination>
     </el-card>
+    <!-- :selectDeptBoolean="false"-->
+    <submitPopup ref="submitpopup" :selectDeptBoolean="false" :eveId="eveIdList" @refreshPage="initDatas" ></submitPopup>
 
     <el-dialog title="高级查询" :visible.sync="dialogVisible" width="720px">
       <el-form ref="advancedsearchForm" label-width="110px">
@@ -250,6 +256,10 @@
 
     data() {
       return {
+        userSelectBoolean:false,
+        eveIdList:'',
+        selectAllButtonBoolean:false,
+
         editeBoolean:false,
         deleteBoolean:false,
         dialogVisible: false,
@@ -417,8 +427,58 @@
       this.statusFun()
     },
     methods: {
+      //一键处理
+      onSelectAll(e){
+        console.log(e)
+        var list = []
+        e.map((item,index) => {
+          list.push(item.Id)
+        })
+        this.eveIdList = String(list)
+      },
+      //筛选
+      selectableFun(row,index){
+        if(row.Status==4){
+          return true;
+        }else{
+          return false;
+        }
+      },
+      //一键处理按钮
+      onSelectAllButton(){
+        this.selectAllButtonBoolean = true
+      },
+      //一键处理确定
+      onSelectAllButtonTrue(){
+        if(this.eveIdList!=''&&this.eveIdList!=undefined){
+          this.$refs.submitpopup.dialogCommonAuditMakeSureVisible = true
+        }else{
+          this.$message({
+            type: 'warning',
+            message: '请选择评价'
+          });
+        }
+      },
+      //一键处理取消
+      onSelectAllButtonDelete(){
+        this.selectAllButtonBoolean = false
+      },
       //状态判断
       statusFun(){
+        // 一键处理权限
+        var data = {
+          percode:'oil_contract.Review.Batch',
+        }
+        permissionApi.permissionIsauth(data, this.$axios).then(res => {
+          console.log('一键处理权限权限',res.data)
+          if(res.data.code==0){
+            if(res.data.message=='有权限'){
+              this.userSelectBoolean = true
+            }
+          }
+        }).catch(err => {
+          console.error(err)
+        })
         var data = {
           percode:'oil_contract.Review.Delete',
         }