myTest383 4 months ago
parent
commit
c6a43e6f14
  1. 2
      ordermall-ui/index.html
  2. 0
      ordermall-ui/static/css/chunk-01792218.c2c03d38.css
  3. 1
      ordermall-ui/static/css/chunk-15e795f1.c049bde2.css
  4. 1
      ordermall-ui/static/css/chunk-1c25ee32.9f3d0376.css
  5. 0
      ordermall-ui/static/css/chunk-2a17dfb2.fc3db66d.css
  6. 2
      ordermall-ui/static/js/app.10a1cb9c.js
  7. 1
      ordermall-ui/static/js/chunk-01792218.a5786ab4.js
  8. 1
      ordermall-ui/static/js/chunk-15e795f1.7d2f1523.js
  9. 1
      ordermall-ui/static/js/chunk-1c25ee32.dae6092e.js
  10. 2
      ordermall-ui/static/js/chunk-2a17dfb2.e5c6ea6a.js
  11. 1
      ordermall-ui/static/js/chunk-42ef6438.fde4cce3.js
  12. 1
      ordermall-ui/static/js/chunk-commons.788b1c2c.js
  13. 1
      ordermall-ui/static/js/chunk-commons.f9f3579a.js
  14. 91
      src/api/network/network.js
  15. 14
      src/api/preSaleOrder/preSaleOrder.js
  16. 19
      src/components/Editor/index.vue
  17. 32
      src/layout/components/Sidebar/index.vue
  18. 22
      src/router/index.js
  19. 116
      src/views/commodity/commodityAdd.vue
  20. 6
      src/views/commodity/index.vue
  21. 447
      src/views/network/index.vue
  22. 388
      src/views/network/indexAdd.vue
  23. 79
      src/views/orderreserve/index.vue
  24. 492
      src/views/pickupPoint/index.vue
  25. 46
      src/views/pickupPoint/indexAdd.vue
  26. 529
      src/views/preSaleOrder/index.vue
  27. 8
      vue.config.js

2
ordermall-ui/index.html

File diff suppressed because one or more lines are too long

0
ordermall-ui/static/css/chunk-42ef6438.c2c03d38.css → ordermall-ui/static/css/chunk-01792218.c2c03d38.css

1
ordermall-ui/static/css/chunk-15e795f1.c049bde2.css

@ -0,0 +1 @@
[data-v-3fa49be9] .el-form-item__error{margin-left:120px!important}.must[data-v-3fa49be9]{color:red}.span-sty[data-v-3fa49be9]{width:130px!important}.addinputInfo[data-v-3fa49be9]{margin-left:120px!important}.formaddcopy02 .el-row .el-col[data-v-3fa49be9] .el-form-item .addinputw{margin-left:120px!important;width:calc(100% - 115px)}.first_row[data-v-3fa49be9]{border-top:1px solid #e0e3eb}.titleOne[data-v-3fa49be9]{padding:7px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-radio[data-v-3fa49be9] .el-radio__label{font-size:14px!important}

1
ordermall-ui/static/css/chunk-1c25ee32.9f3d0376.css

@ -1 +0,0 @@
[data-v-6ff57089] .hide .el-upload--picture-card{display:none!important}.box-card[data-v-6ff57089]{margin-left:60px;margin-right:60px;min-width:70%;margin-top:20px}.box-card .item[data-v-6ff57089]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:15px;height:40px;line-height:40px}.box-card .item .item_text[data-v-6ff57089]{-webkit-box-flex:.8;-ms-flex:.8;flex:.8;font-size:18px;text-align:right}.box-card .item .item_input[data-v-6ff57089]{-webkit-box-flex:4;-ms-flex:4;flex:4;font-size:16px;margin-left:10px;margin-right:80px}.box-card .item .item_left_input[data-v-6ff57089]{width:20%}.box-card .item .item_left_text[data-v-6ff57089]{height:30px;margin-left:20px;line-height:30px;color:#018ad2;padding:0 15px;border:1.5px solid #018ad2;border-radius:5px}.box-card .item .item_right[data-v-6ff57089]{-webkit-box-flex:1;-ms-flex:1;flex:1;justify-items:center}.box-card .item .item_right .item_right_list_text[data-v-6ff57089]{font-size:16px}.box-card .item .item_right .item_right_list_delect[data-v-6ff57089]{color:#5e94ff;margin-left:20px;font-size:16px;text-decoration:underline}

0
ordermall-ui/static/css/chunk-21203a21.fc3db66d.css → ordermall-ui/static/css/chunk-2a17dfb2.fc3db66d.css

2
ordermall-ui/static/js/app.9e2160c4.js → ordermall-ui/static/js/app.10a1cb9c.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-01792218.a5786ab4.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-15e795f1.7d2f1523.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-1c25ee32.dae6092e.js

File diff suppressed because one or more lines are too long

2
ordermall-ui/static/js/chunk-21203a21.2fe2aa62.js → ordermall-ui/static/js/chunk-2a17dfb2.e5c6ea6a.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-42ef6438.fde4cce3.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-commons.788b1c2c.js

File diff suppressed because one or more lines are too long

1
ordermall-ui/static/js/chunk-commons.f9f3579a.js

File diff suppressed because one or more lines are too long

91
src/api/network/network.js

@ -1,50 +1,49 @@
import request from '@/utils/request' import request from '@/utils/request'
export default { export default {
// 获取网点列表
bankListPage: function(data) {
return request({
url: '/lpkbank/listPage',
method: 'post',
data: data
});
},
// 新增网点
saveBank: function(data) {
return request({
url: '/lpkbank/save',
method: 'post',
data: data
});
},
// 修改网点
updateBank: function(data) {
return request({
url: '/lpkbank/update',
method: 'post',
data: data
});
},
// 初始化网点
bankInit: function(data) {
return request({
url: '/lpkbank/getLpkBankBySid/'+data,
method: 'get'
});
},
// 删除网点
deleteBank: function(data) {
return request({
url: '/lpkbank/delete/'+data,
method: 'delete'
});
},
}
// 获取区域列表
bankListPage: function(data) {
return request({
url: '/mall/lpkbank/listPage',
method: 'post',
data: data
});
},
// 新增区域
saveBank: function(data) {
return request({
url: '/mall/lpkbank/save',
method: 'post',
data: data
});
},
// 修改区域
updateBank: function(data) {
return request({
url: '/mall/lpkbank/update',
method: 'post',
data: data
});
},
// 初始化区域
bankInit: function(data) {
return request({
url: '/mall/lpkbank/getLpkBankBySid/' + data,
method: 'get'
});
},
// 删除区域
deleteBank: function(data) {
return request({
url: '/mall/lpkbank/delete/' + data,
method: 'delete'
});
},
}

14
src/api/preSaleOrder/preSaleOrder.js

@ -0,0 +1,14 @@
import request from '@/utils/request'
// 预售单
export default {
// 获取礼包列表
pcOrderList: function(data) {
return request({
url: '/mall/empsreservoorder/pcOrderList',
method: 'post',
data: data
});
},
}

19
src/components/Editor/index.vue

@ -1,8 +1,8 @@
<template> <template>
<div> <div>
<el-upload :action="uploadUrl" :before-upload="handleBeforeUpload" :on-success="handleUploadSuccess" <el-upload :action="uploadUrl" :before-upload="handleBeforeUpload" :on-success="handleUploadSuccess"
:on-error="handleUploadError" name="file" :show-file-list="false" :headers="headers" style="display: none" :on-error="handleUploadError" name="file" :show-file-list="false" :headers="accessToken"
ref="upload" v-if="this.type == 'url'"> style="display: none" ref="upload" v-if="this.type == 'url'">
</el-upload> </el-upload>
<div class="editor" ref="editor" :style="styles"></div> <div class="editor" ref="editor" :style="styles"></div>
</div> </div>
@ -16,6 +16,12 @@
import { import {
getToken getToken
} from "@/utils/auth"; } from "@/utils/auth";
import {
getStorage
} from '@/utils/auth.js'
import {
uploadFile
} from '@/api/portal/Upload'
export default { export default {
name: "Editor", name: "Editor",
@ -53,10 +59,12 @@
}, },
data() { data() {
return { return {
uploadUrl: process.env.VUE_APP_BASE_API + "/mall/file/upload", //
uploadUrl: uploadFile, //
headers: { headers: {
Authorization: "Bearer " + getToken() Authorization: "Bearer " + getToken()
}, },
accessToken: null,
Quill: null, Quill: null,
currentValue: "", currentValue: "",
options: { options: {
@ -126,6 +134,11 @@
immediate: true, immediate: true,
}, },
}, },
created() {
this.accessToken = {
token: getStorage()
}
},
mounted() { mounted() {
this.init(); this.init();
}, },

32
src/layout/components/Sidebar/index.vue

@ -264,16 +264,16 @@
// name: '/coupon/index', // name: '/coupon/index',
// path: '/coupon/index' // path: '/coupon/index'
// }, // },
// { {
// alwaysShow: true, alwaysShow: true,
// component: 'network', component: 'network',
// meta: { meta: {
// icon: 'el-icon-menu', icon: 'el-icon-menu',
// title: '' title: '区域管理'
// }, },
// name: '/network/index', name: '/network/index',
// path: '/network/index' path: '/network/index'
// }, },
{ {
alwaysShow: true, alwaysShow: true,
component: 'commodity', component: 'commodity',
@ -284,6 +284,16 @@
name: '/commodity/index', name: '/commodity/index',
path: '/commodity/index' path: '/commodity/index'
}, },
{
alwaysShow: true,
component: 'preSaleOrder',
meta: {
icon: 'el-icon-menu',
title: '预售订单'
},
name: '/preSaleOrder/index',
path: '/preSaleOrder/index'
},
// { // {
// alwaysShow: true, // alwaysShow: true,
@ -352,7 +362,7 @@
component: 'index', component: 'index',
meta: { meta: {
icon: 'el-icon-help', icon: 'el-icon-help',
title: '预约单统计' title: '预约提货单统计'
}, },
name: '/orderreserve/index', name: '/orderreserve/index',
path: '/orderreserve/index' path: '/orderreserve/index'

22
src/router/index.js

@ -347,7 +347,7 @@ export const constantRoutes = [{
import('@/views/network/index.vue'), import('@/views/network/index.vue'),
name: 'index', name: 'index',
meta: { meta: {
title: '支行管理' title: '区域管理'
} }
}, ] }, ]
}, },
@ -366,6 +366,24 @@ export const constantRoutes = [{
} }
}, ] }, ]
}, },
{
path: '/preSaleOrder',
component: Layout,
redirect: '/preSaleOrder/index',
children: [{
path: '/preSaleOrder/index',
component: () =>
import('@/views/preSaleOrder/index.vue'),
name: 'index',
meta: {
title: '预售订单'
}
}, ]
},
{ {
path: '/order', path: '/order',
component: Layout, component: Layout,
@ -416,7 +434,7 @@ export const constantRoutes = [{
import('@/views/orderreserve/index.vue'), import('@/views/orderreserve/index.vue'),
name: 'OrderreserveIndex', name: 'OrderreserveIndex',
meta: { meta: {
title: '预约单统计' title: '预约提货单统计'
} }
}, { }, {
path: '/orderreserve/distributionCount', path: '/orderreserve/distributionCount',

116
src/views/commodity/commodityAdd.vue

@ -38,30 +38,32 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty"><span class="must">*</span> 商品排序</div> <div class="span-sty"><span class="must">*</span> 商品名称</div>
<el-form-item prop="sort"> <el-form-item prop="name">
<el-input v-model="formobj.sort" placeholder="商品排序" class="addinputw addinputInfo" clearable <el-input v-model="formobj.name" placeholder="" class="addinputw addinputInfo" clearable />
oninput="value=value.replace(/[^0-9]/g,'')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty"><span class="must">*</span> 商品名称</div> <div class="span-sty"><span class="must">*</span> 规格编码</div>
<el-form-item prop="name"> <el-form-item prop="code">
<el-input v-model="formobj.name" placeholder="" class="addinputw addinputInfo" clearable /> <el-input v-model="formobj.code" placeholder="" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^A-Za-z0-9]/g, '')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">编码</div> <div class="span-sty"><span class="must">*</span> 规格型号</div>
<el-form-item> <el-form-item prop="weight">
<el-input v-model="formobj.code" placeholder="" class="addinputw addinputInfo" clearable <el-input v-model="formobj.weight" placeholder="例如:125g" class="addinputw addinputInfo"
oninput="value=value.replace(/[^A-Za-z0-9]/g, '')" /> clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty">条码</div> <div class="span-sty">规格条码</div>
<el-form-item> <el-form-item>
<el-input v-model="formobj.barcode" placeholder="" class="addinputw addinputInfo" clearable <el-input v-model="formobj.barcode" placeholder="" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^0-9]/g,'')" /> oninput="value=value.replace(/[^0-9]/g,'')" />
@ -71,10 +73,28 @@
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="16">
<div class="span-sty">规格描述</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="例如:重量约 209g" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
<el-col :span="8">
<div class="span-sty"><span class="must">*</span> 商品排序</div>
<el-form-item prop="sort">
<el-input v-model="formobj.sort" placeholder="商品排序" class="addinputw addinputInfo" clearable
oninput="value=value.replace(/[^0-9]/g,'')" />
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty"><span class="must">*</span> 单位</div> <div class="span-sty"><span class="must">*</span> 基础单位</div>
<el-form-item prop="specificationUnit"> <el-form-item prop="specificationUnit">
<el-select v-model="formobj.specificationUnit" placeholder="请选择单位" <el-select v-model="formobj.specificationUnit" placeholder="请选择基础单位"
class="addinputw addinputInfo" @change="selectSpecificationUnitChange"> class="addinputw addinputInfo" @change="selectSpecificationUnitChange">
<el-option v-for="item in unitList" :key="item.sid" :label="item.unitName" <el-option v-for="item in unitList" :key="item.sid" :label="item.unitName"
:value="item.sid" /> :value="item.sid" />
@ -82,33 +102,27 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty"><span class="must">*</span> 单价</div> <div class="span-sty"><span class="must">*</span> 进货单价</div>
<el-form-item prop="price"> <el-form-item prop="purchasePrice">
<el-input v-model="formobj.price" placeholder="" class="addinputw addinputInfo" clearable <el-input v-model="formobj.purchasePrice" placeholder="" class="addinputw addinputInfo"
clearable
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" /> oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<div class="span-sty"><span class="must">*</span> 规格型号</div> <div class="span-sty"><span class="must">*</span> 销售单价</div>
<el-form-item prop="weight"> <el-form-item prop="price">
<el-input v-model="formobj.weight" placeholder="例如:125g" class="addinputw addinputInfo" <el-input v-model="formobj.price" placeholder="" class="addinputw addinputInfo" clearable
clearable /> @input="countPackprice"
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row>
<el-row> </el-row>
<el-col :span="24">
<div class="span-sty">规格描述</div>
<el-form-item>
<el-input v-model="formobj.remarks" placeholder="例如:重量约 209g" class="addinputw addinputInfo"
clearable />
</el-form-item>
</el-col>
</el-row>
<el-row> <el-row>
@ -123,7 +137,7 @@
<div class="span-sty"><span class="must">*</span> 包装内数量</div> <div class="span-sty"><span class="must">*</span> 包装内数量</div>
<el-form-item prop="quantityOfPackage"> <el-form-item prop="quantityOfPackage">
<el-input v-model="formobj.quantityOfPackage " placeholder="例如:30" <el-input v-model="formobj.quantityOfPackage " placeholder="例如:30"
class="addinputw addinputInfo" clearable class="addinputw addinputInfo" clearable @input="countPackprice"
oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" /> oninput="value=value.replace(/[^\d.]/g, '').replace(/\.{2,}/g, '.').replace('.', '$#$').replace(/\./g, '').replace('$#$', '.').replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3').replace(/^\./g, '')" />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -142,7 +156,7 @@
<el-col :span="24"> <el-col :span="24">
<div class="span-sty">包装规格</div> <div class="span-sty">包装规格</div>
<el-form-item> <el-form-item>
<el-input v-model="formobj.packageSpecs" placeholder="例如:30瓶/箱" <el-input v-model="formobj.packageSpecs" placeholder="包内数量+基础单位+'/'+包装单位"
class="addinputw addinputInfo" clearable /> class="addinputw addinputInfo" clearable />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -179,7 +193,7 @@
<div class="span-sty"><span class="must">*</span> 商品详情</div> <div class="span-sty"><span class="must">*</span> 商品详情</div>
<el-form-item prop="appContent"> <el-form-item prop="appContent">
<editor :height="300" :min-height="100" :value="formobj.appContent" @input="editinput" <editor :height="300" :min-height="100" :value="formobj.appContent" @input="editinput"
class="addinputw addinputInfo" /> class="addinputw addinputInfo" @blur='contentRule' />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -328,6 +342,7 @@
name: '', name: '',
code: '', code: '',
barcode: '', barcode: '',
purchasePrice: '',
price: '', price: '',
stepWeight: '', stepWeight: '',
stepPrice: '', stepPrice: '',
@ -384,11 +399,21 @@
message: '请选择商品单位', message: '请选择商品单位',
trigger: 'change' trigger: 'change'
}], }],
purchasePrice: [{
required: true,
message: '进货单价不能为空',
trigger: 'blur'
}],
price: [{ price: [{
required: true, required: true,
message: '商品单价不能为空', message: '商品单价不能为空',
trigger: 'blur' trigger: 'blur'
}], }],
code: [{
required: true,
message: '规格编码不能为空',
trigger: 'blur'
}],
weight: [{ weight: [{
required: true, required: true,
message: '规格型号不能为空', message: '规格型号不能为空',
@ -414,11 +439,11 @@
message: '商品图片不能为空', message: '商品图片不能为空',
trigger: 'blur' trigger: 'blur'
}], }],
appContent: [{ // appContent: [{
required: true, // required: true,
message: '商品详情不能为空', // message: '',
trigger: 'blur' // trigger: 'blur'
}], // }],
} }
} }
}, },
@ -489,6 +514,7 @@
name: '', name: '',
code: '', code: '',
barcode: '', barcode: '',
purchasePrice: '',
price: '', price: '',
stepWeight: '', stepWeight: '',
stepPrice: '', stepPrice: '',
@ -555,8 +581,19 @@
console.log('this.hideUploadBtn', this.hideUploadBtn) console.log('this.hideUploadBtn', this.hideUploadBtn)
}) })
}, },
countPackprice() {
if (Number(this.formobj.price) != 0 && Number(this.formobj.quantityOfPackage) != 0) {
this.formobj.packprice = (Number(this.formobj.price) * Number(this.formobj.quantityOfPackage))
.toFixed(2)
}
},
contentRule() {
this.$refs['form_obj'].validateField('appContent')
},
editinput(text) { editinput(text) {
this.formobj.appContent = text this.formobj.appContent = text
console.log('editinput', this.formobj.appContent)
}, },
selectBrandChange(val) { selectBrandChange(val) {
console.log('selectBrandChange', val) console.log('selectBrandChange', val)
@ -594,6 +631,7 @@
} }
} }
} }
} }
} }
</script> </script>

6
src/views/commodity/index.vue

@ -68,10 +68,10 @@
</span> --> </span> -->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="code" label="商品编码" align="center" /> <el-table-column prop="code" label="规格编码" align="center" />
<!-- <el-table-column prop="barcode" label="商品条码" align="center" /> --> <!-- <el-table-column prop="barcode" label="商品条码" align="center" /> -->
<el-table-column prop="price" label="单价" align="center" /> <el-table-column prop="price" label="销售单价" align="center" />
<el-table-column prop="unitName" label="单位" align="center" /> <el-table-column prop="unitName" label="基础单位" align="center" />
<el-table-column prop="brandName" label="品牌" align="center" /> <el-table-column prop="brandName" label="品牌" align="center" />
<el-table-column prop="categoryName" label="分类" align="center" /> <el-table-column prop="categoryName" label="分类" align="center" />
<el-table-column prop="sort" label="排序" align="center" /> <el-table-column prop="sort" label="排序" align="center" />

447
src/views/network/index.vue

@ -1,230 +1,233 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="支行列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="区域列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="支行名称"> <el-form-item label="区域名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable /> <el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item> </el-form-item>
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" <el-button type="primary" size="small" icon="el-icon-search"
@click="dosearch">查询</el-button> @click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh" <el-button type="primary" size="small" icon="el-icon-refresh"
@click="resetQuery">重置</el-button> @click="resetQuery">重置</el-button>
</div> </div>
</div> </div>
</div> </div>
<!-- Start 项目列表头部 --> <!-- Start 项目列表头部 -->
<div class="listtop"> <div class="listtop">
<div class="tit">支行列表</div> <div class="tit">区域列表</div>
</div> </div>
<!-- End 项目列表头部 --> <!-- End 项目列表头部 -->
<!-- Start 项目列表 --> <!-- Start 项目列表 -->
<div class=""> <div class="">
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :row-style="{height: '40px'}"> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> :row-style="{height: '40px'}">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <!-- <el-table-column fixed width="50" type="selection" align="center" /> -->
<el-table-column label="操作" align="center" width="180"> <el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<template slot-scope="scope"> <el-table-column label="操作" align="center" width="180">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">编辑</el-button> <template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancyInfo(scope.row)">删除</el-button> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">编辑</el-button>
</template> <el-button type="primary" size="mini" @click="toRelevancyInfo(scope.row)">删除</el-button>
</el-table-column> </template>
<el-table-column prop="name" label="支行名称" align="center" /> </el-table-column>
<el-table-column prop="shortName" label="支行简称" align="center" /> <el-table-column prop="name" label="区域名称" align="center" />
<el-table-column prop="linker" label="联系人" align="center" /> <el-table-column prop="shortName" label="区域简称" align="center" />
<el-table-column prop="linkPhone" label="联系电话" align="center" /> <el-table-column prop="linker" label="联系人" align="center" />
<el-table-column prop="address" label="支行地址" align="center" /> <el-table-column prop="linkPhone" label="联系电话" align="center" />
<el-table-column prop="address" label="区域地址" align="center" />
</el-table>
</div> </el-table>
<!-- End 项目列表 --> </div>
<div class="pages"> <!-- End 项目列表 -->
<div class="tit" /> <div class="pages">
<!-- 翻页 --> <div class="tit" />
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" <!-- 翻页 -->
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" /> <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
</div> :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
</div> </div>
</div> </div>
<!-- 新增修改部分组件 --> </div>
<divAdd v-show="viewState == 2|| viewState ==3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> <!-- 新增修改部分组件 -->
</div> <divAdd v-show="viewState == 2|| viewState ==3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/network/network.js' import req from '@/api/network/network.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye' import pageye from '@/components/pagination/pageye'
import divAdd from './indexAdd.vue' import divAdd from './indexAdd.vue'
export default { export default {
name: 'SupplierBankInfoIndex', name: 'SupplierBankInfoIndex',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
pageye, pageye,
divAdd divAdd
}, },
data() { data() {
return { return {
btndisabled: false, btndisabled: false,
viewState: 1, // 1 2 3 4 viewState: 1, // 1 2 3 4
isSearchShow: false, isSearchShow: false,
searchxianshitit: '显示查询条件', searchxianshitit: '显示查询条件',
tableLoading: false, tableLoading: false,
dataList: [], dataList: [],
btnList: [ btnList: [{
{ type: 'primary',
type: 'primary', size: 'small',
size: 'small', icon: 'plus',
icon: 'plus', btnKey: 'toAdd',
btnKey: 'toAdd', btnLabel: '新增'
btnLabel: '新增' },
}, {
{ type: 'info',
type: 'info', size: 'small',
size: 'small', icon: 'cross',
icon: 'cross', btnKey: 'doClose',
btnKey: 'doClose', btnLabel: '关闭'
btnLabel: '关闭' }
} ],
], queryParams: {
queryParams: { current: 1,
current: 1, size: 10,
size: 10, total: 0,
total: 0, params: {
params: { name: '',
name: '',
}
} },
}, sids: []
sids: [] }
} },
}, mounted() {
mounted() { this.$refs['btnbar'].setButtonList(this.btnList)
this.$refs['btnbar'].setButtonList(this.btnList) },
}, created() {
created() { this.loadList()
this.loadList() },
}, methods: {
methods: { //
// clicksearchShow() {
clicksearchShow() { this.isSearchShow = !this.isSearchShow
this.isSearchShow = !this.isSearchShow if (this.isSearchShow) {
if (this.isSearchShow) { this.searchxianshitit = '隐藏查询条件'
this.searchxianshitit = '隐藏查询条件' } else {
} else { this.searchxianshitit = '显示查询条件'
this.searchxianshitit = '显示查询条件' }
} },
}, btnHandle(btnKey) {
btnHandle(btnKey) { switch (btnKey) {
switch (btnKey) { case 'toAdd':
case 'toAdd': this.toAdd()
this.toAdd() break
break case 'doClose':
case 'doClose': this.doClose()
this.doClose() break
break default:
default: break
break }
} },
}, loadList() {
loadList() { this.tableLoading = true
this.tableLoading = true this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
req.bankListPage(this.queryParams).then((resp) => { this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
this.tableLoading = false this.queryParams.params.menuUrl = this.$route.path
if (resp.success) { req.bankListPage(this.queryParams).then((resp) => {
const data = resp.data this.tableLoading = false
this.queryParams.total = data.total if (resp.success) {
this.dataList = data.records const data = resp.data
} else { this.queryParams.total = data.total
// resp.code this.dataList = data.records
this.dataList = [] } else {
this.queryParams.total = 0 // resp.code
} this.dataList = []
}).catch(() => { this.queryParams.total = 0
this.tableLoading = false }
}) }).catch(() => {
}, this.tableLoading = false
})
// },
indexMethod(index) {
var pagestart = (this.queryParams.current - 1) * this.queryParams.size //
var pageindex = index + 1 + pagestart indexMethod(index) {
return pageindex var pagestart = (this.queryParams.current - 1) * this.queryParams.size
}, var pageindex = index + 1 + pagestart
dosearch() { return pageindex
this.queryParams.current = 1 },
this.loadList() dosearch() {
}, this.queryParams.current = 1
resetQuery() { this.loadList()
this.queryParams = { },
current: 1, resetQuery() {
size: 10, this.queryParams = {
total: 0, current: 1,
params: { size: 10,
name: '', total: 0,
} params: {
} name: '',
this.loadList() }
}, }
toAdd() { this.loadList()
this.viewState = 2 },
this.$refs['divadd'].showAdd() toAdd() {
}, this.viewState = 2
doClose() { this.$refs['divadd'].showAdd()
this.$store.dispatch('tagsView/delView', this.$route) },
this.$router.go(-1) doClose() {
}, this.$store.dispatch('tagsView/delView', this.$route)
toRelevancy(row) { this.$router.go(-1)
this.viewState = 3 },
this.$refs['divadd'].showEdit(row) toRelevancy(row) {
}, this.viewState = 3
toRelevancyInfo(row) { this.$refs['divadd'].showEdit(row)
},
toRelevancyInfo(row) {
const tip = '请确认是否删除所选支行?' const tip = '请确认是否删除所选支行?'
this.$confirm(tip, '提示', { this.$confirm(tip, '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.deleteBank(row.sid).then((resp) => { req.deleteBank(row.sid).then((resp) => {
loading.close() loading.close()
if (resp.success) { if (resp.success) {
this.$message({ this.$message({
type: 'success', type: 'success',
message: resp.msg, message: resp.msg,
showClose: true showClose: true
}) })
this.loadList() this.loadList()
} else { } else {
// resp.code // resp.code
} }
}).catch(e => { }).catch(e => {
loading.close() loading.close()
}) })
}).catch(() => {}) }).catch(() => {})
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
} }
} }
} }
</script> </script>
<style scoped> <style scoped>
</style> </style>

388
src/views/network/indexAdd.vue

@ -1,197 +1,205 @@
<template> <template>
<div> <div>
<div class="tab-header webtop"> <div class="tab-header webtop">
<!-- 标题 --> <!-- 标题 -->
<div>网点信息</div> <div>区域信息</div>
<!-- start 添加修改按钮 --> <!-- start 添加修改按钮 -->
<div> <div>
<el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate">保存</el-button> <el-button type="primary" size="small" :disabled="submitdisabled" @click="saveOrUpdate">保存</el-button>
<el-button type="info" size="small" @click="handleReturn()">关闭</el-button> <el-button type="info" size="small" @click="handleReturn()">关闭</el-button>
</div> </div>
<!-- end 添加修改按钮 --> <!-- end 添加修改按钮 -->
<!-- end 详情按钮 --> <!-- end 详情按钮 -->
</div> </div>
<div class="listconadd"> <div class="listconadd">
<el-card class="box-card"> <el-card class="box-card">
<div class="item"> <div class="item">
<span class="item_text">名称</span> <span class="item_text">名称</span>
<el-input v-model="formobj.name" placeholder="" class="item_input" clearable /> <el-input v-model="formobj.name" placeholder="" class="item_input" clearable />
</div> </div>
<div class="item"> <div class="item">
<span class="item_text">简称</span> <span class="item_text">简称</span>
<el-input v-model="formobj.shortName" placeholder="" class="item_input" clearable /> <el-input v-model="formobj.shortName" placeholder="" class="item_input" clearable />
</div> </div>
<div class="item"> <div class="item">
<span class="item_text">联系人</span> <span class="item_text">联系人</span>
<el-input v-model="formobj.linker" placeholder="" class="item_input" clearable /> <el-input v-model="formobj.linker" placeholder="" class="item_input" clearable />
</div> </div>
<div class="item"> <div class="item">
<span class="item_text">电话</span> <span class="item_text">电话</span>
<el-input v-model="formobj.linkPhone" placeholder="" class="item_input" clearable /> <el-input v-model="formobj.linkPhone" placeholder="" class="item_input" clearable />
</div> </div>
<div class="item"> <div class="item">
<span class="item_text">地址</span> <span class="item_text">地址</span>
<el-input v-model="formobj.address" placeholder="" class="item_input" clearable /> <el-input v-model="formobj.address" placeholder="" class="item_input" clearable />
</div> </div>
</el-card> </el-card>
</div> </div>
</div> </div>
</template> </template>
<script> <script>
import req from '@/api/network/network.js' import req from '@/api/network/network.js'
export default { export default {
data() { data() {
return { return {
submitdisabled: false, submitdisabled: false,
formobj: { formobj: {
sid: "", sid: "",
name: '', name: '',
shortName: '', shortName: '',
linker: '', linker: '',
linkPhone: "", linkPhone: "",
address: "", address: "",
} orgPath: window.sessionStorage.getItem('orgSidPath'),
} useOrgSid: window.sessionStorage.getItem('defaultDeptSid'),
}, userSid: window.sessionStorage.getItem('userSid'),
methods: { createOrgSid: window.sessionStorage.getItem('orgSid'),
}
saveOrUpdate() { }
console.log('>>>>>>>>>saveOrUpdate', this.formobj) },
methods: {
if(this.formobj.sid){
req.updateBank(this.formobj) saveOrUpdate() {
.then(resp => { console.log('>>>>>>>>>saveOrUpdate', this.formobj)
if (resp.success) {
this.$message({ if (this.formobj.sid) {
showClose: true, req.updateBank(this.formobj)
type: 'success', .then(resp => {
message: resp.msg if (resp.success) {
}) this.$message({
this.handleReturn('true') showClose: true,
} else { type: 'success',
// resp.code message: resp.msg
} })
}) this.handleReturn('true')
.catch(() => {}) } else {
}else{ // resp.code
req.saveBank(this.formobj) }
.then(resp => { })
if (resp.success) { .catch(() => {})
this.$message({ } else {
showClose: true, req.saveBank(this.formobj)
type: 'success', .then(resp => {
message: resp.msg if (resp.success) {
}) this.$message({
this.handleReturn('true') showClose: true,
} else { type: 'success',
// resp.code message: resp.msg
} })
}) this.handleReturn('true')
.catch(() => {}) } else {
} // resp.code
}
})
}, .catch(() => {})
handleReturn(isreload) { }
if (isreload === 'true') this.$emit('reloadlist')
this.imgList = []
this.formobj = { },
sid: "", handleReturn(isreload) {
name: '', if (isreload === 'true') this.$emit('reloadlist')
shortName: '', this.imgList = []
linker: '', this.formobj = {
linkPhone: "", sid: "",
address: "", name: '',
} shortName: '',
this.$emit('doback') linker: '',
}, linkPhone: "",
address: "",
showAdd() { orgPath: window.sessionStorage.getItem('orgSidPath'),
useOrgSid: window.sessionStorage.getItem('defaultDeptSid'),
}, userSid: window.sessionStorage.getItem('userSid'),
showEdit(row) { createOrgSid: window.sessionStorage.getItem('orgSid'),
req.bankInit(row.sid) }
.then(resp => { this.$emit('doback')
if (resp.success) { },
this.formobj = resp.data
} showAdd() {
})
.catch(e => { },
this.formobj = row showEdit(row) {
}) req.bankInit(row.sid)
} .then(resp => {
} if (resp.success) {
} this.formobj = resp.data
}
})
.catch(e => {
this.formobj = row
})
}
}
}
</script> </script>
<style lang="scss"> <style lang="scss">
.box-card { .box-card {
margin-left: 60px; margin-left: 60px;
margin-right: 60px; margin-right: 60px;
min-width: 70%; min-width: 70%;
margin-top: 20px; margin-top: 20px;
.item { .item {
display: flex; display: flex;
flex-direction: row; flex-direction: row;
align-items: center; align-items: center;
margin-top: 15px; margin-top: 15px;
height: 40px; height: 40px;
line-height: 40px; line-height: 40px;
.item_text { .item_text {
flex: 0.8; flex: 0.8;
font-size: 18px; font-size: 18px;
text-align: right; text-align: right;
} }
.item_input { .item_input {
flex: 4; flex: 4;
font-size: 16px; font-size: 16px;
margin-left: 10px; margin-left: 10px;
margin-right: 80px; margin-right: 80px;
} }
.item_left_input { .item_left_input {
width: 20%; width: 20%;
} }
.item_left_text { .item_left_text {
height: 30px; height: 30px;
margin-left: 20px; margin-left: 20px;
line-height: 30px; line-height: 30px;
color: #018AD2; color: #018AD2;
padding: 0px 15px; padding: 0px 15px;
border: 1.5px solid #018AD2; border: 1.5px solid #018AD2;
border-radius: 5px; border-radius: 5px;
} }
.item_right { .item_right {
flex: 1; flex: 1;
justify-items: center; justify-items: center;
.item_right_list_text { .item_right_list_text {
font-size: 16px; font-size: 16px;
} }
.item_right_list_delect { .item_right_list_delect {
color: #5E94FF; color: #5E94FF;
margin-left: 20px; margin-left: 20px;
font-size: 16px; font-size: 16px;
text-decoration: underline; text-decoration: underline;
} }
} }
} }
} }
</style> </style>

79
src/views/orderreserve/index.vue

@ -1,7 +1,7 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="预约单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="预约提货单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
@ -9,29 +9,43 @@
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" <el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="预约结束日期">
<el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期" <el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item> </el-form-item>
<!-- <el-form-item label="所属支行"> <!-- <el-form-item label="所属支行">
<el-select v-model="page.params.bankSid" filterable class="item_input" clearable placeholder="请选择" style="width:100%" @change="bankSelect"> <el-select v-model="page.params.bankSid" filterable class="item_input" clearable
<el-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" /> placeholder="请选择" style="width:100%" @change="bankSelect">
</el-select> <el-option v-for="item in bankList" :key="item.sid" :label="item.name"
</el-form-item> :value="item.sid" />
<el-form-item label="提货门店"> </el-select>
<el-select v-model="page.params.store" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> </el-form-item> -->
<el-option v-for="item in storeList" :key="item.sid" :label="item.name" :value="item.sid" /> <el-form-item label="提货地点">
</el-select> <el-select v-model="page.params.store" filterable class="item_input" clearable
</el-form-item> placeholder="请选择" style="width:100%">
<el-form-item label="菜窖分类"> <el-option v-for="item in storeList" :key="item.sid" :label="item.name"
<el-select v-model="page.params.cardType" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> :value="item.sid" />
<el-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" /> </el-select>
</el-select> </el-form-item>
</el-form-item> --> <el-form-item label="菜窖分类">
<el-select v-model="page.params.cardType" filterable class="item_input" clearable
placeholder="请选择" style="width:100%">
<el-option v-for="item in brandList" :key="item.id" :label="item.name"
:value="item.id" />
</el-select>
</el-form-item>
<el-form-item label="客户名称">
<el-input v-model="page.params.name" placeholder="" clearable />
</el-form-item>
<el-form-item label="联系电话">
<el-input v-model="page.params.name" placeholder="" clearable />
</el-form-item>
<el-form-item label="商品名称">
<el-input v-model="page.params.name" placeholder="" clearable />
</el-form-item>
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" <el-button type="primary" size="small" icon="el-icon-search"
@ -43,13 +57,14 @@
</div> </div>
<!-- Start 项目列表头部 --> <!-- Start 项目列表头部 -->
<div class="listtop"> <div class="listtop">
<div class="tit">预约单列表</div> <div class="tit">预约提货单列表</div>
</div> </div>
<!-- End 项目列表头部 --> <!-- End 项目列表头部 -->
<!-- Start 项目列表 --> <!-- Start 项目列表 -->
<div class=""> <div class="">
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> @selection-change="handleChange">
<el-table-column fixed width="50" type="selection" align="center" />
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<!-- <el-table-column label="操作" align="center" width="120"> <!-- <el-table-column label="操作" align="center" width="120">
<template slot-scope="scope"> <template slot-scope="scope">
@ -57,14 +72,15 @@
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" /> <el-table-column prop="reserveState" label="预约单状态" align="center" />
<!-- <el-table-column prop="bankName" label="所属支行" align="center" /> -->
<el-table-column prop="storeName" label="提货点" align="center" /> <el-table-column prop="storeName" label="提货点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" /> <el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="userName" label="户名称" align="center" /> <el-table-column prop="userName" label="户名称" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" /> <el-table-column prop="userPhone" label="联系电话" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" /> <el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="商品数量" align="center" /> <el-table-column prop="goodsNumber" label="商品数量" align="center" />
<el-table-column prop="customerBank" label="客户所属支行" align="center" /> <!-- <el-table-column prop="customerBank" label="客户所属支行" align="center" /> -->
</el-table> </el-table>
</div> </div>
<!-- End 项目列表 --> <!-- End 项目列表 -->
@ -105,6 +121,12 @@
tableLoading: false, tableLoading: false,
dataList: [], dataList: [],
btnList: [{ btnList: [{
type: 'danger',
size: 'small',
icon: '',
btnKey: 'cancel',
btnLabel: '取消预约'
}, {
type: 'success', type: 'success',
size: 'small', size: 'small',
icon: 'export', icon: 'export',
@ -141,13 +163,16 @@
}, },
created() { created() {
// this.initBank() // this.initBank()
// this.initStore() this.initStore()
// this.initBrand() this.initBrand()
// this.getAllStore() // this.getAllStore()
this.loadList() this.loadList()
// this.getBankList() // this.getBankList()
}, },
methods: { methods: {
handleChange(val) {
},
initBank() { initBank() {
reqBank.listBankAll() reqBank.listBankAll()
.then(resp => { .then(resp => {

492
src/views/pickupPoint/index.vue

@ -1,249 +1,257 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="提货点列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="提货点列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="提货点名称"> <el-form-item label="提货点名称">
<el-input v-model="queryParams.params.name" placeholder="" clearable /> <el-input v-model="queryParams.params.name" placeholder="" clearable />
</el-form-item> </el-form-item>
</el-form> <!-- <el-form-item label="所属区域">
<div class="btn" style="text-align: center;"> <el-input v-model="queryParams.params.bankName" placeholder="" clearable />
<el-button type="primary" size="small" icon="el-icon-search" </el-form-item> -->
@click="dosearch">查询</el-button> </el-form>
<el-button type="primary" size="small" icon="el-icon-refresh" <div class="btn" style="text-align: center;">
@click="resetQuery">重置</el-button> <el-button type="primary" size="small" icon="el-icon-search"
</div> @click="dosearch">查询</el-button>
</div> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> </div>
<div class="tit">提货点列表</div> </div>
</div> <!-- Start 项目列表头部 -->
<!-- End 项目列表头部 --> <div class="listtop">
<!-- Start 项目列表 --> <div class="tit">提货点列表</div>
<div class=""> </div>
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" <!-- End 项目列表头部 -->
:row-style="{height: '40px'}"> <!-- Start 项目列表 -->
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <div class="">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
<el-table-column label="操作" align="center" width="100"> :row-style="{height: '40px'}">
<template slot-scope="scope"> <!-- <el-table-column fixed width="50" type="selection" align="center" /> -->
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">编辑</el-button> <el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<!-- <el-button type="primary" size="mini" @click="toRelevancyInfo(scope.row)">删除</el-button> --> <el-table-column label="操作" align="center" width="100">
</template> <template slot-scope="scope">
</el-table-column> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">编辑</el-button>
<el-table-column label="是否禁用" align="center" width="140"> <!-- <el-button type="primary" size="mini" @click="toRelevancyInfo(scope.row)">删除</el-button> -->
<template slot-scope="scope"> </template>
<el-switch v-model="scope.row.isEnable" active-text="可用" inactive-text="禁用" </el-table-column>
active-value="1" inactive-value="0" <el-table-column label="是否禁用" align="center" width="140">
@change="enableChange(scope.row.sid,scope.row.isEnable)" /> <template slot-scope="scope">
</template> <el-switch v-model="scope.row.isEnable" active-text="可用" inactive-text="禁用"
</el-table-column> active-value="1" inactive-value="0"
<el-table-column prop="name" label="提货点名称" align="center" width="250" /> @change="enableChange(scope.row.sid,scope.row.isEnable)" />
<el-table-column prop="phone" label="联系电话" align="center" width="150" /> </template>
<el-table-column prop="address" label="提货点地址" align="center" /> </el-table-column>
<el-table-column prop="bankName" label="所属支行" width="250" align="center" /> <el-table-column prop="name" label="提货点名称" align="center" width="250" />
<el-table-column prop="businessHours" label="营业时间" align="center" width="200" /> <el-table-column prop="phone" label="联系电话" align="center" width="150" />
<el-table-column prop="sort" label="排序" align="center" width="80" /> <!-- <el-table-column prop="bankName" label="所属区域" width="150" align="center" /> -->
</el-table> <el-table-column prop="address" label="提货点地址" align="center" />
</div> <el-table-column prop="businessHours" label="营业时间" align="center" width="200" />
<!-- End 项目列表 --> <el-table-column prop="sort" label="排序" align="center" width="80" />
<div class="pages"> </el-table>
<div class="tit" /> </div>
<!-- 翻页 --> <!-- End 项目列表 -->
<pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current" <div class="pages">
:limit.sync="queryParams.size" class="pagination" @pagination="loadList" /> <div class="tit" />
</div> <!-- 翻页 -->
</div> <pagination v-show="dataList.length > 0" :total="queryParams.total" :page.sync="queryParams.current"
</div> :limit.sync="queryParams.size" class="pagination" @pagination="loadList" />
<!-- 新增修改部分组件 --> </div>
<divAdd v-show="viewState == 2|| viewState ==3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> </div>
</div> </div>
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2|| viewState ==3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/pickupPoint/pickupPoint.js' import req from '@/api/pickupPoint/pickupPoint.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
// import pageye from '@/components/pagination/pageye' // import pageye from '@/components/pagination/pageye'
import divAdd from './indexAdd.vue' import divAdd from './indexAdd.vue'
export default { export default {
name: 'SupplierBankInfoIndex', name: 'SupplierBankInfoIndex',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
// pageye, // pageye,
divAdd divAdd
}, },
data() { data() {
return { return {
btndisabled: false, btndisabled: false,
viewState: 1, // 1 2 3 4 viewState: 1, // 1 2 3 4
isSearchShow: false, isSearchShow: false,
searchxianshitit: '显示查询条件', searchxianshitit: '显示查询条件',
tableLoading: false, tableLoading: false,
dataList: [], dataList: [],
btnList: [{ btnList: [{
type: 'primary', type: 'primary',
size: 'small', size: 'small',
icon: 'plus', icon: 'plus',
btnKey: 'toAdd', btnKey: 'toAdd',
btnLabel: '新增' btnLabel: '新增'
}, },
{ {
type: 'info', type: 'info',
size: 'small', size: 'small',
icon: 'cross', icon: 'cross',
btnKey: 'doClose', btnKey: 'doClose',
btnLabel: '关闭' btnLabel: '关闭'
} }
], ],
queryParams: { queryParams: {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
name: '' name: '',
} bankName: ''
}, }
sids: [] },
} sids: []
}, }
mounted() { },
this.$refs['btnbar'].setButtonList(this.btnList) mounted() {
}, this.$refs['btnbar'].setButtonList(this.btnList)
created() { },
this.loadList() created() {
}, this.loadList()
methods: { },
// methods: {
clicksearchShow() { //
this.isSearchShow = !this.isSearchShow clicksearchShow() {
if (this.isSearchShow) { this.isSearchShow = !this.isSearchShow
this.searchxianshitit = '隐藏查询条件' if (this.isSearchShow) {
} else { this.searchxianshitit = '隐藏查询条件'
this.searchxianshitit = '显示查询条件' } else {
} this.searchxianshitit = '显示查询条件'
}, }
btnHandle(btnKey) { },
switch (btnKey) { btnHandle(btnKey) {
case 'toAdd': switch (btnKey) {
this.toAdd() case 'toAdd':
break this.toAdd()
case 'doClose': break
this.doClose() case 'doClose':
break this.doClose()
default: break
break default:
} break
}, }
loadList() { },
this.tableLoading = true loadList() {
req.storeListPage(this.queryParams).then((resp) => { this.tableLoading = true
this.tableLoading = false this.queryParams.params.userSid = window.sessionStorage.getItem('userSid')
if (resp.success) { this.queryParams.params.orgPath = window.sessionStorage.getItem('orgSidPath')
const data = resp.data this.queryParams.params.menuUrl = this.$route.path
this.queryParams.total = data.total req.storeListPage(this.queryParams).then((resp) => {
this.dataList = data.records this.tableLoading = false
} else { if (resp.success) {
// resp.code const data = resp.data
this.dataList = [] this.queryParams.total = data.total
this.queryParams.total = 0 this.dataList = data.records
} } else {
}).catch(() => { // resp.code
this.tableLoading = false this.dataList = []
}) this.queryParams.total = 0
}, }
// }).catch(() => {
indexMethod(index) { this.tableLoading = false
var pagestart = (this.queryParams.current - 1) * this.queryParams.size })
var pageindex = index + 1 + pagestart },
return pageindex //
}, indexMethod(index) {
dosearch() { var pagestart = (this.queryParams.current - 1) * this.queryParams.size
this.queryParams.current = 1 var pageindex = index + 1 + pagestart
this.loadList() return pageindex
}, },
resetQuery() { dosearch() {
this.queryParams = { this.queryParams.current = 1
current: 1, this.loadList()
size: 10, },
total: 0, resetQuery() {
params: { this.queryParams = {
name: '' current: 1,
} size: 10,
} total: 0,
this.loadList() params: {
}, name: '',
toAdd() { bankName: ''
this.viewState = 2 }
this.$refs['divadd'].showAdd() }
}, this.loadList()
doClose() { },
this.$store.dispatch('tagsView/delView', this.$route) toAdd() {
this.$router.go(-1) this.viewState = 2
}, this.$refs['divadd'].showAdd()
toRelevancy(row) { },
this.viewState = 3 doClose() {
this.$refs['divadd'].showEdit(row) this.$store.dispatch('tagsView/delView', this.$route)
}, this.$router.go(-1)
toRelevancyInfo(row) { },
const tip = '请确认是否删除所选提货点?' toRelevancy(row) {
this.$confirm(tip, '提示', { this.viewState = 3
confirmButtonText: '确定', this.$refs['divadd'].showEdit(row)
cancelButtonText: '取消', },
type: 'warning' toRelevancyInfo(row) {
}).then(() => { const tip = '请确认是否删除所选提货点?'
const loading = this.$loading({ this.$confirm(tip, '提示', {
lock: true, confirmButtonText: '确定',
text: 'Loading', cancelButtonText: '取消',
spinner: 'el-icon-loading', type: 'warning'
background: 'rgba(0, 0, 0, 0.7)' }).then(() => {
}) const loading = this.$loading({
req.deleteStore(row.sid).then((resp) => { lock: true,
loading.close() text: 'Loading',
if (resp.success) { spinner: 'el-icon-loading',
this.$message({ background: 'rgba(0, 0, 0, 0.7)'
type: 'success', })
message: resp.msg, req.deleteStore(row.sid).then((resp) => {
showClose: true loading.close()
}) if (resp.success) {
this.loadList() this.$message({
} else { type: 'success',
// resp.code message: resp.msg,
} showClose: true
}).catch(e => { })
loading.close() this.loadList()
}) } else {
}).catch(() => {}) // resp.code
}, }
resetState() { }).catch(e => {
this.viewState = 1 loading.close()
}, })
enableChange(sid, state) { }).catch(() => {})
console.log('sid', sid) },
console.log('state', state) resetState() {
req.updateIsEnable(sid, state).then((resp) => { this.viewState = 1
if (resp.success) { },
this.$message({ enableChange(sid, state) {
type: 'success', console.log('sid', sid)
message: '状态已更新', console.log('state', state)
showClose: true req.updateIsEnable(sid, state).then((resp) => {
}) if (resp.success) {
} else { // resp.code this.$message({
} type: 'success',
}).catch(e => { message: '状态已更新',
console.log(e) showClose: true
}) })
} } else { // resp.code
} }
} }).catch(e => {
console.log(e)
})
}
}
}
</script> </script>
<style scoped> <style scoped>
</style> </style>

46
src/views/pickupPoint/indexAdd.vue

@ -45,7 +45,7 @@
<el-input v-model="formobj.lonAndLat" placeholder="经纬度,以逗号分隔" class="item_input" clearable /> <el-input v-model="formobj.lonAndLat" placeholder="经纬度,以逗号分隔" class="item_input" clearable />
</div> </div>
<!-- <div class="item"> <!-- <div class="item">
<span class="item_text">所属支行</span> <span class="item_text">所属区域</span>
<el-select v-model="formobj.bankName" filterable class="item_input" clearable placeholder="请选择" <el-select v-model="formobj.bankName" filterable class="item_input" clearable placeholder="请选择"
style="width:100%" @change="bankSelect"> style="width:100%" @change="bankSelect">
<el-option v-for="item in bankList" :key="item.name" :label="item.name" :value="item.sid"> <el-option v-for="item in bankList" :key="item.name" :label="item.name" :value="item.sid">
@ -78,25 +78,31 @@
picUrl: '', picUrl: '',
lonAndLat: '', lonAndLat: '',
bankName: "", bankName: "",
bankSid: "" bankSid: "",
orgPath: window.sessionStorage.getItem('orgSidPath'),
useOrgSid: window.sessionStorage.getItem('defaultDeptSid'),
userSid: window.sessionStorage.getItem('userSid'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
}, },
bankList: [] bankList: []
} }
}, },
created() { created() {
// req.bankSelect()
// .then(resp => {
// console.log('>>>>>>>>>bankSelect', resp)
// this.bankList = resp.data
// console.log('>>>>>>>>>bankSelect', this.bankList)
// })
// .catch(() => {})
}, },
methods: { methods: {
init() {
req.bankSelect()
.then(resp => {
console.log('>>>>>>>>>bankSelect', resp)
this.bankList = resp.data
console.log('>>>>>>>>>bankSelect', this.bankList)
})
.catch(() => {})
},
saveOrUpdate() { saveOrUpdate() {
console.log('>>>>>>>>>saveOrUpdate', this.formobj) console.log('>>>>>>>>>saveOrUpdate', this.formobj)
req.saveStore(this.formobj) req.saveStore(this.formobj)
@ -128,15 +134,20 @@
picUrl: '', picUrl: '',
lonAndLat: '', lonAndLat: '',
bankName: "", bankName: "",
bankSid: "" bankSid: "",
orgPath: window.sessionStorage.getItem('orgSidPath'),
useOrgSid: window.sessionStorage.getItem('defaultDeptSid'),
userSid: window.sessionStorage.getItem('userSid'),
createOrgSid: window.sessionStorage.getItem('orgSid'),
} }
this.$emit('doback') this.$emit('doback')
}, },
showAdd() { showAdd() {
// this.init()
}, },
showEdit(row) { showEdit(row) {
// this.init()
req.storeInit(row.sid) req.storeInit(row.sid)
.then(resp => { .then(resp => {
if (resp.success) { if (resp.success) {
@ -149,6 +160,15 @@
}, },
bankSelect(val) { bankSelect(val) {
this.formobj.bankSid = val this.formobj.bankSid = val
console.log('selectCateChange', val)
for (var i = 0; i < this.bankList.length; i++) {
if (val === this.bankList[i].sid) {
this.formobj.bankName = this.bankList[i].name
break
}
}
} }
} }
} }

529
src/views/preSaleOrder/index.vue

@ -0,0 +1,529 @@
<template>
<div class="app-container">
<div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="预售单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }}
</el-button>
<div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header">
<el-form-item label="订单编号">
<el-input v-model="page.params.billNo" placeholder="" clearable />
</el-form-item>
<el-form-item label="创建日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="客户名称">
<el-input v-model="page.params.name" placeholder="" clearable />
</el-form-item>
<el-form-item label="支付状态">
<el-select v-model="page.params.payState" filterable class="item_input" clearable
placeholder="请选择" style="width:100%">
<el-option v-for="item in payStateList" :key="item.sid" :label="item.name"
:value="item.sid" />
</el-select>
</el-form-item>
<el-form-item label="支付日期">
<el-date-picker v-model="page.params.payStartDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-date-picker v-model="page.params.payEndDate" type="date" placeholder="选择日期"
format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="开票状态">
<el-select v-model="page.params.invoiceState" filterable class="item_input" clearable
placeholder="请选择" style="width:100%">
<el-option v-for="item in invoiceStateList" :key="item.sid" :label="item.name"
:value="item.sid" />
</el-select>
</el-form-item>
</el-form>
<div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search"
@click="dosearch">查询</el-button>
<el-button type="primary" size="small" icon="el-icon-refresh"
@click="resetQuery">重置</el-button>
</div>
</div>
</div>
<!-- Start 项目列表头部 -->
<div class="listtop">
<div class="tit">预售单列表</div>
</div>
<!-- End 项目列表头部 -->
<!-- Start 项目列表 -->
<div class="">
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"
@selection-change="handleChange">
<el-table-column fixed width="50" type="selection" align="center" />
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<!-- <el-table-column label="操作" align="center" width="120">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</template>
</el-table-column> -->
<el-table-column prop="createTime" label="创建日期" align="center" />
<el-table-column label="订单编号" align="center" width="350">
<template slot-scope="scope">
<span style="color: #1890FF; text-decoration: underline ;"
@click="showOrder(scope.row.sid)">{{scope.row.outTradeNo}}</span>
</template>
</el-table-column>
<!-- <el-table-column prop="bankName" label="所属支行" align="center" /> -->
<!-- <el-table-column prop="userName" label="客户名称" align="center" /> -->
<!-- <el-table-column prop="userPhone" label="联系电话" align="center" /> -->
<el-table-column prop="name" label="商品名称" align="center" />
<el-table-column prop="count" label="商品数量" align="center" />
<el-table-column prop="payStatusValue" label="支付状态" align="center" />
<!-- <el-table-column label="支付状态" align="center">
<template slot-scope="scope">
<span type="primary" size="mini">{{payState(scope.row.payStatus)}}</span>
</template>
</el-table-column> -->
<el-table-column prop="invoiceStatusValue" label="开票状态" align="center" />
<!-- <el-table-column prop="customerBank" label="客户所属支行" align="center" /> -->
</el-table>
</div>
<!-- End 项目列表 -->
<div class="pages">
<div class="tit" />
<!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current"
:limit.sync="page.size" class="pagination" @pagination="loadList" />
</div>
</div>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<!-- <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> -->
<el-dialog title="订单详情" :visible.sync="dialogVisible" :before-close="handleClose">
<el-form ref="dataForm1" class="formadd" style="margin-top: -40px;" :model="orderInfo">
<div class="title" style="display: flex;align-items: center;justify-content: space-between;height:40px">
<div>订单信息</div>
</div>
<el-row class="first_row">
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">订单编号</span>
</el-form-item>
</el-col>
<el-col :span="20">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.outTradeNo}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">下单时间</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.createTime}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">付款时间</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.payTime}}</span>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">支付方式</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.payType}}</span>
</el-form-item>
</el-col>
<el-col :span="4" class="trightb">
<el-form-item class="trightb_item">
<span slot="label">实付金额</span>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item class="trightb_item">
<span slot="label">{{orderInfo.meet}}</span>
</el-form-item>
</el-col>
</el-row>
<el-collapse v-model="activeNames" style="margin-top: 20px;">
<el-collapse-item name="1" title="商品列表">
<!-- <template slot="title">
商品列表<span class="span" @click.stop="add()">添加</span>
</template> -->
<el-table v-loading="listLoading" :data="orderInfo.ordOrderDetails" border style="width: 100%;"
:row-style="{height: '40px'}">
<el-table-column label="序号" type="index" width="80" :index="indexMethod" align="center" />
<el-table-column label="商品图片" align="center">
<template slot-scope="scope">
<el-popover placement="left" trigger="click" width="300">
<img :src="scope.row.picUrl" width="100%" />
<img slot="reference" :src="scope.row.picUrl" :alt="scope.row.picUrl"
style="max-height: 70px;max-width: 70px; padding: 5px" />
</el-popover>
</template>
</el-table-column>
<el-table-column label="商品名称" prop="goodsName" align="center" />
<el-table-column label="份数" prop="partNumber" align="center" />
<el-table-column label="单价" prop="priceUnit" align="center" />
<el-table-column label="单位" prop="specificationUnit" align="center" />
<el-table-column label="规格" prop="unitName" align="center" />
<el-table-column label="金额" prop="pricePart" align="center" />
</el-table>
</el-collapse-item>
</el-collapse>
</el-form>
<div style="display: flex;flex-direction: row;width: 100%;justify-content: center;align-items: center;">
<el-button type="primary" style="margin-top: 20px;" @click="handleClose"> </el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import req from '@/api/preSaleOrder/preSaleOrder.js'
import req2 from '@/api/invoiceReview/invoiceReview.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
// import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveIndex',
components: {
ButtonBar,
Pagination,
// divAdd
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
listLoading: false,
activeNames: ['1'],
dialogVisible: false,
dataList: [],
btnList: [{
type: 'danger',
size: 'small',
icon: '',
btnKey: 'refund',
btnLabel: '退款'
}, {
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
}, {
type: 'danger',
size: 'small',
icon: 'del',
btnKey: 'dodel',
btnLabel: '删除'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
billNo: '',
startDate: '',
endDate: '',
name: '',
payState: '',
payStartDate: '',
payEndDate: '',
invoiceState: ''
}
},
brandList: [],
bankList: [],
storeList: [],
payStateList: [{
sid: '2',
name: '待支付'
},
{
sid: '3',
name: '已取消'
},
{
sid: '4',
name: '支付成功'
},
{
sid: '99',
name: '已退款'
}
],
invoiceStateList: [{
sid: '0',
name: '未开票'
},
{
sid: '1',
name: '提交申请'
},
{
sid: '2',
name: '审核通过'
},
{
sid: '3',
name: '不通过'
}
],
sids: [],
orderInfo: {}
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.loadList()
},
methods: {
// payState(val) {
// if (val == '2') {
// return ""
// } else if (val == '3') {
// return ""
// } else if (val == '4') {
// return ""
// } else if (val == '99') {
// return "退"
// }
// },
showOrder(sid) {
console.log("showOrder", sid);
if (sid != this.orderInfo.sid) {
req2.getOrderDetails(sid).then((resp) => {
console.log("getOrderDetails", resp.data);
this.orderInfo = resp.data
this.tableLoading = false
this.dialogVisible = true
}).catch(() => {
this.tableLoading = false
})
} else {
this.dialogVisible = true
}
},
handleClose() {
this.dialogVisible = false
},
handleChange(val) {
console.log("handleChange", val)
// this.selectionList = val
const aa = []
val.forEach(element => {
aa.push(element.sid)
})
this.sids = aa
},
initBank() {
reqBank.listBankAll()
.then(resp => {
this.bankList = resp.data
})
},
initStore() {
reqBank.listStoreOfBank(this.page.params.bankSid)
.then(resp => {
this.storeList = resp.data
})
},
initBrand() {
reqMall.listAllBrand().then(resp => {
this.brandList = resp.data
})
},
//
clicksearchShow() {
this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件'
} else {
this.searchxianshitit = '显示查询条件'
}
},
btnHandle(btnKey) {
switch (btnKey) {
case 'build': //
this.doBuild()
break
case 'doClose':
this.doClose()
break
case 'dodel':
this.dodel()
break
case 'refund':
this.refund()
break
default:
break
}
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
this.page.params.store = ''
this.initStore()
},
loadList() {
this.tableLoading = true
this.page.params.userSid = window.sessionStorage.getItem('userSid')
this.page.params.orgPath = window.sessionStorage.getItem('orgSidPath')
this.page.params.menuUrl = this.$route.path
req.pcOrderList(this.page).then((resp) => {
this.tableLoading = false
if (resp.success) {
const data = resp.data
this.page.total = data.total
this.dataList = data.records
} else {
// resp.code
this.dataList = []
this.page.total = 0
}
}).catch(() => {
this.tableLoading = false
})
},
//
indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart
return pageindex
},
dosearch() {
this.page.current = 1
this.loadList()
},
resetQuery() {
this.page = {
current: 1,
size: 10,
total: 0,
params: {
billNo: '',
startDate: '',
endDate: '',
name: '',
payState: '',
payStartDate: '',
payEndDate: '',
invoiceState: ''
}
}
this.loadList()
},
toRelevancy(row) {
this.viewState = 3
this.$refs['divadd'].showEdit(row)
},
resetState() {
this.viewState = 1
},
doClose() {
this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1)
},
//
doBuild() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.expExcelOfCustomer(this.page.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
})
const fileName = '预约单明细_' + this.page.params.startDate + '.xlsx'
const elink = document.createElement('a')
elink.download = fileName
elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink)
elink.click()
URL.revokeObjectURL(elink.href)
document.body.removeChild(elink)
}).catch(() => {
loading.close()
})
},
dodel() {
},
refund() {
},
}
}
</script>
<style scoped>
</style>

8
vue.config.js

@ -40,8 +40,8 @@ module.exports = {
}, },
proxy: { proxy: {
'/api': { // 匹配所有以 '/api'开头的请求路径 '/api': { // 匹配所有以 '/api'开头的请求路径
// target: 'http://192.168.0.105:7211', target: 'http://192.168.0.105:8116',
target: process.env.VUE_APP_URL, // 代理目标的基础路径 // target: process.env.VUE_APP_URL, // 代理目标的基础路径
// target: 'https://supervise.yxtsoft.com/lpkapi', // 代理目标的基础路径 // target: 'https://supervise.yxtsoft.com/lpkapi', // 代理目标的基础路径
changeOrigin: true, // 支持跨域 changeOrigin: true, // 支持跨域
pathRewrite: { // 重写路径: 去掉路径中开头的'/api' pathRewrite: { // 重写路径: 去掉路径中开头的'/api'
@ -49,8 +49,8 @@ module.exports = {
} }
}, },
'/upload': { // 匹配所有以 '/api'开头的请求路径 '/upload': { // 匹配所有以 '/api'开头的请求路径
// target: 'http://192.168.0.105:7211', target: 'http://192.168.0.105:8116',
target: process.env.VUE_APP_URL, // 代理目标的基础路径 // target: process.env.VUE_APP_URL, // 代理目标的基础路径
// target: 'https://supervise.yxtsoft.com/lpkapi', // 代理目标的基础路径 // target: 'https://supervise.yxtsoft.com/lpkapi', // 代理目标的基础路径
changeOrigin: true, // 支持跨域 changeOrigin: true, // 支持跨域
pathRewrite: { // 重写路径: 去掉路径中开头的'/api' pathRewrite: { // 重写路径: 去掉路径中开头的'/api'

Loading…
Cancel
Save