qymljy 2 years ago
parent
commit
db29bf7250

+ 2 - 2
src/HDrpManagement/projectChange/components/del.vue

@@ -1,6 +1,6 @@
 <template>
   <div >
-    <el-button slot="reference" size="mini"  @click="dialogTableVisible=true" type="primary">作 废</el-button>
+    <el-button slot="reference" :type="disabled?'':'primary'" size="mini" :disabled="disabled" @click="dialogTableVisible=true" >作 废</el-button>
     <el-dialog title="作废项目" append-to-body :visible.sync="dialogTableVisible" width="25%">
       <el-row :gutter="20">
         <el-form label-position="right" ref="form" :rules="rules" inline label-width="100px" :model="form" size="small">
@@ -42,7 +42,7 @@ export default {
       }
     }
   },
-  props: ['id'],
+  props: ['id',"disabled"],
   methods: {
     async submit() {
       this.form.sa_projectids = [this.id]

+ 2 - 1
src/HDrpManagement/projectChange/components/finish.vue

@@ -1,12 +1,13 @@
 <template>
   <div>
-    <el-button  size="mini" type="primary" slot="reference" @click="onFinish">结 束</el-button>
+    <el-button  size="mini" :type="disabled?'':'primary'" slot="reference" @click="onFinish" :disabled="disabled">结 束</el-button>
   </div>
 </template>
 
 <script>
 export default {
   name: "finish",
+  props:['disabled'],
   methods:{
     onFinish() {
       this.$confirm('确定结束当前项目嘛?', '提示', {

+ 4 - 4
src/HDrpManagement/projectChange/components/putPeople.vue

@@ -1,13 +1,13 @@
 <template>
   <div>
     <div v-if="flag === 0 && tool.checkAuth($route.name,'putSubmit')" class="inline-16">
-      <el-button  size="mini" type="primary" slot="reference" @click="onSubmit">提交报备</el-button>
+      <el-button  size="mini" :type="disabled?'':'primary'" slot="reference" @click="onSubmit" :disabled="disabled">提交报备</el-button>
     </div>
     <div v-else-if="flag === 1 && tool.checkAuth($route.name,'putCheck')" class="inline-16">
-      <el-button size="mini" type="primary" slot="reference" @click="onCheck">报备审核</el-button>
+      <el-button size="mini" :type="disabled?'':'primary'" slot="reference" @click="onCheck" :disabled="disabled">报备审核</el-button>
     </div>
     <div v-if="flag !== 0 && tool.checkAuth($route.name,'putBack') " class="inline-16">
-      <el-button size="mini" type="primary" slot="reference" @click="onUnCheck">报备驳回(退回)</el-button>
+      <el-button size="mini" :type="disabled?'':'primary'" slot="reference" @click="onUnCheck" :disabled="disabled">报备驳回(退回)</el-button>
     </div>
 
   </div>
@@ -16,7 +16,7 @@
 <script>
 export default {
   name: "add",
-  props:['data','rowData','flagTag'],
+  props:['data','rowData','flagTag','disabled'],
   data(){
     return {
       butTag:'',

+ 2 - 1
src/HDrpManagement/projectChange/components/recovery.vue

@@ -1,12 +1,13 @@
 <template>
   <div>
-    <el-button  size="mini" type="primary" slot="reference" @click="onRecovery">恢 复</el-button>
+    <el-button  size="mini" :type="disabled?'':'primary'" slot="reference" @click="onRecovery" :disabled="disabled">恢 复</el-button>
   </div>
 </template>
 
 <script>
 export default {
   name: "recovery",
+  props:["disabled"],
   methods:{
     onRecovery() {
       this.$confirm('确定恢复当前项目嘛?', '提示', {

+ 21 - 13
src/HDrpManagement/projectChange/index.vue

@@ -186,19 +186,27 @@ export default {
       },
       tabName:"1",
       tabIndex:"1",
-      editableTabs: [ {
-        title: '我负责的',
-        name: "1",
-      }, {
-        title: '我参与的',
-        name: "2",
-      }, {
-        title: '我下属负责的',
-        name: "3",
-      }, {
-        title: '我下属参与的',
-        name: "4",
-      }],
+      editableTabs: [
+        {
+          title: '我负责的',
+          name: "1",
+        },
+        {
+          title: '我参与的',
+          name: "2",
+        },
+        {
+          title: '我创建的',
+          name: "5",
+        },
+        {
+          title: '我下属负责的',
+          name: "3",
+        },
+        {
+          title: '我下属参与的',
+          name: "4",
+        }],
       selectParam: {
         status:'',
         projecttype:'',

+ 33 - 6
src/HDrpManagement/projectChange/modules/detail.vue

@@ -17,16 +17,16 @@
     <div slot="customOperation">
       <!-- 此区域提供了自定义操作按钮 -->
       <div  style="display: inline-block !important;">
-        <putPeople @putSuccess="putSuccess" v-if="flagTag !== ''" :rowData="mainData" :flagTag="flagTag" style="width:100%;"/>
+        <putPeople @putSuccess="putSuccess" v-if="flagTag !== ''" :rowData="mainData" :flagTag="flagTag" :disabled="disabled" style="width:100%;"/>
       </div>
       <div class="inline-16">
-        <Del :id="mainData.sa_projectid" :nameId="20221020144302" nameKey="sa_projectids" v-if="tool.checkAuth($route.name,'toVoid') " @deleteSuccess="deleteSuccess"/>
+        <Del :id="mainData.sa_projectid" :nameId="20221020144302" nameKey="sa_projectids" v-if="tool.checkAuth($route.name,'toVoid') " :disabled="disabled" @deleteSuccess="deleteSuccess"/>
       </div>
       <div class="inline-16">
-        <finish v-if="mainData.status === '跟进中'" @onFinish="onSuccess"></finish>
+        <finish v-if="tool.checkAuth($route.name,'finish')  && mainData.status === '跟进中'" :disabled="disabled" @onFinish="onSuccess"></finish>
       </div>
       <div class="inline-16">
-        <recovery v-if="mainData.status === '已失败'" @onRecovery="onSuccess"></recovery>
+        <recovery v-if="tool.checkAuth($route.name,'recovery')  && mainData.status === '已失败'" :disabled="disabled" @onRecovery="onSuccess"></recovery>
       </div>
     </div>
     <template #customBefore>
@@ -86,11 +86,27 @@ import setStage from '../components/setStage'
 import finish from '../components/finish'
 import recovery from '../components/recovery'
 export default {
-  components:{Quotation,product_set,Rival,BaseInfo,StageTask,putPeople,Check,Locked,andEnterprise,Del,clue,setStage,finish,recovery},
+  components:{
+    Quotation,
+    product_set,
+    Rival,
+    BaseInfo,
+    StageTask,
+    putPeople,
+    Check,
+    Locked,
+    andEnterprise,
+    Del,
+    clue,
+    setStage,
+    finish,
+    recovery},
   data () {
     return {
       totalPrice:0,
       dialogVisible:false,
+      disabled:false,
+      userInfo:JSON.parse(window.sessionStorage.getItem('userInfo')),
       nowStage:'',
       flagTag:'',
       flag:0,
@@ -109,7 +125,6 @@ export default {
       detailInfo:'',
       tagObj:'',
       putPeople:'',
-      userInfo:'',
       stageList:[],
       selectRowindex:'',
       selectColor:{
@@ -120,6 +135,18 @@ export default {
       },
     }
   },
+  watch:{
+    mainData(val) {
+      if (this.mainData.leader.length !== 0){
+        if (JSON.parse(window.sessionStorage.getItem('userInfo')).userid === this.mainData.leader[0].userid){
+          this.disabled = false
+        }else {
+          this.disabled = true
+        }
+      }
+      console.log("权限结果",this.disabled)
+    }
+  },
   provide () {
     return {
       enterpriseList:() => this.enterpriseList,

+ 3 - 2
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/add.vue

@@ -125,7 +125,7 @@ export default {
           "pageSize": 10,
           "where": {
             "condition": "",
-            "type":2,
+            "type":5,
             "sa_projectid":""
           }
         }
@@ -145,7 +145,7 @@ export default {
       console.log(this.enterpriseTypeList,'客户类型')
     },
     onSubmit(){
-      this.form.sa_projectid = this.data.sa_projectid
+      this.form.sa_projectid = this.$route.query.id
       this.$refs['form'].validate(async (valid) => {
         if (!valid) return false
         const res = await this.$api.requested({
@@ -180,6 +180,7 @@ export default {
       this.form.enterprisename = data.enterprisename
     },
     async customerList(){
+      this.customerParam.content.where.sa_projectid = this.$route.query.id
       const res = await this.$api.requested(this.customerParam)
       this.customer.customerData = res.data
       this.customer.total = res.total

+ 31 - 2
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/setCustomerType.vue

@@ -37,7 +37,7 @@
       </div>
       <div class="fixed__btn__panel">
         <el-button size="small" @click="onClose" class="normal-btn-width">取 消</el-button>
-        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width">确 定</el-button>
+        <el-button size="small" type="primary" @click="onSave" class="normal-btn-width">确 定</el-button>
       </div>
     </el-drawer>
   </div>
@@ -63,8 +63,31 @@ export default {
     }
   },
   methods:{
+    onSave(){
+      console.log(this.form,"form数据")
+      console.log(this.data,"data数据")
+      if (this.data.type !== '经销商'){
+        if (this.form.type === '经销商'){
+          this.$confirm('是否确定将当前项目改为经销项目?', '提示', {
+            confirmButtonText: '确定',
+            cancelButtonText: '取消',
+            type: 'warning'
+          }).then(() => {
+            this.onSubmit()
+          }).catch(() => {
+            this.$message({
+              type: 'info',
+              message: '已取消删除'
+            });
+          });
+        }else{
+          this.onSubmit()
+        }
+      }else {
+        this.onSubmit()
+      }
+    },
     onSubmit(){
-      console.log(this.form)
       this.$refs.form.validate(async(valid) =>{
         if (!valid) return false
         const res = await this.$api.requested({
@@ -83,7 +106,13 @@ export default {
     onshow(){
       this.visible = true
       this.form = this.data
+      this.form = Object.assign({},this.data,this.form)
+      console.log(this.form)
+      console.log(this.data)
     }
+  },
+  mounted() {
+
   }
 }
 </script>

+ 1 - 0
src/HDrpManagement/projectChange/modules/modules/andEnterprise/components/toDel.vue

@@ -18,6 +18,7 @@ export default {
       const res = await this.$api.requested({
         "id": 20221027143802,
         "content": {
+          "sa_projectid":this.$route.query.id,
           "sa_project_partiesids": [this.data.sa_project_partiesid]
         },
       })

+ 8 - 1
src/SDrpManagement/QuotedPrice/detail/index.vue

@@ -59,8 +59,10 @@ export default {
     return {
       mainData:[],
       mainAreaData:[],
+      disabled:false,
       flag:false,
-      totalPrice:0
+      totalPrice:0,
+      userInfo:JSON.parse(window.sessionStorage.getItem('userInfo'))
     }
   },
   components:{
@@ -77,6 +79,11 @@ export default {
     copyTo,
     deApprove
   },
+  watch:{
+    mainData(val) {
+      console.log(JSON.parse(window.sessionStorage.getItem('userInfo')).userid,"获取用户id")
+    }
+  },
   methods:{
     async queryMainData(id){
       const res = await this.$api.requested({

+ 21 - 13
src/SDrpManagement/QuotedPrice/index.vue

@@ -125,19 +125,27 @@ export default {
       tabName:"1",
       tabIndex:"1",
       dateSelect:'',
-      editableTabs: [ {
-        title: '我负责的',
-        name: "1",
-      }, {
-        title: '我参与的',
-        name: "2",
-      }, {
-        title: '我下属负责的',
-        name: "3",
-      }, {
-        title: '我下属参与的',
-        name: "4",
-      }],
+      editableTabs: [
+        {
+          title: '我负责的',
+          name: "1",
+        },
+        {
+          title: '我参与的',
+          name: "2",
+        },
+        {
+          title: '我创建的',
+          name: "5",
+        },
+        {
+          title: '我下属负责的',
+          name: "3",
+        },
+        {
+          title: '我下属参与的',
+          name: "4",
+        }],
       statusList:[
         {
           value:'新建'

+ 21 - 13
src/SDrpManagement/salerPrivatecustomer/detail/customerDetail.vue

@@ -19,15 +19,11 @@
       </div>
       <div slot="customOperation" >
         <!-- 此区域提供了自定义操作按钮 -->
-<!--        <transaction_status class="inline-16" v-if="tool.checkAuth($route.name,'transaction')" :id="mainData.sa_customersid" @onshow="onSuccess" @shareSuccess="onSuccess"></transaction_status>-->
-        <statusChange class="inline-16" v-if="tool.checkAuth($route.name,'statusChange')" :id="mainData.sa_customersid"  @statusChangeSuccess="statusChangeSuccess"></statusChange>
-        <!--<lock class="inline-16" v-if="tool.checkAuth($route.name,'lock')"   :id="mainData.sa_customersid" @onshow="onSuccess"></lock>-->
-         <!--<unlock class="inline-16" v-if="tool.checkAuth($route.name,'unlock')" :id="mainData.sa_customersid" @onshow="onSuccess"></unlock> -->
-        <share class="inline-16" v-if="tool.checkAuth($route.name,'share') && mainData.poolname === ''" :id="mainData.sa_customersid" @onshow="onSuccess" @shareSuccess="onSuccess"></share>
-<!--        <send_back style="display:inline" v-if="tool.checkAuth($route.name,'back') "  :data="mainData" @onshow="onSuccess" @backSuccess="onSuccess"></send_back>-->
-        <toBack class="inline-16" v-if="tool.checkAuth($route.name,'back') && mainData.sa_customerpoolid_source !== 0" :data="mainData" @backSuccess="onSuccess"></toBack>
-        <to_void class="inline-16" v-if="tool.checkAuth($route.name,'toVoid')" :id="mainData.sa_customersid" @onshow="onSuccess" @toVoidSuccess="onSuccess"></to_void>
-        <recovery class="inline-16" v-if="tool.checkAuth($route.name,'recovery') "  :data="mainData" @onshow="onSuccess" @backSuccess="onSuccess"></recovery>
+        <statusChange class="inline-16" v-if="tool.checkAuth($route.name,'statusChange')" :disabled="disabled" :id="mainData.sa_customersid"  @statusChangeSuccess="statusChangeSuccess"></statusChange>
+        <share class="inline-16" v-if="tool.checkAuth($route.name,'share') && mainData.sourcepoolname === ''" :disabled="disabled" :id="mainData.sa_customersid" @onshow="onSuccess" @shareSuccess="onSuccess"></share>
+        <toBack class="inline-16" v-if="tool.checkAuth($route.name,'back') && mainData.sa_customerpoolid_source !== 0" :disabled="disabled" :data="mainData" @backSuccess="onSuccess"></toBack>
+        <to_void class="inline-16" v-if="tool.checkAuth($route.name,'toVoid')" :id="mainData.sa_customersid" :disabled="disabled" @onshow="onSuccess" @toVoidSuccess="onSuccess"></to_void>
+        <recovery class="inline-16" v-if="tool.checkAuth($route.name,'recovery') " :disabled="disabled" :data="mainData" @onshow="onSuccess" @backSuccess="onSuccess"></recovery>
       </div>
       <div slot="slot0" >
         <detailed ref="baseDetail"></detailed>
@@ -78,6 +74,7 @@ export default {
     return {
       mainData:{},
       mainAreaData:[],
+      userInfo:JSON.parse(window.sessionStorage.getItem('userInfo')),
       tags:{},
       visible:false,
       dialogFormVisible:false,
@@ -87,7 +84,8 @@ export default {
         userid:''
       },
       users:[],
-      flag:false
+      flag:false,
+      disabled:false
     }
   },
   components:{
@@ -109,6 +107,18 @@ export default {
     statusChange,
     toBack
   },
+  watch:{
+    mainData(val) {
+      if (this.mainData.leader.length !== 0){
+        if (JSON.parse(window.sessionStorage.getItem('userInfo')).userid === this.mainData.leader[0].userid){
+          this.disabled = false
+        }else {
+          this.disabled = true
+        }
+      }
+      console.log("权限结果",this.disabled)
+    }
+  },
   methods:{
     async queryMainData(id) {
       const res = await this.$api.requested({
@@ -118,13 +128,11 @@ export default {
         },
       })
       this.mainData = res.data
-      console.log("输出数据一")
-      console.log(this.mainData)
       this.$refs['details'].param.content.type = this.$route.query.tabIndex
       this.$refs['details'].param.content.isExport = false
       this.changeDataStructure()
       this.flag = true
-      console.log(this.mainAreaData)
+      console.log(this.mainData,"输出数据用户id")
     },
     show(){
       this.visible = false

+ 2 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/operation/recovery.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button style="width:100%" size="mini" type="primary" block @click="onshow">回收</el-button>
+    <el-button style="width:100%"  size="mini" :type="disabled?'':'primary'" block @click="onshow" :disabled="disabled">回收</el-button>
     <el-dialog title="" :visible.sync="dialogForm" width="400px" append-to-body>
       <div slot="title" style="font-size: 15px">
         回收客户
@@ -34,7 +34,7 @@
 <script>
 export default {
   name: "recovery",
-  props:["data"],
+  props:["data","disabled"],
   data() {
     return {
       dialogForm: false,

+ 2 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/operation/share.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button style="width:100%" size="mini"type="primary"  block @click="onshow">分享至公海</el-button>
+    <el-button style="width:100%" size="mini" :type="disabled?'':'primary'"  block @click="onshow" :disabled="disabled">分享至公海</el-button>
     <el-dialog title="" :visible.sync="dialogForm" width="400px" append-to-body>
       <div slot="title" style="font-size: 15px">
         分享至公海
@@ -34,7 +34,7 @@
 <script>
 export default {
   name: "share",
-  props:["id"],
+  props:["id","disabled"],
   data(){
     return {
       dialogForm:false,

+ 2 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/operation/statusChange.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button size="mini" type="primary" block @click="onshow">更改合作状态</el-button>
+    <el-button size="mini" :type="disabled?'':'primary'" block @click="onshow" :disabled="disabled">更改合作状态</el-button>
     <el-dialog title="" :visible.sync="dialogForm" width="400px" append-to-body>
       <div slot="title" style="font-size: 15px">
         状态变更
@@ -34,7 +34,7 @@
 <script>
 export default {
   name: "statusChange",
-  props:["id"],
+  props:["id","disabled"],
   data(){
     return {
       dialogForm:false,

+ 2 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/operation/toBack.vue

@@ -1,13 +1,13 @@
 <template>
   <div>
-    <el-button size="mini" type="primary"  block @click="onshow">退回至公海</el-button>
+    <el-button size="mini"  :type="disabled?'':'primary'" block @click="onshow" :disabled="disabled">退回至公海</el-button>
   </div>
 </template>
 
 <script>
 export default {
   name: "toBack",
-  props:["data"],
+  props:["data","disabled"],
   methods:{
     onshow() {
       this.$confirm('此操作会将客户退回公海, 是否继续?', '提示', {

+ 2 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/operation/toVoid.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button style="width:100%" size="mini" type="primary" block @click="onshow">作废</el-button>
+    <el-button style="width:100%" :type="disabled?'':'primary'" size="mini" type="primary" block @click="onshow" :disabled="disabled">作废</el-button>
     <el-dialog title="" :visible.sync="dialogForm" width="25%" append-to-body>
       <div slot="title" style="font-size: 15px">
         作废
@@ -27,7 +27,7 @@
 <script>
 export default {
   name: "toVoid",
-  props:["id"],
+  props:["id","disabled"],
   data(){
     return {
       dialogForm:false,

+ 22 - 13
src/SDrpManagement/salerPrivatecustomer/index.vue

@@ -159,19 +159,28 @@ export default {
     return {
       value:'1',
       editableTabsValue: "我负责的",
-      editableTabs: [{
-        title: '我负责的',
-        name: "1",
-      }, {
-        title: '我参与的',
-        name: "2",
-      }, {
-        title: '我下属负责的',
-        name: "3",
-      }, {
-        title: '我下属参与的',
-        name: "4",
-      }],
+      editableTabs: [
+        {
+          title: '我负责的',
+          name: "1",
+        },
+        {
+          title: '我参与的',
+          name: "2",
+        },
+        {
+          title: '我创建的',
+          name: "5",
+        },
+        {
+          title: '我下属负责的',
+          name: "3",
+        },
+        {
+          title: '我下属参与的',
+          name: "4",
+        }
+      ],
       tabIndex:"1",
       options:[],
       listData:[],