Browse Source

完善项目

master
myTest383 5 months ago
parent
commit
0d8956ac52
  1. 5
      .env.development
  2. 149
      package.json
  3. 56
      src/api/User/login.js
  4. 28
      src/api/adminmallapi.js
  5. 66
      src/api/appletNotice/appletNotice.js
  6. 32
      src/api/authentication/authentication.js
  7. 69
      src/api/brand.js
  8. 95
      src/api/commodity/commodity.js
  9. 46
      src/api/invoiceReview/invoiceReview.js
  10. 66
      src/api/lpk/banner.js
  11. 176
      src/api/lpk/ordertools.js
  12. 176
      src/api/lpk/reserveorder.js
  13. 95
      src/api/pickupPoint/pickupPoint.js
  14. 48
      src/api/productAttrCate.js
  15. 98
      src/api/productCate.js
  16. 120
      src/api/user.js
  17. BIN
      src/assets/home/bj.png
  18. BIN
      src/assets/images/company_icon.png
  19. BIN
      src/assets/images/experience.png
  20. BIN
      src/assets/images/formal.png
  21. BIN
      src/assets/images/overdue.png
  22. BIN
      src/assets/loginImg/login_left.png
  23. BIN
      src/assets/loginImg/yxt-logo.png
  24. 315
      src/layout/components/Navbar.vue
  25. 1118
      src/layout/components/Sidebar/index.vue
  26. 22
      src/settings.js
  27. 34
      src/utils/functions.js.js
  28. 1084
      src/views/login/login.vue
  29. 615
      src/views/order/index.vue
  30. 436
      src/views/orderreserve/allDistributionCount.vue
  31. 498
      src/views/orderreserve/distributionCount.vue
  32. 495
      src/views/orderreserve/index.vue
  33. 462
      src/views/orderreserve/subBranch.vue
  34. 6
      vue.config.js

5
.env.development

@ -8,8 +8,7 @@ VUE_APP_BASE_API = '/api'
# VUE_APP_URL = "http://jianguan.yyundong.com/shgfapi"
VUE_APP_URL = "http://192.168.0.105:7211"
VUE_APP_REPORT_URL = "http://192.168.2.106:7202"
##VUE_APP_REPORT_URL = "https://lpk.yyundong.com"
VUE_APP_URL = "http://192.168.0.105:8114"
VUE_APP_REPORT_URL = "http://192.168.1.105:7202"
##VUE_APP_REPORT_URL = "https://supervise.yxtsoft.com/lpk"
##VUE_APP_URL = "http://8.130.39.13:8112"

149
package.json

@ -1,76 +1,77 @@
{
"name": "yxt-yyth-ui-admin",
"version": "1.1.0",
"description": "",
"author": "",
"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit"
},
"dependencies": {
"axios": "^0.24.0",
"bpmn-js": "^9.2.2",
"core-js": "^3.8.3",
"echarts": "^5.4.3",
"ejs": "^2.7.4",
"element-ui": "^2.15.14",
"js-cookie": "2.2.0",
"moment": "^2.29.1",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"portfinder": "^1.0.21",
"print-template": "^1.2.8",
"qs": "^6.9.4",
"quill": "^1.3.7",
"sass-resources-loader": "^2.1.1",
"viewerjs": "^1.9.0",
"vue": "^2.6.14",
"vue-amap": "^0.5.10",
"vue-router": "^3.5.1",
"vuex": "3.6.0",
"vuex-persistedstate": "^4.0.0",
"xcrud": "^0.4.19"
},
"devDependencies": {
"@vue/cli-plugin-babel": "4.4.4",
"@vue/cli-plugin-eslint": "4.4.4",
"@vue/cli-plugin-unit-jest": "4.4.4",
"@vue/cli-service": "4.4.4",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "9.5.1",
"babel-eslint": "10.1.0",
"babel-jest": "23.6.0",
"babel-plugin-dynamic-import-node": "2.3.3",
"babel-polyfill": "^6.26.0",
"chalk": "2.4.2",
"connect": "3.6.6",
"eslint": "6.7.2",
"eslint-plugin-vue": "6.2.2",
"html-webpack-plugin": "3.2.0",
"mockjs": "1.0.1-beta3",
"runjs": "4.3.2",
"sass": "1.26.8",
"sass-loader": "8.0.2",
"script-ext-html-webpack-plugin": "2.1.3",
"serve-static": "1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.2",
"vue-template-compiler": "2.6.10"
},
"browserslist": [
"> 1%",
"last 2 versions"
],
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"license": "MIT"
"name": "yxt-yyth-ui-admin",
"version": "1.1.0",
"description": "",
"author": "",
"scripts": {
"dev": "vue-cli-service serve",
"build:prod": "vue-cli-service build",
"build:stage": "vue-cli-service build --mode staging",
"preview": "node build/index.js --preview",
"svgo": "svgo -f src/icons/svg --config=src/icons/svgo.yml",
"lint": "eslint --ext .js,.vue src",
"test:unit": "jest --clearCache && vue-cli-service test:unit",
"test:ci": "npm run lint && npm run test:unit"
},
"dependencies": {
"axios": "^0.24.0",
"bpmn-js": "^9.2.2",
"core-js": "^3.8.3",
"echarts": "^5.4.3",
"ejs": "^2.7.4",
"element-china-area-data": "^6.1.0",
"element-ui": "^2.15.14",
"js-cookie": "2.2.0",
"moment": "^2.29.1",
"normalize.css": "7.0.0",
"nprogress": "0.2.0",
"path-to-regexp": "2.4.0",
"portfinder": "^1.0.21",
"print-template": "^1.2.8",
"qs": "^6.9.4",
"quill": "^1.3.7",
"sass-resources-loader": "^2.1.1",
"viewerjs": "^1.9.0",
"vue": "^2.6.14",
"vue-amap": "^0.5.10",
"vue-router": "^3.5.1",
"vuex": "3.6.0",
"vuex-persistedstate": "^4.0.0",
"xcrud": "^0.4.19"
},
"devDependencies": {
"@vue/cli-plugin-babel": "4.4.4",
"@vue/cli-plugin-eslint": "4.4.4",
"@vue/cli-plugin-unit-jest": "4.4.4",
"@vue/cli-service": "4.4.4",
"@vue/test-utils": "1.0.0-beta.29",
"autoprefixer": "9.5.1",
"babel-eslint": "10.1.0",
"babel-jest": "23.6.0",
"babel-plugin-dynamic-import-node": "2.3.3",
"babel-polyfill": "^6.26.0",
"chalk": "2.4.2",
"connect": "3.6.6",
"eslint": "6.7.2",
"eslint-plugin-vue": "6.2.2",
"html-webpack-plugin": "3.2.0",
"mockjs": "1.0.1-beta3",
"runjs": "4.3.2",
"sass": "1.26.8",
"sass-loader": "8.0.2",
"script-ext-html-webpack-plugin": "2.1.3",
"serve-static": "1.13.2",
"svg-sprite-loader": "4.1.3",
"svgo": "1.2.2",
"vue-template-compiler": "2.6.10"
},
"browserslist": [
"> 1%",
"last 2 versions"
],
"engines": {
"node": ">=8.9",
"npm": ">= 3.0.0"
},
"license": "MIT"
}

56
src/api/User/login.js

@ -2,34 +2,34 @@ import request from '@/utils/request'
import qs from 'qs'
class User {
login(data) { // 登录
return request({
url: '/system/user/login',
method: 'post',
data
})
}
logout(data) { // 退出
return request({
url: '/portal/v1/sysuser/signOut',
method: 'post',
data: qs.stringify(data)
})
}
updatePassword(data) { // 退出修改密码
return request({
url: '/portal/v1/sysuser/updatePassword',
method: 'post',
data: qs.stringify(data)
})
}
reGetPwd(data) {
return request({
url: `/system/user/reGetPwd/${data.userName}/${data.userPhone}`,
method: 'post',
data: qs.stringify(data)
})
}
login(data) { // 登录
return request({
url: '/system/user/login',
method: 'post',
data
})
}
logout(data) { // 退出
return request({
url: '/portal/v1/sysuser/signOut',
method: 'post',
data: qs.stringify(data)
})
}
updatePassword(data) { // 退出修改密码
return request({
url: '/portal/v1/sysuser/updatePassword',
method: 'post',
data: qs.stringify(data)
})
}
reGetPwd(data) {
return request({
url: `/system/user/reGetPwd/${data.userName}/${data.userPhone}`,
method: 'post',
data: qs.stringify(data)
})
}
}
export default new User()

28
src/api/adminmallapi.js

@ -1,18 +1,18 @@
import request from '@/utils/request'
export default {
// 品牌列表
listAllBrand: function(params) {
return request({
url: '/adminapi/mall/listAllBrand',
method: 'get'
})
},
// 品牌列表
listAllCategory: function(params) {
return request({
url: '/adminapi/mall/listAllCategory',
method: 'get'
})
}
// 品牌列表
listAllBrand: function(params) {
return request({
url: '/mall/adminapi/mall/listAllBrand',
method: 'get'
})
},
// 品牌列表
listAllCategory: function(params) {
return request({
url: '/mall/adminapi/mall/listAllCategory',
method: 'get'
})
}
}

66
src/api/appletNotice/appletNotice.js

@ -2,39 +2,39 @@ import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/appletnotice/pageList',
method: 'post',
data: params,
})
},
// 新增、保存
saveNotice: function(data) {
return request({
url: '/appletnotice/saveOrUpdate',
method: 'post',
data: data
});
},
// 初始化
noticeInit: function(data) {
return request({
url: '/appletnotice/noticeInit/'+data,
method: 'get'
});
},
// 修改是否可见
updateAppletUseTo: function(sid,isEnable) {
return request({
url: '/appletnotice/isDisplayed/'+sid+"/"+isEnable
});
},
// 查询分页列表
listPage: function(params) {
return request({
url: '/mall/appletnotice/pageList',
method: 'post',
data: params,
})
},
// 新增、保存
saveNotice: function(data) {
return request({
url: '/mall/appletnotice/saveOrUpdate',
method: 'post',
data: data
});
},
// 初始化
noticeInit: function(data) {
return request({
url: '/mall/appletnotice/noticeInit/' + data,
method: 'get'
});
},
// 修改是否可见
updateAppletUseTo: function(sid, isEnable) {
return request({
url: '/mall/appletnotice/isDisplayed/' + sid + "/" + isEnable
});
},
}

32
src/api/authentication/authentication.js

@ -2,22 +2,22 @@ import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/enterprisecertification/listPage',
method: 'post',
data: params,
})
},
// 查询分页列表
listPage: function(params) {
return request({
url: '/mall/enterprisecertification/listPage',
method: 'post',
data: params,
})
},
// 审核
toExamine: function(params) {
return request({
url: '/enterprisecertification/toExamine',
method: 'post',
data: params,
})
},
// 审核
toExamine: function(params) {
return request({
url: '/mall/enterprisecertification/toExamine',
method: 'post',
data: params,
})
},
}

69
src/api/brand.js

@ -1,53 +1,52 @@
import request from '@/utils/request'
export function fetchList(params) {
return request({
url:'/pms/PmsBrand/list',
method:'get',
params:params
})
return request({
url: '/mall/pms/PmsBrand/list',
method: 'get',
params: params
})
}
export function createBrand(data) {
return request({
url:'/pms/PmsBrand/create',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsBrand/create',
method: 'post',
data: data
})
}
export function updateShowStatus(data) {
return request({
url:'/pms/PmsBrand/update/showStatus',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsBrand/update/showStatus',
method: 'post',
data: data
})
}
export function updateFactoryStatus(data) {
return request({
url:'/pms/PmsBrand/update/factoryStatus',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsBrand/update/factoryStatus',
method: 'post',
data: data
})
}
export function deleteBrand(id) {
return request({
url:'/pms/PmsBrand/delete/'+id,
method:'get',
})
return request({
url: '/mall/pms/PmsBrand/delete/' + id,
method: 'get',
})
}
export function getBrand(id) {
return request({
url:'/pms/PmsBrand/'+id,
method:'get',
})
return request({
url: '/mall/pms/PmsBrand/' + id,
method: 'get',
})
}
export function updateBrand(id,data) {
return request({
url:'/pms/PmsBrand/update/'+id,
method:'post',
data:data
})
export function updateBrand(id, data) {
return request({
url: '/mall/pms/PmsBrand/update/' + id,
method: 'post',
data: data
})
}

95
src/api/commodity/commodity.js

@ -2,52 +2,51 @@ import request from '@/utils/request'
export default {
// 获取商品列表
goodsListPage: function(data) {
return request({
url: '/lpkgoods/goodsListPage',
method: 'post',
data: data
});
},
// 新增、保存商品
saveGoods: function(data) {
return request({
url: '/lpkgoods/saveGoods',
method: 'post',
data: data
});
},
// 初始化商品
goodsInit: function(data) {
return request({
url: '/lpkgoods/goodsInit/'+data,
method: 'get'
});
},
// 删除商品
deleteGoods: function(data) {
return request({
url: '/lpkgoods/deleteGoods/'+data,
method: 'delete'
});
},
// 修改商品是否属于小程序状态
updateAppletUseTo: function(sid,isEnable) {
return request({
url: '/lpkgoods/appletUseTo/'+sid+"/"+isEnable
});
},
// 修改上架/下架状态
updateIsEnable: function(sid,isEnable) {
return request({
url: '/lpkgoods/appletGrounding/'+sid+"/"+isEnable
});
},
// 获取商品列表
goodsListPage: function(data) {
return request({
url: '/mall/lpkgoods/goodsListPage',
method: 'post',
data: data
});
},
// 新增、保存商品
saveGoods: function(data) {
return request({
url: '/mall/lpkgoods/saveGoods',
method: 'post',
data: data
});
},
// 初始化商品
goodsInit: function(data) {
return request({
url: '/mall/lpkgoods/goodsInit/' + data,
method: 'get'
});
},
// 删除商品
deleteGoods: function(data) {
return request({
url: '/mall/lpkgoods/deleteGoods/' + data,
method: 'delete'
});
},
// 修改商品是否属于小程序状态
updateAppletUseTo: function(sid, isEnable) {
return request({
url: '/mall/lpkgoods/appletUseTo/' + sid + "/" + isEnable
});
},
// 修改上架/下架状态
updateIsEnable: function(sid, isEnable) {
return request({
url: '/mall/lpkgoods/appletGrounding/' + sid + "/" + isEnable
});
},
}

46
src/api/invoiceReview/invoiceReview.js

@ -2,29 +2,29 @@ import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/invoicerecords/listPage',
method: 'post',
data: params,
})
},
// 查询分页列表
listPage: function(params) {
return request({
url: '/mall/invoicerecords/listPage',
method: 'post',
data: params,
})
},
// 获取订单详情
getOrderDetails: function(params) {
return request({
url: '/empsreservoorder/OrderDetailsNew/'+params,
method: 'get'
})
},
// 获取订单详情
getOrderDetails: function(params) {
return request({
url: '/mall/empsreservoorder/OrderDetailsNew/' + params,
method: 'get'
})
},
// 审核发票
toExamine: function(params) {
return request({
url: '/invoicerecords/toExamine',
method: 'post',
data: params,
})
},
// 审核发票
toExamine: function(params) {
return request({
url: '/mall/invoicerecords/toExamine',
method: 'post',
data: params,
})
},
}

66
src/api/lpk/banner.js

@ -2,39 +2,39 @@ import request from '@/utils/request'
export default {
// 查询分页列表
listPage: function(params) {
return request({
url: '/adminapi/banner/pageList',
method: 'post',
data: params,
})
},
// 新增、保存
saveNotice: function(data) {
return request({
url: '/adminapi/banner/saveOrUpdate',
method: 'post',
data: data
});
},
// 初始化
noticeInit: function(data) {
return request({
url: '/adminapi/banner/noticeInit/' + data,
method: 'get'
});
},
// 修改是否可见
updateAppletUseTo: function(sid, isEnable) {
return request({
url: '/adminapi/banner/isDisplayed/' + sid + "/" + isEnable
});
},
// 查询分页列表
listPage: function(params) {
return request({
url: '/mall/adminapi/banner/pageList',
method: 'post',
data: params,
})
},
// 新增、保存
saveNotice: function(data) {
return request({
url: '/mall/adminapi/banner/saveOrUpdate',
method: 'post',
data: data
});
},
// 初始化
noticeInit: function(data) {
return request({
url: '/mall/adminapi/banner/noticeInit/' + data,
method: 'get'
});
},
// 修改是否可见
updateAppletUseTo: function(sid, isEnable) {
return request({
url: '/mall/adminapi/banner/isDisplayed/' + sid + "/" + isEnable
});
},
}

176
src/api/lpk/ordertools.js

@ -2,93 +2,93 @@ import request from '@/utils/request'
export default {
// 获取客户级预约单列表
pageOfCustomer: function(data) {
return request({
url: '/adminapi/reserve/pageOfCustomer',
method: 'post',
data: data
});
},
expExcelOfCustomer: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfCustomer',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各提货点配货列表
pageOfStore: function(data) {
return request({
url: '/adminapi/reserve/pageOfStore',
method: 'post',
data: data
});
},
expExcelOfStore: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfStore',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各支行配货列表
pageOfBank: function(data) {
return request({
url: '/adminapi/reserve/pageOfBank',
method: 'post',
data: data
});
},
expExcelOfBank: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfBank',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取总配货列表
pageOfAll: function(data) {
return request({
url: '/adminapi/reserve/pageOfAll',
method: 'post',
data: data
});
},
expExcelOfAll: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfAll',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
}
// 获取客户级预约单列表
pageOfCustomer: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfCustomer',
method: 'post',
data: data
});
},
expExcelOfCustomer: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfCustomer',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各提货点配货列表
pageOfStore: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfStore',
method: 'post',
data: data
});
},
expExcelOfStore: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfStore',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各支行配货列表
pageOfBank: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfBank',
method: 'post',
data: data
});
},
expExcelOfBank: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfBank',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取总配货列表
pageOfAll: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfAll',
method: 'post',
data: data
});
},
expExcelOfAll: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfAll',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
}
}

176
src/api/lpk/reserveorder.js

@ -2,93 +2,93 @@ import request from '@/utils/request'
export default {
// 获取客户级预约单列表
pageOfCustomer: function(data) {
return request({
url: '/adminapi/reserve/pageOfCustomer',
method: 'post',
data: data
});
},
expExcelOfCustomer: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfCustomer',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各提货点配货列表
pageOfStore: function(data) {
return request({
url: '/adminapi/reserve/pageOfStore',
method: 'post',
data: data
});
},
expExcelOfStore: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfStore',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各支行配货列表
pageOfBank: function(data) {
return request({
url: '/adminapi/reserve/pageOfBank',
method: 'post',
data: data
});
},
expExcelOfBank: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfBank',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取总配货列表
pageOfAll: function(data) {
return request({
url: '/adminapi/reserve/pageOfAll',
method: 'post',
data: data
});
},
expExcelOfAll: function(params) {
return request({
url: '/adminapi/reserve/expExcelOfAll',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
}
// 获取客户级预约单列表
pageOfCustomer: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfCustomer',
method: 'post',
data: data
});
},
expExcelOfCustomer: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfCustomer',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各提货点配货列表
pageOfStore: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfStore',
method: 'post',
data: data
});
},
expExcelOfStore: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfStore',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取各支行配货列表
pageOfBank: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfBank',
method: 'post',
data: data
});
},
expExcelOfBank: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfBank',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
},
// 获取总配货列表
pageOfAll: function(data) {
return request({
url: '/mall/adminapi/reserve/pageOfAll',
method: 'post',
data: data
});
},
expExcelOfAll: function(params) {
return request({
url: '/mall/adminapi/reserve/expExcelOfAll',
method: 'post',
data: params,
// headers: {
// "responseType": "blob" //将二进制流转换成blob对象
// },
headers: {
'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Authorization, Accept, X-Requested-With , yourHeaderFeild'
},
responseType: 'blob'
})
}
}

95
src/api/pickupPoint/pickupPoint.js

@ -2,54 +2,53 @@ import request from '@/utils/request'
export default {
// 获取支行选择列表
bankSelect: function(data) {
return request({
url: '/lpkbank/listAll',
method: 'get'
});
},
// 获取提货点列表
storeListPage: function(data) {
return request({
url: '/lpkstore/storeListPage',
method: 'post',
data: data
});
},
// 新增、保存提货点
saveStore: function(data) {
return request({
url: '/lpkstore/saveStore',
method: 'post',
data: data
});
},
// 初始化提货点
storeInit: function(data) {
return request({
url: '/lpkstore/storeInit/'+data,
method: 'get'
});
},
// 删除提货点
deleteStore: function(data) {
return request({
url: '/lpkstore/deleteStore/'+data,
method: 'delete'
});
},
// 修改状态
updateIsEnable: function(sid,isEnable) {
return request({
url: '/lpkstore/updateIsEnable/'+sid+"/"+isEnable
});
},
// 获取支行选择列表
bankSelect: function(data) {
return request({
url: '/mall/lpkbank/listAll',
method: 'get'
});
},
// 获取提货点列表
storeListPage: function(data) {
return request({
url: '/mall/lpkstore/storeListPage',
method: 'post',
data: data
});
},
// 新增、保存提货点
saveStore: function(data) {
return request({
url: '/mall/lpkstore/saveStore',
method: 'post',
data: data
});
},
// 初始化提货点
storeInit: function(data) {
return request({
url: '/mall/lpkstore/storeInit/' + data,
method: 'get'
});
},
// 删除提货点
deleteStore: function(data) {
return request({
url: '/mall/lpkstore/deleteStore/' + data,
method: 'delete'
});
},
// 修改状态
updateIsEnable: function(sid, isEnable) {
return request({
url: '/mall/lpkstore/updateIsEnable/' + sid + "/" + isEnable
});
},
}

48
src/api/productAttrCate.js

@ -1,37 +1,37 @@
import request from '@/utils/request'
export function fetchList(params) {
return request({
url:'/pms/PmsProductAttributeCategory/list',
method:'get',
params:params
})
return request({
url: '/mall/pms/PmsProductAttributeCategory/list',
method: 'get',
params: params
})
}
export function createProductAttrCate(data) {
return request({
url:'/pms/PmsProductAttributeCategory/create',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsProductAttributeCategory/create',
method: 'post',
data: data
})
}
export function deleteProductAttrCate(id) {
return request({
url:'/pms/PmsProductAttributeCategory/delete/'+id,
method:'get'
})
return request({
url: '/mall/pms/PmsProductAttributeCategory/delete/' + id,
method: 'get'
})
}
export function updateProductAttrCate(id,data) {
return request({
url:'/pms/PmsProductAttributeCategory/update/'+id,
method:'post',
data:data
})
export function updateProductAttrCate(id, data) {
return request({
url: '/mall/pms/PmsProductAttributeCategory/update/' + id,
method: 'post',
data: data
})
}
export function fetchListWithAttr() {
return request({
url:'/pms/PmsProductAttributeCategory/list/withAttr',
method:'get'
})
return request({
url: '/mall/pms/PmsProductAttributeCategory/list/withAttr',
method: 'get'
})
}

98
src/api/productCate.js

@ -1,76 +1,76 @@
import request from '@/utils/request'
export function fetchListAll(params) {
return request({
url:'/pms/PmsProductCategory/list',
method:'get',
params:params
})
return request({
url: '/mall/pms/PmsProductCategory/list',
method: 'get',
params: params
})
}
export function fetchList(parentId,params) {
return request({
url:'/pms/PmsProductCategory/list/'+parentId,
method:'get',
params:params
})
export function fetchList(parentId, params) {
return request({
url: '/mall/pms/PmsProductCategory/list/' + parentId,
method: 'get',
params: params
})
}
export function deleteProductCate(id) {
return request({
url:'/pms/PmsProductCategory/delete/'+id,
method:'get'
})
return request({
url: '/mall/pms/PmsProductCategory/delete/' + id,
method: 'get'
})
}
export function createProductCate(data) {
return request({
url:'/pms/PmsProductCategory/create',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsProductCategory/create',
method: 'post',
data: data
})
}
export function updateProductCate(id,data) {
return request({
url:'/pms/PmsProductCategory/update/'+id,
method:'post',
data:data
})
export function updateProductCate(id, data) {
return request({
url: '/mall/pms/PmsProductCategory/update/' + id,
method: 'post',
data: data
})
}
export function getProductCate(id) {
return request({
url:'/pms/PmsProductCategory/'+id,
method:'get',
})
return request({
url: '/mall/pms/PmsProductCategory/' + id,
method: 'get',
})
}
export function updateShowStatus(data) {
return request({
url:'/pms/PmsProductCategory/update/showStatus',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsProductCategory/update/showStatus',
method: 'post',
data: data
})
}
export function updateIndexStatus(data) {
return request({
url:'/pms/PmsProductCategory/update/indexStatus',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsProductCategory/update/indexStatus',
method: 'post',
data: data
})
}
export function updateNavStatus(data) {
return request({
url:'/pms/PmsProductCategory/update/navStatus',
method:'post',
data:data
})
return request({
url: '/mall/pms/PmsProductCategory/update/navStatus',
method: 'post',
data: data
})
}
export function fetchListWithChildren() {
return request({
url:'/pms/PmsProductCategory/list/withChildren',
method:'get'
})
return request({
url: '/mall/pms/PmsProductCategory/list/withChildren',
method: 'get'
})
}

120
src/api/user.js

@ -4,69 +4,105 @@ import qs from 'qs'
// 登录
export function doLogin(data) {
return request({
url: '/sysuser/doLogin',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
return request({
url: '/mall/apiadmin/sysuser/login',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 获取登录人员信息
export function getUserById(sid) {
// 注册发送验证码
export function registerSendMessageCode(code) {
return request({
url: '/cyf/sys/getUserById/' + sid
url: '/mall/apiadmin/sysuser/sendMessageCode/?mobile=' + code,
method: 'post',
headers: {
'Content-Type': 'application/json'
}
})
}
// 登录
export function login(data) {
return request({
url: '/portal/v1/sysuser/login',
method: 'post',
data: data,
headers: { 'Content-Type': 'application/json' }
})
}
// 用户注册
export function registUser(data) {
return request({
url: '/system/user/save',
method: 'post',
data,
headers: { 'Content-Type': 'application/x-www-form-urlencoded;' }
})
return request({
url: '/mall/apiadmin/sysuser/register',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 绑定企业/组织
export function bindOrganization(data) {
return request({
url: '/mall/apiadmin/sysuser/bindOrganization',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 选择企业/组织sid
export function selOrganization(data) {
return request({
url: '/mall/apiadmin/sysuser/selOrganization',
method: 'post',
data: data,
headers: {
'Content-Type': 'application/json'
}
})
}
// 获取登录人员信息
export function getUserById(sid) {
return request({
url: '/mall/cyf/sys/getUserById/' + sid
})
}
// 获取手机验证码
export function getVerificationCode(data) {
return request({
url: '/system/user/getVerificationCode',
method: 'get',
params: data
})
return request({
url: '/mall/system/user/getVerificationCode',
method: 'get',
params: data
})
}
// 获取登录验证码
export function imgCode() {
return request({
url: '/system/api/defaultBlendCode?temm=' + new Date().getTime(),
method: 'get'
})
return request({
url: '/mall/system/api/defaultBlendCode?temm=' + new Date().getTime(),
method: 'get'
})
}
// 获取用信息
export function getInfo(token) {
return request({
url: '/system/user/loginDetails',
method: 'post'
})
return request({
url: '/mall/system/user/loginDetails',
method: 'post'
})
}
export function logout(data) { // 退出
return request({
url: '/portal/v1/sysuser/signOut',
method: 'post',
data: qs.stringify(data)
})
return request({
url: '/mall/portal/v1/sysuser/signOut',
method: 'post',
data: qs.stringify(data)
})
}

BIN
src/assets/home/bj.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 MiB

After

Width:  |  Height:  |  Size: 2.3 MiB

BIN
src/assets/images/company_icon.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
src/assets/images/experience.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.7 KiB

BIN
src/assets/images/formal.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 KiB

BIN
src/assets/images/overdue.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

BIN
src/assets/loginImg/login_left.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

BIN
src/assets/loginImg/yxt-logo.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 39 KiB

315
src/layout/components/Navbar.vue

@ -1,168 +1,179 @@
<template>
<div>
<div class="navbar">
<p class="breadcrumb-container"><img src="@/assets/loginImg/logo.png" style="width: 45px;height: 45px;margin-right: 10px;"/>惠享管理平台</p>
<!-- <h3 class="breadcrumb-container">银行供应链贷后监管平台</h3> -->
<div class="right-menu">
<!-- <p>{{Orgname}} {{departmentName}} 欢迎, {{name}}</p>-->
<!-- <p>欢迎您{{name}}</p>
<p class="dy" @click="logout()"><img src="@/assets/images/dy.png"></p> -->
</div>
<div>
<div class="navbar">
<p class="breadcrumb-container"><img src="@/assets/loginImg/logo.png"
style="width: 45px;height: 45px;margin-right: 10px;" />预订商城管理平台</p>
<!-- <h3 class="breadcrumb-container">银行供应链贷后监管平台</h3> -->
<div class="right-menu">
<!-- <p>{{Orgname}} {{departmentName}} 欢迎, {{name}}</p>-->
<p>欢迎您{{pNameAndDepartmentNameAndPostName}}- {{name}}</p>
<!-- <img src="@/assets/images/info.png"> -->
<!-- <img src="@/assets/images/dy.png" @click="logout"> -->
<span class="backToHome" @click="logout"><i class="el-icon-back"></i>退出登录</span>
</div>
</div>
<el-footer class="footer" height="40px">Copyright © {{ year }} 预订商城管理平台 All Rights Reserved</el-footer>
</div>
<el-footer class="footer" height="40px">Copyright © {{ year }} 惠享管理平台 All Rights Reserved</el-footer>
</div>
</template>
<script>
export default {
data() {
return {
name: '',
year:'',
}
},
mounted() {
this.name = window.sessionStorage.getItem('userName')
var nowDate = new Date()
this.year = nowDate.getFullYear()
},
methods: {
logout() {
this.$confirm('确定要退出吗, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// this.$store.commit('user/SET_UESRINFO', '')
this.$router.push({
path: '/login'
})
})
},
export default {
data() {
return {
Orgname: '',
departmentName: '',
name: '',
defaultRoleName: '',
year: '',
pNameAndDepartmentNameAndPostName: ''
}
},
mounted() {
this.Orgname = window.sessionStorage.getItem('orgName')
this.departmentName = window.sessionStorage.getItem('departmentName')
this.name = window.sessionStorage.getItem('name')
this.defaultRoleName = window.sessionStorage.getItem('defaultRoleName')
this.pNameAndDepartmentNameAndPostName = window.sessionStorage.getItem('pNameAndDepartmentNameAndPostName')
var nowDate = new Date()
this.year = nowDate.getFullYear()
},
methods: {
logout() {
this.$confirm('确定要退出吗, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
// this.$store.commit('user/SET_UESRINFO', '')
this.$router.push({
path: '/login'
})
})
},
}
}
}
</script>
<style lang="scss" scoped>
@import "~@/styles/variables.scss";
.navbar {
height: 60px;
overflow: hidden;
position: relative;
background: $header-bg;
padding: 0 30px;
box-shadow: 0 1px 4px rgba(0, 21, 41, .08);
.hamburger-container {
line-height: 46px;
height: 100%;
float: left;
cursor: pointer;
transition: background .3s;
-webkit-tap-highlight-color: transparent;
&:hover {
background: rgba(0, 0, 0, .025)
}
}
@import "~@/styles/variables.scss";
.navbar {
height: 60px;
overflow: hidden;
position: relative;
background: $header-bg;
padding: 0 30px;
box-shadow: 0 1px 4px rgba(0, 21, 41, .08);
.hamburger-container {
line-height: 46px;
height: 100%;
float: left;
cursor: pointer;
transition: background .3s;
-webkit-tap-highlight-color: transparent;
.breadcrumb-container {
display: flex;
align-items: center;
color: #fff;
font-size: 26px;
line-height: 60px;
margin: 0;
float: left;
}
.right-menu {
float: right;
height: 100%;
line-height: 60px;
color: #fff;
&:focus {
outline: none;
}
p {
display: inline-block;
margin: 0;
padding: 0;
padding: 0 15px;
}
img {
vertical-align: middle;
margin: 0 10px;
cursor: pointer;
}
.backToHome {
display: inline-block;
vertical-align: middle;
padding: 0 15px;
cursor: pointer;
}
.backToHome:hover {
background: #087dba;
}
.right-menu-item {
display: inline-block;
padding: 0 8px;
height: 100%;
font-size: 18px;
color: #5a5e66;
vertical-align: text-bottom;
&.hover-effect {
cursor: pointer;
transition: background .3s;
&:hover {
background: rgba(0, 0, 0, .025)
}
&:hover {
background: rgba(0, 0, 0, .025)
}
}
}
.avatar-container {
margin-right: 30px;
.avatar-wrapper {
margin-top: 5px;
position: relative;
.user-avatar {
cursor: pointer;
width: 40px;
height: 40px;
border-radius: 10px;
}
.breadcrumb-container {
display: flex;
align-items: center;
color: #fff;
font-size: 26px;
line-height: 60px;
margin: 0;
float: left;
}
.el-icon-caret-bottom {
cursor: pointer;
position: absolute;
right: -20px;
top: 25px;
font-size: 12px;
}
.right-menu {
float: right;
height: 100%;
line-height: 60px;
color: #fff;
&:focus {
outline: none;
}
p {
display: inline-block;
margin: 0;
padding: 0;
padding: 0 15px;
}
img {
vertical-align: middle;
margin: 0 10px;
cursor: pointer;
}
.backToHome {
display: inline-block;
vertical-align: middle;
padding: 0 15px;
cursor: pointer;
}
.backToHome:hover {
background: #087dba;
}
.right-menu-item {
display: inline-block;
padding: 0 8px;
height: 100%;
font-size: 18px;
color: #5a5e66;
vertical-align: text-bottom;
&.hover-effect {
cursor: pointer;
transition: background .3s;
&:hover {
background: rgba(0, 0, 0, .025)
}
}
}
.avatar-container {
margin-right: 30px;
.avatar-wrapper {
margin-top: 5px;
position: relative;
.user-avatar {
cursor: pointer;
width: 40px;
height: 40px;
border-radius: 10px;
}
.el-icon-caret-bottom {
cursor: pointer;
position: absolute;
right: -20px;
top: 25px;
font-size: 12px;
}
}
}
}
}
}
}
.footer {
position: fixed;
bottom: 0;
width: 100%;
line-height: 40px;
background: #E9F1F7;
text-align: center;
font-size: 14px;
color: #666;
}
.footer {
position: fixed;
bottom: 0;
width: 100%;
line-height: 40px;
background: #E9F1F7;
text-align: center;
font-size: 14px;
color: #666;
}
</style>

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

File diff suppressed because it is too large

22
src/settings.js

@ -1,16 +1,16 @@
module.exports = {
title: '惠享',
title: '预订商城',
/**
* @type {boolean} true | false
* @description Whether fix the header
*/
fixedHeader: false,
/**
* @type {boolean} true | false
* @description Whether fix the header
*/
fixedHeader: false,
/**
* @type {boolean} true | false
* @description Whether show the logo in sidebar
*/
sidebarLogo: false
/**
* @type {boolean} true | false
* @description Whether show the logo in sidebar
*/
sidebarLogo: false
}

34
src/utils/functions.js.js

@ -0,0 +1,34 @@
// 封装Cookie
// 封装三个函数
// setCookie() -- 创建 Cookie
// getCookie() -- 获取 Cookie
// removeCookie() -- 删除 Cookie
export function setCookie(name, value, iDay) { //分别代表cookie名称、cookie值、存储时间
//首先将cookie的格式拼出来
//document.cookie="name=value;expires=date";
//然后name就换为name,vlaue就换为value,至于date就要算出这个日期对象
var oDate = new Date();
oDate.setDate(oDate.getDate() + iDay);
document.cookie = name + "=" + value + "; expires=" + oDate;
}
//a=12; b=5; c=8; d=99
export function getCookie(name) {
//1、先给cookie做一下字符串分割,
var arr = document.cookie.split("; "); //分割后变为数组,a=12 b=5 c=8 d=99
//2、循环数组
for (var i = 0; i < arr.length; i++) {
var arr2 = arr[i].split("="); //根据“=”再次分割
//arr2[0]——》存储的名称 abcd
//arr2[1]——》存储的值 12 5 8 99
if (arr2[0] == name) { //代表找到我想要的东西了
return arr2[1];
}
}
//另一种可能,用户第一次来网站,还没有cookie,所以肯定什么也找不到。所以在循环一次后就直接return 一个字符串,告诉用户什么也没找到。
return "";
}
export function removeCookie(name) {
//name名称,再随便来个值1,后面的才是重点-1,时间过期了,所以就成为了负值
setCookie(name, 1, -1);
}

1084
src/views/login/login.vue

File diff suppressed because it is too large

615
src/views/order/index.vue

@ -1,342 +1,341 @@
<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-date-picker v-model="page.params.startDate" @change="selectTime1" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;">
</el-date-picker>
<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-date-picker v-model="page.params.startDate" @change="selectTime1" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;">
</el-date-picker>
</el-form-item>
<el-form-item label="预约结束日期">
<el-date-picker v-model="page.params.endDate" @change="selectTime2" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;">
</el-date-picker>
</el-form-item>
<el-form-item label="预约结束日期">
<el-date-picker v-model="page.params.endDate" @change="selectTime2" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;">
</el-date-picker>
</el-form-item>
<el-form-item label="所属支行">
</el-form-item>
<!-- <el-form-item label="所属支行">
<el-select v-model="page.params.bankSid" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="bankSelect">
<el-option v-for="item in bankList" :key="item.name" :label="item.name"
:value="item.sid">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="提货门店">
<el-select v-model="page.params.store" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="giftPackSelect">
<el-option v-for="item in giftPackList" :key="item.text" :label="item.text"
:value="item.text">
</el-option>
</el-select>
</el-form-item>
</el-form-item> -->
<!-- <el-form-item label="提货门店">
<el-select v-model="page.params.store" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="giftPackSelect">
<el-option v-for="item in giftPackList" :key="item.text" :label="item.text"
:value="item.text">
</el-option>
</el-select>
</el-form-item> -->
<el-form-item label="卡券类型">
<el-select v-model="page.params.cardType" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="cardTypeSelect">
<el-option v-for="item in cardTypeList" :key="item.text" :label="item.text"
:value="item.sid">
</el-option>
</el-select>
</el-form-item>
<!--
<el-form-item label="卡券类型">
<el-select v-model="page.params.cardType" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="cardTypeSelect">
<el-option v-for="item in cardTypeList" :key="item.text" :label="item.text"
:value="item.sid">
</el-option>
</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%">
<!-- <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="cardType" label="卡券类型" align="center" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="store" label="提货地点" align="center" />
<el-table-column prop="serialNumber" label="卡券序列号" align="center" />
<el-table-column prop="bagName" label="礼包类型" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" />
<el-table-column prop="userPhone" 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" />
</div>
</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%">
<!-- <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="cardType" label="卡券类型" align="center" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="store" label="提货地点" align="center" />
<el-table-column prop="serialNumber" label="卡券序列号" align="center" />
<el-table-column prop="bagName" label="礼包类型" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" />
<el-table-column prop="userPhone" 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" />
</div>
</template>
<script>
import req from '@/api/order/order.js'
import req2 from '@/api/pickupPoint/pickupPoint.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './indexInfo.vue'
import {
getBeforeDate
} from '@/utils/index'
export default {
name: 'SupplierBankInfoIndex',
components: {
ButtonBar,
Pagination,
pageye,
divAdd,
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: "",
endDate: "",
store: "",
bankSid:"",
cardType:""
},
},
giftPackList: [],
bankList: [],
cardTypeList:[
{
text :"全部",
sid:""
},
{
text :"家庭卡",
sid:"1"
},
{
text :"亲情卡",
sid:"2"
},
{
text :"企业卡",
sid:"3"
},
import req from '@/api/order/order.js'
import req2 from '@/api/pickupPoint/pickupPoint.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye'
import divAdd from './indexInfo.vue'
import {
getBeforeDate
} from '@/utils/index'
export default {
name: 'SupplierBankInfoIndex',
components: {
ButtonBar,
Pagination,
pageye,
divAdd,
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: "",
endDate: "",
store: "",
bankSid: "",
cardType: ""
},
},
giftPackList: [],
bankList: [],
cardTypeList: [{
text: "全部",
sid: ""
},
{
text: "家庭卡",
sid: "1"
},
{
text: "亲情卡",
sid: "2"
},
{
text: "企业卡",
sid: "3"
},
]
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.getAllStore()
// this.loadList()
this.getBankList()
},
methods: {
//
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
default:
break
}
},
selectTime1(val) {
]
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.getAllStore()
// this.loadList()
this.getBankList()
},
methods: {
//
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
default:
break
}
},
selectTime1(val) {
console.log('selectTime1:', val)
this.page.params.startDate = val
console.log('selectTime1:', val)
this.page.params.startDate = val
},
selectTime2(val) {
},
selectTime2(val) {
console.log('selectTime2:', val)
this.page.params.endDate = val
console.log('selectTime2:', val)
this.page.params.endDate = val
},
},
giftPackSelect(val) {
console.log('>>>>>>>>>giftPackSelect', val)
this.page.params.store = val
},
getBankList() {
req2.bankSelect()
.then(resp => {
console.log('>>>>>>>>>getBankList', resp.data)
this.bankList = resp.data
giftPackSelect(val) {
console.log('>>>>>>>>>giftPackSelect', val)
this.page.params.store = val
},
getBankList() {
req2.bankSelect()
.then(resp => {
console.log('>>>>>>>>>getBankList', resp.data)
this.bankList = resp.data
})
.catch(() => {})
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
},
cardTypeSelect(val){
console.log('>>>>>>>>>cardTypeSelect', val)
this.page.params.cardType = val
},
getAllStore() {
req.getAllStore().then((resp) => {
if (resp.success) {
this.giftPackList = resp.data
}
}).catch(() => {})
},
})
.catch(() => {})
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
},
cardTypeSelect(val) {
console.log('>>>>>>>>>cardTypeSelect', val)
this.page.params.cardType = val
},
getAllStore() {
req.getAllStore().then((resp) => {
if (resp.success) {
this.giftPackList = resp.data
}
}).catch(() => {})
},
loadList() {
this.tableLoading = true
req.orderList(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
})
},
loadList() {
this.tableLoading = true
req.orderList(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: {
startDate: "",
endDate: "",
store: "",
bankSid:"",
cardType:""
},
}
this.loadList()
},
//
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: {
startDate: "",
endDate: "",
store: "",
bankSid: "",
cardType: ""
},
}
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)
},
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)'
})
//
doBuild() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.exportExcel(this.page.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '订单明细_' + this.page.params.startDate + '.xls'
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()
})
},
req.exportExcel(this.page.params).then((resp) => {
loading.close()
const blob = new Blob([resp], {
type: 'application/vnd.ms-excel'
})
const fileName = '订单明细_' + this.page.params.startDate + '.xls'
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()
})
},
}
}
}
}
</script>
<style scoped>
</style>

436
src/views/orderreserve/allDistributionCount.vue

@ -1,239 +1,245 @@
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" 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="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="菜窖分类">
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
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="选择日期"
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.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>
<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%" :cell-style="cell">
<!-- <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">
</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%" :cell-style="cell">
<!-- <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="reserveDate" label="预约日期" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" 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" />
</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>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template>
<script>
import req from '@/api/lpk/reserveorder.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveAllDistributionCount',
components: {
ButtonBar,
Pagination,
divAdd
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
cardType: ''
}
import req from '@/api/lpk/reserveorder.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveAllDistributionCount',
components: {
ButtonBar,
Pagination,
divAdd
},
brandList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.initBrand()
},
methods: {
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
default:
break
}
},
loadList() {
this.tableLoading = true
req.pageOfAll(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
})
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
cardType: ''
}
},
brandList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
// this.initBrand()
this.loadList()
},
methods: {
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
default:
break
}
},
loadList() {
this.tableLoading = true
req.pageOfAll(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: {
startDate: '',
endDate: '',
store: '',
cardType: ''
}
}
this.loadList()
},
//
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: {
startDate: '',
endDate: '',
store: '',
cardType: ''
}
}
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)
},
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)'
})
//
doBuild() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.expExcelOfAll(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()
})
}
req.expExcelOfAll(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()
})
}
}
}
}
</script>
<style scoped>
::v-deep .el-table .cell {
padding: 0px;
}
::v-deep .el-table .cell {
padding: 0px;
}
</style>

498
src/views/orderreserve/distributionCount.vue

@ -1,21 +1,23 @@
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" 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="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="所属支行">
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
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="选择日期"
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.bankSid" filterable class="item_input" clearable placeholder="请选择" style="width:100%" @change="bankSelect">
<el-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select>
@ -29,40 +31,42 @@
<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>
<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%" :cell-style="cell">
<!-- <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">
</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%" :cell-style="cell">
<!-- <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="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货地点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="storeAddress" label="提货点地址" align="center" />
<el-table-column prop="storeLinker" label="提货点联系人" align="center" />
<el-table-column prop="storePhone" label="提货点电话" align="center" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货地点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="storeAddress" label="提货点地址" align="center" />
<el-table-column prop="storeLinker" label="提货点联系人" align="center" />
<el-table-column prop="storePhone" label="提货点电话" align="center" />
<!-- <el-table-column label="商品明细" align="center">
<!-- <el-table-column label="商品明细" align="center">
<template slot-scope="scope">
<div v-for="(item,index) in scope.row.goods" style="width: 100%;height: 100%;">
<div style="width: 100%;padding:10px"
@ -73,218 +77,220 @@
</template>
</el-table-column> -->
</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" />
</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>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template>
<script>
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveDistributionCount',
components: {
ButtonBar,
Pagination,
divAdd
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveDistributionCount',
components: {
ButtonBar,
Pagination,
divAdd
},
brandList: [],
bankList: [],
storeList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.initBank()
this.initStore()
this.initBrand()
},
methods: {
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
default:
break
}
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
this.page.params.store = ''
this.initStore()
},
loadList() {
this.tableLoading = true
req.pageOfStore(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
})
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
},
brandList: [],
bankList: [],
storeList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
// this.initBank()
// this.initStore()
// this.initBrand()
this.loadList()
},
methods: {
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
default:
break
}
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
this.page.params.store = ''
this.initStore()
},
loadList() {
this.tableLoading = true
req.pageOfStore(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: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
}
this.loadList()
},
//
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: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
}
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)
},
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)'
})
//
doBuild() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.expExcelOfStore(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()
})
}
req.expExcelOfStore(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()
})
}
}
}
}
</script>
<style scoped>
::v-deep .el-table .cell {
padding: 0px;
}
::v-deep .el-table .cell {
padding: 0px;
}
</style>

495
src/views/orderreserve/index.vue

@ -1,21 +1,23 @@
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" 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="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="所属支行">
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
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="选择日期"
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.bankSid" filterable class="item_input" clearable placeholder="请选择" style="width:100%" @change="bankSelect">
<el-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select>
@ -29,251 +31,254 @@
<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>
<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%">
<!-- <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">
</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%">
<!-- <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="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" 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" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" 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>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template>
<script>
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.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,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveIndex',
components: {
ButtonBar,
Pagination,
divAdd
},
brandList: [],
bankList: [],
storeList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.initBank()
this.initStore()
this.initBrand()
// this.getAllStore()
// this.loadList()
// this.getBankList()
},
methods: {
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
})
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
},
brandList: [],
bankList: [],
storeList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
// this.initBank()
// this.initStore()
// this.initBrand()
// this.getAllStore()
this.loadList()
// this.getBankList()
},
methods: {
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
default:
break
}
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
this.page.params.store = ''
this.initStore()
},
loadList() {
this.tableLoading = true
req.pageOfCustomer(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
})
},
//
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
default:
break
}
},
bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val
this.page.params.store = ''
this.initStore()
},
loadList() {
this.tableLoading = true
req.pageOfCustomer(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: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
}
this.loadList()
},
//
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: {
startDate: '',
endDate: '',
store: '',
bankSid: '',
cardType: ''
}
}
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)
},
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)'
})
//
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()
})
}
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()
})
}
}
}
}
</script>
<style scoped>
</style>

462
src/views/orderreserve/subBranch.vue

@ -1,21 +1,23 @@
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" 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="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
</el-form-item>
<el-form-item label="所属支行">
<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-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
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="选择日期"
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.bankSid" filterable class="item_input" clearable placeholder="请选择" style="width:100%">
<el-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select>
@ -24,234 +26,238 @@
<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>
<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%" :cell-style="cell">
<!-- <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">
</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%" :cell-style="cell">
<!-- <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="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="支行名称" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="bankAddress" label="支行地址" align="center" />
<el-table-column prop="bankLinker" label="支行联系人" align="center" />
<el-table-column prop="bankPhone" label="支行电话" align="center" />
<el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="支行名称" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="bankAddress" label="支行地址" align="center" />
<el-table-column prop="bankLinker" label="支行联系人" align="center" />
<el-table-column prop="bankPhone" 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" />
</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>
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template>
<script>
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveSubBranch',
components: {
ButtonBar,
Pagination,
divAdd
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
bankSid: '',
cardType: ''
}
import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue'
export default {
name: 'OrderreserveSubBranch',
components: {
ButtonBar,
Pagination,
divAdd
},
brandList: [],
bankList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
this.initBank()
this.initBrand()
},
methods: {
initBank() {
reqBank.listBankAll()
.then(resp => {
this.bankList = 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
default:
break
}
},
loadList() {
this.tableLoading = true
req.pageOfBank(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
})
},
data() {
return {
btndisabled: false,
viewState: 1, // 1 2 3 4
isSearchShow: false,
searchxianshitit: '显示查询条件',
tableLoading: false,
dataList: [],
btnList: [{
type: 'success',
size: 'small',
icon: 'export',
btnKey: 'build',
btnLabel: '导出'
},
{
type: 'info',
size: 'small',
icon: 'cross',
btnKey: 'doClose',
btnLabel: '关闭'
}
],
page: {
total: 0, //
current: 1, //
size: 10, //
params: {
startDate: '',
endDate: '',
bankSid: '',
cardType: ''
}
},
brandList: [],
bankList: []
}
},
mounted() {
this.$refs['btnbar'].setButtonList(this.btnList)
},
created() {
// this.initBank()
// this.initBrand()
this.loadList()
},
methods: {
initBank() {
reqBank.listBankAll()
.then(resp => {
this.bankList = 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
default:
break
}
},
loadList() {
this.tableLoading = true
req.pageOfBank(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: {
startDate: '',
endDate: '',
bankSid: '',
cardType: ''
}
}
this.loadList()
},
//
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: {
startDate: '',
endDate: '',
bankSid: '',
cardType: ''
}
}
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)
},
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)'
})
//
doBuild() {
const loading = this.$loading({
lock: true,
text: 'Loading',
spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)'
})
req.expExcelOfBank(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()
})
}
req.expExcelOfBank(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()
})
}
}
}
}
</script>
<style scoped>
::v-deep .el-table .cell {
padding: 0px;
}
::v-deep .el-table .cell {
padding: 0px;
}
</style>

6
vue.config.js

@ -6,7 +6,7 @@ function resolve(dir) {
return path.join(__dirname, dir)
}
const name = defaultSettings.title || '惠享' // page title
const name = defaultSettings.title || '预订商城' // page title
// 如果端口设置为80,
// 使用管理员权限执行命令行。
@ -24,8 +24,8 @@ module.exports = {
*在大多数情况下请使用/
*详细信息https://cli.vuejs.org/config/#publicpath
*/
publicPath: process.env.NODE_ENV === 'production' ? '/lpk/' : '/',
outputDir: 'yythmall-ui',
publicPath: process.env.NODE_ENV === 'production' ? '/' : '/',
outputDir: 'ordermall-ui',
assetsDir: 'static',
lintOnSave: process.env.NODE_ENV === 'development',
productionSourceMap: false,

Loading…
Cancel
Save