提交 f1865701 编写于 作者: changdi.hao's avatar changdi.hao

优化运费的配置

上级 338b0b66
<template> <template>
<div class="order-detail-wrapper"> <div class="order-detail-wrapper">
<bread-crumb :curmbFirst="curmbFirst" :curmbSecond="curmbSecond"></bread-crumb> <bread-crumb
:curmbFirst="curmbFirst"
:curmbSecond="curmbSecond"
></bread-crumb>
<div class="order-detail-content screenSet" id="screenSet"> <div class="order-detail-content screenSet" id="screenSet">
<div class="header-title">店铺运费</div> <div class="header-title">店铺运费</div>
<div class="freight-config-content"> <div class="freight-config-content">
<el-form ref="form" :model="formData" label-width="100px" inline> <el-form ref="form" :model="formData" label-width="100px" inline>
<!-- ≤,≥,<,> --> <!-- ≤,≥,<,> -->
<el-row class="title"> <el-row class="title"> 运费配置 </el-row>
运费配置
</el-row>
<el-row <el-row
class="c-row" class="c-row"
:style="{ padding: index != 0 ? '20px' : '' }" :style="{ padding: index != 0 ? '20px' : '' }"
v-for="(item, index) in formData.list.slice(0, 1)" v-for="(item, index) in formData.list.slice(0, 1)"
:key="'first' + index" :key="'first' + index"
> >
<span v-if="index == 0" style="margin: 0 20px 0 40px;">0</span> <span v-if="index == 0" style="margin: 0 20px 0 40px">0</span>
<el-input <el-input
v-else v-else
disabled disabled
...@@ -30,12 +30,21 @@ ...@@ -30,12 +30,21 @@
<span class="big">订单金额</span> <span class="big">订单金额</span>
<span></span> <span></span>
<el-form-item :prop="`list.${index}.rangeMax`" :rules="bgRules"> <el-form-item :prop="`list.${index}.rangeMax`" :rules="bgRules">
<el-input <!-- <el-input
v-model="item.rangeMax" v-model="item.rangeMax"
size="small" size="small"
style="width: 80px;" style="width: 80px;"
placeholder="请输入" placeholder="请输入"
></el-input> ></el-input> -->
<el-input-number
v-model="item.rangeMax"
:controls="false"
:min="0.00"
:max="99999.99"
size="small"
style="width: 80px"
placeholder="请输入"
></el-input-number>
</el-form-item> </el-form-item>
<span class="small"></span> <span class="small"></span>
<span class="middle">运费:</span> <span class="middle">运费:</span>
...@@ -51,7 +60,7 @@ ...@@ -51,7 +60,7 @@
</el-row> </el-row>
<el-row> <el-row>
<el-button <el-button
style="margin: 10px 20px 20px;" style="margin: 10px 20px 20px"
size="small" size="small"
type="primary" type="primary"
@click="addCondition" @click="addCondition"
...@@ -60,7 +69,7 @@ ...@@ -60,7 +69,7 @@
</el-row> </el-row>
<el-row <el-row
class="c-row" class="c-row"
style="padding: 10px 20px;" style="padding: 10px 20px"
v-for="(item, index) in formData.list.slice(1)" v-for="(item, index) in formData.list.slice(1)"
:key="index" :key="index"
> >
...@@ -78,7 +87,7 @@ ...@@ -78,7 +87,7 @@
<el-input <el-input
v-model="item.rangeMax" v-model="item.rangeMax"
size="small" size="small"
style="width: 80px;" style="width: 80px"
placeholder="请输入" placeholder="请输入"
></el-input> ></el-input>
</el-form-item> </el-form-item>
...@@ -88,7 +97,7 @@ ...@@ -88,7 +97,7 @@
<el-input <el-input
v-model="item.fee" v-model="item.fee"
size="small" size="small"
style="width: 80px;" style="width: 80px"
placeholder="请输入" placeholder="请输入"
></el-input> ></el-input>
</el-form-item> </el-form-item>
...@@ -97,11 +106,10 @@ ...@@ -97,11 +106,10 @@
type="danger" type="danger"
size="small" size="small"
@click="deleteCondition(index + 1)" @click="deleteCondition(index + 1)"
>删除</el-button> >删除</el-button
</el-row> >
<el-row class="title" style="margin-top: 80px;">
提示文案
</el-row> </el-row>
<el-row class="title" style="margin-top: 80px"> 提示文案 </el-row>
<el-row> <el-row>
<el-form-item class="lh" label="运费说明:"> <el-form-item class="lh" label="运费说明:">
<el-input <el-input
...@@ -109,135 +117,233 @@ ...@@ -109,135 +117,233 @@
size="small" size="small"
maxlength="10" maxlength="10"
style="width: 410px" style="width: 410px"
placeholder="请输入"></el-input> placeholder="请输入"
></el-input>
</el-form-item> </el-form-item>
</el-row> </el-row>
</el-form> </el-form>
</div> </div>
<div class="header-title">商品运费</div> <div class="header-title">商品运费</div>
<el-button <el-button
style="margin: 10px 20px 20px;" style="margin: 10px 20px 20px"
size="small" size="small"
type="primary" type="primary"
@click="addGoodsCondition" @click="addGoodsCondition"
>添加条件 >添加条件
</el-button> </el-button>
<el-table :data="resultForm.goodConditionReqList" @row-click='handleRowClickRole' border class="item-table" style="width: 100%;margin-top: 30px;"> <el-table
<el-table-column prop="goodIds" label="商品ID" min-width="100" align="center"> :data="resultForm.goodConditionReqList"
@row-click="handleRowClickRole"
border
class="item-table"
style="width: 100%; margin-top: 30px"
>
<el-table-column
prop="goodIds"
label="商品ID"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div v-for="(item, index) in scope.row.goodIds" :key="index" style="text-align: center;margin: 0 auto;padding: 0;"> <div
<div v-if="index != scope.row.goodIds.length - 1" style="cursor: pointer;color: #449284;float: left;display: inline-block;" @click="viewGoods(item, scope.row)">{{item}}</div> v-for="(item, index) in scope.row.goodIds"
<div v-else-if="index == scope.row.goodIds.length - 1" style="cursor: pointer;color: #449284;float: left;display: inline-block;" @click="viewGoods(item,scope.row)">{{item}}</div> :key="index"
style="text-align: center; margin: 0 auto; padding: 0"
>
<div
v-if="index != scope.row.goodIds.length - 1"
style="
cursor: pointer;
color: #449284;
float: left;
display: inline-block;
"
@click="viewGoods(item, scope.row)"
>
{{ item }}
</div>
<div
v-else-if="index == scope.row.goodIds.length - 1"
style="
cursor: pointer;
color: #449284;
float: left;
display: inline-block;
"
@click="viewGoods(item, scope.row)"
>
{{ item }}
</div>
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="conditionType" label="包邮条件" min-width="100" align="center"> <el-table-column
prop="conditionType"
label="包邮条件"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.conditionType == 1"> <div v-if="scope.row.conditionType == 1">
{{scope.row.number}}件包邮 {{ scope.row.number }}件包邮
</div> </div>
<div v-if="scope.row.conditionType == 2"> <div v-if="scope.row.conditionType == 2">
{{scope.row.numberText}}元包邮 {{ scope.row.numberText }}元包邮
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="intro" label="说明" min-width="100" align="center"> <el-table-column
prop="intro"
label="说明"
min-width="100"
align="center"
>
</el-table-column> </el-table-column>
<el-table-column prop="status" label="操作" min-width="100" align="center"> <el-table-column
prop="status"
label="操作"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button type="text" size="small" @click="editGoodsFreight(scope.row)">编辑</el-button> <el-button
<el-button type="text" size="small" @click="delGoodsFreight(scope.row,scope.$index)">删除</el-button> type="text"
size="small"
@click="editGoodsFreight(scope.row)"
>编辑</el-button
>
<el-button
type="text"
size="small"
@click="delGoodsFreight(scope.row, scope.$index)"
>删除</el-button
>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-row style="margin: 50px 0 0 220px;"> <el-row style="margin: 50px 0 0 220px">
<el-button <el-button
:disabled="btnDisabled" :disabled="btnDisabled"
type="primary" type="primary"
size="small" size="small"
@click="beforSave()" @click="beforSave()"
>保存</el-button> >保存</el-button
<el-button >
:disabled="btnDisabled" <el-button :disabled="btnDisabled" size="small" @click="cancleSave()"
size="small" >取消</el-button
@click="cancleSave()" >
>取消</el-button>
</el-row> </el-row>
<el-dialog <el-dialog :title="title" :visible.sync="setAddVisible" width="60%">
:title="title"
:visible.sync="setAddVisible"
width="60%">
<!-- <el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">--> <!-- <el-row :gutter="30" class="row search" type="flex" style="margin-bottom:0;">-->
<el-form ref="GoodsPriceForm" <el-form
ref="GoodsPriceForm"
:rules="addRules" :rules="addRules"
:model="goodCondition" :model="goodCondition"
label-width="250px" label-width="250px"
label-suffix=":" label-suffix=":"
label-position="right" label-position="right"
size="mini" size="mini"
style="width: 100%;"> style="width: 100%"
>
<el-form-item label="适用商品ID" class="required-label" prop="goodIds"> <el-form-item
label="适用商品ID"
class="required-label"
prop="goodIds"
>
<el-col :span="12"> <el-col :span="12">
<!-- <el-select v-model="goodCondition.goodIdList"--> <!-- <el-select v-model="goodCondition.goodIdList"-->
<!-- filterable--> <!-- filterable-->
<!-- remote--> <!-- remote-->
<!-- reserve-keyword--> <!-- reserve-keyword-->
<!-- placeholder="多个商品ID,以“、”隔开"--> <!-- placeholder="多个商品ID,以“、”隔开"-->
<!-- clearable--> <!-- clearable-->
<!-- value-key="id"--> <!-- value-key="id"-->
<!-- style="width: 130%;"--> <!-- style="width: 130%;"-->
<!-- :remote-method="remoteMethod"--> <!-- :remote-method="remoteMethod"-->
<!-- @change="nameChange"--> <!-- @change="nameChange"-->
<!-- @visible-change="noSelectHand">--> <!-- @visible-change="noSelectHand">-->
<el-select v-model="goodCondition.goodIds" <el-select
v-model="goodCondition.goodIds"
filterable filterable
clearable clearable
multiple multiple
placeholder="可以选择多个商品ID" placeholder="可以选择多个商品ID"
style="width: 130%;"> style="width: 130%"
>
<el-option <el-option
v-for="item in nameList" v-for="item in nameList"
:key="item.id" :key="item.id"
:label="item.id" :label="item.id"
:value="item.id"> :value="item.id"
<span>{{item.value}}</span> >
<span>{{ item.value }}</span>
</el-option> </el-option>
</el-select> </el-select>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="包邮条件" class="required-label" prop="conditionType"> <el-form-item
label="包邮条件"
class="required-label"
prop="conditionType"
>
<el-col :span="4"> <el-col :span="4">
<el-select <el-select v-model="goodCondition.conditionType" size="small">
v-model="goodCondition.conditionType"
size="small">
<el-option <el-option
v-for="(item,index) in typeList" v-for="(item, index) in typeList"
:key="index" :key="index"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value"
></el-option> ></el-option>
</el-select> </el-select>
</el-col> </el-col>
<el-col :span="9" style="margin-left: 5px;"> <el-col :span="9" style="margin-left: 5px">
<span style="margin-left: 5px;"></span> <span style="margin-left: 5px"></span>
<el-input-number v-if="goodCondition.conditionType == 1" v-model="goodCondition.number" style="margin-left: 5px;" size="small" :precision="0" :min="1" :max="100000"></el-input-number> <el-input-number
<el-input-number v-if="goodCondition.conditionType == 2" v-model="goodCondition.number" style="margin-left: 5px;" size="small" :precision="2" :min="0.00" :max="99999.99"></el-input-number> v-if="goodCondition.conditionType == 1"
<span style="margin-left: 5px;" v-if="goodCondition.conditionType == 1">件包邮</span> v-model="goodCondition.number"
<span style="margin-left: 5px;" v-if="goodCondition.conditionType == 2">元包邮</span> style="margin-left: 5px"
size="small"
:precision="0"
:min="1"
:max="100000"
></el-input-number>
<el-input-number
v-if="goodCondition.conditionType == 2"
v-model="goodCondition.number"
style="margin-left: 5px"
size="small"
:precision="2"
:min="0.0"
:max="99999.99"
></el-input-number>
<span
style="margin-left: 5px"
v-if="goodCondition.conditionType == 1"
>件包邮</span
>
<span
style="margin-left: 5px"
v-if="goodCondition.conditionType == 2"
>元包邮</span
>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="运费说明" class="required-label"> <el-form-item label="运费说明" class="required-label">
<el-col :span="15"> <el-col :span="15">
<el-input v-model="goodCondition.intro" maxlength="10" style="width: 100%;" size="small" placeholder="请输入"></el-input> <el-input
v-model="goodCondition.intro"
maxlength="10"
style="width: 100%"
size="small"
placeholder="请输入"
></el-input>
</el-col> </el-col>
</el-form-item> </el-form-item>
</el-form> </el-form>
<!-- </el-row>--> <!-- </el-row>-->
<span slot="footer" class="dialog-footer" style="text-align: center;"> <span slot="footer" class="dialog-footer" style="text-align: center">
<el-button @click="setAddVisible = false">取 消</el-button> <el-button @click="setAddVisible = false">取 消</el-button>
<el-button type="primary" @click="save()">保存</el-button> <el-button type="primary" @click="save()">保存</el-button>
</span> </span>
...@@ -249,12 +355,17 @@ ...@@ -249,12 +355,17 @@
<script> <script>
let vm = null; let vm = null;
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import { getExpressFee, createOrModifyExpressFee, getFreightConfig, saveFreightConfig } from "@/utils/freight"; import {
import {closeLoading, openLoading} from "../../utils/utils"; getExpressFee,
import { getGoodsIdList } from '@/utils/goods'; createOrModifyExpressFee,
getFreightConfig,
saveFreightConfig,
} from "@/utils/freight";
import { closeLoading, openLoading } from "../../utils/utils";
import { getGoodsIdList } from "@/utils/goods";
export default { export default {
components: { components: {
BreadCrumb BreadCrumb,
}, },
data() { data() {
var checkRange = (rule, value, callback) => { var checkRange = (rule, value, callback) => {
...@@ -276,13 +387,13 @@ export default { ...@@ -276,13 +387,13 @@ export default {
} }
}; };
return { return {
curmbFirst: '云鹊店铺', curmbFirst: "云鹊店铺",
curmbSecond: '运费配置', curmbSecond: "运费配置",
btnDisabled: false, btnDisabled: false,
formData: { formData: {
expressFeeConfigId: 0, expressFeeConfigId: 0,
intro: "", intro: "",
introId:"", introId: "",
list: [ list: [
{ {
fee: 0, fee: 0,
...@@ -291,46 +402,46 @@ export default { ...@@ -291,46 +402,46 @@ export default {
}, },
], ],
}, },
model:{ model: {
type:1, type: 1,
userName: "", userName: "",
}, },
typeList: [ typeList: [
{ {
label: '件数', label: "件数",
value: 1, value: 1,
}, { },
label: '金额', {
label: "金额",
value: 2, value: 2,
}], },
title:"添加条件",
setAddVisible: false,
storeId:'',
goodCondition:{
id:"",
goodIds:[],
conditionType:'',
number:'',
intro:'',
goodIdList:''
},
goodIdsArray:[],
nameList:[],
resultForm:{
goodConditionReqList:[],
intro:'',
introId:'',
storeExpressIntervalReqList:[],
storeId:'',
tradeGoods:''
},
rowIndex:'',
addRules:{
goodIds: [
{required: true, message: "请输入商品ID", trigger: 'blur'}
], ],
title: "添加条件",
setAddVisible: false,
storeId: "",
goodCondition: {
id: "",
goodIds: [],
conditionType: "",
number: "",
intro: "",
goodIdList: "",
},
goodIdsArray: [],
nameList: [],
resultForm: {
goodConditionReqList: [],
intro: "",
introId: "",
storeExpressIntervalReqList: [],
storeId: "",
tradeGoods: "",
},
rowIndex: "",
addRules: {
goodIds: [{ required: true, message: "请输入商品ID", trigger: "blur" }],
conditionType: [ conditionType: [
{required: true, message: "请选择包邮条件", trigger: 'blur'} { required: true, message: "请选择包邮条件", trigger: "blur" },
], ],
}, },
bgRules: [{ validator: checkRange, trigger: "blur" }], bgRules: [{ validator: checkRange, trigger: "blur" }],
...@@ -356,23 +467,22 @@ export default { ...@@ -356,23 +467,22 @@ export default {
this.getFreightConfig(); this.getFreightConfig();
}, },
methods: { methods: {
changeValue(v) {
changeValue(v){
console.log(v); console.log(v);
}, },
// 对数据进行处理 // 对数据进行处理
dataHandler(listData, isRatioLower = true) { dataHandler(listData, isRatioLower = true) {
let list = JSON.parse(JSON.stringify(listData)); let list = JSON.parse(JSON.stringify(listData));
let ratio = 0.01; let ratio = 0.01;
if(isRatioLower) { if (isRatioLower) {
list.map( item => { list.map((item) => {
item.fee = Number(item.fee * ratio).toFixed(2); item.fee = Number(item.fee * ratio).toFixed(2);
item.rangeMin = Number(item.rangeMin * ratio).toFixed(2); item.rangeMin = Number(item.rangeMin * ratio).toFixed(2);
item.rangeMax = Number(item.rangeMax * ratio).toFixed(2); item.rangeMax = Number(item.rangeMax * ratio).toFixed(2);
}); });
} else { } else {
ratio = 100; ratio = 100;
list.map( item => { list.map((item) => {
item.fee = parseInt(item.fee * ratio); item.fee = parseInt(item.fee * ratio);
item.rangeMin = parseInt(item.rangeMin * ratio); item.rangeMin = parseInt(item.rangeMin * ratio);
item.rangeMax = parseInt(item.rangeMax * ratio); item.rangeMax = parseInt(item.rangeMax * ratio);
...@@ -383,15 +493,15 @@ export default { ...@@ -383,15 +493,15 @@ export default {
// 获取配置信息 // 获取配置信息
getExpressFeeInfo() { getExpressFeeInfo() {
getExpressFee().then( res => { getExpressFee().then((res) => {
let curData = res.data; let curData = res.data;
if(res.data && res.data.list && res.data.list.length) { if (res.data && res.data.list && res.data.list.length) {
curData.list = this.dataHandler(res.data.list); curData.list = this.dataHandler(res.data.list);
} else { } else {
curData.list = this.formData.list; curData.list = this.formData.list;
} }
this.formData = curData; this.formData = curData;
}) });
}, },
// 增加单个条件 // 增加单个条件
...@@ -402,9 +512,9 @@ export default { ...@@ -402,9 +512,9 @@ export default {
rangeMax: 0, rangeMax: 0,
}); });
}, },
handleRowClickRole(row){ handleRowClickRole(row) {
this.rowIndex = row.index this.rowIndex = row.index;
console.log(this.rowIndex) console.log(this.rowIndex);
}, },
// 删除条件 // 删除条件
deleteCondition(index) { deleteCondition(index) {
...@@ -443,8 +553,8 @@ export default { ...@@ -443,8 +553,8 @@ export default {
// this.getExpressFeeInfo(); // this.getExpressFeeInfo();
this.$message({ type: "success", message: "保存成功!" }); this.$message({ type: "success", message: "保存成功!" });
this.$router.push({ this.$router.push({
path: `/shop-list` path: `/shop-list`,
}) });
} else { } else {
this.$message({ type: "error", message: res.message }); this.$message({ type: "error", message: res.message });
} }
...@@ -453,10 +563,10 @@ export default { ...@@ -453,10 +563,10 @@ export default {
this.btnDisabled = false; this.btnDisabled = false;
}); });
}, },
cancleSave(){ cancleSave() {
this.$router.push({ this.$router.push({
path: `/shop-list` path: `/shop-list`,
}) });
// this.$confirm(`是否取消?`, "", { // this.$confirm(`是否取消?`, "", {
// confirmButtonText: "确定", // confirmButtonText: "确定",
// cancelButtonText: "取消", // cancelButtonText: "取消",
...@@ -484,163 +594,182 @@ export default { ...@@ -484,163 +594,182 @@ export default {
}, },
// 查看商品详情 // 查看商品详情
viewGoods(item,row){ viewGoods(item, row) {
let goodsType = ""; let goodsType = "";
for(let i=0; i < row.tradeGoods.length; i++){ for (let i = 0; i < row.tradeGoods.length; i++) {
if(item == row.tradeGoods[i].id){ if (item == row.tradeGoods[i].id) {
goodsType = row.tradeGoods[i].goodsType; goodsType = row.tradeGoods[i].goodsType;
break; break;
} }
} }
// url = `/create-good?id=${row.goodsId}&storeId=${this.searchForm.storeId}&goodsType=${goodsType}&commissionFlag=${this.commissionFlag}` // url = `/create-good?id=${row.goodsId}&storeId=${this.searchForm.storeId}&goodsType=${goodsType}&commissionFlag=${this.commissionFlag}`
let url = `/create-good?id=${item}&storeId=${this.storeId}&goodsType=${goodsType}&commissionFlag=2` let url = `/create-good?id=${item}&storeId=${this.storeId}&goodsType=${goodsType}&commissionFlag=2`;
// this.$store.dispatch('goodsManage/changeGoodsInfo', {...row}); // this.$store.dispatch('goodsManage/changeGoodsInfo', {...row});
this.$router.push({ this.$router.push({
path: url path: url,
}) });
}, },
addGoodsCondition(){ addGoodsCondition() {
vm.remoteMethod(); vm.remoteMethod();
vm.goodCondition = { vm.goodCondition = {
id:"", id: "",
goodIds:[], goodIds: [],
conditionType:'', conditionType: "",
number:'', number: "",
intro:'', intro: "",
goodIdList:'' goodIdList: "",
}; };
this.title = "添加条件"; this.title = "添加条件";
this.setAddVisible = true; this.setAddVisible = true;
}, },
setIdArray(goodIdList){ setIdArray(goodIdList) {
let idArray = []; let idArray = [];
if(goodIdList.indexOf("、") > -1){ if (goodIdList.indexOf("、") > -1) {
idArray = goodIdList.split("、"); idArray = goodIdList.split("、");
} } else {
else {
idArray.push(goodIdList); idArray.push(goodIdList);
} }
return idArray; return idArray;
}, },
getIdArray(goodIds){ getIdArray(goodIds) {
let idArray = ''; let idArray = "";
for(let i=0; i < goodIds.length; i++){ for (let i = 0; i < goodIds.length; i++) {
if(i != goodIds.length - 1){ if (i != goodIds.length - 1) {
idArray = idArray + goodIds[i] + "、"; idArray = idArray + goodIds[i] + "、";
} } else if (i == goodIds.length - 1) {
else if(i == goodIds.length - 1){
idArray = idArray + goodIds[i]; idArray = idArray + goodIds[i];
} }
} }
return idArray; return idArray;
}, },
editGoodsFreight(row){ editGoodsFreight(row) {
vm.remoteMethod(); vm.remoteMethod();
let idArray = this.getIdArray(row.goodIds); let idArray = this.getIdArray(row.goodIds);
if(row.conditionType == 2){ if (row.conditionType == 2) {
vm.goodCondition = { vm.goodCondition = {
id:row.id, id: row.id,
goodIds:row.goodIds, goodIds: row.goodIds,
conditionType:row.conditionType, conditionType: row.conditionType,
number:row.number/100, number: row.number / 100,
intro:row.intro, intro: row.intro,
introId:row.introId, introId: row.introId,
goodIdList:idArray goodIdList: idArray,
}; };
} } else {
else {
vm.goodCondition = { vm.goodCondition = {
id:row.id, id: row.id,
goodIds:row.goodIds, goodIds: row.goodIds,
conditionType:row.conditionType, conditionType: row.conditionType,
number:row.number, number: row.number,
intro:row.intro, intro: row.intro,
introId:row.introId, introId: row.introId,
goodIdList:idArray goodIdList: idArray,
}; };
} }
this.title = "修改条件"; this.title = "修改条件";
this.setAddVisible = true; this.setAddVisible = true;
}, },
delGoodsFreight(row,index){ delGoodsFreight(row, index) {
// vm.rowIndex; // vm.rowIndex;
vm.resultForm.goodConditionReqList.splice(index,1); vm.resultForm.goodConditionReqList.splice(index, 1);
}, },
// 获取配置信息 // 获取配置信息
getFreightConfig() { getFreightConfig() {
getFreightConfig({ id: this.storeId }).then((res) => {
getFreightConfig({id:this.storeId}).then( res => {
let curData = res.data; let curData = res.data;
if(res.data && res.data.expressFeeIntervalConfigList && res.data.expressFeeIntervalConfigList.length) { if (
curData.list = this.dataHandler(res.data.expressFeeIntervalConfigList); res.data &&
res.data.expressFeeIntervalConfigList &&
res.data.expressFeeIntervalConfigList.length
) {
curData.list = this.dataHandler(
res.data.expressFeeIntervalConfigList
);
} else { } else {
curData.list = this.formData.list; curData.list = this.formData.list;
} }
if(res.data.goodConditionDtoList){ if (res.data.goodConditionDtoList) {
for (let i=0;i < res.data.goodConditionDtoList.length; i++){ for (let i = 0; i < res.data.goodConditionDtoList.length; i++) {
if (
if(res.data.goodConditionDtoList[i].goodExpressConditionConfig.conditionType == 2){ res.data.goodConditionDtoList[i].goodExpressConditionConfig
this.resultForm.goodConditionReqList.push( .conditionType == 2
{id:res.data.goodConditionDtoList[i].goodExpressConditionConfig.id, ) {
goodIds:res.data.goodConditionDtoList[i].goodIds, this.resultForm.goodConditionReqList.push({
conditionType:res.data.goodConditionDtoList[i].goodExpressConditionConfig.conditionType, id: res.data.goodConditionDtoList[i].goodExpressConditionConfig
number:res.data.goodConditionDtoList[i].goodExpressConditionConfig.number, .id,
numberText:res.data.goodConditionDtoList[i].goodExpressConditionConfig.number/100, goodIds: res.data.goodConditionDtoList[i].goodIds,
intro:res.data.goodConditionDtoList[i].goodExpressConditionConfig.intro, conditionType:
introId:res.data.goodConditionDtoList[i].goodExpressConditionConfig.id, res.data.goodConditionDtoList[i].goodExpressConditionConfig
tradeGoods: res.data.goodConditionDtoList[i].tradeGoods .conditionType,
number:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.number,
numberText:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.number / 100,
intro:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.intro,
introId:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.id,
tradeGoods: res.data.goodConditionDtoList[i].tradeGoods,
}); });
} } else {
else { this.resultForm.goodConditionReqList.push({
this.resultForm.goodConditionReqList.push( id: res.data.goodConditionDtoList[i].goodExpressConditionConfig
{id:res.data.goodConditionDtoList[i].goodExpressConditionConfig.id, .id,
goodIds:res.data.goodConditionDtoList[i].goodIds, goodIds: res.data.goodConditionDtoList[i].goodIds,
conditionType:res.data.goodConditionDtoList[i].goodExpressConditionConfig.conditionType, conditionType:
number:res.data.goodConditionDtoList[i].goodExpressConditionConfig.number, res.data.goodConditionDtoList[i].goodExpressConditionConfig
numberText:res.data.goodConditionDtoList[i].goodExpressConditionConfig.number, .conditionType,
intro:res.data.goodConditionDtoList[i].goodExpressConditionConfig.intro, number:
introId:res.data.goodConditionDtoList[i].goodExpressConditionConfig.id, res.data.goodConditionDtoList[i].goodExpressConditionConfig
tradeGoods: res.data.goodConditionDtoList[i].tradeGoods .number,
numberText:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.number,
intro:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.intro,
introId:
res.data.goodConditionDtoList[i].goodExpressConditionConfig
.id,
tradeGoods: res.data.goodConditionDtoList[i].tradeGoods,
}); });
} }
} }
} }
// this.tableData = res.data.goodConditionDtoList; // this.tableData = res.data.goodConditionDtoList;
this.formData.list = curData.list; this.formData.list = curData.list;
this.formData.intro = res.data.storeExpressFeeIntro.intro; this.formData.intro = res.data.storeExpressFeeIntro.intro;
this.formData.introId = res.data.storeExpressFeeIntro.id; this.formData.introId = res.data.storeExpressFeeIntro.id;
}) });
}, },
// 本应分页加载,这个设置pageSize为最大值解决 // 本应分页加载,这个设置pageSize为最大值解决
remoteMethod(val) { remoteMethod(val) {
this.searchForm = { this.searchForm = {
goodsIdList:[], goodsIdList: [],
goodIdStr :val, goodIdStr: val,
goodsType :'', goodsType: "",
pageNo:1, pageNo: 1,
pageSize: 999, pageSize: 999,
storeId:this.storeId, storeId: this.storeId,
commissionType: 0 commissionType: 0,
}; };
// if (val.length >= 2) { // if (val.length >= 2) {
// console.log('搜索',val) // console.log('搜索',val)
getGoodsIdList(this.searchForm) getGoodsIdList(this.searchForm)
// this.GET(`/diagnose/commission/downDoctor/doctorInfoByNameLike?name=${val}`) // this.GET(`/diagnose/commission/downDoctor/doctorInfoByNameLike?name=${val}`)
.then(function (res) { .then(function (res) {
if (res.code == '000000') { if (res.code == "000000") {
// let data = JSON.parse(JSON.stringify(res.data.data));//通过这个实现深拷贝 // let data = JSON.parse(JSON.stringify(res.data.data));//通过这个实现深拷贝
let list = res.data.goodsList; let list = res.data.goodsList;
vm.expertData = list; vm.expertData = list;
...@@ -650,13 +779,14 @@ export default { ...@@ -650,13 +779,14 @@ export default {
value: `${item.goodsId} ${item.goodsName}`, value: `${item.goodsId} ${item.goodsName}`,
id: item.goodsId, id: item.goodsId,
name: item.goodsName, name: item.goodsName,
goodsType: item.goodsType goodsType: item.goodsType,
} };
}) });
// console.log('新数组',newList) // console.log('新数组',newList)
vm.nameList = newList; vm.nameList = newList;
} }
}).catch(function (error) { })
.catch(function (error) {
errorResponseCheck(error, vm); errorResponseCheck(error, vm);
}); });
// }else { // }else {
...@@ -668,17 +798,17 @@ export default { ...@@ -668,17 +798,17 @@ export default {
// console.log('选中的值',val) // console.log('选中的值',val)
let addFlag = true; let addFlag = true;
if (val) { if (val) {
for(let i=0; i < vm.expertData.length; i++){ for (let i = 0; i < vm.expertData.length; i++) {
if (val == vm.expertData[i].goodsId) { if (val == vm.expertData[i].goodsId) {
let item = vm.expertData[i]; let item = vm.expertData[i];
vm.goodIdsArray = vm.goodCondition.goodIds; vm.goodIdsArray = vm.goodCondition.goodIds;
for(let j=0; j < vm.goodIdsArray.length; j++){ for (let j = 0; j < vm.goodIdsArray.length; j++) {
if(vm.goodIdsArray[j] == val){ if (vm.goodIdsArray[j] == val) {
addFlag = false; addFlag = false;
break; break;
} }
} }
if(addFlag){ if (addFlag) {
vm.goodIdsArray.push(val); vm.goodIdsArray.push(val);
} }
vm.goodCondition.goodIdList = this.getIdArray(vm.goodIdsArray); vm.goodCondition.goodIdList = this.getIdArray(vm.goodIdsArray);
...@@ -691,7 +821,7 @@ export default { ...@@ -691,7 +821,7 @@ export default {
// vm.model.userId = item.doctorId; // vm.model.userId = item.doctorId;
} }
} }
}else { } else {
vm.goodCondition.goodIdList = ""; vm.goodCondition.goodIdList = "";
} }
vm.nameList = []; vm.nameList = [];
...@@ -702,103 +832,114 @@ export default { ...@@ -702,103 +832,114 @@ export default {
} }
}, },
// 保存商品运费添加条件 // 保存商品运费添加条件
save(){ save() {
let addFlag = false; let addFlag = false;
this.$refs["GoodsPriceForm"].validate((valid) => { this.$refs["GoodsPriceForm"].validate((valid) => {
if (!valid) return false; if (!valid) return false;
// vm.goodCondition.goodIds = []; // vm.goodCondition.goodIds = [];
// vm.goodCondition.goodIds = vm.setIdArray(vm.goodCondition.goodIdList); // vm.goodCondition.goodIds = vm.setIdArray(vm.goodCondition.goodIdList);
if(vm.goodCondition.conditionType == 2 && vm.goodCondition.number >= 100000){ if (
this.$message({ type: "warning", message: "包邮金额最大不能超过99999.99!" }); vm.goodCondition.conditionType == 2 &&
vm.goodCondition.number >= 100000
) {
this.$message({
type: "warning",
message: "包邮金额最大不能超过99999.99!",
});
return; return;
} }
if(vm.resultForm.goodConditionReqList.length > 0){ if (vm.resultForm.goodConditionReqList.length > 0) {
// this.formData.tabs[0].contents = vm.resultForm.goodConditionReqList.filter(function (item) { // this.formData.tabs[0].contents = vm.resultForm.goodConditionReqList.filter(function (item) {
// return item.goodIds == vm.goodCondition.goodIds; // return item.goodIds == vm.goodCondition.goodIds;
// }); // });
for(let i=0; i < vm.resultForm.goodConditionReqList.length; i++){ for (let i = 0; i < vm.resultForm.goodConditionReqList.length; i++) {
if((vm.goodCondition.id != "" if (
&& vm.resultForm.goodConditionReqList[i].id == vm.goodCondition.id) (vm.goodCondition.id != "" &&
|| (vm.goodCondition.id == "" && vm.getIdArray(vm.resultForm.goodConditionReqList[i].goodIds) == vm.getIdArray(vm.goodCondition.goodIds))){ vm.resultForm.goodConditionReqList[i].id ==
vm.resultForm.goodConditionReqList[i].conditionType = vm.goodCondition.conditionType; vm.goodCondition.id) ||
vm.resultForm.goodConditionReqList[i].goodIds = vm.goodCondition.goodIds; (vm.goodCondition.id == "" &&
if(vm.goodCondition.conditionType == 2){ vm.getIdArray(vm.resultForm.goodConditionReqList[i].goodIds) ==
vm.resultForm.goodConditionReqList[i].number = vm.goodCondition.number * 100; vm.getIdArray(vm.goodCondition.goodIds))
vm.resultForm.goodConditionReqList[i].numberText = vm.goodCondition.number; ) {
} vm.resultForm.goodConditionReqList[i].conditionType =
else{ vm.goodCondition.conditionType;
vm.resultForm.goodConditionReqList[i].number = vm.goodCondition.number; vm.resultForm.goodConditionReqList[i].goodIds =
} vm.goodCondition.goodIds;
vm.resultForm.goodConditionReqList[i].intro = vm.goodCondition.intro; if (vm.goodCondition.conditionType == 2) {
vm.resultForm.goodConditionReqList[i].introId = vm.goodCondition.introId; vm.resultForm.goodConditionReqList[i].number =
vm.resultForm.goodConditionReqList[i].tradeGoods = vm.setTradeGoods(vm.goodCondition.goodIds); vm.goodCondition.number * 100;
vm.resultForm.goodConditionReqList[i].numberText =
vm.goodCondition.number;
} else {
vm.resultForm.goodConditionReqList[i].number =
vm.goodCondition.number;
}
vm.resultForm.goodConditionReqList[i].intro =
vm.goodCondition.intro;
vm.resultForm.goodConditionReqList[i].introId =
vm.goodCondition.introId;
vm.resultForm.goodConditionReqList[i].tradeGoods =
vm.setTradeGoods(vm.goodCondition.goodIds);
addFlag = false; addFlag = false;
break; break;
} }
if(i == vm.resultForm.goodConditionReqList.length - 1){ if (i == vm.resultForm.goodConditionReqList.length - 1) {
addFlag = true; addFlag = true;
} }
} }
if(addFlag){ if (addFlag) {
vm.addGoodConditionReqList(); vm.addGoodConditionReqList();
} }
} } else {
else {
vm.addGoodConditionReqList(); vm.addGoodConditionReqList();
} }
vm.setAddVisible = false; vm.setAddVisible = false;
}); });
}, },
addGoodConditionReqList(){ addGoodConditionReqList() {
if (vm.goodCondition.conditionType == 2) {
if(vm.goodCondition.conditionType == 2){
vm.resultForm.goodConditionReqList.push({ vm.resultForm.goodConditionReqList.push({
goodIds:vm.goodCondition.goodIds, goodIds: vm.goodCondition.goodIds,
conditionType:vm.goodCondition.conditionType, conditionType: vm.goodCondition.conditionType,
number:vm.goodCondition.number * 100, number: vm.goodCondition.number * 100,
numberText:vm.goodCondition.number, numberText: vm.goodCondition.number,
intro:vm.goodCondition.intro, intro: vm.goodCondition.intro,
introId:vm.goodCondition.introId, introId: vm.goodCondition.introId,
tradeGoods: vm.setTradeGoods(vm.goodCondition.goodIds) tradeGoods: vm.setTradeGoods(vm.goodCondition.goodIds),
}); });
} } else {
else {
vm.resultForm.goodConditionReqList.push({ vm.resultForm.goodConditionReqList.push({
goodIds:vm.goodCondition.goodIds, goodIds: vm.goodCondition.goodIds,
conditionType:vm.goodCondition.conditionType, conditionType: vm.goodCondition.conditionType,
number:vm.goodCondition.number, number: vm.goodCondition.number,
numberText:vm.goodCondition.number, numberText: vm.goodCondition.number,
intro:vm.goodCondition.intro, intro: vm.goodCondition.intro,
introId:vm.goodCondition.introId, introId: vm.goodCondition.introId,
tradeGoods: vm.setTradeGoods(vm.goodCondition.goodIds) tradeGoods: vm.setTradeGoods(vm.goodCondition.goodIds),
}); });
} }
}, },
setTradeGoods(goodIds){ setTradeGoods(goodIds) {
let tradeGoods = []; let tradeGoods = [];
if(goodIds.length > 0){ if (goodIds.length > 0) {
for(let i=0; i < goodIds.length; i++){ for (let i = 0; i < goodIds.length; i++) {
for(let j=0; j < vm.nameList.length; j++){ for (let j = 0; j < vm.nameList.length; j++) {
if(goodIds[i] == vm.nameList[j].id){ if (goodIds[i] == vm.nameList[j].id) {
tradeGoods.push({ tradeGoods.push({
id:vm.nameList[j].id, id: vm.nameList[j].id,
goodsType: vm.nameList[j].goodsType goodsType: vm.nameList[j].goodsType,
}) });
} }
} }
} }
} }
return tradeGoods; return tradeGoods;
},
}
}, },
}; };
</script> </script>
...@@ -862,9 +1003,4 @@ export default { ...@@ -862,9 +1003,4 @@ export default {
} }
} }
} }
</style> </style>
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册