Browse Source

调整我的客户、公海客户详情页

qymljy 2 years ago
parent
commit
35293c4c4c

+ 23 - 3
src/HDrpManagement/publicCustomer/modules/detail/addressManage/modules/add.vue

@@ -11,9 +11,19 @@
         @close="onClose">
       <div class="drawer__panel">
         <el-row :gutter="20">
-          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="75px">
+          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="90px">
             <el-col :span="24">
-              <el-form-item label="省市县:" >
+              <el-form-item  label="联系人:" prop="name">
+                <el-input   v-model="form.name" placeholder="请输入联系人"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="联系电话:" prop="phonenumber">
+                <el-input   v-model="form.phonenumber" placeholder="请输入联系电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="省市县:" prop="province">
                 <el-cascader
                     style="width:100%"
                     v-model="value"
@@ -65,7 +75,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" :disabled="value === '' && form.address === ''">确 定</el-button>
+        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width" >确 定</el-button>
       </div>
     </el-drawer>
   </div>
@@ -103,6 +113,15 @@ export default {
         address: [
           { required: false, message: '地址不能为空', trigger: 'blur' },
         ],
+        name: [
+          { required: true, message: '联系人不能为空', trigger: 'blur' },
+        ],
+        phonenumber: [
+          { required: true, message: '联系电话不能为空', trigger: 'blur' },
+        ],
+        province: [
+          { required: true, message: '省市县不能为空', trigger: 'change,blur' },
+        ],
       },
       value:'',
       addressList:[],
@@ -193,6 +212,7 @@ export default {
     },
     /*省市县*/
     cascaderChange (val) {
+      this.form.province = val[0]
       if (val.length === 1)
         return this.form = Object.assign({},this.form,{province:val[0],city:'',county:''})
 

+ 22 - 3
src/HDrpManagement/publicCustomer/modules/detail/addressManage/modules/edit.vue

@@ -4,16 +4,26 @@
     <el-drawer
         title="编辑客户地址"
         :visible.sync="dialogFormVisible"
-        size="25%"
+        size="600px"
         direction="rtl"
         :show-close="false"
         append-to-body
         @close="dialogFormVisible = false">
       <div class="drawer__panel">
         <el-row :gutter="20">
-          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="75px">
+          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="90px">
             <el-col :span="24">
-              <el-form-item label="省市县:" >
+              <el-form-item  label="联系人:" prop="name">
+                <el-input   v-model="form.name" placeholder="请输入联系人"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="联系电话:" prop="phonenumber">
+                <el-input   v-model="form.phonenumber" placeholder="请输入联系电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="省市县:" prop="province">
                 <el-cascader
                     style="width:100%"
                     v-model="form.value"
@@ -101,6 +111,15 @@ export default {
         ownertable: "sa_customers"
       },
       rules:{
+        name: [
+          { required: true, message: '联系人不能为空', trigger: 'blur' },
+        ],
+        phonenumber: [
+          { required: true, message: '联系电话不能为空', trigger: 'blur' },
+        ],
+        province: [
+          { required: true, message: '省市县不能为空', trigger: 'change,blur' },
+        ],
         address: [
           { required: false, message: '地址不能为空', trigger: 'blur' },
         ],

+ 2 - 2
src/HDrpManagement/publicCustomer/modules/detail/detailedData.vue

@@ -44,7 +44,7 @@
           <span :style="statusStyle">{{ basic.status?basic.status:"--" }}</span>
         </el-descriptions-item>
         <!-- <el-descriptions-item label="负责人">{{ basic.leader.length === 0?"--":basic.leader[0].name }}</el-descriptions-item> -->
-        <el-descriptions-item label-class-name="my-label" label="负责人">{{ length !== 0?data.leader[0].name:"--" }}</el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="负责人">{{ basic.leader?basic.leader.length !== 0 ?basic.leader[0].name:'--':"--" }}</el-descriptions-item>
       </el-descriptions>
     </div>
 
@@ -56,7 +56,7 @@
         <el-descriptions-item label="最近编辑人">{{ system.changeby?system.changeby:"--" }}</el-descriptions-item>
         <el-descriptions-item label="最近编辑时间">{{ system.changedate?system.changedate:"--" }}</el-descriptions-item>
         <el-descriptions-item  label="作废原因">{{ system.returnreson?system.returnreson:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="转手次数">{{length !== 0?data.leader[0].leadernum === '0'?'0':data.leader[0].leadernum:'--' }}</el-descriptions-item>
+        <el-descriptions-item  label="转手次数">{{ data.leader?data.leader.length !== 0 ? data.leader[0].leadernum === 0?'0':data.leader[0].leadernum:'--':'--' }}</el-descriptions-item>
       </el-descriptions>
     </div>
   </div>

+ 23 - 6
src/SDrpManagement/salerPrivatecustomer/detail/modules/addressManage/modules/add.vue

@@ -11,9 +11,19 @@
         @close="onClose">
       <div class="drawer__panel">
         <el-row :gutter="20">
-          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="75px">
+          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="90px">
             <el-col :span="24">
-              <el-form-item label="省市县:" >
+              <el-form-item  label="联系人:" prop="name">
+                <el-input  rows="2" v-model="form.name" placeholder="请输入联系人"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="联系电话:" prop="phonenumber">
+                <el-input  rows="2" v-model="form.phonenumber" placeholder="请输入联系电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="省市县:" prop="province">
                 <el-cascader
                     style="width:100%"
                     v-model="value"
@@ -65,7 +75,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" :disabled="form.province === '' && form.address === ''">确 定</el-button>
+        <el-button size="small" type="primary" @click="onSubmit" class="normal-btn-width" >确 定</el-button>
       </div>
     </el-drawer>
   </div>
@@ -100,6 +110,15 @@ export default {
         ownertable: "sa_customers"
       },
       rules:{
+        name: [
+          { required: true, message: '联系人不能为空', trigger: 'blur' },
+        ],
+        phonenumber: [
+          { required: true, message: '联系电话不能为空', trigger: 'blur' },
+        ],
+        province: [
+          { required: true, message: '省市县不能为空', trigger: 'change,blur' },
+        ],
         address: [
           { required: false, message: '地址不能为空', trigger: 'blur' },
         ],
@@ -196,14 +215,12 @@ export default {
     },
     /*省市县*/
     cascaderChange (val) {
+      this.form.province = val[0]
       console.log(this.form.province)
       if (val.length === 1)
         return this.form = Object.assign({},this.form,{province:val[0],city:'',county:''})
 
       this.form = Object.assign({},this.form,{province:val[0],city:val[1],county:val[2]})
-      console.log(this.form)
-      console.log(this.form.province)
-
     },
     /*地址类型*/
     async addressType(){

+ 21 - 2
src/SDrpManagement/salerPrivatecustomer/detail/modules/addressManage/modules/edit.vue

@@ -11,9 +11,19 @@
         @close="dialogFormVisible = false">
       <div class="drawer__panel">
         <el-row :gutter="20">
-          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="75px">
+          <el-form :model="form" :rules="rules"  ref="form"  size="mini" label-position="right" label-width="90px">
             <el-col :span="24">
-              <el-form-item label="省市县:" >
+              <el-form-item  label="联系人:" prop="name">
+                <el-input   v-model="form.name" placeholder="请输入联系人"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item  label="联系电话:" prop="phonenumber">
+                <el-input   v-model="form.phonenumber" placeholder="请输入联系电话"></el-input>
+              </el-form-item>
+            </el-col>
+            <el-col :span="24">
+              <el-form-item label="省市县:" prop="province">
                 <el-cascader
                     style="width:100%"
                     v-model="form.value"
@@ -101,6 +111,15 @@ export default {
         ownertable: "sa_customers"
       },
       rules:{
+        name: [
+          { required: true, message: '联系人不能为空', trigger: 'blur' },
+        ],
+        phonenumber: [
+          { required: true, message: '联系电话不能为空', trigger: 'blur' },
+        ],
+        province: [
+          { required: true, message: '省市县不能为空', trigger: 'change,blur' },
+        ],
         address: [
           { required: true, message: '地址不能为空', trigger: 'blur' },
         ],

+ 24 - 0
src/SDrpManagement/salerPrivatecustomer/detail/modules/contract/index.vue

@@ -13,6 +13,11 @@
             <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 === 'billno'" >
+            <el-button type="text" @click="detailGo(scope.column.data)">
+              {{scope.column.data[scope.column.columnname]}}
+            </el-button>
+          </div>
           <div v-else-if="scope.column.columnname === 'operation'">
             <span>{{scope.column.data[scope.column.columnname]}}</span>
           </div>
@@ -66,6 +71,25 @@ export default {
     }
   },
   methods:{
+    detailGo(row){
+      this.$store.dispatch('changeDetailDrawer',false)
+      setTimeout(()=>{
+        let route = this.$route
+        if (route.path !== '/contractDetail') {
+          this.oldRoute = {path:route.path,query:route.query}
+          this.$store.dispatch('setHistoryRouter',this.oldRoute)
+        }
+        this.$router.replace({
+          path:'/contractDetail',
+          query:{
+            id:row.sa_contractid,
+            rowindex:row.rowindex
+          }
+        })
+        this.$store.dispatch('changeDetailDrawer',true)
+      },500)
+
+    },
     async listData(){
       this.params.content.sys_enterpriseid = this.data.sys_enterpriseid
       const res = await this.$api.requested(this.params)

+ 2 - 3
src/SDrpManagement/salerPrivatecustomer/detail/modules/detailedData.vue

@@ -44,7 +44,7 @@
         <el-descriptions-item label-class-name="my-label" label="合作状态">
           <span :style="statusStyle">{{ basic.status?basic.status:"--" }}</span>
         </el-descriptions-item>
-        <el-descriptions-item label-class-name="my-label" label="负责人">{{ basic.leader?basic.leader[0].name:"--" }}</el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="负责人">{{ basic.leader?basic.leader.length !== 0 ?basic.leader[0].name:'--':"--" }}</el-descriptions-item>
 
 
 
@@ -59,8 +59,7 @@
         <el-descriptions-item label-class-name="my-label" label="最近编辑人">{{ system.changeby?system.changeby:"--" }}</el-descriptions-item>
         <el-descriptions-item label-class-name="my-label" label="最近编辑时间">{{ system.changedate?system.changedate:"--" }}</el-descriptions-item>
         <el-descriptions-item label-class-name="my-label" label="作废原因">{{ system.returnreson?system.returnreson:"--" }}</el-descriptions-item>
-<!--        <el-descriptions-item label-class-name="my-label" label="转手次数">{{ data.leader.length !== 0?data.leader[0].leadernum === 0?'0':data.leader[0].leadernum:'&#45;&#45;' }}</el-descriptions-item>-->
-        <el-descriptions-item label-class-name="my-label" label="转手次数">{{ data.leader?data.leader[0].leadernum === 0?'0':data.leader[0].leadernum:'--' }}</el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="转手次数">{{ data.leader?data.leader.length !== 0 ? data.leader[0].leadernum === 0?'0':data.leader[0].leadernum:'--':'--' }}</el-descriptions-item>
       </el-descriptions>
     </div>
   </div>

+ 25 - 1
src/SDrpManagement/salerPrivatecustomer/detail/modules/projectChange/list.vue

@@ -14,7 +14,12 @@
     </div>
     <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  :height="tableHieght" >
       <template v-slot:customcol="scope">
-        <p>{{scope.column.data[scope.column.columnname]?scope.column.data[scope.column.columnname]:'--'}}</p>
+        <div v-if="scope.column.columnname === 'projectnum'" >
+          <el-button type="text" @click="detailGo(scope.column.data)">
+            {{scope.column.data[scope.column.columnname]}}
+          </el-button>
+        </div>
+        <p v-else>{{scope.column.data[scope.column.columnname]?scope.column.data[scope.column.columnname]:'--'}}</p>
       </template>
       <template v-slot:opreation="scope">
       </template>
@@ -60,6 +65,25 @@ export default {
     }
   },
   methods:{
+    detailGo(row){
+      this.$store.dispatch('changeDetailDrawer',false)
+      setTimeout(()=>{
+        let route = this.$route
+        if (route.path !== '/projectChangeDetail') {
+          this.oldRoute = {path:route.path,query:route.query}
+          this.$store.dispatch('setHistoryRouter',this.oldRoute)
+        }
+        this.$router.replace({
+          path:'/projectChangeDetail',
+          query:{
+            id:row.sa_projectid,
+            rowindex:row.rowindex
+          }
+        })
+        this.$store.dispatch('changeDetailDrawer',true)
+      },500)
+
+    },
     async listData(){
       this.param.content.sys_enterpriseid = this.data.sys_enterpriseid
       const res = await this.$api.requested(this.param)

+ 126 - 0
src/SDrpManagement/salerPrivatecustomer/detail/modules/projectChange/listCopy.vue

@@ -0,0 +1,126 @@
+<template>
+  <div>
+    <div class="flex-align-center normal-margin">
+      <el-input
+          style="width:300px"
+          placeholder="请输入内容"
+          v-model="search"
+          clearable
+          @clear="clearData()"
+          size="small"
+          @keyup.enter.native="queryClick()">
+        <i slot="prefix" class="el-icon-search" @click="queryClick()"></i>
+      </el-input>
+    </div>
+    <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  :height="tableHieght" >
+      <template v-slot:customcol="scope">
+        <div v-if="scope.column.columnname === 'projectnum'" >
+          <el-button type="text" @click="detailGo(scope.column.data)">
+            {{scope.column.data[scope.column.columnname]}}
+          </el-button>
+        </div>
+        <p v-else>{{scope.column.data[scope.column.columnname]?scope.column.data[scope.column.columnname]:'--'}}</p>
+      </template>
+      <template v-slot:opreation="scope">
+      </template>
+    </tableLayout>
+    <div style="margin-top:16px;text-align:right">
+      <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="param.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+      </el-pagination>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "list",
+  props:["data"],
+  data(){
+    return {
+      tableHieght:"600px",
+      tablecols:[],
+      list:[],
+      total:0,
+      currentPage:0,
+      search:"",
+      param:{
+        "id": "20221018102003",
+        "content": {
+          "sys_enterpriseid":'',
+          "type":1,
+          "where":{
+            "condition":""
+          }
+
+        }
+      }
+    }
+  },
+  methods:{
+    detailGo(row){
+      this.$store.dispatch('changeDetailDrawer',false)
+      setTimeout(()=>{
+        this.$router.replace({
+          path:'/projectChangeDetail',
+          query:{
+            id:row.sa_projectid,
+            rowindex:row.rowindex
+          }
+        })
+        this.$store.dispatch('changeDetailDrawer',true)
+      },500)
+
+    },
+    async listData(){
+      this.param.content.sys_enterpriseid = this.data.sys_enterpriseid
+      const res = await this.$api.requested(this.param)
+      this.list = res.data
+      this.total = res.total
+      this.currentPage = res.pageNumber
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.param.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.param.content.pageNumber = val
+      this.listData()
+    },
+    onSuccess(){
+      this.listData()
+    },
+    clearData(){
+      this.search = ""
+      this.queryClick()
+    },
+    queryClick(){
+      this.param.content.where.condition = this.search
+      this.listData()
+    }
+  },
+  mounted() {
+    this.listData()
+  },
+  created() {
+    this.tablecols = this.tool.tabelCol(this.$route.name).projectChangeTable.tablecols
+  },
+}
+</script>
+
+<style scoped>
+/deep/.el-input__prefix {
+  display: flex;
+  align-items: center;
+}
+
+</style>

+ 24 - 0
src/SDrpManagement/salerPrivatecustomer/detail/modules/quotedPrice/list.vue

@@ -17,6 +17,11 @@
         <div v-if="scope.column.columnname === 'specialoffer'">
           <span>{{scope.column.data[scope.column.columnname] === 0?'否':'是'}}</span>
         </div>
+        <div v-else-if="scope.column.columnname === 'billno'" >
+          <el-button type="text" @click="detailGo(scope.column.data)">
+            {{scope.column.data[scope.column.columnname]}}
+          </el-button>
+        </div>
         <div v-else-if="scope.column.columnname === 'invaliddate'">
           {{scope.column.data.begdate?scope.column.data.begdate+'至'+ scope.column.data.enddate:'--'}}
         </div>
@@ -66,6 +71,25 @@ export default {
     }
   },
   methods:{
+    detailGo(row){
+      this.$store.dispatch('changeDetailDrawer',false)
+      setTimeout(()=>{
+        let route = this.$route
+        if (route.path !== '/quotedPriceDetail') {
+          this.oldRoute = {path:route.path,query:route.query}
+          this.$store.dispatch('setHistoryRouter',this.oldRoute)
+        }
+        this.$router.replace({
+          path:'/quotedPriceDetail',
+          query:{
+            id:row.sa_quotedpriceid,
+            rowindex:row.rowindex
+          }
+        })
+        this.$store.dispatch('changeDetailDrawer',true)
+      },500)
+
+    },
     async listData(){
       console.log(this.data)
       this.param.content.sys_enterpriseid = this.data.sys_enterpriseid

+ 2 - 2
vue.config.js

@@ -15,8 +15,8 @@ module.exports = {
       proxy: {
         '/apis': {
           // target: 'http://61.164.207.46:8000',  // target host*/
-          target: 'http://192.168.3.9:8090',  // target host*!
-          // target: 'https://oms.idcgroup.com.cn:8079/',  // target host
+          // target: 'http://192.168.3.9:8090',  // target host*!
+          target: 'https://oms.idcgroup.com.cn:8079/',  // target host
           // target: 'localhost:8080',  // target host
           ws: true,  // proxy websockets 
           changeOrigin: true,  // needed for virtual hosted sites