فهرست منبع

销售前端 bug 7.28 zyp

阿拉蕾 2 سال پیش
والد
کامیت
c2aa76f7ab

+ 6 - 0
src/api/crm/customer.js

@@ -57,6 +57,12 @@ export function getLineCustomerDetails(query) {
     params: query
   })
 }
+export function getCustomer1(customerId) {
+  return request({
+    url: '/crm/customer/query1/' + customerId,
+    method: 'get'
+  })
+}
 
 export function getCustomerListBySearch(query) {
   return request({

+ 19 - 3
src/views/company/companySmsLogs/index.vue

@@ -1,6 +1,9 @@
 <template>
   <div class="app-container">
     <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
+      <el-form-item label="所属部门" prop="deptId">
+          <treeselect style="width:205.4px" v-model="queryParams.deptId" :options="deptOptions" :show-count="true" placeholder="请选择所属部门" />
+      </el-form-item>
       <el-form-item label="客户编号" prop="customerCode">
         <el-input
         style="width:220px"
@@ -123,13 +126,19 @@
 import { listCompanySmsLogs, getCompanySmsLogs, delCompanySmsLogs, addCompanySmsLogs, updateCompanySmsLogs, exportCompanySmsLogs } from "@/api/company/companySmsLogs";
 import Editor from '@/components/Editor';
 import customerDetails from '../../crm/components/customerDetails.vue';
+import { treeselect } from "@/api/company/companyDept";
+import Treeselect from "@riophae/vue-treeselect";
+import "@riophae/vue-treeselect/dist/vue-treeselect.css";
 
 export default {
   name: "CompanySmsLogs",
-  components: { customerDetails,Editor },
+  components: { customerDetails,Editor,Treeselect },
   data() {
     return {
-
+      // 部门树选项
+      deptOptions: undefined,
+      // 部门名称
+      deptName: undefined,
       show:{
         title:"客户详情",
         open:false,
@@ -181,6 +190,7 @@ export default {
       this.statusOptions = response.data;
     });
     this.getList();
+    this.getTreeselect();
   },
   methods: {
     handleShow(row){
@@ -303,7 +313,13 @@ export default {
         }).then(response => {
           this.download(response.msg);
         }).catch(function() {});
-    }
+    },
+    getTreeselect() {
+      treeselect().then((response) => {
+        this.deptOptions = response.data;
+      });
+    }, 
+
   }
 };
 </script>

+ 1 - 1
src/views/company/statistics/smsLogs.vue

@@ -19,7 +19,7 @@
                   <treeselect :clearable="false"  v-model="deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
                 </el-form-item>
                 <el-form-item>
-                   <el-select v-model="userIds" multiple  placeholder="请选择员工">
+                  <el-select filterable v-model="userIds" placeholder="请选择员工" clearable size="small">
                       <el-option
                         v-for="item in users"
                         :key="item.userId"

+ 1 - 1
src/views/company/statistics/voiceLogs.vue

@@ -19,7 +19,7 @@
                   <treeselect :clearable="false"  v-model="deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
                 </el-form-item>
                 <el-form-item>
-                   <el-select v-model="userIds" multiple  placeholder="请选择员工">
+                  <el-select filterable v-model="userIds" placeholder="请选择员工" clearable size="small">
                       <el-option
                         v-for="item in users"
                         :key="item.userId"

+ 9 - 2
src/views/crm/components/customerDetails.vue

@@ -23,6 +23,7 @@
                 <span v-if="item!=null">{{item.mobile}}</span>
                  <el-button type="text"  v-if="isReceive" size="mini" @click="callNumber(item.customerId,null)">拨号</el-button>
                  <el-button type="text" v-if="isReceive" size="mini" @click="handleSms(item.mobile)">短信</el-button>
+                 <el-button icon="el-icon-search" size="mini" @click="handleMobile" style="margin-left: 20px;" circle v-hasPermi="['crm:customer:query1']"></el-button>
             </el-descriptions-item>
             <el-descriptions-item label="性别" >
                 <span v-if="item!=null">
@@ -212,7 +213,7 @@
     import duplicateCustomer from '../components/duplicateCustomer.vue';
     import customerContacts from './customerContacts.vue';
     import customerHisOrderList from '../components/customerHisOrderList.vue';
-    import { getCustomerDetails,updateCustomer  } from "@/api/crm/customer";
+    import { getCustomerDetails,updateCustomer,getCustomer1  } from "@/api/crm/customer";
     import addTag from './addTag.vue';
     import addRemark from './addRemark.vue';
     import addSms from './addSms.vue';
@@ -293,6 +294,12 @@
            
         },
         methods: {
+            handleMobile(){
+                const customerId = this.item.customerId;
+                getCustomer1(customerId).then(response =>{
+                    this.item.mobile = response.mobile;
+                }) 
+            },
             handleEdit() {
                 this.customer.open = true;
                 var that=this;
@@ -349,7 +356,7 @@
                 if(tab.name=="contacts"){
                     this.$refs.contacts.getData(this.item.customerId);
                 }
-                if(tab.name=="visit"){
+                if(tab.name == "visit"){
                     this.$refs.visit.getData(this.item.customerId,this.isReceive);
                 }
                 if(tab.name=="logs"){

+ 1 - 1
src/views/crm/customer/line.vue

@@ -268,7 +268,7 @@
 <script>
  import store from "@/store";
 import { importLineTemplate,getLineCustomerList ,assignToUser,getCustomerDetails,exportCustomer } from "@/api/crm/customer";
-import customerDetails from '../components/lineCustomerDetails.vue';
+import customerDetails from '../components/customerDetails.vue';
 import { treeselect } from "@/api/company/companyDept";
 import Treeselect from "@riophae/vue-treeselect";
 import "@riophae/vue-treeselect/dist/vue-treeselect.css";

+ 3 - 0
src/views/crm/customer/my.vue

@@ -500,8 +500,11 @@ export default {
     handleShow(row){
       this.show.open=true;
       var that=this;
+      const tab = "visit";
       setTimeout(() => {
         that.$refs.customerDetails.getDetails(row.customerId);
+        that.$refs.customerDetails.handleClick(tab);
+
       }, 200);
     },
     handleAdd() {

+ 8 - 8
src/views/store/components/productAfterSalesOrder.vue

@@ -16,7 +16,7 @@
             <el-tag prop="status" v-for="(item, index) in salesStatusOptions"    v-if="afterSales.salesStatus==item.dictValue">{{item.dictLabel}}</el-tag>
           </span>
           <div class="operate-button-container"  >
-            <el-button size="mini" v-show="afterSales.salesStatus==0&&afterSales.status===1"  @click="addDelivery">添加物流</el-button>
+            <el-button size="mini" v-hasPermi="['store:storeAfterSales:edit']" v-show="afterSales.salesStatus==0&&afterSales.status===1"  @click="addDelivery">编辑物流</el-button>
             <el-button size="mini"  @click="showOrder">查看订单</el-button>
          </div>
         </div>
@@ -121,7 +121,7 @@
           <el-table-column label="价格" width="240" align="center">
             <template slot-scope="scope">
               <p>价格:¥{{JSON.parse(scope.row.jsonInfo).price}}</p>
-              
+
             </template>
           </el-table-column>
           <el-table-column label="属性" width="240" align="center">
@@ -158,7 +158,7 @@
           </el-table-column>
         </el-table>
       </el-card>
-      
+
     </div>
     <el-dialog :title="audit.title" :visible.sync="audit.open" width="800px" append-to-body>
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
@@ -183,7 +183,7 @@
         <product-order  ref="productOrder" />
     </el-dialog>
     <el-dialog :title="add.title" :visible.sync="add.open" width="500px" append-to-body>
-    
+
     <div slot="footer" class="dialog-footer">
       <el-form ref="form" :model="form" :rules="rules" label-width="100px">
         <el-form-item label="id" prop="id" v-if="false">
@@ -256,9 +256,9 @@ export default {
          address: [
           { required: true, message: "退货地址不能为空", trigger: "blur" }
         ],
-        
+
       }
- 
+
     };
   },
   created() {
@@ -285,7 +285,7 @@ export default {
             });
     },
     cancel1(){
-      this.open = false;
+      this.add.open = false;
     },
     addDelivery(){
       this.add.open = true;
@@ -379,5 +379,5 @@ export default {
   margin-right: 20px
 }
 
- 
+
 </style>

+ 1 - 1
src/views/store/statistics/storeOrder.vue

@@ -19,7 +19,7 @@
             <treeselect :clearable="false"  v-model="deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
           </el-form-item>
           <el-form-item>
-             <el-select v-model="userIds" multiple  placeholder="请选择员工">
+            <el-select filterable v-model="userIds" placeholder="请选择员工" clearable size="small">
                 <el-option
                   v-for="item in users"
                   :key="item.userId"

+ 1 - 1
src/views/store/statistics/storePayment.vue

@@ -19,7 +19,7 @@
             <treeselect :clearable="false"  v-model="deptId"  :options="deptOptions" :show-count="true" placeholder="请选择归属部门" />
           </el-form-item>
           <el-form-item>
-             <el-select v-model="userIds" multiple  placeholder="请选择员工">
+            <el-select filterable v-model="userIds" placeholder="请选择员工" clearable size="small">
                 <el-option
                   v-for="item in users"
                   :key="item.userId"