Przeglądaj źródła

销售公司更新 7.31 zyp

阿拉蕾 2 lat temu
rodzic
commit
e7d5ada2a0

+ 22 - 8
src/views/company/companyUser/card/addSms.vue

@@ -162,16 +162,30 @@
             
         },
         methods: {
-            selectCustomer(row){
-                console.log(row);
-                for(var i=0;i<this.customerList.length;i++){
-                    if(this.customerList[i].customerId==row.customerId){
-                       return;
+            selectCustomer(selectedRows){
+                // console.log(row);
+                // for(var i=0;i<this.customerList.length;i++){
+                //     if(this.customerList[i].customerId==row.customerId){
+                //        return;
+                //     }
+                // }
+                // this.customerList.push(row);
+                // const selectedRows = this.$refs.dataList.selection;
+                // 遍历选中的数据,添加到 selectedList 列表
+                const selectedList = selectedRows.selection;
+                selectedList.forEach(row => {
+                    // 判断 selectedData 中是否已存在该行数据
+                    const index = this.customerList.findIndex(item => item.customerId === row.customerId)
+                    if (index === -1) {
+                    this.customerList.push(row)
                     }
-                }
-                this.customerList.push(row);
+                })
+                this.$emit('handleAddCustomer1');
             },
            
+            // handleAddCustomer1(){
+            //     this.$emit('handleAddCustomer1');
+            // },
             handleAddCustomer(){
                 this.$emit('handleAddCustomer');
             },
@@ -193,11 +207,11 @@
                 this.form.tempCode=v.tempCode
             },
             reset(shortUrl) {
+                this.customerList=[];
                 this.form.cardUrl=shortUrl;
                 this.getCompanySmsCount()
             },
             submitForm() {
-
                this.form.customerIds=[];
                this.customerList.forEach((item) => {
                    this.form.customerIds.push(item.customerId)

+ 66 - 12
src/views/company/companyUser/card/customerSelect.vue

@@ -21,13 +21,46 @@
               />
         </el-select>
       </el-form-item>
+      <el-form-item label="客户标签" prop="tags">
+            <el-select style="width:220px" multiple  filterable v-model="tagIds" placeholder="请选择客户标签" clearable size="small">
+              <el-option
+                    v-for="item in tagsOptions"
+                    :key="item.dictLabel"
+                    :label="item.dictLabel"
+                    :value="item.dictLabel"
+                  />
+            </el-select>
+          </el-form-item>
+          <el-form-item label="客户类型" prop="customerType">
+        <el-select style="width:220px" multiple filterable  v-model="ctsTypeArr" placeholder="请选择客户类型" clearable size="small">
+           <el-option
+                v-for="item in typeOptions"
+                :key="item.dictValue"
+                :label="item.dictLabel"
+                :value="item.dictValue"
+              />
+        </el-select>
+      </el-form-item>
+
+      <el-form-item label="领取时间" prop="receiveTime">
+        <el-date-picker
+              style="width:220px"
+              clearable size="small"
+              v-model="dateRange"
+              type="daterange"
+              value-format="yyyy-MM-dd"
+              start-placeholder="开始日期"
+              end-placeholder="结束日期">
+            </el-date-picker>
+      </el-form-item>
 
       <el-form-item>
         <el-button type="cyan" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
       </el-form-item>
     </el-form>
 
-    <el-table border v-loading="loading" :data="customerList">
+    <el-table border v-loading="loading" :data="customerList" height="550px" ref="dataList">
+          <el-table-column type="selection" width="55" align="center"/>
             <el-table-column label="客户编码" align="center" prop="customerCode" />
             <el-table-column  label="客户名称"   align="center" prop="customerName" :show-overflow-tooltip="true">
                 <template slot-scope="scope">
@@ -74,7 +107,7 @@
             <el-table-column label="进线客户提交日期" align="center" prop="registerSubmitTime" /> -->
             <el-table-column label="创建时间"  width="100" align="center" prop="customerCreateTime" >
             </el-table-column>
-            <el-table-column label="操作" align="center" width="100px" >
+            <!-- <el-table-column label="操作" align="center" width="100px" >
                 <template slot-scope="scope">
                 <el-button
                     size="mini"
@@ -82,7 +115,7 @@
                     @click="handleSelect(scope.row)"
                 >选择</el-button>
                 </template>
-            </el-table-column>
+            </el-table-column> -->
     </el-table> 
     <pagination
       style="padding-bottom:10px;"
@@ -92,6 +125,9 @@
       :limit.sync="queryParams.pageSize"
       @pagination="getList"
     />
+        <div  class="footer">
+            <el-button type="primary" @click="handleSelect($refs.dataList)">添加</el-button>
+        </div>
   </div>
 </template>
 
@@ -115,6 +151,9 @@ export default {
       sexOptions:[],
       tagsOptions:[],
       customerList: [],
+      tagIds:[],
+      ctsTypeArr:[],
+      dateRange:[],
     };
   },
   created() {
@@ -137,8 +176,11 @@ export default {
   },
 
   methods: {
-    handleSelect(row){
-      this.$emit('selectCustomer',row);
+    // handleSelect(row){
+    //   this.$emit('selectCustomer',row);
+    // },
+    handleSelect(selectedRows){
+      this.$emit('selectCustomer',selectedRows);
     },
     /** 搜索按钮操作 */
     handleQuery() {
@@ -147,13 +189,19 @@ export default {
     },
     getList(){
         this.loading = true;
-        // if(this.tagIds.length>0){
-        //     this.queryParams.tags=this.tagIds.toString();
-        // }
-        // else{
-        //     this.queryParams.tags=null
-        // }
-        getMyCustomerList(this.queryParams).then(response => {
+        if(this.tagIds.length>0){
+            this.queryParams.tags=this.tagIds.toString();
+        }
+        else{
+            this.queryParams.tags=null
+        }
+        if(this.ctsTypeArr.length>0){
+        this.queryParams.customerType=this.ctsTypeArr.toString();
+      }
+      else{
+        this.queryParams.customerType=null
+      }
+        getMyCustomerList(this.addDateRange(this.queryParams, this.dateRange)).then(response => {
             this.customerList = response.rows;
             this.total = response.total;
             this.loading = false;
@@ -164,4 +212,10 @@ export default {
 </script>
 <style scoped>
  
+ .footer{
+  margin-top: 10px;
+    display: flex;
+    align-items: center;
+    justify-content: flex-end;
+}
 </style>

+ 5 - 2
src/views/company/companyUser/card/index.vue

@@ -210,10 +210,10 @@
     </el-dialog>
 
     <el-dialog :title="addSms.title" :visible.sync="addSms.open" width="800px" append-to-body>
-        <add-sms ref="sms" @close="closeSms()" @handleAddCustomer="handleAddCustomer()"  ></add-sms>
+        <add-sms ref="sms" @close="closeSms()" @handleAddCustomer="handleAddCustomer()" @handleAddCustomer1 ="handleAddCustomer1"  ></add-sms>
     </el-dialog>
 
-     <el-dialog :title="customer.title" v-if="customer.open"  :visible.sync="customer.open" width="900px" append-to-body>
+     <el-dialog :title="customer.title" v-if="customer.open"  :visible.sync="customer.open" width="1200px" append-to-body>
         <customer-select  ref="customer"  @selectCustomer="selectCustomer" />
     </el-dialog>
 
@@ -436,6 +436,9 @@ export default {
      handleAddCustomer(){
          this.customer.open=true; 
      },
+     handleAddCustomer1(){
+         this.customer.open=false; 
+     },
     handleAvatarSuccess(res, file) {
         if(res.code==200){
           this.form.imageUrl=res.url;

+ 4 - 0
src/views/company/companyUser/profile/index.vue

@@ -23,6 +23,10 @@
                 <svg-icon icon-class="email" />用户邮箱
                 <div class="pull-right">{{ user.email }}</div>
               </li>
+              <li class="list-group-item">
+                <i class = "el-icon-phone-outline" ></i>坐席号
+                <div class="pull-right">{{ user.callerNo }}</div>
+              </li>
               <li class="list-group-item">
                 <svg-icon icon-class="tree" />所属部门
                 <div class="pull-right" v-if="user.dept">{{ user.dept.deptName }} / {{ postGroup }}</div>

+ 1 - 0
src/views/company/companyVoiceCaller/index.vue

@@ -109,6 +109,7 @@
               <el-option
                 @change="userChange"
                 v-for="item in users"
+                v-if="item.status !== '1'"
                 :key="item.userId"
                 :label="item.nickName"
                 :value="item.userId"

+ 1 - 1
src/views/company/components/userSelect.vue

@@ -36,7 +36,7 @@
         <div  class="tags">
           <el-tag closable @close="delUser(index)" style="margin-bottom:5px;" v-for="(item,index) in users"  >{{item.nickName}}</el-tag>
         </div>
-        <el-table  ref="multipleTable"  v-loading="loading" :data="userList" @selection-change="handleSelectionChange">
+        <el-table  ref="multipleTable"  v-loading="loading" :data="userList" @selection-change="handleSelectionChange" v-if="status !== '1'">
           <el-table-column type="selection" width="50" align="center" />
           <el-table-column label="ID" align="center" prop="userId" :show-overflow-tooltip="true" />
           <el-table-column label="员工编号" align="center" prop="userName" :show-overflow-tooltip="true" />

+ 20 - 0
src/views/store/storeOrder/list.vue

@@ -35,6 +35,26 @@
               @keyup.enter.native="handleQuery"
             />
           </el-form-item>
+          <el-form-item label="产品" prop="productName">
+        <el-input
+
+          v-model="queryParams.productName"
+          placeholder="请输入产品名"
+          clearable
+          size="small"
+          @keyup.enter.native="handleQuery"
+        />
+      </el-form-item>
+        <el-form-item label="支付方式" prop="payType">
+         <el-select style="width: 200px" v-model="queryParams.payType" placeholder="请选择支付方式" clearable size="small" >
+         <el-option
+                v-for="item in payTypeOptions"
+                :key="item.dictValue"
+                :label="item.dictLabel"
+                :value="item.dictValue"
+              />
+        </el-select>
+      </el-form-item>
           <el-form-item label="手机号" prop="userPhone">
             <el-input
             style="width:220px"