|
@@ -56,7 +56,9 @@
|
|
|
<el-col :xs="24" :ms="12" :lg="12">
|
|
|
<el-form-item label="" prop="type">
|
|
|
<div style="height: 30px">
|
|
|
- <el-checkbox v-model="searchForm.isFullRebate">返利使用金额需满额使用</el-checkbox>
|
|
|
+ <el-checkbox
|
|
|
+ v-model="searchForm.isFullRebate"
|
|
|
+ >返利使用金额需满额使用</el-checkbox>
|
|
|
</div>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
@@ -85,8 +87,7 @@
|
|
|
placeholder="生效日期"
|
|
|
default-time="00:00:00"
|
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
- /> </el-form-item
|
|
|
- ></el-col>
|
|
|
+ /> </el-form-item></el-col>
|
|
|
<el-col :xs="24" :ms="12" :lg="12">
|
|
|
<el-form-item label="失效日期" prop="endTime">
|
|
|
<el-date-picker
|
|
@@ -95,8 +96,7 @@
|
|
|
placeholder="失效日期"
|
|
|
default-time="00:00:00"
|
|
|
value-format="yyyy-MM-dd HH:mm:ss"
|
|
|
- /> </el-form-item
|
|
|
- ></el-col>
|
|
|
+ /> </el-form-item></el-col>
|
|
|
<el-col :xs="24" :ms="24" :lg="24">
|
|
|
<el-form-item label="表头备注" prop="remark">
|
|
|
<el-input
|
|
@@ -129,26 +129,23 @@
|
|
|
:file-list="importFileList"
|
|
|
:show-file-list="false"
|
|
|
>
|
|
|
- <el-button type="primary" size="mini"
|
|
|
- >导入货品价格表</el-button
|
|
|
- >
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="mini"
|
|
|
+ >导入货品价格表</el-button>
|
|
|
</el-upload>
|
|
|
</template>
|
|
|
|
|
|
<el-button
|
|
|
type="primary"
|
|
|
size="mini"
|
|
|
- @click="hanleDownloadFiles"
|
|
|
- >下载模板</el-button
|
|
|
- >
|
|
|
+ @click="handleDownloadFiles"
|
|
|
+ >下载模板</el-button>
|
|
|
<el-button
|
|
|
type="primary"
|
|
|
size="mini"
|
|
|
@click="exportGoods"
|
|
|
- >导出货品</el-button
|
|
|
- >
|
|
|
-
|
|
|
-
|
|
|
+ >导出货品</el-button>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-divider />
|
|
@@ -163,7 +160,6 @@
|
|
|
fit
|
|
|
highlight-current-row
|
|
|
stripe
|
|
|
-
|
|
|
>
|
|
|
<el-table-column
|
|
|
type="index"
|
|
@@ -175,11 +171,10 @@
|
|
|
prop="materialNumber"
|
|
|
label="物料编码"
|
|
|
align="left"
|
|
|
-
|
|
|
min-width="200"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.materialNumber" />
|
|
|
+ <CopyButton :copy-text="scope.row.materialNumber" />
|
|
|
|
|
|
<el-select
|
|
|
v-model="scope.row.materialNumber"
|
|
@@ -187,10 +182,9 @@
|
|
|
:remote-method="(query) => remoteMethod(query, 'number')"
|
|
|
filterable
|
|
|
remote
|
|
|
- style="width: 85%;"
|
|
|
+ style="width: 85%"
|
|
|
@change="handleK3List($event, scope.row)"
|
|
|
>
|
|
|
-
|
|
|
<el-option
|
|
|
v-for="(item, index) in k3List"
|
|
|
:key="index"
|
|
@@ -208,20 +202,18 @@
|
|
|
align="left"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
- <CopyButton :copyText="scope.row.materialName" />
|
|
|
- <span>{{scope.row.materialName}}</span>
|
|
|
+ <CopyButton :copy-text="scope.row.materialName" />
|
|
|
+ <span>{{ scope.row.materialName }}</span>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
-
|
|
|
min-width="300"
|
|
|
prop="specification"
|
|
|
label="规格型号"
|
|
|
align="left"
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
-
|
|
|
- <CopyButton :copyText="scope.row.specification" />
|
|
|
+ <CopyButton :copy-text="scope.row.specification" />
|
|
|
|
|
|
<el-select
|
|
|
v-model="scope.row.specification"
|
|
@@ -230,11 +222,10 @@
|
|
|
(query) => remoteMethod(query, 'specification')
|
|
|
"
|
|
|
filterable
|
|
|
- style="width: 85%;"
|
|
|
+ style="width: 85%"
|
|
|
remote
|
|
|
@change="handleK3List($event, scope.row)"
|
|
|
>
|
|
|
-
|
|
|
<el-option
|
|
|
v-for="(item, index) in k3List"
|
|
|
:key="index"
|
|
@@ -242,7 +233,6 @@
|
|
|
:value="item.id"
|
|
|
/>
|
|
|
</el-select>
|
|
|
-
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -279,11 +269,12 @@
|
|
|
<el-table-column prop="discAmount" label="格力折扣" align="right">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input
|
|
|
- class="yinput"
|
|
|
v-model.number="scope.row.discAmount"
|
|
|
- type="number" @mousewheel.native.prevent
|
|
|
+ class="yinput"
|
|
|
+ type="number"
|
|
|
placeholder="请输入格力折扣"
|
|
|
size="mini"
|
|
|
+ @mousewheel.native.prevent
|
|
|
/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -296,11 +287,12 @@
|
|
|
>
|
|
|
<template slot-scope="scope">
|
|
|
<el-input
|
|
|
- class="yinput"
|
|
|
v-model.number="scope.row.price"
|
|
|
- type="number" @mousewheel.native.prevent
|
|
|
+ class="yinput"
|
|
|
+ type="number"
|
|
|
placeholder="请输入单价"
|
|
|
size="mini"
|
|
|
+ @mousewheel.native.prevent
|
|
|
/>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -365,20 +357,48 @@
|
|
|
</el-table-column>
|
|
|
<el-table-column fixed="right" label="操作" align="center">
|
|
|
<template slot-scope="scope">
|
|
|
+ <!-- <el-popconfirm-->
|
|
|
+ <!-- confirm-button-text="好的"-->
|
|
|
+ <!-- cancel-button-text="不用了"-->
|
|
|
+ <!-- icon="el-icon-info"-->
|
|
|
+ <!-- icon-color="red"-->
|
|
|
+ <!-- title="内容确定删除吗?"-->
|
|
|
+ <!-- @onConfirm="handleDelete(scope.row.id, scope.$index)"-->
|
|
|
+ <!-- >-->
|
|
|
+ <!-- <el-button-->
|
|
|
+ <!-- slot="reference"-->
|
|
|
+ <!-- type="text"-->
|
|
|
+ <!-- class="textColor el-popover-left"-->
|
|
|
+ <!-- >删除</el-button-->
|
|
|
+ <!-- >-->
|
|
|
+ <!-- </el-popconfirm>-->
|
|
|
<el-popconfirm
|
|
|
confirm-button-text="好的"
|
|
|
cancel-button-text="不用了"
|
|
|
icon="el-icon-info"
|
|
|
icon-color="red"
|
|
|
- title="内容确定删除吗?"
|
|
|
- @onConfirm="hanleDelete(scope.row.id, scope.$index)"
|
|
|
+ title="启用吗?"
|
|
|
+ @onConfirm="handleStatus(scope.row.id, true)"
|
|
|
>
|
|
|
<el-button
|
|
|
slot="reference"
|
|
|
type="text"
|
|
|
class="textColor el-popover-left"
|
|
|
- >删除</el-button
|
|
|
- >
|
|
|
+ >启用</el-button>
|
|
|
+ </el-popconfirm>
|
|
|
+ <el-popconfirm
|
|
|
+ confirm-button-text="好的"
|
|
|
+ cancel-button-text="不用了"
|
|
|
+ icon="el-icon-info"
|
|
|
+ icon-color="red"
|
|
|
+ title="作废吗?"
|
|
|
+ @onConfirm="handleStatus(scope.row.id, false)"
|
|
|
+ >
|
|
|
+ <el-button
|
|
|
+ slot="reference"
|
|
|
+ type="text"
|
|
|
+ class="textColor el-popover-left"
|
|
|
+ >作废</el-button>
|
|
|
</el-popconfirm>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -392,12 +412,16 @@
|
|
|
"
|
|
|
>
|
|
|
<div>
|
|
|
- <el-button type="primary" size="mini" @click="handleNewInfo"
|
|
|
- >添加</el-button
|
|
|
- >
|
|
|
- <el-button type="primary" size="mini" @click="handleSave"
|
|
|
- >保存</el-button
|
|
|
- >
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="mini"
|
|
|
+ @click="handleNewInfo"
|
|
|
+ >添加</el-button>
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="mini"
|
|
|
+ @click="handleSave"
|
|
|
+ >保存</el-button>
|
|
|
</div>
|
|
|
<!-- <el-pagination-->
|
|
|
<!-- :current-page="dcurrentPage"-->
|
|
@@ -417,10 +441,11 @@
|
|
|
<h4 style="display: inline-block; margin-right: 20px">
|
|
|
条件信息
|
|
|
</h4>
|
|
|
- <el-button type="primary" size="mini" @click="isCondition = 1"
|
|
|
- >添加</el-button
|
|
|
- ></el-col
|
|
|
- >
|
|
|
+ <el-button
|
|
|
+ type="primary"
|
|
|
+ size="mini"
|
|
|
+ @click="isCondition = 1"
|
|
|
+ >添加</el-button></el-col>
|
|
|
</el-row>
|
|
|
<el-divider />
|
|
|
</el-row>
|
|
@@ -464,14 +489,12 @@
|
|
|
scope.row.fang = false;
|
|
|
conditName = scope.row.name;
|
|
|
"
|
|
|
- >编辑</el-button
|
|
|
- >
|
|
|
+ >编辑</el-button>
|
|
|
<el-button
|
|
|
type="text"
|
|
|
size="mini"
|
|
|
@click="handleCondition(scope.row.id, scope.$index)"
|
|
|
- >删除</el-button
|
|
|
- >
|
|
|
+ >删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
</el-table>
|
|
@@ -487,13 +510,13 @@
|
|
|
<el-divider />
|
|
|
</el-row>
|
|
|
<TabelTransfer
|
|
|
+ v-if="searchForm.code"
|
|
|
+ :code="searchForm.code"
|
|
|
@handlEditPolicy="handleAddPolicy"
|
|
|
@handleReset="handleReset"
|
|
|
- v-if="searchForm.code" :code="searchForm.code"
|
|
|
/>
|
|
|
<!-- <Transfer @handleAddPolicy="handleAddPolicy" @handleReset="handleReset" />-->
|
|
|
</div>
|
|
|
-
|
|
|
</div>
|
|
|
</div>
|
|
|
<AddCondition
|
|
@@ -517,7 +540,9 @@ import {
|
|
|
getTypeList,
|
|
|
getWalletRebateList,
|
|
|
savePolicy,
|
|
|
+ setStauts,
|
|
|
updateCondition
|
|
|
+
|
|
|
} from '@/api/policy_list'
|
|
|
import { downloadFiles, handleImport } from '@/utils/util'
|
|
|
// import Transfer from './Transfer'
|
|
@@ -527,13 +552,11 @@ import ImageUpload from '@/components/Common/image-upload.vue'
|
|
|
|
|
|
export default {
|
|
|
directives: {
|
|
|
- "el-select-loadmore": {
|
|
|
+ 'el-select-loadmore': {
|
|
|
bind(el, binding) {
|
|
|
// 获取element-ui定义好的scroll盒⼦
|
|
|
- const SELECTWRAP_DOM = el.querySelector(
|
|
|
- ".el-table__body-wrapper"
|
|
|
- );
|
|
|
- SELECTWRAP_DOM.addEventListener("scroll", function () {
|
|
|
+ const SELECTWRAP_DOM = el.querySelector('.el-table__body-wrapper')
|
|
|
+ SELECTWRAP_DOM.addEventListener('scroll', function() {
|
|
|
/**
|
|
|
* scrollHeight 获取元素内容⾼度(只读)
|
|
|
* scrollTop 获取或者设置元素的偏移值,常⽤于, 计算滚动条的位置, 当⼀个元素的容器没有产⽣垂直⽅向的滚动条, 那它的scrollTop的值默认为0.
|
|
@@ -542,32 +565,32 @@ export default {
|
|
|
* ele.scrollHeight - ele.scrollTop === ele.clientHeight;
|
|
|
*/
|
|
|
const condition =
|
|
|
- this.scrollHeight - this.scrollTop <= this.clientHeight;
|
|
|
+ this.scrollHeight - this.scrollTop <= this.clientHeight
|
|
|
if (condition) {
|
|
|
- binding.value();
|
|
|
+ binding.value()
|
|
|
}
|
|
|
- });
|
|
|
- },
|
|
|
- },
|
|
|
+ })
|
|
|
+ }
|
|
|
+ }
|
|
|
},
|
|
|
mixins: [Minxin],
|
|
|
data() {
|
|
|
return {
|
|
|
fang: false,
|
|
|
- input: "",
|
|
|
- baseURL: "",
|
|
|
+ input: '',
|
|
|
+ baseURL: '',
|
|
|
isCondition: 0,
|
|
|
searchForm: {
|
|
|
- code: "",
|
|
|
- endTime: "",
|
|
|
- imgSrc: "",
|
|
|
- remark: "",
|
|
|
- startTime: "",
|
|
|
- title: "",
|
|
|
- mainId: "",
|
|
|
- mainName: "",
|
|
|
- type: "",
|
|
|
- isFullRebate: false,
|
|
|
+ code: '',
|
|
|
+ endTime: '',
|
|
|
+ imgSrc: '',
|
|
|
+ remark: '',
|
|
|
+ startTime: '',
|
|
|
+ title: '',
|
|
|
+ mainId: '',
|
|
|
+ mainName: '',
|
|
|
+ type: '',
|
|
|
+ isFullRebate: false
|
|
|
},
|
|
|
dataList: [],
|
|
|
addList: [],
|
|
@@ -578,20 +601,20 @@ export default {
|
|
|
importFileList: [],
|
|
|
fileList: [],
|
|
|
options: {},
|
|
|
- value: "",
|
|
|
+ value: '',
|
|
|
typeList: [],
|
|
|
walletList: [],
|
|
|
typeOptions: [
|
|
|
{
|
|
|
- value: "PROVISION",
|
|
|
- label: "配提",
|
|
|
+ value: 'PROVISION',
|
|
|
+ label: '配提'
|
|
|
},
|
|
|
{
|
|
|
- value: "LIMIT",
|
|
|
- label: "限量",
|
|
|
- },
|
|
|
+ value: 'LIMIT',
|
|
|
+ label: '限量'
|
|
|
+ }
|
|
|
],
|
|
|
- conditName: "",
|
|
|
+ conditName: '',
|
|
|
conditionList: [],
|
|
|
dictList: [],
|
|
|
k3List: [],
|
|
@@ -599,20 +622,20 @@ export default {
|
|
|
sleectBox: { currentPage: 1 },
|
|
|
dpageSize: 10,
|
|
|
dcurrentPage: 1,
|
|
|
- rebateList: [],
|
|
|
- };
|
|
|
+ rebateList: []
|
|
|
+ }
|
|
|
},
|
|
|
computed: {
|
|
|
...mapGetters({
|
|
|
- comCode: "code",
|
|
|
- }),
|
|
|
+ comCode: 'code'
|
|
|
+ })
|
|
|
},
|
|
|
|
|
|
mounted() {
|
|
|
- this.searchForm.code = this.comCode;
|
|
|
+ this.searchForm.code = this.comCode
|
|
|
},
|
|
|
updated() {
|
|
|
- this.searchForm.code = this.comCode;
|
|
|
+ this.searchForm.code = this.comCode
|
|
|
},
|
|
|
created() {
|
|
|
// console.log(this.$store.code);
|
|
@@ -621,417 +644,422 @@ export default {
|
|
|
// }
|
|
|
},
|
|
|
methods: {
|
|
|
- ...mapMutations("sales", ["initData"]),
|
|
|
+ ...mapMutations('sales', ['initData']),
|
|
|
+ handleStatus(id, status) {
|
|
|
+ setStauts({ policyMaterialId: id, status }).then((res) => {
|
|
|
+ this.handletwoList()
|
|
|
+ this.$successMsg(status ? '启用' : '作废')
|
|
|
+ })
|
|
|
+ },
|
|
|
// 下载excel模板
|
|
|
- hanleDownloadFiles() {
|
|
|
- downloadFiles("policy/download");
|
|
|
+ handleDownloadFiles() {
|
|
|
+ downloadFiles('policy/download')
|
|
|
},
|
|
|
- exportGoods(){
|
|
|
- downloadFiles("policy/material/export",{policyId: this.searchForm.code});
|
|
|
+ exportGoods() {
|
|
|
+ downloadFiles('policy/material/export', {
|
|
|
+ policyId: this.searchForm.code
|
|
|
+ })
|
|
|
},
|
|
|
handleCondition(id, index) {
|
|
|
deleteCondition({ id }).then((res) => {
|
|
|
- this.conditionList.splice(index, 1);
|
|
|
+ this.conditionList.splice(index, 1)
|
|
|
Object.assign(
|
|
|
this.$children[9].$data,
|
|
|
this.$children[9].$options.data()
|
|
|
- );
|
|
|
- this.$successMsg("删除成功");
|
|
|
- });
|
|
|
+ )
|
|
|
+ this.$successMsg('删除成功')
|
|
|
+ })
|
|
|
},
|
|
|
// loadmore() {
|
|
|
// this.sleectBox.currentPage++;
|
|
|
// this.getK3List();
|
|
|
// },
|
|
|
- loadmore2(){
|
|
|
- if(this.dataList.length<this.listTotal){
|
|
|
- let total = Math.floor(this.listTotal/10)
|
|
|
- if (this.dcurrentPage<=total) {
|
|
|
- this.dcurrentPage++
|
|
|
- this.handletwoList()
|
|
|
- }
|
|
|
+ loadmore2() {
|
|
|
+ if (this.dataList.length < this.listTotal) {
|
|
|
+ const total = Math.floor(this.listTotal / 10)
|
|
|
+ if (this.dcurrentPage <= total) {
|
|
|
+ this.dcurrentPage++
|
|
|
+ this.handletwoList()
|
|
|
}
|
|
|
+ }
|
|
|
},
|
|
|
getK3List() {
|
|
|
getK3List({
|
|
|
pageNum: this.sleectBox.currentPage,
|
|
|
pageSize: 10,
|
|
|
- keyword: "",
|
|
|
+ keyword: ''
|
|
|
}).then((res) => {
|
|
|
- this.k3List = [...this.k3List, ...res.data.records];
|
|
|
- });
|
|
|
+ this.k3List = [...this.k3List, ...res.data.records]
|
|
|
+ })
|
|
|
},
|
|
|
remoteMethod(query, type) {
|
|
|
- console.log(query, type);
|
|
|
- if (query !== "") {
|
|
|
+ console.log(query, type)
|
|
|
+ if (query !== '') {
|
|
|
getK3List({
|
|
|
pageNum: 1,
|
|
|
pageSize: 100,
|
|
|
- keyword: "",
|
|
|
- number: type === "number" ? query : "",
|
|
|
- oldNumber: "",
|
|
|
- specification: type === "specification" ? query : "",
|
|
|
+ keyword: '',
|
|
|
+ number: type === 'number' ? query : '',
|
|
|
+ oldNumber: '',
|
|
|
+ specification: type === 'specification' ? query : ''
|
|
|
}).then((res) => {
|
|
|
- this.k3List = res.data.records;
|
|
|
- });
|
|
|
+ this.k3List = res.data.records
|
|
|
+ })
|
|
|
} else {
|
|
|
- this.sleectBox.currentPage = 1;
|
|
|
- this.getK3List();
|
|
|
+ this.sleectBox.currentPage = 1
|
|
|
+ this.getK3List()
|
|
|
}
|
|
|
},
|
|
|
- async getCommonApi() {
|
|
|
+ async getCommonApi() {
|
|
|
// this.getK3List();
|
|
|
// 非返利钱包
|
|
|
- const noRebateWalletData = await getNoRebateWalletList({ walletName: "" })
|
|
|
- this.NoRebateWalletList = noRebateWalletData.data;
|
|
|
+ const noRebateWalletData = await getNoRebateWalletList({
|
|
|
+ walletName: ''
|
|
|
+ })
|
|
|
+ this.NoRebateWalletList = noRebateWalletData.data
|
|
|
|
|
|
- const walletRebateData = await getWalletRebateList({
|
|
|
+ const walletRebateData = await getWalletRebateList({
|
|
|
pageNum: 1,
|
|
|
pageSize: -2,
|
|
|
- name: "",
|
|
|
- status: true,
|
|
|
+ name: '',
|
|
|
+ status: true
|
|
|
})
|
|
|
- this.rebateList = walletRebateData.data.records;
|
|
|
+ this.rebateList = walletRebateData.data.records
|
|
|
|
|
|
const params = {
|
|
|
pageNum: 1,
|
|
|
pageSize: -1,
|
|
|
- saleCode: "",
|
|
|
- saleName: "",
|
|
|
- status: "",
|
|
|
- };
|
|
|
+ saleCode: '',
|
|
|
+ saleName: '',
|
|
|
+ status: ''
|
|
|
+ }
|
|
|
|
|
|
// 获取销售类型列表
|
|
|
- const typeData = await getTypeList(params)
|
|
|
- this.typeList = typeData.data.records;
|
|
|
-
|
|
|
+ const typeData = await getTypeList(params)
|
|
|
+ this.typeList = typeData.data.records
|
|
|
},
|
|
|
handleSalesType(e, row) {
|
|
|
const item = this.typeList.filter((k) => {
|
|
|
- return k.id === e;
|
|
|
- })[0];
|
|
|
- const linshi = [];
|
|
|
- const rebateList = [];
|
|
|
+ return k.id === e
|
|
|
+ })[0]
|
|
|
+ const linshi = []
|
|
|
+ const rebateList = []
|
|
|
this.rebateList.forEach((k) => {
|
|
|
k.saleTypes.forEach((j) => {
|
|
|
if (!linshi.includes(j.saleTypeId) && j.saleTypeId === e) {
|
|
|
- rebateList.push(k);
|
|
|
- linshi.push(j.saleTypeId);
|
|
|
+ rebateList.push(k)
|
|
|
+ linshi.push(j.saleTypeId)
|
|
|
}
|
|
|
- });
|
|
|
- });
|
|
|
+ })
|
|
|
+ })
|
|
|
if (rebateList.length) {
|
|
|
- this.$set(row, "rebateWalletIds", [
|
|
|
- ...new Set([...row.rebateWalletIds, rebateList[0].walletRebateId]),
|
|
|
- ]);
|
|
|
+ this.$set(row, 'rebateWalletIds', [
|
|
|
+ ...new Set([...row.rebateWalletIds, rebateList[0].walletRebateId])
|
|
|
+ ])
|
|
|
}
|
|
|
|
|
|
- this.$set(row, "saleTypeCode", item.saleCode);
|
|
|
- this.$set(row, "saleTypeName", item.saleName);
|
|
|
+ this.$set(row, 'saleTypeCode', item.saleCode)
|
|
|
+ this.$set(row, 'saleTypeName', item.saleName)
|
|
|
// this.$set(row,'saleTypeId',item.id)
|
|
|
},
|
|
|
// 修改条件名称
|
|
|
handleConditionName(row) {
|
|
|
- console.log(row.name);
|
|
|
+ console.log(row.name)
|
|
|
if (this.conditName !== row.name) {
|
|
|
updateCondition({ id: row.id, name: row.name }).then((res) => {
|
|
|
- this.$successMsg("修改成功");
|
|
|
- });
|
|
|
+ this.$successMsg('修改成功')
|
|
|
+ })
|
|
|
}
|
|
|
- row.fang = true;
|
|
|
+ row.fang = true
|
|
|
},
|
|
|
// 提交信息
|
|
|
handleSubmitCon() {
|
|
|
const params = {
|
|
|
- policyId: this.comCode,
|
|
|
- };
|
|
|
+ policyId: this.comCode
|
|
|
+ }
|
|
|
// 获取条件政策
|
|
|
getConditionList(params).then((res) => {
|
|
|
for (let i = 0; i < res.data.length; i++) {
|
|
|
- res.data[i].fang = true;
|
|
|
+ res.data[i].fang = true
|
|
|
}
|
|
|
- this.conditionList = res.data;
|
|
|
- });
|
|
|
+ this.conditionList = res.data
|
|
|
+ })
|
|
|
},
|
|
|
// 视图部分已注释,废弃的功能 fucn
|
|
|
handelStop() {
|
|
|
if (this.searchForm.mainId) {
|
|
|
- this.fang = true;
|
|
|
+ this.fang = true
|
|
|
} else {
|
|
|
- this.$errorMsg("请选择产品类别");
|
|
|
+ this.$errorMsg('请选择产品类别')
|
|
|
}
|
|
|
},
|
|
|
// 导入
|
|
|
async handleImport(param) {
|
|
|
- this.importLoading = true;
|
|
|
- const file = param.file;
|
|
|
- console.log(file, 123);
|
|
|
- const formData = new FormData();
|
|
|
- formData.append("file", file);
|
|
|
- formData.append("policyId", this.searchForm.code);
|
|
|
+ this.importLoading = true
|
|
|
+ const file = param.file
|
|
|
+ console.log(file, 123)
|
|
|
+ const formData = new FormData()
|
|
|
+ formData.append('file', file)
|
|
|
+ formData.append('policyId', this.searchForm.code)
|
|
|
// formData.append("mainId", this.searchForm.mainId);
|
|
|
- const result = await handleImport("policy/material/import", formData);
|
|
|
- this.importLoading = false;
|
|
|
- this.importFileList = [];
|
|
|
+ const result = await handleImport('policy/material/import', formData)
|
|
|
+ this.importLoading = false
|
|
|
+ this.importFileList = []
|
|
|
if (result.code === 200) {
|
|
|
- this.$alert(result.message, "导入成功", {
|
|
|
- confirmButtonText: "确定",
|
|
|
- });
|
|
|
- this.dataList = [];
|
|
|
- this.listTotal = 0;
|
|
|
- this.sleectBox.currentPage = 1;
|
|
|
+ this.$alert(result.message, '导入成功', {
|
|
|
+ confirmButtonText: '确定'
|
|
|
+ })
|
|
|
+ this.dataList = []
|
|
|
+ this.listTotal = 0
|
|
|
+ this.sleectBox.currentPage = 1
|
|
|
this.dcurrentPage = 1
|
|
|
- this.handletwoList();
|
|
|
+ this.handletwoList()
|
|
|
} else {
|
|
|
- this.$alert(result.message, "导入失败", {
|
|
|
- confirmButtonText: "确定",
|
|
|
- });
|
|
|
+ this.$alert(result.message, '导入失败', {
|
|
|
+ confirmButtonText: '确定'
|
|
|
+ })
|
|
|
}
|
|
|
},
|
|
|
- async getList() {
|
|
|
- await this.getCommonApi();
|
|
|
+ async getList() {
|
|
|
+ await this.getCommonApi()
|
|
|
if (this.$parent.isFlag) {
|
|
|
- await this.handletwoList();
|
|
|
+ await this.handletwoList()
|
|
|
}
|
|
|
},
|
|
|
// 更改每页数量
|
|
|
handleSizeChange1(val) {
|
|
|
- this.pageSize = val;
|
|
|
- this.currentPage = 1;
|
|
|
- this.handletwoList();
|
|
|
+ this.pageSize = val
|
|
|
+ this.currentPage = 1
|
|
|
+ this.handletwoList()
|
|
|
},
|
|
|
// 更改当前页
|
|
|
handleCurrentChange1(val) {
|
|
|
- this.currentPage = val;
|
|
|
- this.handletwoList();
|
|
|
+ this.currentPage = val
|
|
|
+ this.handletwoList()
|
|
|
},
|
|
|
|
|
|
// 更改每页数量
|
|
|
handleSizeChange2(val) {
|
|
|
- this.dpageSize = val;
|
|
|
- this.dcurrentPage = 1;
|
|
|
+ this.dpageSize = val
|
|
|
+ this.dcurrentPage = 1
|
|
|
|
|
|
- this.handletwoList();
|
|
|
+ this.handletwoList()
|
|
|
},
|
|
|
// 更改当前页
|
|
|
handleCurrentChange2(val) {
|
|
|
- this.dcurrentPage = val;
|
|
|
- this.handletwoList();
|
|
|
+ this.dcurrentPage = val
|
|
|
+ this.handletwoList()
|
|
|
},
|
|
|
// 获取货品信息
|
|
|
- async handletwoList() {
|
|
|
+ async handletwoList() {
|
|
|
// this.searchForm.type
|
|
|
- this.listLoading = true;
|
|
|
+ this.listLoading = true
|
|
|
|
|
|
const paramss = {
|
|
|
pageNum: 1,
|
|
|
pageSize: -1,
|
|
|
policyId: this.comCode,
|
|
|
- saleTypeCode: "",
|
|
|
- };
|
|
|
+ saleTypeCode: ''
|
|
|
+ }
|
|
|
try {
|
|
|
- const {data} = await getMaterialList(paramss)
|
|
|
- this.dataList = data.records
|
|
|
- data.records.forEach((k) => {
|
|
|
- k.walletIds = [];
|
|
|
- k.rebateWalletIds = [];
|
|
|
- if (!k.specification) {
|
|
|
- k.materialNumber = k.materialId;
|
|
|
- k.specification = k.materialId;
|
|
|
- }
|
|
|
+ const { data } = await getMaterialList(paramss)
|
|
|
+ this.dataList = data.records
|
|
|
+ data.records.forEach((k) => {
|
|
|
+ k.walletIds = []
|
|
|
+ k.rebateWalletIds = []
|
|
|
+ if (!k.specification) {
|
|
|
+ k.materialNumber = k.materialId
|
|
|
+ k.specification = k.materialId
|
|
|
+ }
|
|
|
|
|
|
- for (let i = 0; i < k.walletRelaList.length; i++) {
|
|
|
- const d = k.walletRelaList[i];
|
|
|
- d.id = d.walletId;
|
|
|
- d.name = d.walletName;
|
|
|
- if (d.type === "REBATE") {
|
|
|
- k.rebateWalletIds = [...k.rebateWalletIds, d.walletId];
|
|
|
- } else {
|
|
|
- k.walletIds = [...k.walletIds, d.walletId];
|
|
|
- }
|
|
|
+ for (let i = 0; i < k.walletRelaList.length; i++) {
|
|
|
+ const d = k.walletRelaList[i]
|
|
|
+ d.id = d.walletId
|
|
|
+ d.name = d.walletName
|
|
|
+ if (d.type === 'REBATE') {
|
|
|
+ k.rebateWalletIds = [...k.rebateWalletIds, d.walletId]
|
|
|
+ } else {
|
|
|
+ k.walletIds = [...k.walletIds, d.walletId]
|
|
|
}
|
|
|
-
|
|
|
- });
|
|
|
- this.listTotal = data.total;
|
|
|
- this.listLoading = false;
|
|
|
+ }
|
|
|
+ })
|
|
|
+ this.listTotal = data.total
|
|
|
+ this.listLoading = false
|
|
|
} catch (error) {
|
|
|
- console.error(error);
|
|
|
+ console.error(error)
|
|
|
}
|
|
|
-
|
|
|
},
|
|
|
// 提交审核
|
|
|
- handleAddPolicy(policyCustomers,region) {
|
|
|
- console.log(region,'jkjkj')
|
|
|
+ handleAddPolicy(policyCustomers, region) {
|
|
|
+ console.log(region, 'jkjkj')
|
|
|
if (!this.searchForm.title) {
|
|
|
- this.$errorMsg("请输入说明");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请输入说明')
|
|
|
+ return
|
|
|
}
|
|
|
if (!this.searchForm.type) {
|
|
|
- this.$errorMsg("请选择类型");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请选择类型')
|
|
|
+ return
|
|
|
}
|
|
|
if (!this.searchForm.startTime) {
|
|
|
- this.$errorMsg("请选择生效日期");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请选择生效日期')
|
|
|
+ return
|
|
|
}
|
|
|
|
|
|
- const fomrtData = ()=>{
|
|
|
- var arr = [];
|
|
|
+ const fomrtData = () => {
|
|
|
+ var arr = []
|
|
|
policyCustomers.forEach((el) => {
|
|
|
arr.push({
|
|
|
customerId: el.id,
|
|
|
customerName: el.name,
|
|
|
customerNumber: el.number,
|
|
|
- lastOrderTime: "",
|
|
|
+ lastOrderTime: '',
|
|
|
limitTakeNum: 0,
|
|
|
policyId: this.searchForm.code || this.comCode,
|
|
|
- policyTitle: "",
|
|
|
- remark: "",
|
|
|
- });
|
|
|
- });
|
|
|
+ policyTitle: '',
|
|
|
+ remark: ''
|
|
|
+ })
|
|
|
+ })
|
|
|
// this.dictList.forEach((k) => {
|
|
|
// if (k.dictCode == this.searchForm.mainId) {
|
|
|
// this.searchForm.mainName = k.dictValue;
|
|
|
// }
|
|
|
// });
|
|
|
const params = {
|
|
|
- adminCompanyId: "",
|
|
|
- code: "",
|
|
|
+ adminCompanyId: '',
|
|
|
+ code: '',
|
|
|
customerCount: 0,
|
|
|
- examineBy: "",
|
|
|
- examineRemark: "",
|
|
|
- examineStatus: "",
|
|
|
- id: "",
|
|
|
+ examineBy: '',
|
|
|
+ examineRemark: '',
|
|
|
+ examineStatus: '',
|
|
|
+ id: '',
|
|
|
policyCustomers: arr,
|
|
|
- remark: "",
|
|
|
+ remark: '',
|
|
|
status: true,
|
|
|
- title: "",
|
|
|
- type: "",
|
|
|
+ title: '',
|
|
|
+ type: '',
|
|
|
...this.searchForm,
|
|
|
- flag:region,
|
|
|
- endTime: this.searchForm.endTime || "2100-01-01 00:00:00",
|
|
|
- imgSrc: this.fileList.length ? this.fileList[0].url : "",
|
|
|
- };
|
|
|
- console.log(this.fileList);
|
|
|
- addPoliy(params).then((res) => {
|
|
|
- console.log(res);
|
|
|
- this.$successMsg("新增成功");
|
|
|
- this.$parent.getList();
|
|
|
- this.$parent.isShow = 1;
|
|
|
- });
|
|
|
+ flag: region,
|
|
|
+ endTime: this.searchForm.endTime || '2100-01-01 00:00:00',
|
|
|
+ imgSrc: this.fileList.length ? this.fileList[0].url : ''
|
|
|
}
|
|
|
+ console.log(this.fileList)
|
|
|
+ addPoliy(params).then((res) => {
|
|
|
+ console.log(res)
|
|
|
+ this.$successMsg('新增成功')
|
|
|
+ this.$parent.getList()
|
|
|
+ this.$parent.isShow = 1
|
|
|
+ })
|
|
|
+ }
|
|
|
|
|
|
- if (region == 0) {
|
|
|
- if (policyCustomers.length) {
|
|
|
- fomrtData()
|
|
|
- } else {
|
|
|
- this.$errorMsg("选择经销商 ");
|
|
|
- }
|
|
|
- }else{
|
|
|
+ if (region == 0) {
|
|
|
+ if (policyCustomers.length) {
|
|
|
+ fomrtData()
|
|
|
+ } else {
|
|
|
+ this.$errorMsg('选择经销商 ')
|
|
|
+ }
|
|
|
+ } else {
|
|
|
fomrtData()
|
|
|
}
|
|
|
-
|
|
|
},
|
|
|
// 删除
|
|
|
- hanleDelete(id, index) {
|
|
|
+ handleDelete(id, index) {
|
|
|
if (id) {
|
|
|
- const params = { policyMaterialId: id };
|
|
|
+ const params = { policyMaterialId: id }
|
|
|
deleteMaterialPolicy(params).then((res) => {
|
|
|
- this.dataList.splice(index, 1);
|
|
|
- });
|
|
|
- return;
|
|
|
+ this.dataList.splice(index, 1)
|
|
|
+ })
|
|
|
+ return
|
|
|
}
|
|
|
- this.dataList.splice(index, 1);
|
|
|
+ this.dataList.splice(index, 1)
|
|
|
// this.listTotal -= 1;
|
|
|
- this.$successMsg("删除成功");
|
|
|
+ this.$successMsg('删除成功')
|
|
|
},
|
|
|
handleNewInfo() {
|
|
|
// 物料列表
|
|
|
|
|
|
this.dataList.push({
|
|
|
- id: "",
|
|
|
+ id: '',
|
|
|
discAmount: 0,
|
|
|
- materialId: "",
|
|
|
- materialName: "",
|
|
|
- materialNumber: "",
|
|
|
+ materialId: '',
|
|
|
+ materialName: '',
|
|
|
+ materialNumber: '',
|
|
|
policyId: this.comCode,
|
|
|
- price: "",
|
|
|
- remark: "",
|
|
|
- saleTypeCode: "",
|
|
|
- saleTypeId: "",
|
|
|
- saleTypeName: "",
|
|
|
- specification: "",
|
|
|
+ price: '',
|
|
|
+ remark: '',
|
|
|
+ saleTypeCode: '',
|
|
|
+ saleTypeId: '',
|
|
|
+ saleTypeName: '',
|
|
|
+ specification: '',
|
|
|
rebateWalletIds: [],
|
|
|
walletIds: [this.NoRebateWalletList[0].id],
|
|
|
- walletRelaList: [],
|
|
|
- });
|
|
|
- this.sleectBox.currentPage = 1;
|
|
|
+ walletRelaList: []
|
|
|
+ })
|
|
|
+ this.sleectBox.currentPage = 1
|
|
|
// this.listTotal += 1;
|
|
|
// this.dataList.push(this.addList[this.addList.length-1])
|
|
|
},
|
|
|
handleSave() {
|
|
|
if (!this.dataList.length) {
|
|
|
- return;
|
|
|
+ return
|
|
|
}
|
|
|
for (let i = 0; i < this.dataList.length; i++) {
|
|
|
if (!this.dataList[i].materialId) {
|
|
|
- this.$errorMsg("请选择货品");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请选择货品')
|
|
|
+ return
|
|
|
}
|
|
|
if (!this.dataList[i].saleTypeId) {
|
|
|
- this.$errorMsg("请选择销售类型");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请选择销售类型')
|
|
|
+ return
|
|
|
}
|
|
|
|
|
|
if (!this.dataList[i].price) {
|
|
|
- this.$errorMsg("请输入单价");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请输入单价')
|
|
|
+ return
|
|
|
}
|
|
|
if (!this.dataList[i].walletIds.length) {
|
|
|
- this.$errorMsg("请选择现金钱包");
|
|
|
- return;
|
|
|
+ this.$errorMsg('请选择现金钱包')
|
|
|
+ return
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-
|
|
|
savePolicy(this.dataList).then((res) => {
|
|
|
- this.dataList = [];
|
|
|
+ this.dataList = []
|
|
|
this.dcurrentPage = 1
|
|
|
- this.sleectBox.currentPage = 1;
|
|
|
- this.$successMsg("保存成功");
|
|
|
+ this.sleectBox.currentPage = 1
|
|
|
+ this.$successMsg('保存成功')
|
|
|
|
|
|
- this.handletwoList();
|
|
|
- });
|
|
|
+ this.handletwoList()
|
|
|
+ })
|
|
|
},
|
|
|
handleK3List(e, row) {
|
|
|
const item = this.k3List.filter((k) => {
|
|
|
- return k.id == e;
|
|
|
- })[0];
|
|
|
- this.$set(row, "materialNumber", item.number);
|
|
|
- this.$set(row, "materialName", item.name);
|
|
|
- this.$set(row, "specification", item.specification);
|
|
|
- this.$set(row, "materialId", item.id);
|
|
|
- this.getK3List();
|
|
|
+ return k.id == e
|
|
|
+ })[0]
|
|
|
+ this.$set(row, 'materialNumber', item.number)
|
|
|
+ this.$set(row, 'materialName', item.name)
|
|
|
+ this.$set(row, 'specification', item.specification)
|
|
|
+ this.$set(row, 'materialId', item.id)
|
|
|
+ this.getK3List()
|
|
|
},
|
|
|
handleReset() {
|
|
|
- Object.assign(this.$data, this.$options.data());
|
|
|
- this.getCommonApi();
|
|
|
- },
|
|
|
+ Object.assign(this.$data, this.$options.data())
|
|
|
+ this.getCommonApi()
|
|
|
+ }
|
|
|
},
|
|
|
components: {
|
|
|
TabelTransfer,
|
|
|
AddCondition,
|
|
|
- ImageUpload,
|
|
|
- },
|
|
|
-};
|
|
|
+ ImageUpload
|
|
|
+ }
|
|
|
+}
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
h4 {
|
|
|
margin: 0;
|
|
|
}
|
|
|
-.yinput{
|
|
|
- ::v-deep input{
|
|
|
+.yinput {
|
|
|
+ ::v-deep input {
|
|
|
text-align: right;
|
|
|
}
|
|
|
}
|