|
@@ -1,530 +1,28 @@
|
|
|
<template>
|
|
|
- <div class="app-container">
|
|
|
- <div v-show="!isShowDetail && !isShowForm && !isShowExamine && !isShowReturn">
|
|
|
- <!-- 筛选条件 -->
|
|
|
- <div class="screen-container">
|
|
|
- <Collapse :screen-form="screenForm">
|
|
|
- <template #right_btn>
|
|
|
- <el-button size="mini" @click="resetScreenForm">清空</el-button>
|
|
|
- <el-button size="mini" type="primary" @click="submitScreenForm">搜索</el-button>
|
|
|
- </template>
|
|
|
- <template #left_btn>
|
|
|
- <el-radio-group v-model="screenForm.status" size="mini" @change="getList()">
|
|
|
- <el-radio-button label="">全部</el-radio-button>
|
|
|
- <el-radio-button v-for="(item, index) in statusList" :key="index" :label="item.value">{{
|
|
|
- item.label
|
|
|
- }}</el-radio-button>
|
|
|
- </el-radio-group>
|
|
|
- </template>
|
|
|
- <template #search>
|
|
|
- <el-form ref="screenForm" :model="screenForm" label-width="100px" size="mini" label-position="left">
|
|
|
- <el-row :gutter="20">
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="订单号" prop="orderNum">
|
|
|
- <el-input v-model="screenForm.orderNum" placeholder="请输入订单号" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="销售政策编号" prop="policyCode">
|
|
|
- <el-input v-model="screenForm.policyCode" placeholder="请输入销售政策编号" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="销售政策说明" prop="policyRemark">
|
|
|
- <el-input v-model="screenForm.policyRemark" placeholder="请输入销售政策说明" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="经销商" prop="jxsName">
|
|
|
- <el-input v-model="screenForm.jxsName" placeholder="请输入经销商" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="订单日期" prop="date">
|
|
|
- <!-- <el-date-picker
|
|
|
- v-model="screenForm.date"
|
|
|
- class="dateStyle"
|
|
|
- type="datetime"
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
- placeholder="选择订单日期"
|
|
|
- >
|
|
|
- </el-date-picker> -->
|
|
|
- <el-date-picker
|
|
|
- v-model="screenForm.date"
|
|
|
- type="datetimerange"
|
|
|
- :default-time="['00:00:00', '23:59:59']"
|
|
|
- range-separator="至"
|
|
|
- style="width: 100%"
|
|
|
- value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
- start-placeholder="开始日期"
|
|
|
- end-placeholder="结束日期"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="制表人" prop="zbMan">
|
|
|
- <el-input v-model="screenForm.zbMan" placeholder="请输入制表人" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="审核人" prop="shMan">
|
|
|
- <el-input v-model="screenForm.shMan" placeholder="请输入审核人" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="表头业务员" prop="k3ServiceId">
|
|
|
- <el-select
|
|
|
- v-model="screenForm.k3ServiceId"
|
|
|
- placeholder="选择表头业务员"
|
|
|
- size="small"
|
|
|
- clearable
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in salesmanList"
|
|
|
- :key="item.adminUserId"
|
|
|
- :label="item.nickName"
|
|
|
- :value="item.adminUserId"
|
|
|
- >
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="表体业务员" prop="serviceId">
|
|
|
- <el-select
|
|
|
- v-model="screenForm.serviceId"
|
|
|
- placeholder="选择表体业务员"
|
|
|
- clearable
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in salesmanList"
|
|
|
- :key="item.adminUserId"
|
|
|
- :label="item.nickName"
|
|
|
- :value="item.adminUserId"
|
|
|
- >
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="是否直调" prop="isDirectTransfer">
|
|
|
- <el-select v-model="screenForm.isDirectTransfer" placeholder="选择是否直" style="width: 100%">
|
|
|
- <el-option :value="null" label="默认"></el-option>
|
|
|
- <el-option v-for="item in transfer" :key="item.value" :label="item.label" :value="item.value">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="规格型号" prop="specification">
|
|
|
- <el-input v-model="screenForm.specification" placeholder="请输入规格型号" />
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="产品类别">
|
|
|
- <el-select
|
|
|
- v-model="screenForm.categoryNumber"
|
|
|
- style="width: 100%"
|
|
|
- placeholder="选择产品类别"
|
|
|
- filterable
|
|
|
- clearable
|
|
|
- >
|
|
|
- <el-option
|
|
|
- v-for="item in categoryList"
|
|
|
- :key="item.name"
|
|
|
- :label="item.name"
|
|
|
- :value="item.number"
|
|
|
- />
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="钱包" prop="customerWalletId">
|
|
|
- <el-select
|
|
|
- v-model="screenForm.customerWalletId"
|
|
|
- placeholder="选择钱包"
|
|
|
- clearable
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option v-for="item in NoRebateWalletList" :key="item.id" :label="item.name" :value="item.id">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- <el-col :xs="24" :sm="12" :lg="6">
|
|
|
- <el-form-item label="销售类型" prop="saleTypeId">
|
|
|
- <el-select
|
|
|
- v-model="screenForm.saleTypeId"
|
|
|
- placeholder="选择销售类型"
|
|
|
- clearable
|
|
|
- filterable
|
|
|
- style="width: 100%"
|
|
|
- >
|
|
|
- <el-option v-for="item in typeList" :key="item.id" :label="item.saleName" :value="item.id">
|
|
|
- </el-option>
|
|
|
- </el-select>
|
|
|
- </el-form-item>
|
|
|
- </el-col>
|
|
|
- </el-row>
|
|
|
- </el-form>
|
|
|
- </template>
|
|
|
- </Collapse>
|
|
|
- </div>
|
|
|
- <div class="mymain-container">
|
|
|
- <div class="btn-group clearfix">
|
|
|
- <div class="fl">
|
|
|
- <el-button
|
|
|
- v-if="$checkBtnRole('add', $route.meta.roles)"
|
|
|
- size="mini"
|
|
|
- type="primary"
|
|
|
- icon="el-icon-plus"
|
|
|
- @click="toForm()"
|
|
|
- >新增</el-button
|
|
|
- >
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="warning"
|
|
|
- icon="el-icon-finished"
|
|
|
- @click="batchExamine"
|
|
|
- v-if="$checkBtnRole('examine', $route.meta.roles)"
|
|
|
- >批量审批</el-button
|
|
|
- >
|
|
|
- </div>
|
|
|
- <div class="fr">
|
|
|
- <ExportButton :ex-url="'retail/export'" :ex-params="exParams" />
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="table">
|
|
|
- <el-table
|
|
|
- v-loading="listLoading"
|
|
|
- :data="dataList"
|
|
|
- element-loading-text="Loading"
|
|
|
- border
|
|
|
- fit
|
|
|
- show-summary
|
|
|
- :row-style="rowClass"
|
|
|
- :summary-method="$getSummaries"
|
|
|
- @select-all="handleSelectionAllChange"
|
|
|
- @selection-change="handleSelectionAllChange"
|
|
|
- >
|
|
|
- <!-- <el-table-column
|
|
|
- align="center"
|
|
|
- label="提货进度"
|
|
|
- prop="thjd"
|
|
|
- min-width="180"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-progress :percentage="scope.row.thjd || 0"></el-progress>
|
|
|
- </template>
|
|
|
- </el-table-column> -->
|
|
|
- <el-table-column align="center" type="selection" width="55" fixed="left" />
|
|
|
- <el-table-column align="left" label="订单号" prop="id" min-width="180" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="订单日期" prop="theTime" min-width="150" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <div>
|
|
|
- <span>{{ scope.row.theTime | dateToDayFilter }}</span>
|
|
|
- <el-button
|
|
|
- v-if="$checkBtnRole('date', $route.meta.roles)"
|
|
|
- type="text"
|
|
|
- icon="el-icon-edit"
|
|
|
- style="padding: 0; margin-left: 6px"
|
|
|
- @click="editDate(scope.row)"
|
|
|
- />
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column align="left" label="销售类型" prop="saleTypeName" min-width="200" show-overflow-tooltip />
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="销售政策编号"
|
|
|
- prop="policyCode"
|
|
|
- min-width="200"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="销售政策名称"
|
|
|
- prop="policyTitle"
|
|
|
- min-width="160"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="销售政策说明"
|
|
|
- prop="policyRemark"
|
|
|
- min-width="160"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column align="left" label="经销商" prop="customerName" min-width="200" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.customerName" />
|
|
|
- <span>{{ scope.row.customerName }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column align="left" label="物料编码" prop="materialCode" min-width="160" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.materialCode" />
|
|
|
- <span>{{ scope.row.materialCode }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="厂产品编码"
|
|
|
- prop="materialOldNumber"
|
|
|
- min-width="160"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.materialOldNumber" />
|
|
|
- <span>{{ scope.row.materialOldNumber }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column align="left" label="产品名称" prop="materialName" min-width="160" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.materialName" />
|
|
|
- <span>{{ scope.row.materialName }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column align="left" label="规格型号" prop="specification" min-width="300" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.specification" />
|
|
|
- <span>{{ scope.row.specification }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="产品类别"
|
|
|
- prop="k3CategoryName"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column align="left" label="计量单位" prop="unit" min-width="100" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="文件编号" prop="fileNo" min-width="100" show-overflow-tooltip />
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="是否直调"
|
|
|
- prop="isDirectTransfer"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.isDirectTransfer ? '是' : '否' }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column align="right" label="总数量" prop="qty" min-width="100" show-overflow-tooltip />
|
|
|
-
|
|
|
- <el-table-column align="right" label="单价" prop="price" min-width="100" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.price | numToFixed }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="right"
|
|
|
- label="实付金额"
|
|
|
- sortable
|
|
|
- prop="payAmount"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.payAmount | numToFixed }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="返利类型"
|
|
|
- prop="customerWalletName2"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-tag v-if="scope.row.customerWalletName2" type="success" size="small">
|
|
|
- {{ scope.row.customerWalletName2 }}
|
|
|
- </el-tag>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column
|
|
|
- align="right"
|
|
|
- label="返利金额"
|
|
|
- sortable
|
|
|
- prop="payRebateAmount"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- <div>{{ scope.row.payRebateAmount | numToFixed }}</div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
-
|
|
|
- <el-table-column
|
|
|
- align="right"
|
|
|
- label="格力折扣"
|
|
|
- sortable
|
|
|
- prop="totalDiscAmount"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- >
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.totalDiscAmount | numToFixed }}
|
|
|
- </template></el-table-column
|
|
|
- >
|
|
|
- <el-table-column
|
|
|
- align="right"
|
|
|
- label="直调数量"
|
|
|
- prop="directTransferQty"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column align="right" label="出库数量" prop="hasSendQty" min-width="100" show-overflow-tooltip />
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="表体备注"
|
|
|
- prop="itemRemark"
|
|
|
- min-width="160"
|
|
|
- show-overflow-tooltip
|
|
|
- ></el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="表头备注"
|
|
|
- prop="remark"
|
|
|
- min-width="160"
|
|
|
- show-overflow-tooltip
|
|
|
- ></el-table-column>
|
|
|
- <el-table-column
|
|
|
- align="left"
|
|
|
- label="表头业务员"
|
|
|
- prop="k3ServiceName"
|
|
|
- min-width="100"
|
|
|
- show-overflow-tooltip
|
|
|
- />
|
|
|
- <el-table-column align="left" label="表体业务员" prop="serviceName" min-width="100" show-overflow-tooltip />
|
|
|
-
|
|
|
- <el-table-column align="left" label="制表人" prop="createName" min-width="100" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="制表日期" prop="createTime" min-width="200" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="审核人" prop="examineName" min-width="200" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="审核日期" prop="examineTime" min-width="160" show-overflow-tooltip />
|
|
|
- <el-table-column align="left" label="审核状态" prop="examineStatus" min-width="100" show-overflow-tooltip>
|
|
|
- <template slot-scope="scope">
|
|
|
- {{ scope.row.examineStatus | statusFilter }}
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column align="center" label="操作" width="220" fixed="right">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-popconfirm
|
|
|
- v-if="scope.row.examineStatus === 'SAVE'"
|
|
|
- style="margin-left: 10px"
|
|
|
- title="确定提审?"
|
|
|
- @onConfirm="handleSubmit(scope.row.id)"
|
|
|
- >
|
|
|
- <el-button slot="reference" type="text">提审</el-button>
|
|
|
- </el-popconfirm>
|
|
|
- <el-button
|
|
|
- style="margin-left: 10px"
|
|
|
- v-if="scope.row.examineStatus == 'WAIT' && $checkBtnRole('examine', $route.meta.roles)"
|
|
|
- type="text"
|
|
|
- @click="toExamine(scope.row)"
|
|
|
- >审核</el-button
|
|
|
- >
|
|
|
- <el-popconfirm
|
|
|
- v-if="$checkBtnRole('del', $route.meta.roles) && scope.row.examineStatus === 'SAVE'"
|
|
|
- style="margin-left: 10px"
|
|
|
- title="确定删除吗?"
|
|
|
- @onConfirm="handleDelete(scope.row.id)"
|
|
|
- >
|
|
|
- <el-button slot="reference" type="text">删除</el-button>
|
|
|
- </el-popconfirm>
|
|
|
- <el-button
|
|
|
- style="margin-left: 10px"
|
|
|
- v-if="scope.row.examineStatus === 'SAVE' && $checkBtnRole('edit', $route.meta.roles)"
|
|
|
- type="text"
|
|
|
- @click="toForm(scope.row)"
|
|
|
- >编辑</el-button
|
|
|
- >
|
|
|
- <el-popconfirm
|
|
|
- style="margin-left: 10px"
|
|
|
- v-if="$checkBtnRole('examine', $route.meta.roles) && scope.row.examineStatus === 'OK'"
|
|
|
- title="确定弃审吗?"
|
|
|
- @onConfirm="handleAbandon(scope.row.id)"
|
|
|
- >
|
|
|
- <el-button slot="reference" type="text">弃审</el-button>
|
|
|
- </el-popconfirm>
|
|
|
- <el-popconfirm
|
|
|
- v-if="scope.row.examineStatus == 'WAIT' && $checkBtnRole('apply', $route.meta.roles)"
|
|
|
- style="margin-left: 10px"
|
|
|
- title="确定撤回?"
|
|
|
- @onConfirm="handleCancel(scope.row.id)"
|
|
|
- >
|
|
|
- <el-button slot="reference" type="text">撤回</el-button>
|
|
|
- </el-popconfirm>
|
|
|
- <el-button style="margin-left: 10px" type="text" @click="toDetail(scope.row)">详情</el-button>
|
|
|
-
|
|
|
- <el-button
|
|
|
- style="margin-left: 10px"
|
|
|
- v-if="scope.row.examineStatus === 'OK' && $checkBtnRole('examine', $route.meta.roles)"
|
|
|
- type="text"
|
|
|
- @click="toReturn(scope.row)"
|
|
|
- >退订</el-button
|
|
|
- >
|
|
|
- <el-popconfirm
|
|
|
- v-if="scope.row.examineStatus === 'SAVE' && $checkBtnRole('examine', $route.meta.roles)"
|
|
|
- style="margin-left: 10px"
|
|
|
- title="确定关闭吗?"
|
|
|
- @onConfirm="handleClose(scope.row.id)"
|
|
|
- >
|
|
|
- <el-button slot="reference" type="text">关闭</el-button>
|
|
|
- </el-popconfirm>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <div class="pagination clearfix">
|
|
|
- <div class="fr">
|
|
|
- <el-pagination
|
|
|
- :current-page="currentPage"
|
|
|
- :page-sizes="[10, 20, 30, 50, 500]"
|
|
|
- :page-size="10"
|
|
|
- layout="total, sizes, prev, pager, next, jumper"
|
|
|
- :total="listTotal"
|
|
|
- @size-change="handleSizeChange"
|
|
|
- @current-change="handleCurrentChange"
|
|
|
- />
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- </div>
|
|
|
- <RetailDetail v-if="isShowDetail" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
- <RetailForm v-if="isShowForm" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
- <RetailExamine v-if="isShowExamine" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
- <RetailReturn v-if="isShowReturn" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
- <EditDateDialog :is-show.sync="isShowEditDateDialog" :date-form.sync="dateForm" />
|
|
|
- <ExamineDialog :isShow.sync="isShowExamineDialog" :examineForm.sync="examineForm" />
|
|
|
- </div>
|
|
|
- <!-- <template-page
|
|
|
+ <template-page
|
|
|
ref="pageRef"
|
|
|
:getList="getList"
|
|
|
+ :exportList="exportList"
|
|
|
:operation="operation()"
|
|
|
:optionsEvensGroup="optionsEvensGroup"
|
|
|
- :exportList="exportList"
|
|
|
:columnParsing="columnParsing"
|
|
|
- :tableAttributes="tableAttributes"
|
|
|
- :tableEvents="tableEvents"
|
|
|
>
|
|
|
- </template-page> -->
|
|
|
+ <Popu v-if="isShowDetail || isShowForm || isShowExamine || isShowReturn">
|
|
|
+ <RetailDetail v-if="isShowDetail" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
+ <RetailForm v-if="isShowForm" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
+ <RetailExamine v-if="isShowExamine" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
+ <RetailReturn v-if="isShowReturn" :list-item="queryItem" @backListFormDetail="backList" />
|
|
|
+ <EditDateDialog :is-show.sync="isShowEditDateDialog" :date-form.sync="dateForm" />
|
|
|
+ <ExamineDialog :isShow.sync="isShowExamineDialog" :examineForm.sync="examineForm" />
|
|
|
+ </Popu>
|
|
|
+ </template-page>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import TemplatePage from '@/components/template/template-page-1.vue'
|
|
|
-import Popu from '@/components/template/popu.vue'
|
|
|
+import import_mixin from '@/components/template/import_mixin.js'
|
|
|
import add_callback_mixin from '@/components/template/add_callback_mixin.js'
|
|
|
+import Popu from '@/components/template/popu.vue'
|
|
|
import {
|
|
|
abandonData,
|
|
|
closeData,
|
|
@@ -533,7 +31,9 @@ import {
|
|
|
examineData,
|
|
|
getList,
|
|
|
submitCancel,
|
|
|
- submitData
|
|
|
+ submitData,
|
|
|
+ getRetailListV2,
|
|
|
+ exportRetailListV2
|
|
|
} from '@/api/supply/policy'
|
|
|
import RetailDetail from './components/retail_detail'
|
|
|
import RetailForm from './components/retail_form'
|
|
@@ -544,48 +44,57 @@ import ExamineDialog from '@/components/Common/examine-dialog'
|
|
|
import { getSalesmanList, getCategoryList, getTypeList } from '@/api/common'
|
|
|
import { getNoRebateWalletList } from '@/api/policy_list'
|
|
|
|
|
|
-let that
|
|
|
export default {
|
|
|
- mixins: [add_callback_mixin],
|
|
|
components: {
|
|
|
+ TemplatePage,
|
|
|
+ Popu,
|
|
|
RetailDetail,
|
|
|
RetailForm,
|
|
|
RetailExamine,
|
|
|
RetailReturn,
|
|
|
EditDateDialog,
|
|
|
- ExamineDialog,
|
|
|
- TemplatePage,
|
|
|
- Popu
|
|
|
- },
|
|
|
- filters: {
|
|
|
- statusFilter(val) {
|
|
|
- const obj = that.statusList.find(o => o.value == val)
|
|
|
- return obj ? obj.label : ''
|
|
|
- }
|
|
|
+ ExamineDialog
|
|
|
},
|
|
|
+ mixins: [import_mixin, add_callback_mixin],
|
|
|
data() {
|
|
|
return {
|
|
|
+ visible: false,
|
|
|
// 事件组合
|
|
|
optionsEvensGroup: [
|
|
|
[
|
|
|
[
|
|
|
{
|
|
|
name: '新增',
|
|
|
- click: this.addOn(() => {})
|
|
|
+ click: this.addOn(() => {
|
|
|
+ this.toForm()
|
|
|
+ }),
|
|
|
+ isRole: this.$checkBtnRole('add', this.$route.meta.roles)
|
|
|
}
|
|
|
]
|
|
|
],
|
|
|
-
|
|
|
[
|
|
|
[
|
|
|
{
|
|
|
name: '批量审批',
|
|
|
- click: async () => {}
|
|
|
+ click: this.addOn(() => {
|
|
|
+ this.batchExamine()
|
|
|
+ }),
|
|
|
+ isRole: this.$checkBtnRole('examine', this.$route.meta.roles)
|
|
|
}
|
|
|
]
|
|
|
]
|
|
|
],
|
|
|
+ // 表格属性
|
|
|
+ tableAttributes: {
|
|
|
+ // 启用勾选列
|
|
|
+ selectColumn: true
|
|
|
+ }, // 关闭新增弹窗
|
|
|
|
|
|
+ // 表格事件
|
|
|
+ tableEvents: {
|
|
|
+ 'selection-change': this.selectionChange
|
|
|
+ },
|
|
|
+ recordSelected: [],
|
|
|
currentPage: 1, // 当前页码
|
|
|
pageSize: 10, // 每页数量
|
|
|
listTotal: 0, // 列表总数
|
|
@@ -631,7 +140,7 @@ export default {
|
|
|
},
|
|
|
salesmanList: [],
|
|
|
selectRow: [],
|
|
|
- selectData: [],
|
|
|
+ recordSelected: [],
|
|
|
isShowExamineDialog: false,
|
|
|
examineForm: {
|
|
|
status: 'OK',
|
|
@@ -643,31 +152,8 @@ export default {
|
|
|
typeList: []
|
|
|
}
|
|
|
},
|
|
|
- computed: {
|
|
|
- exParams() {
|
|
|
- return {
|
|
|
- examineStatus: this.screenForm.status,
|
|
|
- id: this.screenForm.orderNum,
|
|
|
- policyCode: this.screenForm.policyCode,
|
|
|
- policyRemark: this.screenForm.policyRemark,
|
|
|
- customer: this.screenForm.jxsName,
|
|
|
- startTime: this.screenForm.date ? this.screenForm.date[0] : '',
|
|
|
- endTime: this.screenForm.date ? this.screenForm.date[1] : '',
|
|
|
- createBy: this.screenForm.zbMan,
|
|
|
- status: true,
|
|
|
- examineBy: this.screenForm.shMan,
|
|
|
- k3ServiceId: this.screenForm.k3ServiceId,
|
|
|
- serviceId: this.screenForm.serviceId,
|
|
|
- isDirectTransfer: this.screenForm.isDirectTransfer,
|
|
|
- specification: this.screenForm.specification,
|
|
|
- k3CategoryNumber: this.screenForm.categoryNumber,
|
|
|
- type: 2 // 1:普通零售单,2:政策零售单
|
|
|
- }
|
|
|
- }
|
|
|
- },
|
|
|
-
|
|
|
watch: {
|
|
|
- selectData(data) {
|
|
|
+ recordSelected(data) {
|
|
|
// 监听选中状态
|
|
|
this.selectRow = []
|
|
|
if (data.length > 0) {
|
|
@@ -677,22 +163,14 @@ export default {
|
|
|
}
|
|
|
}
|
|
|
},
|
|
|
-
|
|
|
- beforeCreate() {
|
|
|
- that = this
|
|
|
- },
|
|
|
-
|
|
|
- created() {
|
|
|
- this.getList()
|
|
|
- this.getSalesmanList()
|
|
|
- this.getCategoryList()
|
|
|
- },
|
|
|
-
|
|
|
methods: {
|
|
|
// 列表请求函数
|
|
|
- // getList: levelList,
|
|
|
+ getList(...p) {
|
|
|
+ this.recordSelected = []
|
|
|
+ return getRetailListV2(...p)
|
|
|
+ },
|
|
|
// 列表导出函数
|
|
|
- // exportList: exportLevelList,
|
|
|
+ exportList: exportRetailListV2,
|
|
|
// 表格列解析渲染数据更改
|
|
|
columnParsing(item, defaultData) {
|
|
|
return defaultData
|
|
@@ -705,9 +183,72 @@ export default {
|
|
|
return (h, { row, index, column }) => {
|
|
|
return (
|
|
|
<div class="operation-btns">
|
|
|
- <el-button size="mini" type="text" onClick={async () => {}}>
|
|
|
+ {row.examineStatus === 'SAVE' ? (
|
|
|
+ <el-popconfirm style="margin-left: 10px" title="确定提审?" onOnConfirm={() => this.handleSubmit(row.id)}>
|
|
|
+ <el-button slot="reference" type="text">
|
|
|
+ 提审
|
|
|
+ </el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ ) : null}
|
|
|
+ {row.examineStatus == 'WAIT' && this.$checkBtnRole('examine', this.$route.meta.roles) ? (
|
|
|
+ <el-button style="margin-left: 10px" type="text" onClick={() => this.toExamine(row)}>
|
|
|
+ 审核
|
|
|
+ </el-button>
|
|
|
+ ) : null}
|
|
|
+ {this.$checkBtnRole('del', this.$route.meta.roles) && row.examineStatus === 'SAVE' ? (
|
|
|
+ <el-popconfirm
|
|
|
+ style="margin-left: 10px"
|
|
|
+ title="确定删除吗?"
|
|
|
+ onOnConfirm={() => this.handleDelete(row.id)}
|
|
|
+ >
|
|
|
+ <el-button slot="reference" type="text">
|
|
|
+ 删除
|
|
|
+ </el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ ) : null}
|
|
|
+ {row.examineStatus === 'SAVE' && this.$checkBtnRole('edit', this.$route.meta.roles) ? (
|
|
|
+ <el-button style="margin-left: 10px" type="text" onClick="toForm(row)">
|
|
|
+ 编辑
|
|
|
+ </el-button>
|
|
|
+ ) : null}
|
|
|
+ {this.$checkBtnRole('examine', this.$route.meta.roles) && row.examineStatus === 'OK' ? (
|
|
|
+ <el-popconfirm
|
|
|
+ style="margin-left: 10px"
|
|
|
+ title="确定弃审吗?"
|
|
|
+ onOnConfirm={() => this.handleAbandon(row.id)}
|
|
|
+ >
|
|
|
+ <el-button slot="reference" type="text">
|
|
|
+ 弃审
|
|
|
+ </el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ ) : null}
|
|
|
+ {row.examineStatus == 'WAIT' && this.$checkBtnRole('apply', this.$route.meta.roles) ? (
|
|
|
+ <el-popconfirm style="margin-left: 10px" title="确定撤回?" onOnConfirm={() => this.handleCancel(row.id)}>
|
|
|
+ <el-button slot="reference" type="text">
|
|
|
+ 撤回
|
|
|
+ </el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ ) : null}
|
|
|
+ <el-button style="margin-left: 10px" type="text" onClick={() => this.toDetail(row)}>
|
|
|
详情
|
|
|
</el-button>
|
|
|
+
|
|
|
+ {row.examineStatus === 'OK' && this.$checkBtnRole('examine', this.$route.meta.roles) ? (
|
|
|
+ <el-button style="margin-left: 10px" type="text" onClick={() => this.toReturn(row)}>
|
|
|
+ 退订
|
|
|
+ </el-button>
|
|
|
+ ) : null}
|
|
|
+ {row.examineStatus === 'SAVE' && this.$checkBtnRole('examine', this.$route.meta.roles) ? (
|
|
|
+ <el-popconfirm
|
|
|
+ style="margin-left: 10px"
|
|
|
+ title="确定关闭吗?"
|
|
|
+ onOnConfirm={() => this.handleClose(row.id)}
|
|
|
+ >
|
|
|
+ <el-button slot="reference" type="text">
|
|
|
+ 关闭
|
|
|
+ </el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ ) : null}
|
|
|
</div>
|
|
|
)
|
|
|
}
|
|
@@ -736,7 +277,7 @@ export default {
|
|
|
})
|
|
|
},
|
|
|
handleSelectionAllChange(e) {
|
|
|
- this.selectData = e
|
|
|
+ this.recordSelected = e
|
|
|
if (e) {
|
|
|
this.selections = e
|
|
|
} else {
|
|
@@ -752,7 +293,7 @@ export default {
|
|
|
|
|
|
// 打开 批量审批
|
|
|
batchExamine() {
|
|
|
- if (this.selectData.length) {
|
|
|
+ if (this.recordSelected.length) {
|
|
|
this.isShowExamineDialog = true
|
|
|
return
|
|
|
}
|
|
@@ -760,7 +301,7 @@ export default {
|
|
|
},
|
|
|
// 提交 批量审批
|
|
|
submitExamineForm() {
|
|
|
- let ids = this.selectData.map(item => {
|
|
|
+ let ids = this.recordSelected.map(item => {
|
|
|
return item.id
|
|
|
})
|
|
|
ids = [...new Set(ids)]
|
|
@@ -772,7 +313,7 @@ export default {
|
|
|
}).then(res => {
|
|
|
this.isShowExamineDialog = false
|
|
|
this.$successMsg('修改成功')
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
// 查询按钮权限
|
|
@@ -786,69 +327,34 @@ export default {
|
|
|
handleDelete(id) {
|
|
|
deleteList({ id }).then(res => {
|
|
|
this.$successMsg('删除成功')
|
|
|
- this.getList()
|
|
|
- })
|
|
|
- },
|
|
|
- // 查询列表
|
|
|
- getList() {
|
|
|
- this.listLoading = true
|
|
|
- const params = {
|
|
|
- pageNum: this.currentPage,
|
|
|
- pageSize: this.pageSize,
|
|
|
- examineStatus: this.screenForm.status,
|
|
|
- id: this.screenForm.orderNum,
|
|
|
- policyCode: this.screenForm.policyCode,
|
|
|
- policyRemark: this.screenForm.policyRemark,
|
|
|
- customer: this.screenForm.jxsName,
|
|
|
- startTime: this.screenForm.date ? this.screenForm.date[0] : '',
|
|
|
- endTime: this.screenForm.date ? this.screenForm.date[1] : '',
|
|
|
- createBy: this.screenForm.zbMan,
|
|
|
- status: true,
|
|
|
- examineBy: this.screenForm.shMan,
|
|
|
- k3ServiceId: this.screenForm.k3ServiceId,
|
|
|
- serviceId: this.screenForm.serviceId,
|
|
|
- isDirectTransfer: this.screenForm.isDirectTransfer,
|
|
|
- specification: this.screenForm.specification,
|
|
|
- k3CategoryNumber: this.screenForm.categoryNumber,
|
|
|
- saleTypeId: this.screenForm.saleTypeId,
|
|
|
- customerWalletId: this.screenForm.customerWalletId,
|
|
|
- type: 2 // 1:普通零售单,2:政策零售单
|
|
|
- }
|
|
|
- getList(params).then(res => {
|
|
|
- res.data.records.forEach(item => {
|
|
|
- item.sums1 = ['qty', 'directTransferQty', 'hasSendQty', 'refundableQty', 'payRebateAmount']
|
|
|
- item.sums2 = ['price', 'payAmount', 'rebateAmount', 'payRebateAmount', 'totalDiscAmount']
|
|
|
- })
|
|
|
- this.dataList = res.data.records
|
|
|
- this.listTotal = res.data.total
|
|
|
- this.listLoading = false
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
|
|
|
// 提交筛选表单
|
|
|
submitScreenForm() {
|
|
|
this.currentPage = 1
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
},
|
|
|
|
|
|
// 重置筛选表单
|
|
|
resetScreenForm() {
|
|
|
this.$refs.screenForm.resetFields()
|
|
|
this.currentPage = 1
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
},
|
|
|
|
|
|
// 更改每页数量
|
|
|
handleSizeChange(val) {
|
|
|
this.pageSize = val
|
|
|
this.currentPage = 1
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
},
|
|
|
|
|
|
// 更改当前页
|
|
|
handleCurrentChange(val) {
|
|
|
this.currentPage = val
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
},
|
|
|
|
|
|
// 进入表单
|
|
@@ -879,22 +385,26 @@ export default {
|
|
|
handleAbandon(id) {
|
|
|
abandonData({ id }).then(res => {
|
|
|
this.$successMsg()
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
backList() {
|
|
|
this.queryItem = {}
|
|
|
- this.isShowDetail = false
|
|
|
- this.isShowForm = false
|
|
|
- this.isShowExamine = false
|
|
|
- this.isShowReturn = false
|
|
|
+
|
|
|
+ this.addOff(() => {
|
|
|
+ this.isShowDetail = false
|
|
|
+ this.isShowForm = false
|
|
|
+ this.isShowExamine = false
|
|
|
+ this.isShowReturn = false
|
|
|
+ })()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
},
|
|
|
|
|
|
// 关闭
|
|
|
handleClose(id) {
|
|
|
closeData({ id }).then(res => {
|
|
|
this.$successMsg()
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
|
|
@@ -902,14 +412,14 @@ export default {
|
|
|
handleSubmit(id) {
|
|
|
submitData({ id }).then(res => {
|
|
|
this.$successMsg()
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
// 撤回
|
|
|
handleCancel(id) {
|
|
|
submitCancel({ id }).then(res => {
|
|
|
this.$successMsg()
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
})
|
|
|
},
|
|
|
// 打开 修改订单日期
|
|
@@ -926,7 +436,7 @@ export default {
|
|
|
theTime: this.dateForm.date + ' 00:00:00'
|
|
|
}).then(res => {
|
|
|
this.isShowEditDateDialog = false
|
|
|
- this.getList()
|
|
|
+ this.$refs.pageRef.refreshList()
|
|
|
this.$successMsg('修改成功')
|
|
|
})
|
|
|
},
|