qymljy 2 年之前
父节点
当前提交
7ff4db79ba

+ 6 - 27
src/HDrpManagement/contractManage/components/toolList/addTool.vue

@@ -8,27 +8,7 @@
           <el-input size="small" style="width:200px;margin-bottom:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
           <el-button type="primary" size="small" :disabled="selectProductLength == 0" @click="onSumit">批 量 添 加</el-button>
         </div>
-        <Table @selectArr="selectArr" ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
-          <template v-slot:customcol="scope">
-            <div v-if="scope.column.columnname == 'attinfos'">
-              <previewImage 
-                v-if="scope.column.data.attinfos[0]" 
-                style="width:38px;height:38px;margin:0px" 
-                class="image" 
-                :image="scope.column.data.attinfos[0]" 
-                :list="scope.column.data.attinfos" 
-                :deletebtn="false"
-              ></previewImage>
-            </div>
-            <div v-else-if="scope.column.columnname == 'brand'">
-              {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
-            </div>
-            <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
-            <span v-if="!scope.column.data[scope.column.columnname] && scope.column.data[scope.column.columnname] !== 0 && scope.column.columnname != 'operation'">--</span>
-          </template>
-          <template v-slot:opreation="scope">
-            <el-button type="text" size="mini" @click="addProduct(scope.data)">添 加</el-button>
-          </template>
+        <Table  ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData" @selection="selectArr" @onSelect="addProduct">
         </Table>
         <div style="display:flex;justify-content:space-between;align-items:center;margin-top:10px">
           <span>已添加产品数:{{addProductLength}}</span>
@@ -50,7 +30,7 @@
 </template>
 
 <script>
-import Table from '@/HDrpManagement/ProductGroupMag/modules/table'
+import Table from '@/components/productTable/index'
 import previewImage from '@/components/previewImage/index'
 export default {
   props:['disabled'],
@@ -138,8 +118,8 @@ export default {
       })
     },
     async onSumit () {
-      console.log(this.$refs.table.allArr);
-      let item = this.$refs.table.allArr.map(item => {
+      console.log(this.$refs.table.tableSelectData);
+      let item = this.$refs.table.tableSelectData.map(item => {
         return {
           "itemid": item.itemid,
           "price": '0',
@@ -154,9 +134,8 @@ export default {
         },
       })
       this.tool.showMessage(res,() => {
-        this.drawer = false
-        this.$refs.table.allArr = []
-
+        this.$refs.table.tableSelectData = []
+        this.getProductList()
         this.$emit('onSuccess')
       })
     },

+ 12 - 1
src/HDrpManagement/projectChange/modules/modules/contract/index.vue

@@ -17,7 +17,13 @@
     <div style="margin-top: 15px">
       <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  fixedName="operation" :height="tableHieght">
         <template v-slot:customcol="scope">
-          <div v-if="scope.column.columnname === 'operation'">
+          <div v-if="scope.column.columnname === 'status'">
+            <span style="color:#3874f6" v-if="scope.column.data[[scope.column.columnname]] == '新建'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#52c41a" v-else-if="scope.column.data[[scope.column.columnname]] == '已提交'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#333333" v-else-if="scope.column.data[[scope.column.columnname]] == '审核'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#000000" v-else>{{scope.column.data[[scope.column.columnname]]}}</span>
+          </div>
+          <div v-else-if="scope.column.columnname === 'operation'">
             <span>{{scope.column.data[scope.column.columnname]}}</span>
           </div>
           <p v-else>{{scope.column.data[scope.column.columnname]?scope.column.data[scope.column.columnname]:'--'}}</p>
@@ -115,6 +121,11 @@ export default {
       JSON.parse(sessionStorage.getItem('module_info')).forEach(item1 => {
         item1.modules.forEach(item2 => {
           if(item2.systemmodulename == "合同管理") {
+            let route = this.$route
+            if (route.path !== '/contractDetail') {
+              this.oldRoute = {path:route.path,query:route.query}
+              this.$store.dispatch('setHistoryRouter',this.oldRoute)
+            }
             sessionStorage.setItem('active_modules',JSON.stringify(item2))
             this.$router.push({path:'/contractDetail',query:{id:data.sa_contractid,type:type}})
             return

+ 5 - 0
src/HDrpManagement/projectChange/modules/modules/quotation/index.vue

@@ -102,6 +102,11 @@ export default {
   methods:{
     detailGo(row){
       console.log(row)
+      let route = this.$route
+      if (route.path !== '/quotedPriceDetail') {
+        this.oldRoute = {path:route.path,query:route.query}
+        this.$store.dispatch('setHistoryRouter',this.oldRoute)
+      }
       this.$router.push({
         path:'/quotedPriceDetail',
         query:{

+ 6 - 6
src/HManagement/ecycle/contract/index.vue

@@ -111,8 +111,8 @@
         <span v-if="!scope.data.column.data[[scope.data.column.columnname]] && scope.data.column.data[[scope.data.column.columnname]] !== 0">--</span>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16"></delData>
-        <recovery class="inline-16"></recovery>
+        <delData class="inline-16" :ownerid="scope.data.data.sa_contractid" :sys_object="application" @delSuccess="queryData"></delData>
+        <recovery class="inline-16" :ownerid="scope.data.data.sa_contractid" :sys_object="application" @recoverySuccess="queryData"></recovery>
       </template>
     </basicLayout>
   </div>
@@ -129,11 +129,11 @@ export default {
       application:'3',
       applicationList:[
         {
-          label: '项目商机',
+          label: '销售线索',
           value: "1",
         },
         {
-          label: '报价单',
+          label: '客户',
           value: "2",
         },
         {
@@ -141,11 +141,11 @@ export default {
           value: "3",
         },
         {
-          label: '客户',
+          label: '项目商机',
           value: "4",
         },
         {
-          label: '销售线索',
+          label: '报价单',
           value: "5",
         }
       ],

+ 7 - 7
src/HManagement/ecycle/customer/index.vue

@@ -120,8 +120,8 @@
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16"></delData>
-        <recovery class="inline-16"></recovery>
+        <delData class="inline-16" :ownerid="scope.data.data.sa_customersid" :sys_object="application" @delSuccess="queryData"></delData>
+        <recovery class="inline-16" :ownerid="scope.data.data.sa_customersid" :sys_object="application" @recoverySuccess="queryData"></recovery>
       </template>
     </basicLayout>
   </div>
@@ -135,14 +135,14 @@ export default {
   name: "index",
   data () {
     return {
-      application:'4',
+      application:'2',
       applicationList:[
         {
-          label: '项目商机',
+          label: '销售线索',
           value: "1",
         },
         {
-          label: '报价单',
+          label: '客户',
           value: "2",
         },
         {
@@ -150,11 +150,11 @@ export default {
           value: "3",
         },
         {
-          label: '客户',
+          label: '项目商机',
           value: "4",
         },
         {
-          label: '销售线索',
+          label: '报价单',
           value: "5",
         }
       ],

+ 11 - 11
src/HManagement/ecycle/index.vue

@@ -30,23 +30,17 @@ export default {
     onChange(val){
       console.log(this.projectChangeShow,this.salClueShow)
       if (val === '1'){
-        this.projectChangeShow = true
-        this.salClueShow = false
-        this.quotedPriceShow = false
-        this.contractShow = false
-        this.customerShow = false
-      }else if (val === '5') {
         this.salClueShow = true
         this.projectChangeShow = false
         this.quotedPriceShow = false
         this.contractShow = false
         this.customerShow = false
-      }else if (val === '2'){
-        this.quotedPriceShow = true
+      }else if (val === '2') {
+        this.customerShow = true
         this.salClueShow = false
         this.projectChangeShow = false
+        this.quotedPriceShow = false
         this.contractShow = false
-        this.customerShow = false
       }else if (val === '3'){
         this.contractShow = true
         this.quotedPriceShow = false
@@ -54,10 +48,16 @@ export default {
         this.projectChangeShow = false
         this.customerShow = false
       }else if (val === '4'){
-        this.customerShow = true
-        this.contractShow = false
+        this.projectChangeShow = true
         this.quotedPriceShow = false
         this.salClueShow = false
+        this.contractShow = false
+        this.customerShow = false
+      }else if (val === '5'){
+        this.quotedPriceShow = true
+        this.customerShow = false
+        this.contractShow = false
+        this.salClueShow = false
         this.projectChangeShow = false
       }
       console.log(this.projectChangeShow,this.salClueShow)

+ 3 - 3
src/HManagement/ecycle/modules/delData.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-button type="text" size="mini" @click="onDel" disabled>删 除</el-button>
+    <el-button type="text" size="mini" @click="onshow" >删 除</el-button>
   </div>
 </template>
 
@@ -10,7 +10,7 @@ export default {
   props:["sys_object","ownerid"],
   methods:{
     onshow() {
-      this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
+      this.$confirm('是否确认彻底删除数据,一旦删除,无法恢复?', '提示', {
         confirmButtonText: '确定',
         cancelButtonText: '取消',
         closeOnClickModal:false,
@@ -32,7 +32,7 @@ export default {
           "ownerids": [this.ownerid]
         }
       })
-      this.tool.showMessage(()=>{
+      this.tool.showMessage(res,()=>{
         this.$emit("delSuccess")
       })
     }

+ 32 - 2
src/HManagement/ecycle/modules/recovery.vue

@@ -1,12 +1,42 @@
 <template>
   <div>
-    <el-button type="text" size="mini" disabled>恢 复</el-button>
+    <el-button type="text" size="mini" @click="onshow">恢 复</el-button>
   </div>
 </template>
 
 <script>
 export default {
-  name: "recovery"
+  name: "recovery",
+  props:["sys_object","ownerid"],
+  methods:{
+    onshow() {
+      this.$confirm('数据恢复至原账号原位置,是否继续?', '提示', {
+        confirmButtonText: '确定',
+        cancelButtonText: '取消',
+        closeOnClickModal:false,
+        type: 'warning'
+      }).then(() => {
+        this.onRecovery()
+      }).catch(() => {
+        this.$message({
+          type: 'info',
+          message: '已取消删除'
+        });
+      });
+    },
+    async onRecovery(){
+      const res = await this.$api.requested({
+        "id": 20230103131104,
+        "content": {
+          "sys_object": this.sys_object,//1-线索,2-客户,3-合同,4-项目商机,5-报价单
+          "ownerids": [this.ownerid]
+        }
+      })
+      this.tool.showMessage(res,()=>{
+        this.$emit("recoverySuccess")
+      })
+    }
+  }
 }
 </script>
 

+ 7 - 7
src/HManagement/ecycle/projectChange/index.vue

@@ -112,8 +112,8 @@
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16"></delData>
-        <recovery class="inline-16"></recovery>
+        <delData class="inline-16" :ownerid="scope.data.data.sa_projectid" :sys_object="application" @delSuccess="queryData"></delData>
+        <recovery class="inline-16" :ownerid="scope.data.data.sa_projectid" :sys_object="application" @recoverySuccess="queryData"></recovery>
       </template>
     </basicLayout>
   </div>
@@ -133,14 +133,14 @@ import delData from "@/HManagement/ecycle/modules/delData"
 export default {
   data () {
     return {
-      application:'1',
+      application:'4',
       applicationList:[
         {
-          label: '项目商机',
+          label: '销售线索',
           value: "1",
         },
         {
-          label: '报价单',
+          label: '客户',
           value: "2",
         },
         {
@@ -148,11 +148,11 @@ export default {
           value: "3",
         },
         {
-          label: '客户',
+          label: '项目商机',
           value: "4",
         },
         {
-          label: '销售线索',
+          label: '报价单',
           value: "5",
         }
       ],

+ 7 - 7
src/HManagement/ecycle/quotedPrice/index.vue

@@ -105,8 +105,8 @@
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16"></delData>
-        <recovery class="inline-16"></recovery>
+        <delData class="inline-16" :ownerid="scope.data.data.sa_quotedpriceid" :sys_object="application" @delSuccess="queryData"></delData>
+        <recovery class="inline-16" :ownerid="scope.data.data.sa_quotedpriceid" :sys_object="application" @recoverySuccess="queryData"></recovery>
       </template>
     </basicLayout>
   </div>
@@ -119,14 +119,14 @@ export default {
   name: "index",
   data () {
     return {
-      application:'2',
+      application:'5',
       applicationList:[
         {
-          label: '项目商机',
+          label: '销售线索',
           value: "1",
         },
         {
-          label: '报价单',
+          label: '客户',
           value: "2",
         },
         {
@@ -134,11 +134,11 @@ export default {
           value: "3",
         },
         {
-          label: '客户',
+          label: '项目商机',
           value: "4",
         },
         {
-          label: '销售线索',
+          label: '报价单',
           value: "5",
         }
       ],

+ 10 - 7
src/HManagement/ecycle/saleClue/index.vue

@@ -56,8 +56,8 @@
         <span v-if="!scope.data.column.data[scope.data.column.columnname] ">--</span>
       </template>
       <template v-slot:tbOpreation="scope">
-        <delData class="inline-16" :ownerid="scope.data"></delData>
-        <recovery class="inline-16"></recovery>
+        <delData class="inline-16" :ownerid="scope.data.data.sat_orderclueid" :sys_object="application" @delSuccess="delSuccess"></delData>
+        <recovery class="inline-16" :ownerid="scope.data.data.sat_orderclueid" :sys_object="application" @recoverySuccess="queryData"></recovery>
       </template>
     </basicLayout>
   </div>
@@ -77,14 +77,14 @@ import delData from "@/HManagement/ecycle/modules/delData"
 export default {
   data () {
     return {
-      application:'5',
+      application:'1',
       applicationList:[
         {
-          label: '项目商机',
+          label: '销售线索',
           value: "1",
         },
         {
-          label: '报价单',
+          label: '客户',
           value: "2",
         },
         {
@@ -92,11 +92,11 @@ export default {
           value: "3",
         },
         {
-          label: '客户',
+          label: '项目商机',
           value: "4",
         },
         {
-          label: '销售线索',
+          label: '报价单',
           value: "5",
         }
       ],
@@ -115,6 +115,9 @@ export default {
     applicationChange(val){
       console.log(val)
       this.$emit("changeApplication",val)
+    },
+    delSuccess(){
+      this.queryData()
     }
   },
   mounted() {

+ 1 - 1
src/SDrpManagement/salerPrivatecustomer/detail/customerDetail.vue

@@ -29,7 +29,7 @@
         <detailed ref="baseDetail"></detailed>
       </div>
       <div slot="slot1" class=" normal-panel"  >
-        <contacts :data="mainData"  @onSuccess="onSuccess" v-if="flag"></contacts>
+        <contacts :data="mainData" :disabled="disabled"  @onSuccess="onSuccess" v-if="flag"></contacts>
       </div>
       <div slot="slot2" class=" normal-panel">
         <address_manage :data="mainData"  v-if="flag"></address_manage>

+ 5 - 4
src/SDrpManagement/salerPrivatecustomer/detail/modules/contacts/list.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <div class="flex-align-center normal-margin">
-      <add class="inline-16" :data="data"  @insertSuccess="onSuccess" v-if="tool.checkAuth($route.name,'contactManage')"></add>
+      <add class="inline-16" :data="data"  @insertSuccess="onSuccess" v-if="tool.checkAuth($route.name,'contactManage') && !disabled"></add>
       <el-input
           style="width:300px"
           placeholder="请输入内容"
@@ -18,8 +18,8 @@
         <p>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
       <template v-slot:opreation="scope">
-        <edit v-if="tool.chechAuth($route.name,'contactManage')" :data="scope.data" :enterprisename="data.enterprisename" @updateSuccess="onSuccess"></edit>
-        <toVoid v-if="tool.chechAuth($route.name,'contactManage')" :data="scope.data" @toVoidSuccess="onSuccess"></toVoid>
+        <edit  :data="scope.data" :enterprisename="data.enterprisename" @updateSuccess="onSuccess"></edit>
+        <toVoid  :data="scope.data" @toVoidSuccess="onSuccess" ></toVoid>
       </template>
     </tableLayout>
     <div style="margin-top:16px;text-align:right">
@@ -44,7 +44,7 @@ import toVoid from './modules/toVoid'
 import {mapGetters} from 'vuex'
 export default {
   name: "list",
-  props:["data"],
+  props:["data","disabled"],
   data(){
     return {
       tableHieght:"600px",
@@ -79,6 +79,7 @@ export default {
     async listData(){
       this.params.content.sys_enterpriseid = this.data.sys_enterpriseid
       const res = await this.$api.requested(this.params)
+      console.log(res,"表数据")
       this.list = res.data
       this.total = res.total
       this.currentPage = res.pageNumber

+ 1 - 1
src/SDrpManagement/salerPrivatecustomer/detail/modules/contacts/modules/edit.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="inline-16">
-    <el-button size="small" type="text" @click="onshow" :disabled="tool.checkAuth($route.name,'contactInformationManage')">编 辑</el-button>
+    <el-button size="small" type="text" @click="onshow" :disabled="tool.checkAuth($route.name,'contactManage')">编 辑</el-button>
     <el-drawer
         title="编辑联系人"
         :visible.sync="dialogFormVisible"

+ 1 - 1
src/SDrpManagement/salerPrivatecustomer/detail/modules/contacts/modules/toVoid.vue

@@ -3,7 +3,7 @@
     <el-popconfirm
         title="确定要删除该联系人嘛?"
         @confirm="toVoidRow()">
-      <el-button slot="reference" size="small" type="text" :disabled="tool.checkAuth($route.name,'contactInformationManage')">删 除</el-button>
+      <el-button slot="reference" size="small" type="text" :disabled="tool.checkAuth($route.name,'contactManage')">删 除</el-button>
     </el-popconfirm>
   </div>
 </template>

+ 2 - 1
src/SManagement/project_target/index.vue

@@ -8,7 +8,8 @@
         <div class="container normal-panel">
           <table1 ref="table" :data="hrid">
             <template v-slot:detail="scope">
-              <el-button v-if="tool.checkAuth($route.name,'read') " type="text" size="small" @click="$store.dispatch('changeDetailDrawer',true),$router.push({path:'/projectDetail',query:{id:scope.data.data.hrid,year:scope.data.year,ownerHrid:hrid}})">详情</el-button>
+              <el-button v-if="tool.checkAuth($route.name,'read') && scope.data.data.status !== '新建'" type="text" size="small" @click="$store.dispatch('changeDetailDrawer',true),$router.push({path:'/projectDetail',query:{id:scope.data.data.hrid,year:scope.data.year,ownerHrid:hrid}})">详 情</el-button>
+              <el-button v-if="tool.checkAuth($route.name,'read') && scope.data.data.status === '新建'" type="text" size="small" @click="$store.dispatch('changeDetailDrawer',true),$router.push({path:'/projectDetail',query:{id:scope.data.data.hrid,year:scope.data.year,ownerHrid:hrid}})">编 辑</el-button>
 <!--              <el-button v-if="tool.checkAuth($route.name,'update') && scope.data.data.status === '新建' " type="text" size="small" @click="$store.dispatch('DrawerShowChange',true),$router.push({path:'/editProjectInfo',query:{id:scope.data.data.hrid,year:scope.data.year}})">编辑</el-button>-->
             </template>
           </table1>

+ 16 - 1
src/SManagement/sales_forecast/index.vue

@@ -47,6 +47,9 @@
           {{scope.data.column.data[[scope.data.column.columnname]]}}
         </div>
       </template>
+      <template v-slot:tbOpreation="scope">
+<!--        <el-button type="text" size="mini" @click="detailGo(scope.data)">提 报</el-button>-->
+      </template>
     </basicLayout>
   </div>
 </template>
@@ -111,7 +114,19 @@ export default {
     selectChange(){
       this.$refs.basicLayout.param.content.where = this.selectParam
       this.$refs.basicLayout.listData()
-    }
+    },
+    detailGo(row){
+      console.log(row)
+      this.$store.dispatch('changeDetailDrawer',true)
+      this.$router.push({
+        path:'/product_detail',
+        query:{
+          id:row.sa_salesforecastbillid,
+          rowindex:row.rowindex
+        }
+      })
+
+    },
   }
 }