chenrui 1 anno fa
parent
commit
3ff9ff1e83

+ 1 - 0
src/views/common/customerService.vue

@@ -10,6 +10,7 @@
     @change="handleChange"
     allowClear
     :disabled="disabled"
+    notFoundContent="暂无数据"
   >
     <a-spin v-if="fetching" slot="notFoundContent" size="small" />
     <a-select-option v-for="item in customerData" :key="item.id" :value="item.bizUserSn">

+ 78 - 70
src/views/salesManagement/backorder/list.vue

@@ -1,75 +1,80 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeDate" @change="dateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="客户名称">
-              <dealerSubareaScopeList ref="custList" id="backorderList-buyerSn" @change="custChange"></dealerSubareaScopeList>
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="销售单号">
-              <a-input id="backorderList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
-            </a-form-item>
-          </a-col>
-          <!-- <a-col :md="6" :sm="24">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
+            <a-col :md="5" :sm="24">
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeDate" @change="dateChange" />
+              </a-form-item>
+            </a-col>
+            <a-col :md="5" :sm="24">
+              <a-form-item label="客户名称">
+                <dealerSubareaScopeList ref="custList" id="backorderList-buyerSn" @change="custChange"></dealerSubareaScopeList>
+              </a-form-item>
+            </a-col>
+            <a-col :md="5" :sm="24">
+              <a-form-item label="销售单号">
+                <a-input id="backorderList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
+              </a-form-item>
+            </a-col>
+            <!-- <a-col :md="6" :sm="24">
             <a-form-model-item label="仓库">
               <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn"></chooseWarehouse>
             </a-form-model-item>
           </a-col> -->
-          <a-col :md="6" :sm="24">
-            <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="backorderList-refresh">查询</a-button>
-            <a-button style="margin-left: 8px" @click="resetSearchForm" :disabled="disabled" id="backorderList-reset">重置</a-button>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  <a-card size="small" :bordered="false" class="backorderList-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+70+'px' }"
-        size="small"
-        :rowKey="(record) => record.no"
-        rowKeyName="no"
-        :columns="columns"
-        :pageSize="30"
-        :data="loadData"
-        :scroll="{ y: tableHeight }"
-        :defaultLoadData="false"
-        bordered>
-        <template slot="salesBillNo" slot-scope="text, record">
-          <span style="padding-right: 15px;">{{ text }}</span>
-          <a-badge count="促" v-if="record.promoFlag==1" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
-        </template>
-        <!-- 操作 -->
-        <template slot="action" slot-scope="text, record">
-          <a-button
-            size="small"
-            type="link"
-            class="button-success"
-            @click="handleDetail(record)"
-            v-if="$hasPermissions('B_oosDetail')"
-            id="backorderList-detail-btn">详情</a-button>
-          <span v-else>--</span>
-        </template>
-      </s-table>
-    </a-spin>
-    <!-- 详情 -->
-    <backorder-detail-modal v-drag :openModal="openModal" :itemSn="itemSn" @close="closeModal" />
-  </a-card>
-</div>
+            <a-col :md="5" :sm="24" v-show="isShowCustomerSearch">
+              <a-form-item label="客服">
+                <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+              </a-form-item>
+            </a-col>
+            <a-col :md="4" :sm="24">
+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="backorderList-refresh">查询</a-button>
+              <a-button style="margin-left: 8px" @click="resetSearchForm" :disabled="disabled" id="backorderList-reset">重置</a-button>
+            </a-col>
+          </a-row>
+        </a-form>
+      </div>
+    </a-card>
+    <a-card size="small" :bordered="false" class="backorderList-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+70+'px' }"
+          size="small"
+          :rowKey="(record) => record.no"
+          rowKeyName="no"
+          :columns="columns"
+          :pageSize="30"
+          :data="loadData"
+          :scroll="{ y: tableHeight }"
+          :defaultLoadData="false"
+          bordered>
+          <template slot="salesBillNo" slot-scope="text, record">
+            <span style="padding-right: 15px;">{{ text }}</span>
+            <a-badge count="促" v-if="record.promoFlag==1" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
+          </template>
+          <!-- 操作 -->
+          <template slot="action" slot-scope="text, record">
+            <a-button
+              size="small"
+              type="link"
+              class="button-success"
+              @click="handleDetail(record)"
+              v-if="$hasPermissions('B_oosDetail')"
+              id="backorderList-detail-btn">详情</a-button>
+            <span v-else>--</span>
+          </template>
+        </s-table>
+      </a-spin>
+      <!-- 详情 -->
+      <backorder-detail-modal v-drag :openModal="openModal" :itemSn="itemSn" @close="closeModal" />
+    </a-card>
+  </div>
 </template>
 
 <script>
@@ -79,11 +84,12 @@ import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue'
 import { STable, VSelect } from '@/components'
 import backorderDetailModal from './detailModal.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { oosList } from '@/api/oos'
 export default {
   name: 'BackorderList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, backorderDetailModal, rangeDate, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, backorderDetailModal, rangeDate, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -93,7 +99,8 @@ export default {
         endDate: '',
         buyerSn: undefined,
         warehouseSn: undefined,
-        salesBillNo: ''
+        salesBillNo: '',
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       // 加载数据方法 必须为 Promise 对象
@@ -123,7 +130,7 @@ export default {
       const arr = [
         { title: '序号', dataIndex: 'no', width: '4%', align: 'center' },
         { title: '创建时间', dataIndex: 'createDate', width: '12%', align: 'center', customRender: function (text) { return text || '--' } },
-        { title: '销售单号', dataIndex: 'salesBillNo', width: '15%', align: 'center', scopedSlots: { customRender: 'salesBillNo' }},
+        { title: '销售单号', dataIndex: 'salesBillNo', width: '15%', align: 'center', scopedSlots: { customRender: 'salesBillNo' } },
         { title: '客户名称', dataIndex: 'dealerName', width: '25%', align: 'left', customRender: function (text) { return text || '--' }, ellipsis: true },
         // { title: '仓库', dataIndex: 'warehouseName', width: '15%', align: 'left', customRender: function (text) { return text || '--' }, ellipsis: true },
         { title: '缺货款数', dataIndex: 'totalCategory', width: '11%', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
@@ -154,6 +161,8 @@ export default {
       this.queryParam.salesBillNo = ''
       this.queryParam.buyerSn = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
+
       this.$refs.custList.resetForm()
       this.$refs.table.refresh(true)
     },
@@ -206,4 +215,3 @@ export default {
   }
 }
 </script>
- 

+ 153 - 145
src/views/salesManagement/examineVerify/list.vue

@@ -1,159 +1,164 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeDate" :value="time" @change="dateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="客户名称">
-              <dealerSubareaScopeList ref="dealerSubareaScopeList" id="examineVerifyList-buyerName" @change="custChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="销售单号">
-              <a-input id="examineVerifyList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="出库单号">
-                <a-input id="examineVerifyList-stockOutNo" v-model.trim="queryParam.stockOutNo" allowClear placeholder="请输入出库单号"/>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeDate" :value="time" @change="dateChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="打印状态">
-                <v-select
-                  v-model="queryParam.printStatus"
-                  ref="printStatus"
-                  id="examineVerifyList-printStatus"
-                  code="PRINT_STATUS"
-                  placeholder="请选择打印状态"
-                  allowClear></v-select>
+              <a-form-item label="客户名称">
+                <dealerSubareaScopeList ref="dealerSubareaScopeList" id="examineVerifyList-buyerName" @change="custChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="业务状态">
-                <v-select
-                  v-model="queryParam.billStatus"
-                  ref="billStatus"
-                  id="examineVerifyList-billStatus"
-                  code="DISPATCH_BILL_STATUS"
-                  placeholder="请选择单据状态"
-                  allowClear></v-select>
+              <a-form-item label="销售单号">
+                <a-input id="examineVerifyList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
               </a-form-item>
             </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="备货单号">
-                <a-input id="examineVerifyList-dispatchBillNo" v-model.trim="queryParam.dispatchBillNo" allowClear placeholder="请输入备货单号"/>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="所在区域">
-                <subarea id="examineVerifyList-subarea" ref="subarea" @change="subareaChange"></subarea>
-              </a-form-model-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="地区" prop="shippingAddrProvinceSn">
-                <Area id="examineVerifyList-shippingAddrProvinceSn" v-model="queryParam.shippingAddrProvinceSn" placeholder="请选择省"></Area>
-              </a-form-model-item>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="出库单号">
+                  <a-input id="examineVerifyList-stockOutNo" v-model.trim="queryParam.stockOutNo" allowClear placeholder="请输入出库单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="打印状态">
+                  <v-select
+                    v-model="queryParam.printStatus"
+                    ref="printStatus"
+                    id="examineVerifyList-printStatus"
+                    code="PRINT_STATUS"
+                    placeholder="请选择打印状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="业务状态">
+                  <v-select
+                    v-model="queryParam.billStatus"
+                    ref="billStatus"
+                    id="examineVerifyList-billStatus"
+                    code="DISPATCH_BILL_STATUS"
+                    placeholder="请选择单据状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="备货单号">
+                  <a-input id="examineVerifyList-dispatchBillNo" v-model.trim="queryParam.dispatchBillNo" allowClear placeholder="请输入备货单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="所在区域">
+                  <subarea id="examineVerifyList-subarea" ref="subarea" @change="subareaChange"></subarea>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="地区" prop="shippingAddrProvinceSn">
+                  <Area id="examineVerifyList-shippingAddrProvinceSn" v-model="queryParam.shippingAddrProvinceSn" placeholder="请选择省"></Area>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowWarehouse">
+                <a-form-model-item label="仓库">
+                  <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
+            <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="examineVerifyList-refresh">查询</a-button>
+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="examineVerifyList-reset">重置</a-button>
+              <a @click="advanced=!advanced" style="margin-left: 5px">
+                {{ advanced ? '收起' : '展开' }}
+                <a-icon :type="advanced ? 'up' : 'down'"/>
+              </a>
             </a-col>
-            <a-col :md="6" :sm="24" v-show="isShowWarehouse">
-              <a-form-model-item label="仓库">
-                <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
-              </a-form-model-item>
-            </a-col>
-          </template>
-          <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
-            <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="examineVerifyList-refresh">查询</a-button>
-            <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="examineVerifyList-reset">重置</a-button>
-            <a @click="advanced=!advanced" style="margin-left: 5px">
-              {{ advanced ? '收起' : '展开' }}
-              <a-icon :type="advanced ? 'up' : 'down'"/>
-            </a>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  
-  <a-card size="small" :bordered="false" class="examineVerifyList-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- alert -->
-      <div class="tongji-bar">
-        <span v-if="$hasPermissions('M_examineVerifyList_salesPrice')">总售价:<strong>{{ totalData&&(totalData.totalAmount || totalData.totalAmount==0) ? toThousands(totalData.totalAmount) : '--' }}</strong>;</span>
-        总单数:<strong>{{ totalData&&(totalData.totalRecord || totalData.totalRecord==0) ? totalData.totalRecord : '--' }}</strong>;
-        总款数:<strong>{{ totalData&&(totalData.totalCategory || totalData.totalCategory==0) ? totalData.totalCategory : '--' }}</strong>;
-        总数量:<strong>{{ totalData&&(totalData.totalQty || totalData.totalQty==0) ? totalData.totalQty : '--' }}</strong>;
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+70+'px' }"
-        size="small"
-        :rowKey="(record) => record.id"
-        :columns="columns"
-        :data="loadData"
-        :scroll="{ y:tableHeight }"
-        :defaultLoadData="false"
-        bordered>
+    </a-card>
+
+    <a-card size="small" :bordered="false" class="examineVerifyList-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- alert -->
+        <div class="tongji-bar">
+          <span v-if="$hasPermissions('M_examineVerifyList_salesPrice')">总售价:<strong>{{ totalData&&(totalData.totalAmount || totalData.totalAmount==0) ? toThousands(totalData.totalAmount) : '--' }}</strong>;</span>
+          总单数:<strong>{{ totalData&&(totalData.totalRecord || totalData.totalRecord==0) ? totalData.totalRecord : '--' }}</strong>;
+          总款数:<strong>{{ totalData&&(totalData.totalCategory || totalData.totalCategory==0) ? totalData.totalCategory : '--' }}</strong>;
+          总数量:<strong>{{ totalData&&(totalData.totalQty || totalData.totalQty==0) ? totalData.totalQty : '--' }}</strong>;
+        </div>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+70+'px' }"
+          size="small"
+          :rowKey="(record) => record.id"
+          :columns="columns"
+          :data="loadData"
+          :scroll="{ y:tableHeight }"
+          :defaultLoadData="false"
+          bordered>
 
-        <!-- 销售单号 -->
-        <template slot="salesBillNo" slot-scope="text, record">
-          <span class="link-bule" v-if="$hasPermissions('B_salesDetail')" @click="handleDetail(record,0)">{{ record.salesBillNo }}</span>
-          <span v-else>{{ record.salesBillNo }}</span>
-        </template>
-        <!-- 备货单号 -->
-        <template slot="dispatchBillNo" slot-scope="text, record">
-          <span class="link-bule" v-if="$hasPermissions('B_dispatchDetail')" @click="handleDetail(record,1)">{{ record.dispatchBillNo }}</span>
-          <span v-else>{{ record.dispatchBillNo }}</span>
-        </template>
-        <!-- 操作 -->
-        <template slot="action" slot-scope="text, record">
-          <a-button
-            size="small"
-            type="link"
-            class="button-info"
-            v-if="record.billStatus=='WAIT_STOCK_UP_AUDIT'&&$hasPermissions('B_dispatchAduit')"
-            @click="handleExamine(record)"
-            id="examineVerifyList-examine-btn">备货审核</a-button>
-          <span v-else>--</span>
-        </template>
-      </s-table>
-    </a-spin>
-    <!-- 审核 -->
-    <auditModal
-      v-drag
-      :openModal="visibleAudit"
-      :spinning="spinningAudit"
-      @close="visibleAudit=false"
-      @ok="auditOrder('OUTING_WAREHOUSE')"
-      @fail="auditOrder('STOCK_UP_REJECT')" />
-    <auditRejectModal
-      v-drag
-      :openModal="visibleAuditReject"
-      :spinning="spinningAuditReject"
-      :itemData="auditInfo"
-      @close="visibleAuditReject=false"
-      @ok="auditReject" />
-    <!-- 查看销售单或备货单详情 -->
-    <commonModal
-      :modalTit="detailType?'备货单详情':'销售单详情'"
-      bodyPadding="10px"
-      width="70%"
-      :showFooter="false"
-      :openModal="showDetailModal"
-      @cancel="cancelDetail">
-      <salesDetail v-if="detailType==0" ref="salesDetail" :bizSn="bizSn"></salesDetail>
-      <dispatchDetail v-if="detailType==1" ref="dispatchDetail" :bizSn="bizSn"></dispatchDetail>
-    </commonModal>
-  </a-card>
+          <!-- 销售单号 -->
+          <template slot="salesBillNo" slot-scope="text, record">
+            <span class="link-bule" v-if="$hasPermissions('B_salesDetail')" @click="handleDetail(record,0)">{{ record.salesBillNo }}</span>
+            <span v-else>{{ record.salesBillNo }}</span>
+          </template>
+          <!-- 备货单号 -->
+          <template slot="dispatchBillNo" slot-scope="text, record">
+            <span class="link-bule" v-if="$hasPermissions('B_dispatchDetail')" @click="handleDetail(record,1)">{{ record.dispatchBillNo }}</span>
+            <span v-else>{{ record.dispatchBillNo }}</span>
+          </template>
+          <!-- 操作 -->
+          <template slot="action" slot-scope="text, record">
+            <a-button
+              size="small"
+              type="link"
+              class="button-info"
+              v-if="record.billStatus=='WAIT_STOCK_UP_AUDIT'&&$hasPermissions('B_dispatchAduit')"
+              @click="handleExamine(record)"
+              id="examineVerifyList-examine-btn">备货审核</a-button>
+            <span v-else>--</span>
+          </template>
+        </s-table>
+      </a-spin>
+      <!-- 审核 -->
+      <auditModal
+        v-drag
+        :openModal="visibleAudit"
+        :spinning="spinningAudit"
+        @close="visibleAudit=false"
+        @ok="auditOrder('OUTING_WAREHOUSE')"
+        @fail="auditOrder('STOCK_UP_REJECT')" />
+      <auditRejectModal
+        v-drag
+        :openModal="visibleAuditReject"
+        :spinning="spinningAuditReject"
+        :itemData="auditInfo"
+        @close="visibleAuditReject=false"
+        @ok="auditReject" />
+      <!-- 查看销售单或备货单详情 -->
+      <commonModal
+        :modalTit="detailType?'备货单详情':'销售单详情'"
+        bodyPadding="10px"
+        width="70%"
+        :showFooter="false"
+        :openModal="showDetailModal"
+        @cancel="cancelDetail">
+        <salesDetail v-if="detailType==0" ref="salesDetail" :bizSn="bizSn"></salesDetail>
+        <dispatchDetail v-if="detailType==1" ref="dispatchDetail" :bizSn="bizSn"></dispatchDetail>
+      </commonModal>
+    </a-card>
   </div>
 </template>
 
@@ -172,11 +177,12 @@ import { STable, VSelect } from '@/components'
 import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue'
 import auditRejectModal from './auditRejectModal.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { dispatchlBhshList, dispatchQueryBhshCount, dispatchStockUpAduit } from '@/api/dispatch'
 export default {
   name: 'ExamineVerifyList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, commonModal, salesDetail, dispatchDetail, auditModal, subarea, auditRejectModal, Area, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, commonModal, salesDetail, dispatchDetail, auditModal, subarea, auditRejectModal, Area, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -203,7 +209,8 @@ export default {
           subareaAreaSn: undefined
         },
         shippingAddrProvinceSn: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       selectedRowKeys: [], // Check here to configure the default column
@@ -298,6 +305,7 @@ export default {
       this.queryParam.subareaArea.subareaSn = undefined
       this.queryParam.subareaArea.subareaAreaSn = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
       if (this.advanced) {
         this.$refs.subarea.clearData()
       }
@@ -419,4 +427,4 @@ export default {
       margin-top: 8px;
     }
   }
-</style>
+</style>

+ 13 - 5
src/views/salesManagement/matchSendOutOrder/list.vue

@@ -84,9 +84,14 @@
                   <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
                 </a-form-model-item>
               </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
             </template>
-            <a-col :md="24" :sm="24">
-              <div class="table-page-search-submitButtons" style="text-align:center;">
+            <a-col :md="isShowCustomerSearch&&advanced?6:24" :sm="24">
+              <div class="table-page-search-submitButtons" :style="{textAlign:isShowCustomerSearch&&advanced?'':'center'}">
                 <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
                 <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
                 <a @click="advanced=!advanced" style="margin-left: 8px">
@@ -163,11 +168,12 @@ import { dispatchlList, dispatchCheck } from '@/api/dispatch'
 import commonModal from '@/views/common/commonModal.vue'
 import salesDetail from '@/views/salesManagement/salesQueryNew/detailAll.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import dispatchDetail from '@/views/salesManagement/pushOrderManagement/detail.vue'
 export default {
   name: 'MatchSendOutOrderList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, Area, commonModal, salesDetail, dispatchDetail, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, Area, commonModal, salesDetail, dispatchDetail, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -197,7 +203,8 @@ export default {
         voidFlag: undefined,
         shippingAddrProvinceSn: undefined,
         checkStatus: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -327,7 +334,8 @@ export default {
         voidFlag: undefined,
         shippingAddrProvinceSn: undefined,
         checkStatus: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       }
       if (this.advanced) {
         this.$refs.subarea.clearData()

+ 11 - 2
src/views/salesManagement/outboundOrder/list.vue

@@ -74,6 +74,11 @@
                   <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
                 </a-form-model-item>
               </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
             </template>
             <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
               <a-button type="primary" @click="searchTable" :disabled="disabled" id="outboundOrderList-refresh">查询</a-button>
@@ -190,12 +195,13 @@ import allocationDetailModal from '@/views/allocationManagement/transferOut/deta
 import sendGoodModal from './sendGoodModal.vue'
 import { STable, VSelect } from '@/components'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { stockOutList, stockOutOut } from '@/api/stockOut'
 import { getCustomerInfo, validateStockOut } from '@/api/sendBill'
 export default {
   name: 'OutboundOrderList',
   mixins: [commonMixin],
-  components: { STable, VSelect, rangeDate, pushOrderDetailModal, allocationDetailModal, subarea, Area, sendGoodModal, chooseWarehouse },
+  components: { STable, VSelect, rangeDate, pushOrderDetailModal, allocationDetailModal, subarea, Area, sendGoodModal, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -219,7 +225,8 @@ export default {
         },
         shippingAddrProvinceSn: undefined,
         sendFlag: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       loading: false,
@@ -318,6 +325,8 @@ export default {
       this.queryParam.shippingAddrProvinceSn = undefined
       this.queryParam.sendFlag = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
+
       if (this.advanced) {
         this.$refs.subarea.clearData()
       }

+ 12 - 4
src/views/salesManagement/pushOrderManagement/list.vue

@@ -90,9 +90,14 @@
                   <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
                 </a-form-model-item>
               </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
             </template>
-            <a-col :md="24" :sm="24">
-              <div class="table-page-search-submitButtons" style="text-align:center;">
+            <a-col :md="isShowCustomerSearch?6:24" :sm="24" :style="{textAlign:isShowCustomerSearch?'':'center'}">
+              <div class="table-page-search-submitButtons">
                 <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
                 <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
                 <a @click="advanced=!advanced" style="margin-left: 8px">
@@ -204,10 +209,11 @@ import commonModal from '@/views/common/commonModal.vue'
 import salesDetail from '@/views/salesManagement/salesQueryNew/detailAll.vue'
 import explainInfoModal from './explainInfoModal.vue'
 import { dispatchlList, dispatchQueryCount, dispatchPrintStatus } from '@/api/dispatch'
+import customerService from '@/views/common/customerService'
 export default {
   name: 'PushOrderManagementList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, commonModal, Area, salesDetail, explainInfoModal, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, commonModal, Area, salesDetail, explainInfoModal, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -238,7 +244,8 @@ export default {
         shippingAddrProvinceSn: undefined,
         printStatus: undefined,
         checkStatus: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       totalData: {
         totalAmount: 0,
@@ -376,6 +383,7 @@ export default {
       this.queryParam.printStatus = undefined
       this.queryParam.checkStatus = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
 
       if (this.advanced) {
         this.$refs.subarea.clearData()

+ 13 - 5
src/views/salesManagement/receiptPrint/list.vue

@@ -48,6 +48,11 @@
                   allowClear></v-select>
               </a-form-item>
             </a-col>
+            <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+              <a-form-item label="客服">
+                <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+              </a-form-item>
+            </a-col>
             <a-col :md="6" :sm="24">
               <span class="table-page-search-submitButtons">
                 <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
@@ -149,11 +154,12 @@ import commonModal from '@/views/common/commonModal.vue'
 import recordModal from './recordModal.vue'
 import printModel from './printModel.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { financeBookDetailList, updateFinanceBookDetail, getBatchLastProcessInstance, checkPrintStatus } from '@/api/financeBook'
 export default {
   name: 'ReceiptPrintList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSearchList, rangeDate, commonModal, recordModal, printModel, chooseWarehouse },
+  components: { STable, VSelect, dealerSearchList, rangeDate, commonModal, recordModal, printModel, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -174,7 +180,8 @@ export default {
         dealerProvinceSn: undefined,
         fullPaymentFlag: undefined,
         warehouseSn: undefined,
-        printStatus: 'NO_PRINT'
+        printStatus: 'NO_PRINT',
+        bizUserSn: undefined
       },
       totalData: {
         totalAmount: 0,
@@ -306,19 +313,19 @@ export default {
           if (b.detailItemUseList) {
             detailItemUseStr = this.getUseDetailInfo(b.detailItemUseList)
           }
-          if(b.detailItemPayList){
+          if (b.detailItemPayList) {
             detailPayUseStr = this.getUseDetailInfo(b.detailItemPayList)
           }
         })
         // 审核信息
         const auditStr = auditInfo ? this.getAuditInfo(auditInfo[item]) : ''
-        retArr.push({ audit: auditStr, detail: detailItemUseStr, payDetail:detailPayUseStr, subList: rs })
+        retArr.push({ audit: auditStr, detail: detailItemUseStr, payDetail: detailPayUseStr, subList: rs })
       })
       console.log(retArr, '------------')
       this.handlePrint(retArr, 1, rows, bookSns)
     },
     // 获取授信西悉尼
-    getUseDetailInfo(list){
+    getUseDetailInfo (list) {
       let ret = ''
       list.map((k, i) => {
         ret = ret + k.itemName + '(' + k.itemAmount + ')' + (i == list.length - 1 ? '。' : ';')
@@ -447,6 +454,7 @@ export default {
         dealerProvinceSn: undefined,
         fullPaymentFlag: undefined,
         warehouseSn: undefined,
+        bizUserSn: undefined,
         printStatus: this.currentTab == 2 ? 'NO_PRINT' : undefined
       }
       this.$refs.table.refresh(true)

+ 208 - 202
src/views/salesManagement/salesCollection/list.vue

@@ -1,213 +1,218 @@
 <template>
   <div>
-  <!-- 搜索条件 -->
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeAuditDate" :value="auditDate" @change="dateAuditChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="客户名称">
-              <dealerSubareaScopeList ref="settleClientName" id="salesCollectionList-settleClientName" @change="custChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="销售单号">
-              <a-input id="salesCollectionList-bizNo" v-model.trim="queryParam.bizNo" allowClear placeholder="请输入销售单号"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <!-- 搜索条件 -->
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="备货单号">
-                <a-input id="salesCollectionList-dispatchBillNo" v-model.trim="queryParam.dispatchBillNo" allowClear placeholder="请输入备货单号"/>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeAuditDate" :value="auditDate" @change="dateAuditChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="收货客户名称">
-                <dealerSubareaScopeList ref="receiverName" id="salesCollectionList-receiverName" @change="receiverChange" />
+              <a-form-item label="客户名称">
+                <dealerSubareaScopeList ref="settleClientName" id="salesCollectionList-settleClientName" @change="custChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="收款类型">
-                <v-select
-                  v-model="queryParam.keepType"
-                  ref="keepType"
-                  id="salesCollectionList-keepType"
-                  code="KEEP_TYPE"
-                  placeholder="请选择收款类型"
-                  allowClear></v-select>
+              <a-form-item label="销售单号">
+                <a-input id="salesCollectionList-bizNo" v-model.trim="queryParam.bizNo" allowClear placeholder="请输入销售单号"/>
               </a-form-item>
             </a-col>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="备货单号">
+                  <a-input id="salesCollectionList-dispatchBillNo" v-model.trim="queryParam.dispatchBillNo" allowClear placeholder="请输入备货单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="收货客户名称">
+                  <dealerSubareaScopeList ref="receiverName" id="salesCollectionList-receiverName" @change="receiverChange" />
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="收款类型">
+                  <v-select
+                    v-model="queryParam.keepType"
+                    ref="keepType"
+                    id="salesCollectionList-keepType"
+                    code="KEEP_TYPE"
+                    placeholder="请选择收款类型"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="收款时间">
+                  <rangeDate ref="rangeSettleDate" :value="settleDate" @change="dateSettleChange" />
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="收款方式">
+                  <v-select
+                    v-model="queryParam.settleStyle"
+                    ref="settleStyle"
+                    id="salesCollectionList-settleStyle"
+                    code="SETTLE_STYLE"
+                    placeholder="请选择收款方式"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="业务状态">
+                  <v-select
+                    v-model="queryParam.billStatus"
+                    ref="billStatus"
+                    id="salesCollectionList-billStatus"
+                    code="DISPATCH_BILL_STATUS"
+                    placeholder="请选择业务状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="财务状态">
+                  <v-select
+                    v-model="queryParam.settleState"
+                    ref="settleState"
+                    id="salesCollectionList-settleState"
+                    code="FINANCIAL_RECEIVE_STATUS"
+                    placeholder="请选择财务状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="单据状态">
+                  <v-select
+                    v-model="queryParam.voidFlag"
+                    ref="voidFlag"
+                    id="salesCollectionList-voidFlag"
+                    code="VOID_FLAG"
+                    placeholder="请选择单据状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="对单状态">
+                  <v-select
+                    v-model="queryParam.checkStatus"
+                    ref="checkStatus"
+                    id="salesCollectionList-checkStatus"
+                    code="CHECK_STATUS"
+                    placeholder="请选择对单状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="所在区域">
+                  <subarea id="salesCollectionList-subarea" ref="subarea" @change="subareaChange"></subarea>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="地区" prop="dealerProvinceSn" style="margin: 0;">
+                  <Area id="salesCollectionList-dealerProvinceSn" v-model="queryParam.dealerProvinceSn" placeholder="请选择省"></Area>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
             <a-col :md="6" :sm="24">
-              <a-form-item label="收款时间">
-                <rangeDate ref="rangeSettleDate" :value="settleDate" @change="dateSettleChange" />
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="收款方式">
-                <v-select
-                  v-model="queryParam.settleStyle"
-                  ref="settleStyle"
-                  id="salesCollectionList-settleStyle"
-                  code="SETTLE_STYLE"
-                  placeholder="请选择收款方式"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="业务状态">
-                <v-select
-                  v-model="queryParam.billStatus"
-                  ref="billStatus"
-                  id="salesCollectionList-billStatus"
-                  code="DISPATCH_BILL_STATUS"
-                  placeholder="请选择业务状态"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="财务状态">
-                <v-select
-                  v-model="queryParam.settleState"
-                  ref="settleState"
-                  id="salesCollectionList-settleState"
-                  code="FINANCIAL_RECEIVE_STATUS"
-                  placeholder="请选择财务状态"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="单据状态">
-                <v-select
-                  v-model="queryParam.voidFlag"
-                  ref="voidFlag"
-                  id="salesCollectionList-voidFlag"
-                  code="VOID_FLAG"
-                  placeholder="请选择单据状态"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="对单状态">
-                <v-select
-                  v-model="queryParam.checkStatus"
-                  ref="checkStatus"
-                  id="salesCollectionList-checkStatus"
-                  code="CHECK_STATUS"
-                  placeholder="请选择对单状态"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="所在区域">
-                <subarea id="salesCollectionList-subarea" ref="subarea" @change="subareaChange"></subarea>
-              </a-form-item>
+              <a-button type="primary" @click="searchTable" :disabled="disabled" id="salesCollectionList-refresh">查询</a-button>
+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="salesCollectionList-reset">重置</a-button>
+              <a @click="advanced=!advanced" style="margin-left: 5px">
+                {{ advanced ? '收起' : '展开' }}
+                <a-icon :type="advanced ? 'up' : 'down'"/>
+              </a>
             </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="地区" prop="dealerProvinceSn" style="margin: 0;">
-                <Area id="salesCollectionList-dealerProvinceSn" v-model="queryParam.dealerProvinceSn" placeholder="请选择省"></Area>
-              </a-form-item>
-            </a-col>
-          </template>
-          <a-col :md="6" :sm="24">
-            <a-button type="primary" @click="searchTable" :disabled="disabled" id="salesCollectionList-refresh">查询</a-button>
-            <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="salesCollectionList-reset">重置</a-button>
-            <a @click="advanced=!advanced" style="margin-left: 5px">
-              {{ advanced ? '收起' : '展开' }}
-              <a-icon :type="advanced ? 'up' : 'down'"/>
-            </a>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  
-  <a-card size="small" :bordered="false" class="salesCollectionList-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- 操作按钮 -->
-      <div class="table-operator" v-if="$hasPermissions('B_salesCollection_receipt')">
-        <a-button type="primary" @click="handlePlColle()">批量收款</a-button>
-        <span style="margin-left: 8px">
-          <template v-if="rowSelectionInfo && rowSelectionInfo.selectedRowKeys.length>0">{{ `已选 ${rowSelectionInfo.selectedRowKeys.length} 项` }}</template>
-        </span>
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+68+'px' }"
-        size="small"
-        :row-selection="showSelect?{ columnWidth: 40, getCheckboxProps: record => ({ props: { disabled: record.settleState=='FINISH' } })}:null"
-        @rowSelection="rowSelectionFun"
-        :rowKey="(record) => record.id"
-        :columns="columns"
-        :data="loadData"
-        :scroll="{ y: tableHeight }"
-        :defaultLoadData="false"
-        bordered>
-        <!-- 单号 -->
-        <template slot="bizNo" slot-scope="text, record">
-          <span v-if="$hasPermissions('B_salesDetail')" class="link-bule" @click="handleDetail(record,0)">{{ record.bizNo }}</span>
-          <span v-else>{{ record.bizNo }}</span>
-        </template>
-        <!-- 下推单号 -->
-        <template slot="dispatchBillNo" slot-scope="text, record">
-          <span v-if="$hasPermissions('B_dispatchDetail')" class="link-bule" @click="handleDetail(record,1)">{{ record.dispatchBillNo }}</span>
-          <span v-else>{{ record.dispatchBillNo || '--' }}</span>
-        </template>
-        <!-- 操作 -->
-        <template slot="action" slot-scope="text, record">
-          <a-button
-            size="small"
-            type="link"
-            v-if="record.settleState=='WAIT' && record.voidFlag!=1 && $hasPermissions('B_salesCollection_receipt')"
-            class="button-warning"
-            @click="handleColle(record)"
-            id="financialCollectionList-audit-btn">收款</a-button>
-          <a-button
-            size="small"
-            type="link"
-            v-if="record.settleState=='FINISH' && $hasPermissions('B_salesCollection_record')"
-            class="button-success"
-            @click="handleVoucher(record)"
-            id="financialCollectionList-voucher-btn">凭证</a-button>
-          <span v-if="record.settleState=='WAIT' && record.voidFlag==1">--</span>
-        </template>
-      </s-table>
+    </a-card>
 
-      <!-- 销售收款凭证 -->
-      <voucherModal v-drag ref="voucherModal" modalTit="销售收款凭证" :openModal="showVoucher" @cancel="closeVoucherModal"></voucherModal>
-
-      <!-- 销售收款弹框 -->
-      <commonModal
-        :openModal="showSkModal"
-        modalTit="销售收款"
-        @cancel="closeColleModal"
-        @ok="handleSaveColle"
-      >
-        <div style="text-align: center;line-height: 24px;">
-          <div v-if="handlePlData.length">{{ handlePlData[0].settleClientName }},共 {{ handlePlData && handlePlData.length }} 个备货单,合计 {{ $hasPermissions('B_salesCollection_receipt_salesPrice') ? toThousands(totalAmount) : '--' }} 元</div>
-          <div style="padding: 15px 0;font-weight: bold;font-size:14px;">请确认收款类型变更为标记收款吗?</div>
+    <a-card size="small" :bordered="false" class="salesCollectionList-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- 操作按钮 -->
+        <div class="table-operator" v-if="$hasPermissions('B_salesCollection_receipt')">
+          <a-button type="primary" @click="handlePlColle()">批量收款</a-button>
+          <span style="margin-left: 8px">
+            <template v-if="rowSelectionInfo && rowSelectionInfo.selectedRowKeys.length>0">{{ `已选 ${rowSelectionInfo.selectedRowKeys.length} 项` }}</template>
+          </span>
         </div>
-      </commonModal>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+68+'px' }"
+          size="small"
+          :row-selection="showSelect?{ columnWidth: 40, getCheckboxProps: record => ({ props: { disabled: record.settleState=='FINISH' } })}:null"
+          @rowSelection="rowSelectionFun"
+          :rowKey="(record) => record.id"
+          :columns="columns"
+          :data="loadData"
+          :scroll="{ y: tableHeight }"
+          :defaultLoadData="false"
+          bordered>
+          <!-- 单号 -->
+          <template slot="bizNo" slot-scope="text, record">
+            <span v-if="$hasPermissions('B_salesDetail')" class="link-bule" @click="handleDetail(record,0)">{{ record.bizNo }}</span>
+            <span v-else>{{ record.bizNo }}</span>
+          </template>
+          <!-- 下推单号 -->
+          <template slot="dispatchBillNo" slot-scope="text, record">
+            <span v-if="$hasPermissions('B_dispatchDetail')" class="link-bule" @click="handleDetail(record,1)">{{ record.dispatchBillNo }}</span>
+            <span v-else>{{ record.dispatchBillNo || '--' }}</span>
+          </template>
+          <!-- 操作 -->
+          <template slot="action" slot-scope="text, record">
+            <a-button
+              size="small"
+              type="link"
+              v-if="record.settleState=='WAIT' && record.voidFlag!=1 && $hasPermissions('B_salesCollection_receipt')"
+              class="button-warning"
+              @click="handleColle(record)"
+              id="financialCollectionList-audit-btn">收款</a-button>
+            <a-button
+              size="small"
+              type="link"
+              v-if="record.settleState=='FINISH' && $hasPermissions('B_salesCollection_record')"
+              class="button-success"
+              @click="handleVoucher(record)"
+              id="financialCollectionList-voucher-btn">凭证</a-button>
+            <span v-if="record.settleState=='WAIT' && record.voidFlag==1">--</span>
+          </template>
+        </s-table>
 
-      <!-- 查看销售单或备货单详情 -->
-      <commonModal
-        :modalTit="detailType?'备货单详情':'销售单详情'"
-        bodyPadding="10px"
-        width="70%"
-        :showFooter="false"
-        :openModal="showDetailModal"
-        @cancel="cancelDetail">
-        <salesDetail v-if="detailType==0" ref="salesDetail" :bizSn="bizSn"></salesDetail>
-        <dispatchDetail v-if="detailType==1" ref="dispatchDetail" :bizSn="bizSn"></dispatchDetail>
-      </commonModal>
-    </a-spin>
-  </a-card>
+        <!-- 销售收款凭证 -->
+        <voucherModal v-drag ref="voucherModal" modalTit="销售收款凭证" :openModal="showVoucher" @cancel="closeVoucherModal"></voucherModal>
+
+        <!-- 销售收款弹框 -->
+        <commonModal
+          :openModal="showSkModal"
+          modalTit="销售收款"
+          @cancel="closeColleModal"
+          @ok="handleSaveColle"
+        >
+          <div style="text-align: center;line-height: 24px;">
+            <div v-if="handlePlData.length">{{ handlePlData[0].settleClientName }},共 {{ handlePlData && handlePlData.length }} 个备货单,合计 {{ $hasPermissions('B_salesCollection_receipt_salesPrice') ? toThousands(totalAmount) : '--' }} 元</div>
+            <div style="padding: 15px 0;font-weight: bold;font-size:14px;">请确认收款类型变更为标记收款吗?</div>
+          </div>
+        </commonModal>
+
+        <!-- 查看销售单或备货单详情 -->
+        <commonModal
+          :modalTit="detailType?'备货单详情':'销售单详情'"
+          bodyPadding="10px"
+          width="70%"
+          :showFooter="false"
+          :openModal="showDetailModal"
+          @cancel="cancelDetail">
+          <salesDetail v-if="detailType==0" ref="salesDetail" :bizSn="bizSn"></salesDetail>
+          <dispatchDetail v-if="detailType==1" ref="dispatchDetail" :bizSn="bizSn"></dispatchDetail>
+        </commonModal>
+      </a-spin>
+    </a-card>
   </div>
 </template>
 
@@ -223,11 +228,11 @@ import dispatchDetail from '@/views/salesManagement/pushOrderManagement/detail.v
 import voucherModal from './voucherModal.vue'
 import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue'
 import { settleReceiptList, settleReceiptBatch } from '@/api/settleReceipt'
-
+import customerService from '@/views/common/customerService'
 export default {
   name: 'SalesCollectionList',
   mixins: [commonMixin],
-  components: { STable, VSelect, subarea, rangeDate, commonModal, Area, voucherModal, dealerSubareaScopeList, salesDetail, dispatchDetail },
+  components: { STable, VSelect, subarea, rangeDate, commonModal, Area, voucherModal, dealerSubareaScopeList, salesDetail, dispatchDetail, customerService },
   data () {
     return {
       spinning: false,
@@ -250,7 +255,7 @@ export default {
         dealerLevel: undefined,
         settleStyle: undefined,
         keepType: undefined,
-        subareaArea:{
+        subareaArea: {
           subareaSn: undefined,
           subareaAreaSn: undefined
         },
@@ -260,7 +265,8 @@ export default {
         dealerProvinceSn: undefined,
         dealerCitySn: undefined,
         dealerCountySn: undefined,
-        checkStatus: undefined
+        checkStatus: undefined,
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       auditDate: [], //  审核时间
@@ -356,7 +362,7 @@ export default {
       this.$refs.table.refresh(true)
       this.$refs.table.clearSelected()
     },
-    subareaChange(val){
+    subareaChange (val) {
       this.queryParam.subareaArea.subareaSn = val[0] ? val[0] : undefined
       this.queryParam.subareaArea.subareaAreaSn = val[1] ? val[1] : undefined
     },
@@ -390,7 +396,8 @@ export default {
       this.queryParam.dealerCitySn = undefined
       this.queryParam.dealerCountySn = undefined
       this.queryParam.checkStatus = undefined
-      if(this.advanced){
+      this.queryParam.bizUserSn = undefined
+      if (this.advanced) {
         this.$refs.subarea.clearData()
       }
       this.$refs.table.refresh(true)
@@ -439,7 +446,7 @@ export default {
         this.$refs.voucherModal.getData(row)
       })
     },
-    closeVoucherModal(){
+    closeVoucherModal () {
       this.showVoucher = false
       this.$store.state.app.curActionPermission = ''
     },
@@ -449,7 +456,7 @@ export default {
       this.$store.state.app.curActionPermission = 'B_salesCollection_receipt'
       this.showSkModal = true
     },
-    closeColleModal(){
+    closeColleModal () {
       this.showSkModal = false
       this.$store.state.app.curActionPermission = ''
     },
@@ -520,4 +527,3 @@ export default {
   }
 }
 </script>
- 

+ 11 - 4
src/views/salesManagement/salesList/list.vue

@@ -90,8 +90,13 @@
                   </a-select>
                 </a-form-model-item>
               </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
             </template>
-            <a-col :md="6" :sm="24">
+            <a-col :md="isShowCustomerSearch?24:6" :sm="24" :style="{textAlign:isShowCustomerSearch?'center':''}">
               <div class="table-page-search-submitButtons">
                 <a-button type="primary" :disabled="disabled" @click="handleSearch">查询</a-button>
                 <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
@@ -180,6 +185,7 @@ import subarea from '@/views/common/subarea.js'
 import Area from '@/views/common/area.js'
 import dealerSubareaScopeList from '@/views/common/dealerSubareaScopeList.vue'
 import commonModal from '@/views/common/commonModal.vue'
+import customerService from '@/views/common/customerService.vue'
 import salesDetail from '@/views/salesManagement/salesQueryNew/detailAll.vue'
 import dispatchDetail from '@/views/salesManagement/pushOrderManagement/detail.vue'
 import detailModal from '@/views/salesManagement/sendOutOrder/detailModal.vue'
@@ -187,7 +193,7 @@ import { salesOverviewQueryPage } from '@/api/salesNew'
 export default {
   name: 'SalesListManagementList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, dispatchDetail, commonModal, Area, salesDetail, detailModal },
+  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, dispatchDetail, commonModal, Area, salesDetail, detailModal, customerService },
   data () {
     return {
       spinning: false,
@@ -224,7 +230,8 @@ export default {
         billStatus: undefined, //  业务状态
         sendFlag: '', // 发货状态
         provinceSn: undefined, // 省份
-        timeoutflag: undefined// 超时环节提醒
+        timeoutflag: undefined, // 超时环节提醒
+        bizUserSn: undefined
       },
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -386,7 +393,7 @@ export default {
       this.queryParam.sendFlag = ''
       this.queryParam.provinceSn = undefined
       this.queryParam.timeoutflag = undefined
-
+      this.queryParam.bizUserSn = undefined
       this.examineTime = []
       this.paymentTime = []
       this.$refs.subarea.clearData()

+ 147 - 139
src/views/salesManagement/sendOutOrder/list.vue

@@ -1,153 +1,158 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeDate" :value="time" @change="dateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="发货单号">
-              <a-input id="sendOut-sendBillNo" v-model.trim="queryParam.sendBillNo" allowClear placeholder="请输入发货单号"/>
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="客户名称" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
-              <a-input id="sendOut-customeName" v-model.trim="queryParam.customeName" allowClear placeholder="请输入客户名称"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="关联业务单号">
-                <a-input id="sendOut-bizNos" v-model.trim="queryParam.bizNos" allowClear placeholder="请输入备货或调拨单号"/>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeDate" :value="time" @change="dateChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="托运日期">
-                <rangeDate ref="sendDate" :value="sendtime" @change="sendDateChange" />
+              <a-form-item label="发货单号">
+                <a-input id="sendOut-sendBillNo" v-model.trim="queryParam.sendBillNo" allowClear placeholder="请输入发货单号"/>
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="收货状态">
-                <v-select
-                  v-model="queryParam.receiveFlag"
-                  ref="receiveFlag"
-                  id="sendOut-receiveFlag"
-                  code="RECEIVE_FLAG"
-                  placeholder="请选择收货状态"
-                  allowClear></v-select>
+              <a-form-item label="客户名称" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+                <a-input id="sendOut-customeName" v-model.trim="queryParam.customeName" allowClear placeholder="请输入客户名称"/>
               </a-form-item>
             </a-col>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="关联业务单号">
+                  <a-input id="sendOut-bizNos" v-model.trim="queryParam.bizNos" allowClear placeholder="请输入备货或调拨单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="托运日期">
+                  <rangeDate ref="sendDate" :value="sendtime" @change="sendDateChange" />
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="收货状态">
+                  <v-select
+                    v-model="queryParam.receiveFlag"
+                    ref="receiveFlag"
+                    id="sendOut-receiveFlag"
+                    code="RECEIVE_FLAG"
+                    placeholder="请选择收货状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="物流情况">
+                  <v-select
+                    v-model="queryParam.transportState"
+                    ref="transportState"
+                    id="sendOut-transportState"
+                    code="TRANSPORT_STATE"
+                    placeholder="请选择物流情况"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="所在区域">
+                  <subarea id="sendOut-subarea" ref="subarea" @change="subareaChange"></subarea>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="地区" >
+                  <Area id="sendOut-provinceSn" v-model="queryParam.provinceSn" placeholder="请选择省"></Area>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="仓库">
+                  <chooseWarehouse ref="warehouse" @load="warehouseLoad" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
             <a-col :md="6" :sm="24">
-              <a-form-item label="物流情况">
-                <v-select
-                  v-model="queryParam.transportState"
-                  ref="transportState"
-                  id="sendOut-transportState"
-                  code="TRANSPORT_STATE"
-                  placeholder="请选择物流情况"
-                  allowClear></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="所在区域">
-                <subarea id="sendOut-subarea" ref="subarea" @change="subareaChange"></subarea>
-              </a-form-model-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="地区" >
-                <Area id="sendOut-provinceSn" v-model="queryParam.provinceSn" placeholder="请选择省"></Area>
-              </a-form-model-item>
+              <span class="table-page-search-submitButtons">
+                <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
+                <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
+                <a-button
+                  style="margin-left: 10px"
+                  type="primary"
+                  class="button-warning"
+                  @click="handleExport"
+                  :disabled="disabled"
+                  :loading="exportLoading"
+                  v-if="$hasPermissions('B_sendOutExport')"
+                  id="sendOut-export">导出</a-button>
+                <a @click="advanced=!advanced" style="margin-left: 8px">
+                  {{ advanced ? '收起' : '展开' }}
+                  <a-icon :type="advanced ? 'up' : 'down'"/>
+                </a>
+              </span>
             </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="仓库">
-                <chooseWarehouse ref="warehouse" @load="warehouseLoad" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
-              </a-form-model-item>
-            </a-col>
-          </template>
-          <a-col :md="6" :sm="24">
-            <span class="table-page-search-submitButtons">
-              <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
-              <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
-              <a-button
-                style="margin-left: 10px"
-                type="primary"
-                class="button-warning"
-                @click="handleExport"
-                :disabled="disabled"
-                :loading="exportLoading"
-                v-if="$hasPermissions('B_sendOutExport')"
-                id="sendOut-export">导出</a-button>
-              <a @click="advanced=!advanced" style="margin-left: 8px">
-                {{ advanced ? '收起' : '展开' }}
-                <a-icon :type="advanced ? 'up' : 'down'"/>
-              </a>
-            </span>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  <a-card size="small" :bordered="false" class="sendOut-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- 操作按钮 -->
-      <div v-if="isShowImport">
-        <a-button type="primary" class="button-error" v-if="$hasPermissions('B_sendOutPlImport')" @click="openGuideModal=true">批量导入</a-button>
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+70+'px' }"
-        size="small"
-        :rowKey="(record) => record.id"
-        :columns="columns"
-        :data="loadData"
-        :scroll="{ y:tableHeight }"
-        :defaultLoadData="false"
-        bordered>
-        <!-- 发货单号 -->
-        <template slot="sendBillNo" slot-scope="text, record">
-          <span class="link-bule" v-if="$hasPermissions('B_SooDetail')" @click="handleDetail(record,1)">{{ record.sendBillNo }}</span>
-          <span v-else>{{ record.sendBillNo }}</span>
-        </template>
-        <!-- 操作 -->
-        <template slot="action" slot-scope="text, record">
-          <a-button
-            size="small"
-            type="link"
-            class="button-warning"
-            v-if="record.receiveFlag == 0&&$hasPermissions('B_SooEdit')"
-            @click="handleEdit(record)"
-          >编辑</a-button>
-          <a-button
-            size="small"
-            type="link"
-            class="button-warning"
-            v-if="record.receiveFlag == 0&&$hasPermissions('B_WLGZ')"
-            @click="handleDetail(record,0)"
-          >物流跟踪</a-button>
-          <span v-if="record.receiveFlag == 1">--</span>
-        </template>
-      </s-table>
-    </a-spin>
-    <!-- 发货单详情 -->
-    <detailModal v-drag ref="detailModal" :openModal="showTipModal" @cancel="showTipModal=false" @ok="sendSuccess"></detailModal>
-    <!-- 编辑发货单 -->
-    <sendGoodModal
-      v-drag
-      ref="sendGoodModal"
-      modalTit="编辑发货单"
-      :openModal="showSendGoodModal"
-      @ok="sendSuccess"
-      @cancel="showSendGoodModal=false"></sendGoodModal>
-    <!-- 导入发货单 -->
-    <importGuideModal v-drag :openModal="openGuideModal" @close="openGuideModal=false" @ok="resetSearchForm" />
-  </a-card>
+    </a-card>
+    <a-card size="small" :bordered="false" class="sendOut-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- 操作按钮 -->
+        <div v-if="isShowImport">
+          <a-button type="primary" class="button-error" v-if="$hasPermissions('B_sendOutPlImport')" @click="openGuideModal=true">批量导入</a-button>
+        </div>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+70+'px' }"
+          size="small"
+          :rowKey="(record) => record.id"
+          :columns="columns"
+          :data="loadData"
+          :scroll="{ y:tableHeight }"
+          :defaultLoadData="false"
+          bordered>
+          <!-- 发货单号 -->
+          <template slot="sendBillNo" slot-scope="text, record">
+            <span class="link-bule" v-if="$hasPermissions('B_SooDetail')" @click="handleDetail(record,1)">{{ record.sendBillNo }}</span>
+            <span v-else>{{ record.sendBillNo }}</span>
+          </template>
+          <!-- 操作 -->
+          <template slot="action" slot-scope="text, record">
+            <a-button
+              size="small"
+              type="link"
+              class="button-warning"
+              v-if="record.receiveFlag == 0&&$hasPermissions('B_SooEdit')"
+              @click="handleEdit(record)"
+            >编辑</a-button>
+            <a-button
+              size="small"
+              type="link"
+              class="button-warning"
+              v-if="record.receiveFlag == 0&&$hasPermissions('B_WLGZ')"
+              @click="handleDetail(record,0)"
+            >物流跟踪</a-button>
+            <span v-if="record.receiveFlag == 1">--</span>
+          </template>
+        </s-table>
+      </a-spin>
+      <!-- 发货单详情 -->
+      <detailModal v-drag ref="detailModal" :openModal="showTipModal" @cancel="showTipModal=false" @ok="sendSuccess"></detailModal>
+      <!-- 编辑发货单 -->
+      <sendGoodModal
+        v-drag
+        ref="sendGoodModal"
+        modalTit="编辑发货单"
+        :openModal="showSendGoodModal"
+        @ok="sendSuccess"
+        @cancel="showSendGoodModal=false"></sendGoodModal>
+      <!-- 导入发货单 -->
+      <importGuideModal v-drag :openModal="openGuideModal" @close="openGuideModal=false" @ok="resetSearchForm" />
+    </a-card>
   </div>
 </template>
 
@@ -162,11 +167,12 @@ import Area from '@/views/common/area.js'
 import subarea from '@/views/common/subarea.js'
 import ImportGuideModal from './importGuideModal.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { sendBillQueryPageList, sendBillExcel } from '@/api/sendBill'
 export default {
   name: 'SendOutOrderList',
   mixins: [commonMixin],
-  components: { STable, VSelect, rangeDate, detailModal, sendGoodModal, Area, subarea, ImportGuideModal, chooseWarehouse },
+  components: { STable, VSelect, rangeDate, detailModal, sendGoodModal, Area, subarea, ImportGuideModal, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -193,7 +199,8 @@ export default {
           subareaAreaSn: undefined
         },
         provinceSn: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       totalData: {
         totalAmount: 0,
@@ -264,7 +271,7 @@ export default {
       this.queryParam.sendBeginDate = date[0]
       this.queryParam.sendEndDate = date[1]
     },
-    warehouseLoad(def,data){
+    warehouseLoad (def, data) {
       this.isShowImport = data.length == 1
     },
     // 详情
@@ -315,6 +322,7 @@ export default {
       this.queryParam.subareaArea.subareaAreaSn = undefined
       this.queryParam.provinceSn = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
       if (this.advanced) {
         this.$refs.subarea.clearData()
       }

+ 139 - 131
src/views/salesManagement/shortageStatisticsC/list.vue

@@ -1,144 +1,149 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeDate" :allowClear="false" :value="time" @change="dateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="产品名称">
-              <a-input id="shortageStatisticsCList-productName" v-model.trim="queryParam.productName" allowClear placeholder="请输入产品名称"/>
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="产品编码">
-              <a-input id="shortageStatisticsCList-productCode" v-model.trim="queryParam.productCode" allowClear placeholder="请输入产品编码"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="客户名称">
-                <dealerSubareaScopeList ref="custList" id="shortageStatisticsCList-buyerSn" :itemSn="queryParam.buyerSn" @change="custChange"></dealerSubareaScopeList>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeDate" :allowClear="false" :value="time" @change="dateChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="区域">
-                <subarea id="shortageStatisticsCList-subarea" ref="subarea" @change="subareaChange"></subarea>
+              <a-form-item label="产品名称">
+                <a-input id="shortageStatisticsCList-productName" v-model.trim="queryParam.productName" allowClear placeholder="请输入产品名称"/>
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-model-item label="省份" prop="provinceSn">
-                <Area id="shortageStatisticsCList-provinceSn" v-model="queryParam.provinceSn" placeholder="请选择省"></Area>
-              </a-form-model-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="产品分类">
-                <ProductType v-model="productType" id="shortageStatisticsCList-productType" @change="changeProductType" placeholder="请选择产品分类"></ProductType>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="品牌">
-                <ProductBrand id="shortageStatisticsCList-productBrandSn" v-model="queryParam.productBrandSn"></ProductBrand>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="品牌分类">
-                <v-select code="BRAND_TYPE" id="shortageStatisticsCList-brandType" v-model="queryParam.brandType" allowClear placeholder="请选择品牌分类"></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="销售单号">
-                <a-input id="shortageStatisticsCList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="客户类型">
-                <v-select code="DEALER_TYPE" id="shortageStatisticsCList-dealerType" v-model="queryParam.dealerType" allowClear placeholder="请选择客户类型"></v-select>
-              </a-form-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="产品状态">
-                <v-select code="PRODUCT_STATUS" id="shortageStatisticsCList-state" v-model="queryParam.state" allowClear placeholder="请选择产品状态"></v-select>
+              <a-form-item label="产品编码">
+                <a-input id="shortageStatisticsCList-productCode" v-model.trim="queryParam.productCode" allowClear placeholder="请输入产品编码"/>
               </a-form-item>
             </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-model-item label="仓库">
-                <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn"></chooseWarehouse>
-              </a-form-model-item>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="客户名称">
+                  <dealerSubareaScopeList ref="custList" id="shortageStatisticsCList-buyerSn" :itemSn="queryParam.buyerSn" @change="custChange"></dealerSubareaScopeList>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="区域">
+                  <subarea id="shortageStatisticsCList-subarea" ref="subarea" @change="subareaChange"></subarea>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="省份" prop="provinceSn">
+                  <Area id="shortageStatisticsCList-provinceSn" v-model="queryParam.provinceSn" placeholder="请选择省"></Area>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="产品分类">
+                  <ProductType v-model="productType" id="shortageStatisticsCList-productType" @change="changeProductType" placeholder="请选择产品分类"></ProductType>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="品牌">
+                  <ProductBrand id="shortageStatisticsCList-productBrandSn" v-model="queryParam.productBrandSn"></ProductBrand>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="品牌分类">
+                  <v-select code="BRAND_TYPE" id="shortageStatisticsCList-brandType" v-model="queryParam.brandType" allowClear placeholder="请选择品牌分类"></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="销售单号">
+                  <a-input id="shortageStatisticsCList-salesBillNo" v-model.trim="queryParam.salesBillNo" allowClear placeholder="请输入销售单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="客户类型">
+                  <v-select code="DEALER_TYPE" id="shortageStatisticsCList-dealerType" v-model="queryParam.dealerType" allowClear placeholder="请选择客户类型"></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="产品状态">
+                  <v-select code="PRODUCT_STATUS" id="shortageStatisticsCList-state" v-model="queryParam.state" allowClear placeholder="请选择产品状态"></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="仓库">
+                  <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn"></chooseWarehouse>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
+            <a-col :md="6" :sm="24" style="margin-bottom: 8px;">
+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="shortageStatisticsCList-refresh">查询</a-button>
+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shortageStatisticsCList-reset">重置</a-button>
+              <a-button
+                style="margin-left: 5px"
+                type="primary"
+                class="button-warning"
+                @click="handleExport"
+                :disabled="disabled"
+                :loading="exportLoading"
+                v-if="$hasPermissions('B_oosDetailExportByBuyer')"
+                id="shortageStatisticsCList-export">导出</a-button>
+              <a @click="advanced=!advanced" style="margin-left: 5px">
+                {{ advanced ? '收起' : '展开' }}
+                <a-icon :type="advanced ? 'up' : 'down'"/>
+              </a>
             </a-col>
-          </template>
-          <a-col :md="6" :sm="24" style="margin-bottom: 8px;">
-            <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="shortageStatisticsCList-refresh">查询</a-button>
-            <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shortageStatisticsCList-reset">重置</a-button>
-            <a-button
-              style="margin-left: 5px"
-              type="primary"
-              class="button-warning"
-              @click="handleExport"
-              :disabled="disabled"
-              :loading="exportLoading"
-              v-if="$hasPermissions('B_oosDetailExportByBuyer')"
-              id="shortageStatisticsCList-export">导出</a-button>
-            <a @click="advanced=!advanced" style="margin-left: 5px">
-              {{ advanced ? '收起' : '展开' }}
-              <a-icon :type="advanced ? 'up' : 'down'"/>
-            </a>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  <a-card size="small" :bordered="false" class="shortageStatisticsCList-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- alert -->
-      <div class="tongji-bar">
-        <div>
-          总客户数:<strong>{{ productTotal && (productTotal.totalBuyerQty || productTotal.totalBuyerQty==0) ? productTotal.totalBuyerQty : '--' }}</strong>,
-          总单数:<strong>{{ productTotal && (productTotal.totalRecord || productTotal.totalRecord==0) ? productTotal.totalRecord : '--' }}</strong>,
-          缺货总款数:<strong>{{ productTotal && (productTotal.totalCategory || productTotal.totalCategory==0) ? productTotal.totalCategory : '--' }}</strong>,
-          缺货总数量:<strong>{{ productTotal && (productTotal.totalQty || productTotal.totalQty==0) ? productTotal.totalQty : '--' }}</strong>,
-          <span v-if="$hasPermissions('M_shortageStatisticsCList_salesPrice')">缺货总金额:<strong>{{ productTotal && (productTotal.totalAmount || productTotal.totalAmount==0) ? toThousands(productTotal.totalAmount) : '--' }}</strong></span>
-        </div>
-        <div>
-          本页客户数:<strong>{{ currentTotal && (currentTotal.totalBuyerQty || currentTotal.totalBuyerQty==0) ? currentTotal.totalBuyerQty : '--' }}</strong>,
-          本页总单数:<strong>{{ currentTotal && (currentTotal.totalRecord || currentTotal.totalRecord==0) ? currentTotal.totalRecord : '--' }}</strong>,
-          本页缺货总款数:<strong>{{ currentTotal && (currentTotal.totalCategory || currentTotal.totalCategory==0) ? currentTotal.totalCategory : '--' }}</strong>,
-          本页缺货总数量:<strong>{{ currentTotal && (currentTotal.totalQty || currentTotal.totalQty==0) ? currentTotal.totalQty : '--' }}</strong>,
-          <span v-if="$hasPermissions('M_shortageStatisticsCList_salesPrice')">本页缺货总金额:<strong>{{ currentTotal && (currentTotal.totalAmount || currentTotal.totalAmount==0) ? toThousands(currentTotal.totalAmount) : '--' }}</strong></span>
-        </div>
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+65+'px' }"
-        size="small"
-        :rowKey="(record) => record.no"
-        rowKeyName="no"
-        :pageSize="30"
-        :columns="columns"
-        :data="loadData"
-        :defaultLoadData="false"
-        :scroll="{ x: 2020, y: tableHeight }"
-        bordered>
-        <!-- 单号 -->
-        <template slot="salesBillNo" slot-scope="text, record">
-          {{ record.salesBillNo }}
-        </template>
-        <template slot="productCode" slot-scope="text, record">
-          <span style="padding-right: 15px;">{{ text }}</span>
-          <a-badge count="促" v-if="record.promotionFlag=='GIFT'" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
-          <a-badge count="特" v-if="record.promotionFlag=='DISCOUNT'" :number-style="{ backgroundColor: '#faad14', zoom:'80%' }"></a-badge>
-        </template>
-      </s-table>
-    </a-spin>
-  </a-card>
-</div>
+    </a-card>
+    <a-card size="small" :bordered="false" class="shortageStatisticsCList-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- alert -->
+        <div class="tongji-bar">
+          <div>
+            总客户数:<strong>{{ productTotal && (productTotal.totalBuyerQty || productTotal.totalBuyerQty==0) ? productTotal.totalBuyerQty : '--' }}</strong>,
+            总单数:<strong>{{ productTotal && (productTotal.totalRecord || productTotal.totalRecord==0) ? productTotal.totalRecord : '--' }}</strong>,
+            缺货总款数:<strong>{{ productTotal && (productTotal.totalCategory || productTotal.totalCategory==0) ? productTotal.totalCategory : '--' }}</strong>,
+            缺货总数量:<strong>{{ productTotal && (productTotal.totalQty || productTotal.totalQty==0) ? productTotal.totalQty : '--' }}</strong>,
+            <span v-if="$hasPermissions('M_shortageStatisticsCList_salesPrice')">缺货总金额:<strong>{{ productTotal && (productTotal.totalAmount || productTotal.totalAmount==0) ? toThousands(productTotal.totalAmount) : '--' }}</strong></span>
+          </div>
+          <div>
+            本页客户数:<strong>{{ currentTotal && (currentTotal.totalBuyerQty || currentTotal.totalBuyerQty==0) ? currentTotal.totalBuyerQty : '--' }}</strong>,
+            本页总单数:<strong>{{ currentTotal && (currentTotal.totalRecord || currentTotal.totalRecord==0) ? currentTotal.totalRecord : '--' }}</strong>,
+            本页缺货总款数:<strong>{{ currentTotal && (currentTotal.totalCategory || currentTotal.totalCategory==0) ? currentTotal.totalCategory : '--' }}</strong>,
+            本页缺货总数量:<strong>{{ currentTotal && (currentTotal.totalQty || currentTotal.totalQty==0) ? currentTotal.totalQty : '--' }}</strong>,
+            <span v-if="$hasPermissions('M_shortageStatisticsCList_salesPrice')">本页缺货总金额:<strong>{{ currentTotal && (currentTotal.totalAmount || currentTotal.totalAmount==0) ? toThousands(currentTotal.totalAmount) : '--' }}</strong></span>
+          </div>
+        </div>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+65+'px' }"
+          size="small"
+          :rowKey="(record) => record.no"
+          rowKeyName="no"
+          :pageSize="30"
+          :columns="columns"
+          :data="loadData"
+          :defaultLoadData="false"
+          :scroll="{ x: 2020, y: tableHeight }"
+          bordered>
+          <!-- 单号 -->
+          <template slot="salesBillNo" slot-scope="text, record">
+            {{ record.salesBillNo }}
+          </template>
+          <template slot="productCode" slot-scope="text, record">
+            <span style="padding-right: 15px;">{{ text }}</span>
+            <a-badge count="促" v-if="record.promotionFlag=='GIFT'" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
+            <a-badge count="特" v-if="record.promotionFlag=='DISCOUNT'" :number-style="{ backgroundColor: '#faad14', zoom:'80%' }"></a-badge>
+          </template>
+        </s-table>
+      </a-spin>
+    </a-card>
+  </div>
 </template>
 
 <script>
@@ -153,11 +158,12 @@ import Area from '@/views/common/area.js'
 import ProductType from '@/views/common/productType.js'
 import ProductBrand from '@/views/common/productBrand.js'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { oosBuyerList, oosBuyerDetailCount, oosBuyerDetailPageCount, oosDetailExport } from '@/api/oos'
 export default {
   name: 'ShortageStatisticsCList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, subarea, Area, rangeDate, ProductBrand, ProductType, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, subarea, Area, rangeDate, ProductBrand, ProductType, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -182,7 +188,8 @@ export default {
         brandType: undefined,
         productBrandSn: undefined,
         state: undefined,
-        warehouseSn: undefined
+        warehouseSn: undefined,
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       exportLoading: false, // 导出loading
@@ -310,6 +317,7 @@ export default {
       this.queryParam.productBrandSn = undefined
       this.queryParam.state = undefined
       this.queryParam.warehouseSn = undefined
+      this.queryParam.bizUserSn = undefined
       this.productType = []
       this.$refs.table.refresh(true)
     },
@@ -412,4 +420,4 @@ export default {
        margin-top: 10px;
      }
   }
-</style>
+</style>

+ 108 - 100
src/views/salesManagement/shortageStatisticsP/list.vue

@@ -1,112 +1,117 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeDate" :allowClear="false" :value="time" @change="dateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="产品编码">
-              <a-input id="shortageStatisticsPList-productCode" v-model.trim="queryParam.productCode" allowClear placeholder="请输入产品编码"/>
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="产品名称">
-              <a-input id="shortageStatisticsPList-productName" v-model.trim="queryParam.productName" allowClear placeholder="请输入产品名称"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="原厂编码">
-                <a-input id="shortageStatisticsPList-origCode" v-model.trim="queryParam.origCode" allowClear placeholder="请输入原厂编码"/>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeDate" :allowClear="false" :value="time" @change="dateChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-model-item label="仓库">
-                <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn"></chooseWarehouse>
-              </a-form-model-item>
-            </a-col>
-            <a-col :md="6" :sm="24">
-              <a-form-item label="产品状态">
-                <v-select code="OOS_PRODUCT_STATE" id="shortageStatisticsPList-state" v-model="queryParam.state" allowClear placeholder="请选择产品状态"></v-select>
+              <a-form-item label="产品编码">
+                <a-input id="shortageStatisticsPList-productCode" v-model.trim="queryParam.productCode" allowClear placeholder="请输入产品编码"/>
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="停产状态">
-                <a-select v-model="queryParam.haltProdFlag" placeholder="请选择停产状态" allowClear>
-                  <a-select-option value="0">
-                    启用
-                  </a-select-option>
-                  <a-select-option value="1">
-                    停产
-                  </a-select-option>
-                </a-select>
+              <a-form-item label="产品名称">
+                <a-input id="shortageStatisticsPList-productName" v-model.trim="queryParam.productName" allowClear placeholder="请输入产品名称"/>
               </a-form-item>
             </a-col>
-          </template>
-          <a-col :md="6" :sm="24" style="margin-bottom: 10px;">
-            <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="shortageStatisticsPList-refresh">查询</a-button>
-            <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shortageStatisticsPList-reset">重置</a-button>
-            <a-button
-              style="margin-left: 5px"
-              type="primary"
-              class="button-warning"
-              @click="handleExport"
-              :disabled="disabled"
-              :loading="exportLoading"
-              v-if="$hasPermissions('B_oosDetailExportByProduct')"
-              id="shortageStatisticsCList-export">导出</a-button>
-            <a @click="advanced=!advanced" style="margin-left: 5px">
-              {{ advanced ? '收起' : '展开' }}
-              <a-icon :type="advanced ? 'up' : 'down'"/>
-            </a>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  <a-card size="small" :bordered="false" class="shortageStatisticsPList-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <!-- alert -->
-      <div class="tongji-bar">
-        <div>
-          总缺货数量:<strong>{{ productTotal && (productTotal.totalQty || productTotal.totalQty==0) ? productTotal.totalQty : '--' }}</strong>,
-          <span v-if="$hasPermissions('M_shortageStatisticsPList_salesPrice')">
-            总缺货金额:<strong>{{ productTotal && (productTotal.totalAmount || productTotal.totalAmount==0) ? toThousands(productTotal.totalAmount) : '--' }}</strong>;
-          </span>
-          本页缺货数量:<strong>{{ currentTotal && (currentTotal.totalQty || currentTotal.totalQty==0) ? currentTotal.totalQty : '--' }}</strong>,
-          <span v-if="$hasPermissions('M_shortageStatisticsPList_salesPrice')">
-            本页缺货金额:<strong>{{ currentTotal && (currentTotal.totalAmount || currentTotal.totalAmount==0) ? toThousands(currentTotal.totalAmount) : '--' }}</strong>;
-          </span>
-        </div>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="原厂编码">
+                  <a-input id="shortageStatisticsPList-origCode" v-model.trim="queryParam.origCode" allowClear placeholder="请输入原厂编码"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="仓库">
+                  <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn"></chooseWarehouse>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="产品状态">
+                  <v-select code="OOS_PRODUCT_STATE" id="shortageStatisticsPList-state" v-model="queryParam.state" allowClear placeholder="请选择产品状态"></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="停产状态">
+                  <a-select v-model="queryParam.haltProdFlag" placeholder="请选择停产状态" allowClear>
+                    <a-select-option value="0">
+                      启用
+                    </a-select-option>
+                    <a-select-option value="1">
+                      停产
+                    </a-select-option>
+                  </a-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
+            <a-col :md="isShowCustomerSearch?24:6" :sm="24" style="margin-bottom: 10px;" :style="{textAlign:isShowCustomerSearch?'center':''}">
+              <a-button type="primary" @click="$refs.table.refresh(true)" :disabled="disabled" id="shortageStatisticsPList-refresh">查询</a-button>
+              <a-button style="margin-left: 5px" @click="resetSearchForm" :disabled="disabled" id="shortageStatisticsPList-reset">重置</a-button>
+              <a-button
+                style="margin-left: 5px"
+                type="primary"
+                class="button-warning"
+                @click="handleExport"
+                :disabled="disabled"
+                :loading="exportLoading"
+                v-if="$hasPermissions('B_oosDetailExportByProduct')"
+                id="shortageStatisticsCList-export">导出</a-button>
+              <a @click="advanced=!advanced" style="margin-left: 5px">
+                {{ advanced ? '收起' : '展开' }}
+                <a-icon :type="advanced ? 'up' : 'down'"/>
+              </a>
+            </a-col>
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+65+'px' }"
-        size="small"
-        :rowKey="(record) => record.no"
-        rowKeyName="no"
-        :columns="columns"
-        :data="loadData"
-        :pageSize="30"
-        :scroll="{ y: tableHeight }"
-        :defaultLoadData="false"
-        bordered>
-        <template slot="productCode" slot-scope="text, record">
-          <span style="padding-right: 15px;">{{ text }}</span>
-          <a-badge count="促" v-if="record.promotionFlag=='GIFT'" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
-          <a-badge count="特" v-if="record.promotionFlag=='DISCOUNT'" :number-style="{ backgroundColor: '#faad14', zoom:'80%' }"></a-badge>
-        </template>
-      </s-table>
-    </a-spin>
-  </a-card>
+    </a-card>
+    <a-card size="small" :bordered="false" class="shortageStatisticsPList-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <!-- alert -->
+        <div class="tongji-bar">
+          <div>
+            总缺货数量:<strong>{{ productTotal && (productTotal.totalQty || productTotal.totalQty==0) ? productTotal.totalQty : '--' }}</strong>,
+            <span v-if="$hasPermissions('M_shortageStatisticsPList_salesPrice')">
+              总缺货金额:<strong>{{ productTotal && (productTotal.totalAmount || productTotal.totalAmount==0) ? toThousands(productTotal.totalAmount) : '--' }}</strong>;
+            </span>
+            本页缺货数量:<strong>{{ currentTotal && (currentTotal.totalQty || currentTotal.totalQty==0) ? currentTotal.totalQty : '--' }}</strong>,
+            <span v-if="$hasPermissions('M_shortageStatisticsPList_salesPrice')">
+              本页缺货金额:<strong>{{ currentTotal && (currentTotal.totalAmount || currentTotal.totalAmount==0) ? toThousands(currentTotal.totalAmount) : '--' }}</strong>;
+            </span>
+          </div>
+        </div>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+65+'px' }"
+          size="small"
+          :rowKey="(record) => record.no"
+          rowKeyName="no"
+          :columns="columns"
+          :data="loadData"
+          :pageSize="30"
+          :scroll="{ y: tableHeight }"
+          :defaultLoadData="false"
+          bordered>
+          <template slot="productCode" slot-scope="text, record">
+            <span style="padding-right: 15px;">{{ text }}</span>
+            <a-badge count="促" v-if="record.promotionFlag=='GIFT'" :number-style="{ backgroundColor: '#52c41a', zoom:'80%' }"></a-badge>
+            <a-badge count="特" v-if="record.promotionFlag=='DISCOUNT'" :number-style="{ backgroundColor: '#faad14', zoom:'80%' }"></a-badge>
+          </template>
+        </s-table>
+      </a-spin>
+    </a-card>
   </div>
 </template>
 
@@ -117,11 +122,12 @@ import getDate from '@/libs/getDate.js'
 import { STable, VSelect } from '@/components'
 import rangeDate from '@/views/common/rangeDate.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import { oosProductList, oosProductDetailCount, oosProductDetailPageCount, oosDetailExportByProduct } from '@/api/oos'
 export default {
   name: 'ShortageStatisticsPList',
   mixins: [commonMixin],
-  components: { STable, VSelect, rangeDate, chooseWarehouse },
+  components: { STable, VSelect, rangeDate, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -135,7 +141,8 @@ export default {
         origCode: '',
         warehouseSn: undefined,
         state: undefined,
-        haltProdFlag: undefined// 停产状态
+        haltProdFlag: undefined, // 停产状态
+        bizUserSn: undefined
       },
       disabled: false, //  查询、重置按钮是否可操作
       exportLoading: false, // 导出loading
@@ -269,6 +276,7 @@ export default {
       this.queryParam.warehouseSn = undefined
       this.queryParam.state = undefined
       this.queryParam.haltProdFlag = undefined
+      this.queryParam.bizUserSn = undefined
       this.$refs.table.refresh(true)
     },
     pageInit () {
@@ -322,4 +330,4 @@ export default {
        margin-top: 10px;
      }
   }
-</style>
+</style>

+ 36 - 28
src/views/salesManagement/stockPrint/list.vue

@@ -1,6 +1,6 @@
 <template>
   <div class="stockPrint-wrap">
-      <!-- 搜索条件 -->
+    <!-- 搜索条件 -->
     <a-card class="searchBoxNormal" size="small" :bordered="false">
       <div ref="tableSearch" class="table-page-search-wrapper">
         <a-form layout="inline">
@@ -79,22 +79,27 @@
                   <chooseWarehouse ref="warehouse" v-model="queryParam.warehouseSn" :isPermission="true"></chooseWarehouse>
                 </a-form-model-item>
               </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
             </template>
-            <a-col :md="5" :sm="24">
-              <span class="table-page-search-submitButtons">
+            <a-col :md="(currentTab==1&&isShowCustomerSearch)?24:6" :sm="24" :style="{textAlign:(currentTab==1&&isShowCustomerSearch)?'center':''}">
+              <div class="table-page-search-submitButtons">
                 <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
                 <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
                 <a @click="advanced=!advanced" style="margin-left: 8px">
                   {{ advanced ? '收起' : '展开' }}
                   <a-icon :type="advanced ? 'up' : 'down'"/>
                 </a>
-              </span>
+              </div>
             </a-col>
           </a-row>
         </a-form>
       </div>
     </a-card>
-    
+
     <a-card class="stockPrint-body" size="small" :bordered="false">
       <a-spin :spinning="spinning" tip="Loading...">
         <div class="flex-center" style="justify-content: space-between;">
@@ -109,15 +114,15 @@
           <div>
             <span>显示:</span>
             <a-tree-select
-                size="small"
-                v-model="showCols"
-                style="min-width: 200px"
-                dropdownMatchSelectWidth
-                :maxTagCount="3"
-                :tree-data="colsArr"
-                tree-checkable
-                placeholder="请选择要显示的列"
-              />
+              size="small"
+              v-model="showCols"
+              style="min-width: 200px"
+              dropdownMatchSelectWidth
+              :maxTagCount="3"
+              :tree-data="colsArr"
+              tree-checkable
+              placeholder="请选择要显示的列"
+            />
           </div>
         </div>
         <!-- 列表 -->
@@ -222,6 +227,7 @@ import sendTypeModal from './sendTypeModal.vue'
 import recordModal from './recordModal.vue'
 import commonModal from '@/views/common/commonModal.vue'
 import chooseWarehouse from '@/views/common/chooseWarehouse'
+import customerService from '@/views/common/customerService'
 import salesDetail from '@/views/salesManagement/salesQueryNew/detailAll.vue'
 import dispatchDetail from '@/views/salesManagement/pushOrderManagement/detail.vue'
 import explainInfoModal from '@/views/salesManagement/pushOrderManagement/explainInfoModal.vue'
@@ -230,7 +236,7 @@ import { printBase64Fun } from '@/libs/JGPrint.js'
 export default {
   name: 'StockPrintList',
   mixins: [commonMixin],
-  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, sendTypeModal, recordModal, Area, commonModal, salesDetail, dispatchDetail, explainInfoModal, chooseWarehouse },
+  components: { STable, VSelect, dealerSubareaScopeList, rangeDate, subarea, sendTypeModal, recordModal, Area, commonModal, salesDetail, dispatchDetail, explainInfoModal, chooseWarehouse, customerService },
   data () {
     return {
       spinning: false,
@@ -258,7 +264,8 @@ export default {
         },
         shippingAddrProvinceSn: undefined,
         voidFlag: 0,
-        printStatus: 'NO_PRINT'
+        printStatus: 'NO_PRINT',
+        bizUserSn: undefined
       },
       showTipModal: false,
       showRecordModal: false,
@@ -283,8 +290,8 @@ export default {
       tipData: null,
       showPrintModal: false,
       showInfoModal: false,
-      showCols:[],
-      colsArr:[
+      showCols: [],
+      colsArr: [
         {
           title: '销售单号',
           value: 'salesBillNo',
@@ -331,7 +338,7 @@ export default {
         { title: '产品款数', dataIndex: 'totalCategory', width: '30px', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
         { title: '产品数量', dataIndex: 'totalQty', width: '30px', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } }
       ]
-      if(this.showCols.includes('salesBillNo')){
+      if (this.showCols.includes('salesBillNo')) {
         arr.splice(2, 0, { title: '销售单号', scopedSlots: { customRender: 'salesBillNo' }, width: '80px', align: 'center' })
       }
 
@@ -345,25 +352,25 @@ export default {
         arr.splice(ind + 5, 0, { title: '机油售价', dataIndex: 'receiveJyTotalAmount', width: '50px', align: 'right', customRender: text => ((text || text == 0) ? this.toThousands(text) : '--') })
         arr.splice(ind + 6, 0, { title: '轮胎售价', dataIndex: 'receiveLtTotalAmount', width: '50px', align: 'right', customRender: text => ((text || text == 0) ? this.toThousands(text) : '--') })
       }
-      
-      if(this.showCols.includes('warehouseName')){
+
+      if (this.showCols.includes('warehouseName')) {
         arr.push({ title: '仓库', dataIndex: 'warehouseName', width: '50px', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true })
-        }
-      if(this.showCols.includes('billStatusDictValue')){
+      }
+      if (this.showCols.includes('billStatusDictValue')) {
         arr.push({ title: '业务状态', dataIndex: 'billStatusDictValue', width: '40px', align: 'center', customRender: function (text) { return text || '--' } })
       }
-      if(this.showCols.includes('voidFlagDictValue')){
+      if (this.showCols.includes('voidFlagDictValue')) {
         arr.push({ title: '单据状态', dataIndex: 'voidFlagDictValue', width: '40px', align: 'center', customRender: function (text) { return text || '--' } })
       }
       arr.push({ title: '备货打印状态', width: '40px', align: 'center', scopedSlots: { customRender: 'printStatus' } })
-      if(this.showCols.includes('allowPrintTime')){
+      if (this.showCols.includes('allowPrintTime')) {
         arr.push({ title: '允许打印时间', dataIndex: 'allowPrintTime', width: '50px', align: 'center', customRender: function (text) { return text || '--' } })
       }
-      if(this.showCols.includes('stockUpPrintTimes')){
+      if (this.showCols.includes('stockUpPrintTimes')) {
         arr.push({ title: '打印次数', dataIndex: 'stockUpPrintTimes', width: '40px', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } })
       }
-      
-      arr.push({ title: '操作', scopedSlots: { customRender: 'action' }, width: '60px', align: 'center'})
+
+      arr.push({ title: '操作', scopedSlots: { customRender: 'action' }, width: '60px', align: 'center' })
       return arr
     }
   },
@@ -489,6 +496,7 @@ export default {
       this.queryParam.subareaArea.subareaSn = undefined
       this.queryParam.subareaArea.subareaAreaSn = undefined
       this.queryParam.shippingAddrProvinceSn = undefined
+      this.queryParam.bizUserSn = undefined
       this.queryParam.voidFlag = this.currentTab == 1 ? '' : '0'
       this.queryParam.warehouseSn = undefined
       this.queryParam.printStatus = this.currentTab == 1 ? '' : 'NO_PRINT'

+ 223 - 216
src/views/salesReturnManagement/salesReturn/list.vue

@@ -1,239 +1,244 @@
 <template>
   <div>
-  <a-card size="small" :bordered="false" class="searchBoxNormal">
-    <!-- 搜索条件 -->
-    <div ref="tableSearch" class="table-page-search-wrapper">
-      <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
-        <a-row :gutter="15">
-          <a-col :md="6" :sm="24">
-            <a-form-item label="创建时间">
-              <rangeDate ref="rangeCreateDate" :value="createDate" @change="dateCreateChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="审核时间">
-              <rangeDate ref="rangeExamineDate" @change="dateExamineChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="客户名称" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
-              <dealerSubareaScopeList ref="dealerSubareaScopeList" id="salesReturn-buyerSn" @change="custChange" />
-            </a-form-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-model-item label="退货类别" prop="goodFlag">
-              <v-select
-                v-model="queryParam.goodFlag"
-                ref="goodFlag"
-                id="returnSchedule-goodFlag"
-                code="GOOD_FLAG"
-                placeholder="请选择退货类别"
-                allowClear></v-select>
-            </a-form-model-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-model-item label="退货类型">
-              <v-select
-                v-model="queryParam.salesReturnType"
-                id="departUser-salesReturnType"
-                code="SALES_RETURN_TYPE"
-                placeholder="请选择退货类型"
-                allowClear></v-select>
-            </a-form-model-item>
-          </a-col>
-          <a-col :md="6" :sm="24">
-            <a-form-item label="总部销退单号">
-              <a-input id="salesReturn-salesReturnBillNo" v-model.trim="queryParam.salesReturnBillNo" allowClear placeholder="请输入总部销退单号"/>
-            </a-form-item>
-          </a-col>
-          <template v-if="advanced">
+    <a-card size="small" :bordered="false" class="searchBoxNormal">
+      <!-- 搜索条件 -->
+      <div ref="tableSearch" class="table-page-search-wrapper">
+        <a-form layout="inline" @keyup.enter.native="$refs.table.refresh(true)">
+          <a-row :gutter="15">
             <a-col :md="6" :sm="24">
-              <a-form-item label="客户采退申请单号">
-                <a-input id="salesReturn-purchaseReturnApplyNo" v-model.trim="queryParam.purchaseReturnApplyNo" allowClear placeholder="请输入客户采退申请单号"/>
+              <a-form-item label="创建时间">
+                <rangeDate ref="rangeCreateDate" :value="createDate" @change="dateCreateChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="单据来源">
-                <v-select
-                  v-model="queryParam.salesReturnBillSource"
-                  ref="salesReturnBillSource"
-                  id="salesReturn-salesReturnBillSource"
-                  code="SALES_SOURCE"
-                  placeholder="请选择单据来源"
-                  allowClear></v-select>
+              <a-form-item label="审核时间">
+                <rangeDate ref="rangeExamineDate" @change="dateExamineChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="是否同步给客户">
-                <v-select
-                  v-model="queryParam.syncFlag"
-                  ref="syncFlag"
-                  id="salesReturn-syncFlag"
-                  code="FLAG"
-                  placeholder="请选择是否同步给客户"
-                  allowClear></v-select>
+              <a-form-item label="客户名称" :label-col="{ span:7 }" :wrapper-col="{ span:17}">
+                <dealerSubareaScopeList ref="dealerSubareaScopeList" id="salesReturn-buyerSn" @change="custChange" />
               </a-form-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-item label="业务状态">
+              <a-form-model-item label="退货类别" prop="goodFlag">
                 <v-select
-                  v-model="queryParam.billStatus"
-                  ref="billStatus"
-                  id="salesReturn-billStatus"
-                  code="SALES_RETURN_BILL_STATUS"
-                  placeholder="请选择业务状态"
+                  v-model="queryParam.goodFlag"
+                  ref="goodFlag"
+                  id="returnSchedule-goodFlag"
+                  code="GOOD_FLAG"
+                  placeholder="请选择退货类别"
                   allowClear></v-select>
-              </a-form-item>
+              </a-form-model-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-model-item label="所在区域">
-                <subarea id="salesReturn-subarea" ref="subarea" @change="subareaChange"></subarea>
+              <a-form-model-item label="退货类型">
+                <v-select
+                  v-model="queryParam.salesReturnType"
+                  id="departUser-salesReturnType"
+                  code="SALES_RETURN_TYPE"
+                  placeholder="请选择退货类型"
+                  allowClear></v-select>
               </a-form-model-item>
             </a-col>
             <a-col :md="6" :sm="24">
-              <a-form-model-item label="地区" prop="shippingAddrProvinceSn">
-                <Area id="salesReturn-provinceSn" v-model="queryParam.shippingAddrProvinceSn" placeholder="请选择省"></Area>
-              </a-form-model-item>
+              <a-form-item label="总部销退单号">
+                <a-input id="salesReturn-salesReturnBillNo" v-model.trim="queryParam.salesReturnBillNo" allowClear placeholder="请输入总部销退单号"/>
+              </a-form-item>
             </a-col>
+            <template v-if="advanced">
+              <a-col :md="6" :sm="24">
+                <a-form-item label="客户采退申请单号">
+                  <a-input id="salesReturn-purchaseReturnApplyNo" v-model.trim="queryParam.purchaseReturnApplyNo" allowClear placeholder="请输入客户采退申请单号"/>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="单据来源">
+                  <v-select
+                    v-model="queryParam.salesReturnBillSource"
+                    ref="salesReturnBillSource"
+                    id="salesReturn-salesReturnBillSource"
+                    code="SALES_SOURCE"
+                    placeholder="请选择单据来源"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="是否同步给客户">
+                  <v-select
+                    v-model="queryParam.syncFlag"
+                    ref="syncFlag"
+                    id="salesReturn-syncFlag"
+                    code="FLAG"
+                    placeholder="请选择是否同步给客户"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-item label="业务状态">
+                  <v-select
+                    v-model="queryParam.billStatus"
+                    ref="billStatus"
+                    id="salesReturn-billStatus"
+                    code="SALES_RETURN_BILL_STATUS"
+                    placeholder="请选择业务状态"
+                    allowClear></v-select>
+                </a-form-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="所在区域">
+                  <subarea id="salesReturn-subarea" ref="subarea" @change="subareaChange"></subarea>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="地区" prop="shippingAddrProvinceSn">
+                  <Area id="salesReturn-provinceSn" v-model="queryParam.shippingAddrProvinceSn" placeholder="请选择省"></Area>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24">
+                <a-form-model-item label="退货仓库">
+                  <warehouse ref="warehouse" v-model="queryParam.warehouseSn"></warehouse>
+                </a-form-model-item>
+              </a-col>
+              <a-col :md="6" :sm="24" v-show="isShowCustomerSearch">
+                <a-form-item label="客服">
+                  <customerService ref="customerName" v-model="queryParam.bizUserSn"></customerService>
+                </a-form-item>
+              </a-col>
+            </template>
             <a-col :md="6" :sm="24">
-              <a-form-model-item label="退货仓库">
-                <warehouse ref="warehouse" v-model="queryParam.warehouseSn"></warehouse>
-              </a-form-model-item>
+              <span class="table-page-search-submitButtons">
+                <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
+                <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
+                <a @click="advanced=!advanced" style="margin-left: 8px">
+                  {{ advanced ? '收起' : '展开' }}
+                  <a-icon :type="advanced ? 'up' : 'down'"/>
+                </a>
+              </span>
             </a-col>
-          </template>
-          <a-col :md="6" :sm="24">
-            <span class="table-page-search-submitButtons">
-              <a-button type="primary" :disabled="disabled" @click="$refs.table.refresh(true)">查询</a-button>
-              <a-button style="margin-left: 8px" :disabled="disabled" @click="resetSearchForm()">重置</a-button>
-              <a @click="advanced=!advanced" style="margin-left: 8px">
-                {{ advanced ? '收起' : '展开' }}
-                <a-icon :type="advanced ? 'up' : 'down'"/>
-              </a>
-            </span>
-          </a-col>
-        </a-row>
-      </a-form>
-    </div>
-  </a-card>
-  
-  <a-card size="small" :bordered="false" class="salesReturn-wrap">
-    <a-spin :spinning="spinning" tip="Loading...">
-      <div class="table-operator" style="flex-grow: 1;display: flex;justify-content: space-between;align-items: center;">
-       <div style="flex-grow: 1;display: flex;align-items: center;">
-         <!-- 操作按钮 -->
-         <div>
-           <a-button type="primary" v-if="$hasPermissions('B_salesReturnNew')" @click="openModal = true">新增</a-button>
-         </div>
-         <div class="tongji-bar">
-           总单数:{{ countData&&countData.totalRecord||0 }};
-           申请退货数量:{{ countData&&countData.totalInitialQty||0 }};
-           仓库实收数量:{{ countData&&countData.totalReceiveQty||0 }};
-           坏件数量:{{ countData&&countData.totalBadQty||0 }};
-           良品数量:{{ countData&&countData.totalGoodQty||0 }};
-           返库数量:{{ countData&&countData.totalBackStockQty||0 }};
-           <span v-if="$hasPermissions('M_salesReturnList_salesPrice')">
-             实际退货金额:{{ countData&&countData.totalAmount?toThousands(countData.totalAmount):0 }};
-           </span>
-         </div>
-       </div>
-       <div></div>
+          </a-row>
+        </a-form>
       </div>
-      <!-- 列表 -->
-      <s-table
-        class="sTable fixPagination"
-        ref="table"
-        :style="{ height: tableHeight+85+'px' }"
-        size="small"
-        :rowKey="(record) => record.id"
-        :columns="columns"
-        :data="loadData"
-        :scroll="{ y: tableHeight }"
-        :defaultLoadData="false"
-        bordered>
-        <!-- 单号 -->
-        <template slot="salesReturnBillNo" slot-scope="text, record">
-          <div v-if="$hasPermissions('B_salesReturnDetail')">
-            <a-badge :count="'改'" :offset="[16,-13]" v-if="record.changeFlag==1" class="badge-con-t">
-              <span class="link-bule" @click="handleDetail(record)">{{ record.salesReturnBillNo }}</span>
-            </a-badge>
-            <span v-else class="link-bule" @click="handleDetail(record)">{{ record.salesReturnBillNo }}</span>
-          </div>
-          <div v-else>{{ record.salesReturnBillNo }}</div>
-        </template>
-        <!-- 提货单 -->
-        <template slot="pickUpSalesReturnNum" slot-scope="text, record">
-          <span class="link-bule" @click="handleBillOfLadingDetail(record)">{{ record.pickUpSalesReturnNum }}</span>
-        </template>
-        <!-- 操作 -->
-        <template slot="action" slot-scope="text, record">
-          <div>
-            <a-button
-              size="small"
-              type="link"
-              class="button-warning"
-              v-if="record.billStatus == 'WAIT_AUDIT'&&$hasPermissions('B_salesReturnAudit')"
-              @click="handleEexamine(record)"
-              id="salesReturn-eexamine-btn">审核进度</a-button>
-            <a-button
-              size="small"
-              type="link"
-              class="button-warning"
-              v-if="record.salesReturnBillSource != 'SALES'&&record.billStatus == 'WAIT_SUBMIT'&&$hasPermissions('B_salseReturnSubmit')"
-              @click="beforeSubmit(record)"
-              id="salesReturn-eexamine-btn">提交</a-button>
-            <a-button
-              size="small"
-              v-if="record.billStatus == 'WAIT_SUBMIT' && $hasPermissions('B_salesReturnEdit')"
-              type="link"
-              class="button-info"
-              @click="handleEdit(record)"
-              id="salesReturn-edit-btn">{{ record.salesReturnBillSource == 'SALES' ? '编辑' : '改单' }}</a-button>
-            <a-button
-              size="small"
-              v-if="(record.billStatus == 'WAIT_SUBMIT'|| record.billStatus == 'AUDIT_REJECT') && $hasPermissions('B_salesReturnDel')"
-              type="link"
-              class="button-error"
-              @click="handleDel(record)"
-              id="salesReturn-del-btn">{{ record.salesReturnBillSource == 'SALES' ? '删除' : '取消' }}</a-button>
-            <a-button
-              size="small"
-              type="link"
-              class="button-info"
-              v-if="record.billStatus == 'AUDIT_REJECT'&& $hasPermissions('B_salesReturnAgainSubmit')"
-              @click="handleEdit(record)"
-              id="salesReturn-edit-btn">再次提交</a-button>
-            <a-button
-              size="small"
-              type="link"
-              class="button-info"
-              v-if="record.billStatus == 'WAIT_RECEIVE'&& $hasPermissions('B_newPickUp')"
-              @click="handlePickUp(record)"
-              id="salesReturn-edit-btn">申请提货</a-button>
-            <a-button
-              size="small"
-              type="link"
-              class="button-error"
-              v-if="record.billStatus == 'WAIT_RECEIVE'&&record.salesReturnBillSource=='PURCHASE'&&record.cancelFlag==1"
-              @click="handleCansel(record)"
-              id="salesReturn-cansel-btn">取消</a-button>
-            <a-button
-              size="small"
-              type="link"
-              class="button-info"
-              v-if="(record.billStatus == 'FINANCIAL_REJECT'||record.billStatus == 'WAIT_CUSTOMER_SERVICE_CONFIRM')&& $hasPermissions('B_salesReturnConfirm')"
-              @click="handleConfirm(record)"
-              id="salesReturn-edit-btn">客服确认</a-button>
+    </a-card>
+
+    <a-card size="small" :bordered="false" class="salesReturn-wrap">
+      <a-spin :spinning="spinning" tip="Loading...">
+        <div class="table-operator" style="flex-grow: 1;display: flex;justify-content: space-between;align-items: center;">
+          <div style="flex-grow: 1;display: flex;align-items: center;">
+            <!-- 操作按钮 -->
+            <div>
+              <a-button type="primary" v-if="$hasPermissions('B_salesReturnNew')" @click="openModal = true">新增</a-button>
+            </div>
+            <div class="tongji-bar">
+              总单数:{{ countData&&countData.totalRecord||0 }};
+              申请退货数量:{{ countData&&countData.totalInitialQty||0 }};
+              仓库实收数量:{{ countData&&countData.totalReceiveQty||0 }};
+              坏件数量:{{ countData&&countData.totalBadQty||0 }};
+              良品数量:{{ countData&&countData.totalGoodQty||0 }};
+              返库数量:{{ countData&&countData.totalBackStockQty||0 }};
+              <span v-if="$hasPermissions('M_salesReturnList_salesPrice')">
+                实际退货金额:{{ countData&&countData.totalAmount?toThousands(countData.totalAmount):0 }};
+              </span>
+            </div>
           </div>
-        </template>
-      </s-table>
-    </a-spin>
-    <!-- 选择客户弹框 -->
-    <choose-custom-modal :show="openModal" @ok="handleEdit" @cancel="openModal=false"></choose-custom-modal>
-    <!-- 审核进度 -->
-    <verifyModal v-drag :openModal="visibleAudit" :itemSn="auditInfo&&auditInfo.salesReturnBillSn" @close="visibleAudit=false"></verifyModal>
-    <!-- 选择审核人员 -->
-    <chooseDepartUserModal v-drag :openModal="openDepartUserModal" @close="openDepartUserModal=false" @submit="handleSubmit"></chooseDepartUserModal>
-  </a-card>
+          <div></div>
+        </div>
+        <!-- 列表 -->
+        <s-table
+          class="sTable fixPagination"
+          ref="table"
+          :style="{ height: tableHeight+85+'px' }"
+          size="small"
+          :rowKey="(record) => record.id"
+          :columns="columns"
+          :data="loadData"
+          :scroll="{ y: tableHeight }"
+          :defaultLoadData="false"
+          bordered>
+          <!-- 单号 -->
+          <template slot="salesReturnBillNo" slot-scope="text, record">
+            <div v-if="$hasPermissions('B_salesReturnDetail')">
+              <a-badge :count="'改'" :offset="[16,-13]" v-if="record.changeFlag==1" class="badge-con-t">
+                <span class="link-bule" @click="handleDetail(record)">{{ record.salesReturnBillNo }}</span>
+              </a-badge>
+              <span v-else class="link-bule" @click="handleDetail(record)">{{ record.salesReturnBillNo }}</span>
+            </div>
+            <div v-else>{{ record.salesReturnBillNo }}</div>
+          </template>
+          <!-- 提货单 -->
+          <template slot="pickUpSalesReturnNum" slot-scope="text, record">
+            <span class="link-bule" @click="handleBillOfLadingDetail(record)">{{ record.pickUpSalesReturnNum }}</span>
+          </template>
+          <!-- 操作 -->
+          <template slot="action" slot-scope="text, record">
+            <div>
+              <a-button
+                size="small"
+                type="link"
+                class="button-warning"
+                v-if="record.billStatus == 'WAIT_AUDIT'&&$hasPermissions('B_salesReturnAudit')"
+                @click="handleEexamine(record)"
+                id="salesReturn-eexamine-btn">审核进度</a-button>
+              <a-button
+                size="small"
+                type="link"
+                class="button-warning"
+                v-if="record.salesReturnBillSource != 'SALES'&&record.billStatus == 'WAIT_SUBMIT'&&$hasPermissions('B_salseReturnSubmit')"
+                @click="beforeSubmit(record)"
+                id="salesReturn-eexamine-btn">提交</a-button>
+              <a-button
+                size="small"
+                v-if="record.billStatus == 'WAIT_SUBMIT' && $hasPermissions('B_salesReturnEdit')"
+                type="link"
+                class="button-info"
+                @click="handleEdit(record)"
+                id="salesReturn-edit-btn">{{ record.salesReturnBillSource == 'SALES' ? '编辑' : '改单' }}</a-button>
+              <a-button
+                size="small"
+                v-if="(record.billStatus == 'WAIT_SUBMIT'|| record.billStatus == 'AUDIT_REJECT') && $hasPermissions('B_salesReturnDel')"
+                type="link"
+                class="button-error"
+                @click="handleDel(record)"
+                id="salesReturn-del-btn">{{ record.salesReturnBillSource == 'SALES' ? '删除' : '取消' }}</a-button>
+              <a-button
+                size="small"
+                type="link"
+                class="button-info"
+                v-if="record.billStatus == 'AUDIT_REJECT'&& $hasPermissions('B_salesReturnAgainSubmit')"
+                @click="handleEdit(record)"
+                id="salesReturn-edit-btn">再次提交</a-button>
+              <a-button
+                size="small"
+                type="link"
+                class="button-info"
+                v-if="record.billStatus == 'WAIT_RECEIVE'&& $hasPermissions('B_newPickUp')"
+                @click="handlePickUp(record)"
+                id="salesReturn-edit-btn">申请提货</a-button>
+              <a-button
+                size="small"
+                type="link"
+                class="button-error"
+                v-if="record.billStatus == 'WAIT_RECEIVE'&&record.salesReturnBillSource=='PURCHASE'&&record.cancelFlag==1"
+                @click="handleCansel(record)"
+                id="salesReturn-cansel-btn">取消</a-button>
+              <a-button
+                size="small"
+                type="link"
+                class="button-info"
+                v-if="(record.billStatus == 'FINANCIAL_REJECT'||record.billStatus == 'WAIT_CUSTOMER_SERVICE_CONFIRM')&& $hasPermissions('B_salesReturnConfirm')"
+                @click="handleConfirm(record)"
+                id="salesReturn-edit-btn">客服确认</a-button>
+            </div>
+          </template>
+        </s-table>
+      </a-spin>
+      <!-- 选择客户弹框 -->
+      <choose-custom-modal :show="openModal" @ok="handleEdit" @cancel="openModal=false"></choose-custom-modal>
+      <!-- 审核进度 -->
+      <verifyModal v-drag :openModal="visibleAudit" :itemSn="auditInfo&&auditInfo.salesReturnBillSn" @close="visibleAudit=false"></verifyModal>
+      <!-- 选择审核人员 -->
+      <chooseDepartUserModal v-drag :openModal="openDepartUserModal" @close="openDepartUserModal=false" @submit="handleSubmit"></chooseDepartUserModal>
+    </a-card>
   </div>
 </template>
 
@@ -248,10 +253,10 @@ import verifyModal from './verifyModal.vue'
 import chooseDepartUserModal from './chooseDepartUserModal.vue'
 import rangeDate from '@/views/common/rangeDate.vue'
 import warehouse from '@/views/common/chooseWarehouse.js'
+import customerService from '@/views/common/customerService'
 import { salesReturnList, salesReturnQueryCount, salesReturnDel, salesReturnCancelBill, salesReturnSubmit, submitVerify } from '@/api/salesReturn'
 import moment from 'moment'
 import getDate from '@/libs/getDate.js'
-import { forEach } from 'core-js/fn/array'
 export default {
   name: 'SalesReturnList',
   mixins: [commonMixin],
@@ -265,7 +270,8 @@ export default {
     chooseDepartUserModal,
     Area,
     subarea,
-    warehouse
+    warehouse,
+    customerService
   },
   data () {
     return {
@@ -299,8 +305,8 @@ export default {
           subareaAreaSn: undefined
         },
         shippingAddrProvinceSn: undefined,
-        salesReturnBillSource: undefined
-
+        salesReturnBillSource: undefined,
+        bizUserSn: undefined
       },
       // 加载数据方法 必须为 Promise 对象
       loadData: parameter => {
@@ -507,6 +513,7 @@ export default {
       this.queryParam.warehouseSn = undefined
       this.queryParam.goodFlag = undefined
       this.queryParam.salesReturnType = undefined
+      this.queryParam.bizUserSn = undefined
       if (this.advanced) {
         this.$refs.subarea.clearData()
       }