提交 4ff9ddc5 编写于 作者: yi.li's avatar yi.li

订单管理接口联调

上级 ad17dc8a
...@@ -19,7 +19,7 @@ export const queryStore = (params) => { ...@@ -19,7 +19,7 @@ export const queryStore = (params) => {
return fetch({ return fetch({
headers, headers,
url: getBaseUrl(`store/query`), url: getBaseUrl(`store/query`),
method: 'get', method: 'post',
data: params, data: params,
description: '查询店铺信息', description: '查询店铺信息',
}) })
...@@ -34,3 +34,14 @@ export const queryOrderDetail = (orderId) => { ...@@ -34,3 +34,14 @@ export const queryOrderDetail = (orderId) => {
description: '查询订单详情', description: '查询订单详情',
}) })
}; };
///trade/order/admin/query/list
export const queryOrderList = (params) => {
return fetch({
headers,
url: getBaseUrl(`trade/order/admin/query/list`),
method: 'get',
params: params,
description: '查询订单列表',
})
};
\ No newline at end of file
...@@ -4,11 +4,11 @@ ...@@ -4,11 +4,11 @@
<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="detail-all-info"> <div class="detail-all-info">
<div class="trade-status" v-if="orderStatus == 1"><img src="../../assets/image/order/order_status1.png"/>交易成功</div> <div class="trade-status" v-if="orderDetailData.showStatus == 1"><img src="../../assets/image/order/order_status1.png"/>交易成功</div>
<div class="trade-status" v-if="orderStatus == 2"><img src="../../assets/image/order/order_status2.png"/>已发货</div> <div class="trade-status" v-if="orderDetailData.showStatus == 2"><img src="../../assets/image/order/order_status2.png"/>已发货</div>
<div class="trade-status" v-if="orderStatus == 3"><img src="../../assets/image/order/order_status3.png"/>待发货</div> <div class="trade-status" v-if="orderDetailData.showStatus == 3"><img src="../../assets/image/order/order_status3.png"/>待发货</div>
<div class="trade-status" v-if="orderStatus == 4"><img src="../../assets/image/order/order_status4.png"/>待支付</div> <div class="trade-status" v-if="orderDetailData.showStatus == 4"><img src="../../assets/image/order/order_status4.png"/>等待买家付款</div>
<div class="trade-status" v-if="orderStatus == 5"><img src="../../assets/image/order/order_status5.png"/>交易关闭</div> <div class="trade-status" v-if="orderDetailData.showStatus == 5"><img src="../../assets/image/order/order_status5.png"/>交易关闭</div>
<div class="trade-info"> <div class="trade-info">
<el-card class="left-card"> <el-card class="left-card">
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
...@@ -32,7 +32,7 @@ ...@@ -32,7 +32,7 @@
<div> <div>
<p>订单编号:{{orderDetailData.orderNo}}</p> <p>订单编号:{{orderDetailData.orderNo}}</p>
<p>下单时间:{{orderDetailData.createdTime}}</p> <p>下单时间:{{orderDetailData.createdTime}}</p>
<p>支付方式:微信支付</p> <p>支付方式:{{orderDetailData.payChannel}}</p>
<p>支付时间:{{orderDetailData.paymentTime}}</p> <p>支付时间:{{orderDetailData.paymentTime}}</p>
<p>发货时间:{{orderDetailData.sendTime}}</p> <p>发货时间:{{orderDetailData.sendTime}}</p>
<p>成交时间:{{orderDetailData.finishTime}}</p> <p>成交时间:{{orderDetailData.finishTime}}</p>
...@@ -63,9 +63,9 @@ ...@@ -63,9 +63,9 @@
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="total-set"> <div class="total-set">
<p><span>商品总额:</span><span>180.00</span></p> <p><span>商品总额:</span><span>{{orderDetailData.totalPrice}}</span></p>
<p><span>优惠:</span><span>10.00</span></p> <p><span>优惠:</span><span>{{orderDetailData.totalCouponFee}}</span></p>
<p class="total-price"><span>实付:</span><span>170.00</span></p> <p class="total-price"><span>实付:</span><span>{{orderDetailData.amount}}</span></p>
</div> </div>
</div> </div>
</div> </div>
...@@ -85,8 +85,9 @@ ...@@ -85,8 +85,9 @@
curmbSecond: '订单管理', curmbSecond: '订单管理',
jumPathThird: '/order-manage', jumPathThird: '/order-manage',
curmbThird: '订单详情', curmbThird: '订单详情',
orderId: 1, orderId: 111,
orderStatus: 1, showStatus: 1,
storeType: null,
orderDetailData: { orderDetailData: {
amount: '',//订单实付总金额 amount: '',//订单实付总金额
createdTime: '',//下单时间 createdTime: '',//下单时间
...@@ -103,11 +104,15 @@ ...@@ -103,11 +104,15 @@
totalPrice: '',//订单总金额 totalPrice: '',//订单总金额
remark: '',//备注 remark: '',//备注
sendTime: '',//发货时间 sendTime: '',//发货时间
payChannel: '',//支付方式
showStatus: null,//订单展示状态,1已完成,2已发货,3待发货,4待支付,5交易关闭
}, },
tableData: [], tableData: [],
} }
}, },
created() { created() {
this.orderId = this.$route.query.id;
this.init(); this.init();
}, },
methods: { methods: {
...@@ -117,6 +122,7 @@ ...@@ -117,6 +122,7 @@
if (res.code == '000000') { if (res.code == '000000') {
const { goodsInfoDtoList } = res.data; const { goodsInfoDtoList } = res.data;
this.orderDetailData = {...res.data}; this.orderDetailData = {...res.data};
this.storeType = res.data.storeType;
this.tableData = goodsInfoDtoList; this.tableData = goodsInfoDtoList;
} }
}) })
......
...@@ -7,17 +7,17 @@ ...@@ -7,17 +7,17 @@
<el-row :gutter="30" type="flex" style="margin-top: 10px"> <el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="18"> <el-col :span="18">
<el-form-item label="商品名称"> <el-form-item label="商品名称">
<el-input v-model="searchForm.name" size="small" placeholder="请输入商品名称"></el-input> <el-input v-model="searchForm.goodsName" size="small" placeholder="请输入商品名称"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="订单号"> <el-form-item label="订单号">
<el-input v-model="searchForm.id" size="small" placeholder="请输入订单号"></el-input> <el-input v-model="searchForm.orderNo" size="small" placeholder="请输入订单号"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="买家名称"> <el-form-item label="买家名称">
<el-input v-model="searchForm.name" size="small" placeholder="请输入买家名称"></el-input> <el-input v-model="searchForm.receiver" size="small" placeholder="请输入买家名称"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="下单时间"> <el-form-item label="下单时间">
<el-date-picker <el-date-picker
v-model="searchForm.orderTime" v-model="searchForm.orderDate"
type="datetime" type="datetime"
size="small" size="small"
value-format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss"
...@@ -41,7 +41,7 @@ ...@@ -41,7 +41,7 @@
</el-tabs> </el-tabs>
<el-table :data="tableData" border max-height="1000" class="item-table" style="width: 100%;margin-top: 10px;"> <el-table :data="tableData" border max-height="1000" class="item-table" style="width: 100%;margin-top: 10px;">
<el-table-column prop="id" label="订单号" min-width="100" align="center"></el-table-column> <el-table-column prop="id" label="订单号" min-width="100" align="center"></el-table-column>
<el-table-column prop="name" label="商品名称" min-width="100" align="center"></el-table-column> <el-table-column prop="goodsName" label="商品名称" min-width="100" align="center"></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">
<span>{{ scope.row.status | rangeStatus }}</span> <span>{{ scope.row.status | rangeStatus }}</span>
...@@ -49,20 +49,20 @@ ...@@ -49,20 +49,20 @@
</el-table-column> </el-table-column>
<el-table-column prop="name" label="实收款" min-width="100" align="center"></el-table-column> <el-table-column prop="name" label="实收款" min-width="100" align="center"></el-table-column>
<el-table-column prop="name" label="买家" min-width="100" align="center"></el-table-column> <el-table-column prop="name" label="买家" min-width="100" align="center"></el-table-column>
<el-table-column prop="name" label="数量" min-width="100" align="center"></el-table-column> <el-table-column prop="goodsQuantity" label="数量" min-width="100" align="center"></el-table-column>
<el-table-column prop="name" label="规格" min-width="100" align="center"></el-table-column> <el-table-column prop="size" label="规格" min-width="100" align="center"></el-table-column>
<el-table-column prop="name" label="单价" min-width="100" align="center"></el-table-column> <el-table-column prop="price" label="单价" min-width="100" align="center"></el-table-column>
<el-table-column prop="createdTime" label="下单时间" min-width="100" align="center"> <el-table-column prop="createdTime" label="下单时间" min-width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.createdTime | liveDateFilter }}</span> <span>{{ scope.row.createdTime | liveDateFilter }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="name" label="备注" min-width="100" align="center"></el-table-column> <el-table-column prop="comments" label="备注" min-width="100" align="center"></el-table-column>
<el-table-column label="操作" min-width="250" align="center" fixed="right"> <el-table-column label="操作" min-width="250" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div> <div>
<el-button @click="closeTrade(scope.row)" type="text" size="small">关闭交易</el-button> <!--<el-button @click="closeTrade(scope.row)" type="text" size="small">关闭交易</el-button>-->
<el-button @click="changePrice(scope.row)" type="text" size="small">修改价格</el-button> <!--<el-button @click="changePrice(scope.row)" type="text" size="small">修改价格</el-button>-->
<el-button @click="sendGoods(scope.row)" type="text" size="small">发货</el-button> <el-button @click="sendGoods(scope.row)" type="text" size="small">发货</el-button>
<el-button @click="distribute(scope.row)" type="text" size="small">配送</el-button> <el-button @click="distribute(scope.row)" type="text" size="small">配送</el-button>
<el-button @click="viewLogistics(scope.row)" type="text" size="small">查看物流</el-button> <el-button @click="viewLogistics(scope.row)" type="text" size="small">查看物流</el-button>
...@@ -188,6 +188,7 @@ ...@@ -188,6 +188,7 @@
// import { openLoading, closeLoading } from "../../utils/utils"; // import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import SendSetDialog from "@/components/shop/send-set-dialog"; import SendSetDialog from "@/components/shop/send-set-dialog";
import { queryOrderList } from "@/utils/shop";
export default { export default {
components: { components: {
SendSetDialog, SendSetDialog,
...@@ -200,9 +201,12 @@ ...@@ -200,9 +201,12 @@
showAllFlag: false, showAllFlag: false,
showNewFlag: false, showNewFlag: false,
searchForm: { searchForm: {
name: '', showStatus: -1,
id: '', storeId: 0,
orderTime: '', goodsName: '',
orderNo: '',
receiver: '',
orderDate: '',
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
}, },
...@@ -255,17 +259,28 @@ ...@@ -255,17 +259,28 @@
} }
}, },
created() { created() {
this.searchList();
}, },
methods: { methods: {
searchList(){ searchList(){
queryOrderList(this.searchForm).then(res => {
console.log('查询结果',res)
if (res.code == '000000') {
this.tableData = res.data.orderSingleDtoList;
this.totalRows = res.data.totalNum;
}
})
}, },
resetForm() { resetForm() {
this.searchForm = { this.searchForm = {
name: '', showStatus: -1,
id: '', storeId: 0,
orderTime: '' goodsName: '',
orderNo: '',
receiver: '',
orderDate: '',
pageNo: 1,
pageSize: 10,
}; };
this.searchList(); this.searchList();
}, },
...@@ -308,7 +323,24 @@ ...@@ -308,7 +323,24 @@
this.searchForm.pageNo = val; this.searchForm.pageNo = val;
this.searchList(); this.searchList();
}, },
handleClick(tab, event) {}, handleClick(tab, event) {
//-1全部,1已完成,2已发货,3待发货,4待支付,5交易关闭
if (tab == 'all') {//全部
this.searchForm.showStatus = -1;
}else if (tab == 'first') {//等待买家付款
this.searchForm.showStatus = 4;
}else if (tab == 'second') {//待发货
this.searchForm.showStatus = 3;
}else if (tab == 'third') {//已发货
this.searchForm.showStatus = 2;
}else if (tab == 'fourth') {//交易成功
this.searchForm.showStatus = 1;
}else if (tab == 'five') {//交易关闭
this.searchForm.showStatus = 5;
}
this.searchForm.pageNo = 1;
this.searchList();
},
//关闭交易 //关闭交易
closeTrade(row) { closeTrade(row) {
this.closeTradeDialog = true; this.closeTradeDialog = true;
...@@ -398,7 +430,7 @@ ...@@ -398,7 +430,7 @@
this.$router.push({ this.$router.push({
path: `/order-detail`, path: `/order-detail`,
query:{ query:{
// storeId: row.orderId, id: row.id,
} }
}) })
}, },
......
<template> <template>
<div class="create-shop-wrapper"> <div class="create-shop-wrapper">
<bread-crumb :curmbFirst="curmbFirst"></bread-crumb> <bread-crumb :curmbFirst="curmbFirst" :curmbSecond="curmbSecond"></bread-crumb>
<div class="create-shop-content screenSet" id="screenSet"> <div class="create-shop-content screenSet" id="screenSet">
<el-row class="step-content"> <el-row class="step-content">
<el-col :span="20"> <el-col :span="20">
...@@ -91,10 +91,10 @@ ...@@ -91,10 +91,10 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<div v-if="formData.storeType == '1'"> <div v-if="formData.storeType == 1">
<el-row> <el-row>
<el-col :span="10"> <el-col :span="10">
<el-form-item label="入驻企业名称" class="required-label"> <el-form-item label="入驻企业名称" prop="compainName" class="required-label">
<el-input <el-input
type="text" type="text"
maxlength="40" maxlength="40"
...@@ -106,7 +106,7 @@ ...@@ -106,7 +106,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" :offset="1"> <el-col :span="10" :offset="1">
<el-form-item label="联系手机号" label-width="95px" class="required-label"> <el-form-item label="联系手机号" prop="phoneNum" label-width="95px" class="required-label">
<el-input <el-input
type="text" type="text"
size="small" size="small"
...@@ -246,9 +246,9 @@ ...@@ -246,9 +246,9 @@
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
<div v-if="formData.storeType == '2'"> <div v-if="formData.storeType == 2">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="医生姓名" class="required-label"> <el-form-item label="医生姓名" prop="docName" class="required-label">
<el-input <el-input
type="text" type="text"
maxlength="40" maxlength="40"
...@@ -260,10 +260,11 @@ ...@@ -260,10 +260,11 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" :offset="1"> <el-col :span="10" :offset="1">
<el-form-item label="联系手机号" label-width="95px" class="required-label"> <el-form-item label="联系手机号" prop="docPhone" label-width="95px" class="required-label">
<el-input <el-input
type="text" type="text"
size="small" size="small"
maxlength="11"
v-model="formData.docPhone" v-model="formData.docPhone"
placeholder="请输入联系电话" placeholder="请输入联系电话"
style="width:85%;" style="width:85%;"
...@@ -271,9 +272,9 @@ ...@@ -271,9 +272,9 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</div> </div>
<div v-if="formData.storeType == '3'"> <div v-if="formData.storeType == 3">
<el-col :span="10"> <el-col :span="10">
<el-form-item label="入驻药店名称" class="required-label"> <el-form-item label="入驻药店名称" prop="drugstoreName" class="required-label">
<el-input <el-input
type="text" type="text"
maxlength="40" maxlength="40"
...@@ -285,10 +286,11 @@ ...@@ -285,10 +286,11 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="10" :offset="1"> <el-col :span="10" :offset="1">
<el-form-item label="联系电话" label-width="95px" class="required-label"> <el-form-item label="联系电话" prop="drugstorePhone" label-width="95px" class="required-label">
<el-input <el-input
type="text" type="text"
size="small" size="small"
maxlength="11"
v-model="formData.drugstorePhone" v-model="formData.drugstorePhone"
placeholder="请输入联系电话" placeholder="请输入联系电话"
style="width:85%;" style="width:85%;"
...@@ -409,6 +411,7 @@ ...@@ -409,6 +411,7 @@
import { doUpload, getFilePath } from "../../utils/qiniu-util"; import { doUpload, getFilePath } from "../../utils/qiniu-util";
import Cropper from '@/components/common/cropper.vue' import Cropper from '@/components/common/cropper.vue'
import { saveStore, queryStore } from '@/utils/shop'; import { saveStore, queryStore } from '@/utils/shop';
import { checkMobile } from '@/utils/patients/checkValid'
export default { export default {
components: { components: {
BreadCrumb, BreadCrumb,
...@@ -426,16 +429,18 @@ ...@@ -426,16 +429,18 @@
}; };
return{ return{
curmbFirst: '云鹊店铺', curmbFirst: '云鹊店铺',
curmbSecond: '新建店铺',
storeData: {},
typeList: [ typeList: [
{ {
label: '供货商', label: '供货商',
value: '1', value: 1,
}, { }, {
label: '医生小店', label: '医生小店',
value: '2', value: 2,
}, { }, {
label: '小药房', label: '小药房',
value: '3', value: 3,
} }
], ],
formData: { formData: {
...@@ -448,11 +453,13 @@ ...@@ -448,11 +453,13 @@
storeOwner: '', storeOwner: '',
storePhone: '', storePhone: '',
imageList: [], imageList: [],
adminList: [{ adminList: [
{
adminName: '', adminName: '',
adminMobile: '', adminMobile: '',
id: null, id: null,
}],//供货商-管理员信息 }
],//供货商-管理员信息
compainName: '',//供货商-入驻企业名称 compainName: '',//供货商-入驻企业名称
phoneNum: '',//供货商-联系电话 phoneNum: '',//供货商-联系电话
imgUrlP1: '',//证明图1 imgUrlP1: '',//证明图1
...@@ -466,6 +473,42 @@ ...@@ -466,6 +473,42 @@
imgUrlC2: '',//证明图2 imgUrlC2: '',//证明图2
imgUrlC3: '',//证明图3 imgUrlC3: '',//证明图3
}, },
supplierImg1: {
id: null,
imageSort: 1,
imageType: 2,
imageUrl: '',
},
supplierImg2: {
id: null,
imageSort: 2,
imageType: 2,
imageUrl: '',
},
supplierImg3: {
id: null,
imageSort: 3,
imageType: 2,
imageUrl: '',
},
drugstoreImg1: {
id: null,
imageSort: 1,
imageType: 2,
imageUrl: '',
},
drugstoreImg2: {
id: null,
imageSort: 2,
imageType: 2,
imageUrl: '',
},
drugstoreImg3: {
id: null,
imageSort: 3,
imageType: 2,
imageUrl: '',
},
showCropper: false, showCropper: false,
currentOption: { currentOption: {
offset_x: 120, offset_x: 120,
...@@ -508,7 +551,28 @@ ...@@ -508,7 +551,28 @@
], ],
storeType: [ storeType: [
{ required: true, message: "请选择店铺类型", trigger: "blur" }, { required: true, message: "请选择店铺类型", trigger: "blur" },
] ],
compainName: [
{ required: true, message: "请输入入驻企业名称", trigger: "blur" },
],
phoneNum: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{validator: checkMobile, trigger: ['change','blur']}
],
docName: [
{ required: true, message: "请输入医生姓名", trigger: "blur" },
],
docPhone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{validator: checkMobile, trigger: ['change','blur']}
],
drugstoreName: [
{ required: true, message: "请输入入驻药店名称", trigger: "blur" },
],
drugstorePhone: [
{ required: true, message: "请输入联系电话", trigger: "blur" },
{validator: checkMobile, trigger: ['change','blur']}
],
}, },
imgMouseOver1: false, imgMouseOver1: false,
uploadImgMessage1: false,//未上传图片,校验提示语 uploadImgMessage1: false,//未上传图片,校验提示语
...@@ -525,25 +589,95 @@ ...@@ -525,25 +589,95 @@
watch: { watch: {
'formData.adminList': function(val) { 'formData.adminList': function(val) {
val.map((item,index) => { val.map((item,index) => {
// item.flag = false;
// if (val.length == index) {
// item.flag = true;
// }
}) })
}, },
}, },
created() { created() {
vm = this; vm = this;
this.enterType = this.$route.query.enterType;
this.formData.storeId = this.$route.query.storeId || null; this.formData.storeId = this.$route.query.storeId || null;
if (this.formData.storeId) {//回显 this.storeData = this.$route.query.storeData || {};
this.initInfo(); if (this.storeData) {
this.storeData = JSON.parse(this.storeData);
}
if (this.formData.storeId) {
this.curmbSecond = '编辑店铺';
// this.initInfo();
this.getStoreInfo();
}else {
this.curmbSecond = '新建店铺';
} }
}, },
methods: { methods: {
//回显数据处理
getStoreInfo() {
if (!this.storeData || !this.storeData.tradeStore) return;
const { storeLogo, storeName, storeDescription, storeType, storeOwner, storePhone, } = this.storeData.tradeStore;
this.formData.storeLogo = storeLogo;
this.formData.storeName = storeName;
this.formData.storeDescription = storeDescription;
this.formData.storeType = storeType;
if (storeType == 1) {
this.formData.compainName = storeOwner;
this.formData.phoneNum = storePhone;
if (this.storeData.imageList && this.storeData.imageList.length) {
this.storeData.imageList.map(item => {
if (item.imageSort == 1) {
this.supplierImg1 = item;
this.formData.imgUrlP1 = item.imageUrl;
}else if (item.imageSort == 2) {
this.supplierImg2 = item;
this.formData.imgUrlP2 = item.imageUrl;
}else if (item.imageSort == 3) {
this.supplierImg3 = item;
this.formData.imgUrlP3 = item.imageUrl;
}
})
}else {
this.formData.imgUrlP1 = '';
this.formData.imgUrlP2 = '';
this.formData.imgUrlP3 = '';
}
//处理管理员数据
if (this.storeData.adminList && this.storeData.adminList.length) {
this.formData.adminList = this.storeData.adminList
}else {
this.formData.adminList = [{
adminName: '',
adminMobile: '',
id: null,
}]
}
}else if (storeType == 2) {
this.formData.docName = storeOwner;
this.formData.docPhone = storePhone;
}else if (storeType == 3) {
this.formData.drugstoreName = storeOwner;
this.formData.drugstorePhone = storePhone;
if (this.storeData.imageList && this.storeData.imageList.length) {
this.storeData.imageList.map(item => {
if (item.imageSort == 1) {
this.drugstoreImg1 = item;
this.formData.imgUrlC1 = item.imageUrl;
}else if (item.imageSort == 2) {
this.drugstoreImg2 = item;
this.formData.imgUrlC2 = item.imageUrl;
}else if (item.imageSort == 3) {
this.drugstoreImg3 = item;
this.formData.imgUrlC3 = item.imageUrl;
}
})
}else {
this.formData.imgUrlC1 = '';
this.formData.imgUrlC2 = '';
this.formData.imgUrlC3 = '';
}
}
},
initInfo() { initInfo() {
let req = { let req = {
storeId: this.formData.storeId
}; };
queryStore(req).then(res => { queryStore(req).then(res => {
if (res.code == '000000') { if (res.code == '000000') {
...@@ -556,21 +690,21 @@ ...@@ -556,21 +690,21 @@
complete() { complete() {
let flag = this.submitForm(); let flag = this.submitForm();
if (flag) { if (flag) {
let para = { // let para = {
storeId: this.formData.storeId, // storeId: this.formData.storeId,
userId: this.formData.userId, // userId: this.formData.userId,
storeLogo: this.formData.storeLogo,//店铺logo // storeLogo: this.formData.storeLogo,//店铺logo
storeName: this.formData.storeName, // storeName: this.formData.storeName,
storeDescription: this.formData.storeDescription, // storeDescription: this.formData.storeDescription,
storeType: Number(this.formData.storeType), // storeType: Number(this.formData.storeType),
storeOwner:this.formData.storeOwner, // storeOwner:this.formData.storeOwner,
storePhone: this.formData.storePhone, // storePhone: this.formData.storePhone,
imageList: this.formData.imageList, // imageList: this.formData.imageList,
adminList:this.formData.adminList, // adminList:this.formData.adminList,
} // }
this.formData.storeType = Number(this.formData.storeType);
console.log('提交的数据',this.formData) console.log('提交的数据',this.formData)
saveStore({req: para}).then(res => { saveStore(this.formData).then(res => {
console.log('保存数据',res);
if (res.code == '000000') { if (res.code == '000000') {
this.$message.success("保存成功"); this.$message.success("保存成功");
this.$router.push({ this.$router.push({
...@@ -593,31 +727,16 @@ ...@@ -593,31 +727,16 @@
this.formData.storeOwner = this.formData.compainName; this.formData.storeOwner = this.formData.compainName;
this.formData.storePhone = this.formData.phoneNum; this.formData.storePhone = this.formData.phoneNum;
if (this.formData.imgUrlP1) { if (this.formData.imgUrlP1) {
this.formData.imageList.push({ this.supplierImg1.imageUrl = this.formData.imgUrlP1;
id: null, this.formData.imageList.push(this.supplierImg1);
imageSort: 1,
imageType: 2,
imageUrl: this.formData.imgUrlP1,
storeId: null,
})
} }
if (this.formData.imgUrlP2) { if (this.formData.imgUrlP2) {
this.formData.imageList.push({ this.supplierImg2.imageUrl = this.formData.imgUrlP2;
id: null, this.formData.imageList.push(this.supplierImg2);
imageSort: 2,
imageType: 2,
imageUrl: this.formData.imgUrlP2,
storeId: null,
})
} }
if (this.formData.imgUrlP3) { if (this.formData.imgUrlP3) {
this.formData.imageList.push({ this.supplierImg3.imageUrl = this.formData.imgUrlP3;
id: null, this.formData.imageList.push(this.supplierImg3);
imageSort: 3,
imageType: 2,
imageUrl: this.formData.imgUrlP3,
storeId: null,
})
} }
}else if (type == 2) { }else if (type == 2) {
this.formData.storeOwner = this.formData.docName; this.formData.storeOwner = this.formData.docName;
...@@ -628,37 +747,22 @@ ...@@ -628,37 +747,22 @@
this.formData.storePhone = this.formData.drugstorePhone; this.formData.storePhone = this.formData.drugstorePhone;
this.formData.adminList = []; this.formData.adminList = [];
if (this.formData.imgUrlC1) { if (this.formData.imgUrlC1) {
this.formData.imageList.push({ this.drugstoreImg1.imageUrl = this.formData.imgUrlC1;
id: null, this.formData.imageList.push(this.drugstoreImg1);
imageSort: 1,
imageType: 2,
imageUrl: this.formData.imgUrlC1,
storeId: null,
})
} }
if (this.formData.imgUrlC2) { if (this.formData.imgUrlC2) {
this.formData.imageList.push({ this.drugstoreImg2.imageUrl = this.formData.imgUrlC2;
id: null, this.formData.imageList.push(this.drugstoreImg2);
imageSort: 2,
imageType: 2,
imageUrl: this.formData.imgUrlC2,
storeId: null,
})
} }
if (this.formData.imgUrlC3) { if (this.formData.imgUrlC3) {
this.formData.imageList.push({ this.drugstoreImg3.imageUrl = this.formData.imgUrlC3;
id: null, this.formData.imageList.push(this.drugstoreImg3);
imageSort: 3,
imageType: 2,
imageUrl: this.formData.imgUrlC3,
storeId: null,
})
} }
} }
}, },
setTypeForData() { setTypeForData() {
let flag = false; let flag = false;
if (this.formData.storeType == '1') { if (this.formData.storeType == 1) {
if (!this.formData.compainName) { if (!this.formData.compainName) {
this.$message.warning('请输入入驻企业名称'); this.$message.warning('请输入入驻企业名称');
return; return;
...@@ -692,7 +796,7 @@ ...@@ -692,7 +796,7 @@
flag = true; flag = true;
} }
if (this.formData.storeType == '2') { if (this.formData.storeType == 2) {
if (!this.formData.docName) { if (!this.formData.docName) {
this.$message.warning('请输入医生姓名'); this.$message.warning('请输入医生姓名');
return; return;
...@@ -708,7 +812,7 @@ ...@@ -708,7 +812,7 @@
} }
flag = true; flag = true;
} }
if (this.formData.storeType == '3') { if (this.formData.storeType == 3) {
if (!this.formData.drugstoreName) { if (!this.formData.drugstoreName) {
this.$message.warning('请输入入驻药店名称'); this.$message.warning('请输入入驻药店名称');
return; return;
...@@ -730,8 +834,10 @@ ...@@ -730,8 +834,10 @@
submitForm() { submitForm() {
let formName = "formData"; let formName = "formData";
let submitFlag = false; let submitFlag = false;
if (!this.formData.storeLogo){ if (!this.formData.storeLogo){
this.uploadImgMessage1 = true; this.uploadImgMessage1 = true;
return;
}else { }else {
this.uploadImgMessage1 = false; this.uploadImgMessage1 = false;
} }
...@@ -744,7 +850,6 @@ ...@@ -744,7 +850,6 @@
submitFlag = true; submitFlag = true;
} else { } else {
submitFlag = false; submitFlag = false;
console.log("error submit!!");
} }
}); });
return submitFlag; return submitFlag;
...@@ -857,9 +962,6 @@ ...@@ -857,9 +962,6 @@
}; };
}; };
return isJPG && isLt2M; return isJPG && isLt2M;
},
getKey(type) {
}, },
//删除图片 //删除图片
deleteImg(type) { deleteImg(type) {
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<el-row :gutter="30" type="flex" style="margin-top: 10px"> <el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="18"> <el-col :span="18">
<el-form-item label="店铺名称"> <el-form-item label="店铺名称">
<el-input v-model="searchForm.name" size="small" placeholder="请输入店铺名称"></el-input> <el-input v-model="searchForm.storeName" size="small" placeholder="请输入店铺名称"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="店铺ID"> <el-form-item label="店铺ID">
<el-input v-model="searchForm.id" size="small" placeholder="请输入店铺ID"></el-input> <el-input v-model="searchForm.id" size="small" placeholder="请输入店铺ID"></el-input>
...@@ -39,22 +39,35 @@ ...@@ -39,22 +39,35 @@
</el-row> </el-row>
</el-form> </el-form>
<el-table :data="tableData" class="item-table" style="width: 100%;margin-top: 10px;"> <el-table :data="tableData" class="item-table" style="width: 100%;margin-top: 10px;">
<el-table-column prop="id" label="店铺ID" min-width="100" align="center"></el-table-column> <el-table-column prop="id" label="店铺ID" min-width="100" align="center">
<el-table-column prop="name" label="店铺名称" min-width="100" align="center"></el-table-column>
<el-table-column prop="type" label="店铺类型" min-width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.type | dynamicFlagStatus }}</span> <span>{{ scope.row.tradeStore.id }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="status" label="店铺状态" min-width="100" align="center"> <el-table-column prop="storeName" label="店铺名称" min-width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.status | rangeStatus }}</span> <span>{{ scope.row.tradeStore.storeName }}</span>
</template>
</el-table-column>
<el-table-column prop="storeType" label="店铺类型" min-width="100" align="center">
<template slot-scope="scope">
<span>{{ scope.row.tradeStore.storeType | storeTypeFormat}}</span>
</template>
</el-table-column>
<el-table-column prop="storeStatus" label="店铺状态" min-width="100" align="center">
<template slot-scope="scope">
<span>{{ scope.row.tradeStore.storeStatus | statusFormat }}</span>
</template>
</el-table-column>
<el-table-column prop="num" label="已上架商品数" min-width="120" align="center">
<template slot-scope="scope">
<span>{{ scope.row.tradeStore.count }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="num" label="已上架商品数" min-width="120" align="center"></el-table-column>
<el-table-column prop="createdTime" label="创建时间" min-width="100" align="center"> <el-table-column prop="createdTime" label="创建时间" min-width="100" align="center">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.createdTime | liveDateFilter }}</span> <!--<span>{{ scope.row.createdTime | liveDateFilter }}</span>-->
<span>{{ scope.row.tradeStore.createdTime }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="操作" min-width="370" align="center"> <el-table-column label="操作" min-width="370" align="center">
...@@ -84,7 +97,7 @@ ...@@ -84,7 +97,7 @@
<script> <script>
import { openLoading, closeLoading } from "../../utils/utils"; import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
// import { getRangeList,updateRangeStatus} from "../../utils/yqrange/yqrangeApi"; import { queryStore } from '@/utils/shop';
export default { export default {
components: { components: {
BreadCrumb BreadCrumb
...@@ -95,38 +108,32 @@ ...@@ -95,38 +108,32 @@
showAllFlag: false, showAllFlag: false,
showNewFlag: false, showNewFlag: false,
searchForm: { searchForm: {
name: '', storeName: '',
id: '', storeId: 0,
type: '', storeType: 0,
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
id: null,
type: null,
}, },
totalRows: 0, totalRows: 0,
tableData: [ tableData: [],
// { typeList: [
// id: '', {
// name: '',
// type: null,
// status: '',
// num: null,
// createdTime: '',
// }
],
typeList: [{
label: '供货商', label: '供货商',
value: '1', value: 1,
}, { }, {
label: '医生小店', label: '医生小店',
value: '2', value: 2,
}, { }, {
label: '小药房', label: '小药房',
value: '3', value: 3,
}] }]
} }
}, },
created() { created() {
// this.initPrivilege(); // this.initPrivilege();
// this.searchList(); this.searchList();
}, },
methods: { methods: {
initPrivilege(){ initPrivilege(){
...@@ -160,113 +167,63 @@ ...@@ -160,113 +167,63 @@
searchList() { searchList() {
openLoading(this); openLoading(this);
let params = this.searchForm; let params = this.searchForm;
if (this.searchForm.id) {
/* getRangeList(params).then((res) => { params.storeId = this.searchForm.id;
}else {
params.storeId = 0;
}
if (this.searchForm.type) {
params.storeType = this.searchForm.type;
}else {
params.storeType = 0;
}
queryStore(params).then((res) => {
closeLoading(this); closeLoading(this);
if(res.code == "000000") { if(res.code == "000000") {
this.tableData = res.data.circleList; this.tableData = res.data.tradeStore;
this.totalRows = res.data.count; this.totalRows = res.data.totalCount;
} else { } else {
this.tableData = []; this.tableData = [];
} }
}).catch((error) => { }).catch((error) => {
this.$message.error("请重试"); this.$message.error("请重试");
})*/ })
}, },
resetForm() { resetForm() {
this.searchForm = { this.searchForm = {
name: '', storeName: '',
id: '', storeId: 0,
type: '' storeType: 0,
pageNo: 1,
pageSize: 10,
id: null,
type: null,
}; };
this.searchList(); this.searchList();
}, },
//新建店铺 //新建店铺
createShop() { createShop() {
let enterType = 1;//1:add 2 edit
this.$router.push({ this.$router.push({
path: `/create-shop?enterType=${enterType}` path: `/create-shop`
}) })
}, },
//上线
publishRange(row) {
this.$confirm(`确定上线“${row.name}”吗?`, '', {
confirmButtonText: '上线',
cancelButtonText: '取消',
type: 'warning',
customClass: 'range-make-box',
}).then(() => {
// confirm
this.updateStatus(row.id, "30");
}).catch(() => {
// cancel
// this.$message.error("上线失败");
});
},
//下线
unPublishRange(row) {
this.$confirm(`确定下线“${row.name}”吗?`, '', {
confirmButtonText: '下线',
cancelButtonText: '取消',
type: 'warning',
customClass: 'range-make-box',
}).then(() => {
this.updateStatus(row.id, "40");
// confirm
}).catch(() => {
// cancel
});
},
// 更新圈子状态(上线,下线)
updateStatus(id, status){
let params = {"id": id, "status": status};
updateRangeStatus(params).then((res) => {
closeLoading(this);
if(res.code == "000000") {
if(status == "40"){
this.$message.success("下线成功");
} else if(status == "30") {
this.$message.success("上线成功");
}else if(status == "50") {
this.$message.success("解散成功");
}
this.searchList();
} else {
if(status == "40"){
this.$message.error("下线失败,请重试");
} else if(status == "30") {
this.$message.error("上线失败,请重试");
}else if(status == "50") {
this.$message.error("解散失败,请重试");
}
}
}).catch((error) => {
if(status == "40"){
this.$message.error("下线失败,请重试");
} else if(status == "30") {
this.$message.error("上线失败,请重试");
}else if(status == "50") {
this.$message.error("解散失败,请重试");
}
})
},
//店铺管理 //店铺管理
shopManage(row) { shopManage(row) {
this.$router.push({ this.$router.push({
path: '/role-manage?id=' + row.id, path: '/goods-manage',
query: {
storeId: row.tradeStore.id,
}
}) })
}, },
//编辑 //编辑
editShop(row) { editShop(row) {
let enterType = 2;//1:add 2 edit
this.$router.push({ this.$router.push({
path: `/create-shop?enterType`, path: `/create-shop`,
query:{ query:{
storeId:row.storeId, storeId: row.tradeStore.id,
enterType:enterType, storeData: JSON.stringify(row),
} }
}) })
}, },
...@@ -280,6 +237,31 @@ ...@@ -280,6 +237,31 @@
this.searchList(); this.searchList();
}, },
}, },
filters: {
storeTypeFormat: function(value){
if (!value && value != 0) {
return "-";
} else {
let hash = {
1: "供货商",
2: "医生小店",
3: "小药房"
};
return hash[value];
}
},
statusFormat(value) {
if (!value && value != 0) {
return "-";
} else {
let hash = {
0: "下线",
1: "上线",
};
return hash[value];
}
},
},
} }
</script> </script>
<style lang="scss"> <style lang="scss">
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册