Browse Source

完善项目

master
myTest383 5 months ago
parent
commit
0d8956ac52
  1. 5
      .env.development
  2. 149
      package.json
  3. 58
      src/api/User/login.js
  4. 30
      src/api/adminmallapi.js
  5. 72
      src/api/appletNotice/appletNotice.js
  6. 38
      src/api/authentication/authentication.js
  7. 71
      src/api/brand.js
  8. 97
      src/api/commodity/commodity.js
  9. 52
      src/api/invoiceReview/invoiceReview.js
  10. 72
      src/api/lpk/banner.js
  11. 178
      src/api/lpk/ordertools.js
  12. 178
      src/api/lpk/reserveorder.js
  13. 101
      src/api/pickupPoint/pickupPoint.js
  14. 50
      src/api/productAttrCate.js
  15. 100
      src/api/productCate.js
  16. 124
      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. 317
      src/layout/components/Navbar.vue
  25. 1120
      src/layout/components/Sidebar/index.vue
  26. 24
      src/settings.js
  27. 34
      src/utils/functions.js.js
  28. 1086
      src/views/login/login.vue
  29. 621
      src/views/order/index.vue
  30. 438
      src/views/orderreserve/allDistributionCount.vue
  31. 500
      src/views/orderreserve/distributionCount.vue
  32. 497
      src/views/orderreserve/index.vue
  33. 464
      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://jianguan.yyundong.com/shgfapi"
VUE_APP_URL = "http://192.168.0.105:7211" VUE_APP_URL = "http://192.168.0.105:8114"
VUE_APP_REPORT_URL = "http://192.168.2.106:7202" VUE_APP_REPORT_URL = "http://192.168.1.105:7202"
##VUE_APP_REPORT_URL = "https://lpk.yyundong.com"
##VUE_APP_REPORT_URL = "https://supervise.yxtsoft.com/lpk" ##VUE_APP_REPORT_URL = "https://supervise.yxtsoft.com/lpk"
##VUE_APP_URL = "http://8.130.39.13:8112" ##VUE_APP_URL = "http://8.130.39.13:8112"

149
package.json

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

58
src/api/User/login.js

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

30
src/api/adminmallapi.js

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

72
src/api/appletNotice/appletNotice.js

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

38
src/api/authentication/authentication.js

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

71
src/api/brand.js

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

97
src/api/commodity/commodity.js

@ -1,53 +1,52 @@
import request from '@/utils/request' import request from '@/utils/request'
export default { 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
});
},
}

52
src/api/invoiceReview/invoiceReview.js

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

72
src/api/lpk/banner.js

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

178
src/api/lpk/ordertools.js

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

178
src/api/lpk/reserveorder.js

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

101
src/api/pickupPoint/pickupPoint.js

@ -1,55 +1,54 @@
import request from '@/utils/request' import request from '@/utils/request'
export default { 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
});
},
}

50
src/api/productAttrCate.js

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

100
src/api/productCate.js

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

124
src/api/user.js

@ -4,69 +4,105 @@ import qs from 'qs'
// 登录 // 登录
export function doLogin(data) { export function doLogin(data) {
return request({ return request({
url: '/sysuser/doLogin', url: '/mall/apiadmin/sysuser/login',
method: 'post', method: 'post',
data: data, data: data,
headers: { 'Content-Type': 'application/json' } headers: {
}) 'Content-Type': 'application/json'
}
})
} }
// 获取登录人员信息
export function getUserById(sid) { // 注册发送验证码
export function registerSendMessageCode(code) {
return request({ 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) { export function registUser(data) {
return request({ return request({
url: '/system/user/save', url: '/mall/apiadmin/sysuser/register',
method: 'post', method: 'post',
data, data: data,
headers: { 'Content-Type': 'application/x-www-form-urlencoded;' } 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) { export function getVerificationCode(data) {
return request({ return request({
url: '/system/user/getVerificationCode', url: '/mall/system/user/getVerificationCode',
method: 'get', method: 'get',
params: data params: data
}) })
} }
// 获取登录验证码 // 获取登录验证码
export function imgCode() { export function imgCode() {
return request({ return request({
url: '/system/api/defaultBlendCode?temm=' + new Date().getTime(), url: '/mall/system/api/defaultBlendCode?temm=' + new Date().getTime(),
method: 'get' method: 'get'
}) })
} }
// 获取用信息 // 获取用信息
export function getInfo(token) { export function getInfo(token) {
return request({ return request({
url: '/system/user/loginDetails', url: '/mall/system/user/loginDetails',
method: 'post' method: 'post'
}) })
} }
export function logout(data) { // 退出 export function logout(data) { // 退出
return request({ return request({
url: '/portal/v1/sysuser/signOut', url: '/mall/portal/v1/sysuser/signOut',
method: 'post', method: 'post',
data: qs.stringify(data) 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

317
src/layout/components/Navbar.vue

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

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

File diff suppressed because it is too large

24
src/settings.js

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

1086
src/views/login/login.vue

File diff suppressed because it is too large

621
src/views/order/index.vue

@ -1,342 +1,341 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="订单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="订单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约开始日期">
<el-date-picker v-model="page.params.startDate" @change="selectTime1" type="date" <el-date-picker v-model="page.params.startDate" @change="selectTime1" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;"> style="width: 200px;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="预约结束日期"> <el-form-item label="预约结束日期">
<el-date-picker v-model="page.params.endDate" @change="selectTime2" type="date" <el-date-picker v-model="page.params.endDate" @change="selectTime2" type="date"
placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 200px;"> style="width: 200px;">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="所属支行"> <!-- <el-form-item label="所属支行">
<el-select v-model="page.params.bankSid" filterable class="item_input" clearable <el-select v-model="page.params.bankSid" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="bankSelect"> placeholder="请选择" style="width:100%" @change="bankSelect">
<el-option v-for="item in bankList" :key="item.name" :label="item.name" <el-option v-for="item in bankList" :key="item.name" :label="item.name"
:value="item.sid"> :value="item.sid">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<el-form-item label="提货门店"> <!-- <el-form-item label="提货门店">
<el-select v-model="page.params.store" filterable class="item_input" clearable <el-select v-model="page.params.store" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="giftPackSelect"> placeholder="请选择" style="width:100%" @change="giftPackSelect">
<el-option v-for="item in giftPackList" :key="item.text" :label="item.text" <el-option v-for="item in giftPackList" :key="item.text" :label="item.text"
:value="item.text"> :value="item.text">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
<!--
<el-form-item label="卡券类型"> <el-form-item label="卡券类型">
<el-select v-model="page.params.cardType" filterable class="item_input" clearable <el-select v-model="page.params.cardType" filterable class="item_input" clearable
placeholder="请选择" style="width:100%" @change="cardTypeSelect"> placeholder="请选择" style="width:100%" @change="cardTypeSelect">
<el-option v-for="item in cardTypeList" :key="item.text" :label="item.text" <el-option v-for="item in cardTypeList" :key="item.text" :label="item.text"
:value="item.sid"> :value="item.sid">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-form>
<div class="btn" style="text-align: center;"> </el-form>
<el-button type="primary" size="small" icon="el-icon-search" <div class="btn" style="text-align: center;">
@click="dosearch">查询</el-button> <el-button type="primary" size="small" icon="el-icon-search"
<el-button type="primary" size="small" icon="el-icon-refresh" @click="dosearch">查询</el-button>
@click="resetQuery">重置</el-button> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
</div> </div>
</div> </div>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> <!-- Start 项目列表头部 -->
<div class="tit">订单列表</div> <div class="listtop">
</div> <div class="tit">订单列表</div>
<!-- End 项目列表头部 --> </div>
<!-- Start 项目列表 --> <!-- End 项目列表头部 -->
<div class=""> <!-- Start 项目列表 -->
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"> <div class="">
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <!-- <el-table-column fixed width="50" type="selection" align="center" /> -->
<el-table-column label="操作" align="center" width="120"> <el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" />
<template slot-scope="scope"> <el-table-column label="操作" align="center" width="120">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> <template slot-scope="scope">
</template> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</el-table-column> </template>
<el-table-column prop="cardType" label="卡券类型" align="center" /> </el-table-column>
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="cardType" label="卡券类型" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="store" label="提货地点" align="center" /> <el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="serialNumber" label="卡券序列号" align="center" /> <el-table-column prop="store" label="提货地点" align="center" />
<el-table-column prop="bagName" label="礼包类型" align="center" /> <el-table-column prop="serialNumber" label="卡券序列号" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" /> <el-table-column prop="bagName" label="礼包类型" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" /> <el-table-column prop="userName" label="用户名称" align="center" />
</el-table> <el-table-column prop="userPhone" label="联系电话" align="center" />
</div> </el-table>
<!-- End 项目列表 --> </div>
<div class="pages"> <!-- End 项目列表 -->
<div class="tit" /> <div class="pages">
<!-- 翻页 --> <div class="tit" />
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" <!-- 翻页 -->
:limit.sync="page.size" class="pagination" @pagination="loadList" /> <pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current"
</div> :limit.sync="page.size" class="pagination" @pagination="loadList" />
</div> </div>
</div> </div>
<!-- End 查询和其列表部分 --> </div>
<!-- 新增修改部分组件 --> <!-- End 查询和其列表部分 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" /> <!-- 新增修改部分组件 -->
</div> <divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/order/order.js' import req from '@/api/order/order.js'
import req2 from '@/api/pickupPoint/pickupPoint.js' import req2 from '@/api/pickupPoint/pickupPoint.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import pageye from '@/components/pagination/pageye' import pageye from '@/components/pagination/pageye'
import divAdd from './indexInfo.vue' import divAdd from './indexInfo.vue'
import { import {
getBeforeDate getBeforeDate
} from '@/utils/index' } from '@/utils/index'
export default { export default {
name: 'SupplierBankInfoIndex', name: 'SupplierBankInfoIndex',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
pageye, pageye,
divAdd, divAdd,
}, },
data() { data() {
return { return {
btndisabled: false, btndisabled: false,
viewState: 1, // 1 2 3 4 viewState: 1, // 1 2 3 4
isSearchShow: false, isSearchShow: false,
searchxianshitit: '显示查询条件', searchxianshitit: '显示查询条件',
tableLoading: false, tableLoading: false,
dataList: [], dataList: [],
btnList: [{ btnList: [{
type: 'success', type: 'success',
size: 'small', size: 'small',
icon: 'export', icon: 'export',
btnKey: 'build', btnKey: 'build',
btnLabel: '导出' btnLabel: '导出'
}, },
{ {
type: 'info', type: 'info',
size: 'small', size: 'small',
icon: 'cross', icon: 'cross',
btnKey: 'doClose', btnKey: 'doClose',
btnLabel: '关闭' btnLabel: '关闭'
} }
], ],
page: { page: {
total: 0, // total: 0, //
current: 1, // current: 1, //
size: 10, // size: 10, //
params: { params: {
startDate: "", startDate: "",
endDate: "", endDate: "",
store: "", store: "",
bankSid:"", bankSid: "",
cardType:"" cardType: ""
}, },
}, },
giftPackList: [], giftPackList: [],
bankList: [], bankList: [],
cardTypeList:[ cardTypeList: [{
{ text: "全部",
text :"全部", sid: ""
sid:"" },
}, {
{ text: "家庭卡",
text :"家庭卡", sid: "1"
sid:"1" },
}, {
{ text: "亲情卡",
text :"亲情卡", sid: "2"
sid:"2" },
}, {
{ text: "企业卡",
text :"企业卡", sid: "3"
sid:"3" },
},
]
] }
} },
}, mounted() {
mounted() { this.$refs['btnbar'].setButtonList(this.btnList)
this.$refs['btnbar'].setButtonList(this.btnList) },
}, created() {
created() { this.getAllStore()
this.getAllStore() // this.loadList()
// this.loadList() this.getBankList()
this.getBankList() },
}, methods: {
methods: { //
// clicksearchShow() {
clicksearchShow() { this.isSearchShow = !this.isSearchShow
this.isSearchShow = !this.isSearchShow if (this.isSearchShow) {
if (this.isSearchShow) { this.searchxianshitit = '隐藏查询条件'
this.searchxianshitit = '隐藏查询条件' } else {
} else { this.searchxianshitit = '显示查询条件'
this.searchxianshitit = '显示查询条件' }
} },
}, btnHandle(btnKey) {
btnHandle(btnKey) { switch (btnKey) {
switch (btnKey) { case 'build': //
case 'build': // this.doBuild()
this.doBuild() break
break case 'doClose':
case 'doClose': this.doClose()
this.doClose() break
break default:
default: break
break }
} },
}, selectTime1(val) {
selectTime1(val) {
console.log('selectTime1:', val) console.log('selectTime1:', val)
this.page.params.startDate = val this.page.params.startDate = val
}, },
selectTime2(val) { selectTime2(val) {
console.log('selectTime2:', val) console.log('selectTime2:', val)
this.page.params.endDate = val this.page.params.endDate = val
}, },
giftPackSelect(val) { giftPackSelect(val) {
console.log('>>>>>>>>>giftPackSelect', val) console.log('>>>>>>>>>giftPackSelect', val)
this.page.params.store = val this.page.params.store = val
}, },
getBankList() { getBankList() {
req2.bankSelect() req2.bankSelect()
.then(resp => { .then(resp => {
console.log('>>>>>>>>>getBankList', resp.data) console.log('>>>>>>>>>getBankList', resp.data)
this.bankList = resp.data this.bankList = resp.data
}) })
.catch(() => {}) .catch(() => {})
}, },
bankSelect(val) { bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val) console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val this.page.params.bankSid = val
}, },
cardTypeSelect(val){ cardTypeSelect(val) {
console.log('>>>>>>>>>cardTypeSelect', val) console.log('>>>>>>>>>cardTypeSelect', val)
this.page.params.cardType = val this.page.params.cardType = val
}, },
getAllStore() { getAllStore() {
req.getAllStore().then((resp) => { req.getAllStore().then((resp) => {
if (resp.success) { if (resp.success) {
this.giftPackList = resp.data this.giftPackList = resp.data
} }
}).catch(() => {}) }).catch(() => {})
}, },
loadList() { loadList() {
this.tableLoading = true this.tableLoading = true
req.orderList(this.page).then((resp) => { req.orderList(this.page).then((resp) => {
this.tableLoading = false this.tableLoading = false
if (resp.success) { if (resp.success) {
const data = resp.data const data = resp.data
this.page.total = data.total this.page.total = data.total
this.dataList = data.records this.dataList = data.records
} else { } else {
// resp.code // resp.code
this.dataList = [] this.dataList = []
this.page.total = 0 this.page.total = 0
} }
}).catch(() => { }).catch(() => {
this.tableLoading = false this.tableLoading = false
}) })
}, },
// //
indexMethod(index) { indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart var pageindex = index + 1 + pagestart
return pageindex return pageindex
}, },
dosearch() { dosearch() {
this.page.current = 1 this.page.current = 1
this.loadList() this.loadList()
}, },
resetQuery() { resetQuery() {
this.page = { this.page = {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
startDate: "", startDate: "",
endDate: "", endDate: "",
store: "", store: "",
bankSid:"", bankSid: "",
cardType:"" cardType: ""
}, },
} }
this.loadList() this.loadList()
}, },
toRelevancy(row) { toRelevancy(row) {
this.viewState = 3 this.viewState = 3
this.$refs['divadd'].showEdit(row) this.$refs['divadd'].showEdit(row)
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doClose() { doClose() {
this.$store.dispatch('tagsView/delView', this.$route) this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1) this.$router.go(-1)
}, },
// //
doBuild() { doBuild() {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.exportExcel(this.page.params).then((resp) => { req.exportExcel(this.page.params).then((resp) => {
loading.close() loading.close()
const blob = new Blob([resp], { const blob = new Blob([resp], {
type: 'application/vnd.ms-excel' type: 'application/vnd.ms-excel'
}) })
const fileName = '订单明细_' + this.page.params.startDate + '.xls' const fileName = '订单明细_' + this.page.params.startDate + '.xls'
const elink = document.createElement('a') const elink = document.createElement('a')
elink.download = fileName elink.download = fileName
elink.style.display = 'nonde' elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob) elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink) document.body.appendChild(elink)
elink.click() elink.click()
URL.revokeObjectURL(elink.href) URL.revokeObjectURL(elink.href)
document.body.removeChild(elink) document.body.removeChild(elink)
}).catch(() => { }).catch(() => {
loading.close() loading.close()
}) })
}, },
} }
} }
</script> </script>
<style scoped> <style scoped>
</style> </style>

438
src/views/orderreserve/allDistributionCount.vue

@ -1,239 +1,245 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="总配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="总配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约开始日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> <el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
</el-form-item> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-form-item label="预约结束日期"> </el-form-item>
<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 label="预约结束日期">
</el-form-item> <el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
<el-form-item label="菜窖分类"> 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-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-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> <el-button type="primary" size="small" icon="el-icon-search"
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> @click="dosearch">查询</el-button>
</div> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
</div> </div>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> </div>
<div class="tit">配货列表</div> <!-- Start 项目列表头部 -->
</div> <div class="listtop">
<!-- End 项目列表头部 --> <div class="tit">配货列表</div>
<!-- Start 项目列表 --> </div>
<div class=""> <!-- End 项目列表头部 -->
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell"> <!-- Start 项目列表 -->
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <div class="">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell">
<!-- <el-table-column label="操作" align="center" width="120"> <!-- <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"> <template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" /> <el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" /> <el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" /> <el-table-column prop="goodsNumber" label="数量(份)" align="center" />
</el-table> </el-table>
</div> </div>
<!-- End 项目列表 --> <!-- End 项目列表 -->
<div class="pages"> <div class="pages">
<div class="tit" /> <div class="tit" />
<!-- 翻页 --> <!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" :limit.sync="page.size" class="pagination" @pagination="loadList" /> <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>
</div> <!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div> </div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/lpk/reserveorder.js' import req from '@/api/lpk/reserveorder.js'
import reqMall from '@/api/adminmallapi.js' import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue' import divAdd from './indexInfo.vue'
export default { export default {
name: 'OrderreserveAllDistributionCount', name: 'OrderreserveAllDistributionCount',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
divAdd 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: ''
}
}, },
brandList: [] data() {
} return {
}, btndisabled: false,
mounted() { viewState: 1, // 1 2 3 4
this.$refs['btnbar'].setButtonList(this.btnList) isSearchShow: false,
}, searchxianshitit: '显示查询条件',
created() { tableLoading: false,
this.initBrand() dataList: [],
}, btnList: [{
methods: { type: 'success',
initBrand() { size: 'small',
reqMall.listAllBrand().then(resp => { icon: 'export',
this.brandList = resp.data btnKey: 'build',
}) btnLabel: '导出'
}, },
// {
clicksearchShow() { type: 'info',
this.isSearchShow = !this.isSearchShow size: 'small',
if (this.isSearchShow) { icon: 'cross',
this.searchxianshitit = '隐藏查询条件' btnKey: 'doClose',
} else { btnLabel: '关闭'
this.searchxianshitit = '显示查询条件' }
} ],
}, page: {
btnHandle(btnKey) { total: 0, //
switch (btnKey) { current: 1, //
case 'build': // size: 10, //
this.doBuild() params: {
break startDate: '',
case 'doClose': endDate: '',
this.doClose() store: '',
break cardType: ''
default: }
break },
} brandList: []
}, }
loadList() { },
this.tableLoading = true mounted() {
req.pageOfAll(this.page).then((resp) => { this.$refs['btnbar'].setButtonList(this.btnList)
this.tableLoading = false },
if (resp.success) { created() {
const data = resp.data // this.initBrand()
this.page.total = data.total this.loadList()
this.dataList = data.records },
} else { methods: {
// resp.code initBrand() {
this.dataList = [] reqMall.listAllBrand().then(resp => {
this.page.total = 0 this.brandList = resp.data
} })
}).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
}
},
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) { indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart var pageindex = index + 1 + pagestart
return pageindex return pageindex
}, },
dosearch() { dosearch() {
this.page.current = 1 this.page.current = 1
this.loadList() this.loadList()
}, },
resetQuery() { resetQuery() {
this.page = { this.page = {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
startDate: '', startDate: '',
endDate: '', endDate: '',
store: '', store: '',
cardType: '' cardType: ''
} }
} }
this.loadList() this.loadList()
}, },
toRelevancy(row) { toRelevancy(row) {
this.viewState = 3 this.viewState = 3
this.$refs['divadd'].showEdit(row) this.$refs['divadd'].showEdit(row)
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doClose() { doClose() {
this.$store.dispatch('tagsView/delView', this.$route) this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1) this.$router.go(-1)
}, },
// //
doBuild() { doBuild() {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.expExcelOfAll(this.page.params).then((resp) => { req.expExcelOfAll(this.page.params).then((resp) => {
loading.close() loading.close()
const blob = new Blob([resp], { const blob = new Blob([resp], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}) })
const fileName = '总配货明细_' + this.page.params.startDate + '.xlsx' const fileName = '总配货明细_' + this.page.params.startDate + '.xlsx'
const elink = document.createElement('a') const elink = document.createElement('a')
elink.download = fileName elink.download = fileName
elink.style.display = 'nonde' elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob) elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink) document.body.appendChild(elink)
elink.click() elink.click()
URL.revokeObjectURL(elink.href) URL.revokeObjectURL(elink.href)
document.body.removeChild(elink) document.body.removeChild(elink)
}).catch(() => { }).catch(() => {
loading.close() loading.close()
}) })
} }
}
} }
}
</script> </script>
<style scoped> <style scoped>
::v-deep .el-table .cell { ::v-deep .el-table .cell {
padding: 0px; padding: 0px;
} }
</style> </style>

500
src/views/orderreserve/distributionCount.vue

@ -1,21 +1,23 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="网点配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="网点配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约开始日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> <el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
</el-form-item> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-form-item label="预约结束日期"> </el-form-item>
<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 label="预约结束日期">
</el-form-item> <el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
<el-form-item label="所属支行"> 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-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-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select> </el-select>
@ -29,40 +31,42 @@
<el-select v-model="page.params.cardType" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> <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-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> <el-button type="primary" size="small" icon="el-icon-search"
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> @click="dosearch">查询</el-button>
</div> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
</div> </div>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> </div>
<div class="tit">网点配货列表</div> <!-- Start 项目列表头部 -->
</div> <div class="listtop">
<!-- End 项目列表头部 --> <div class="tit">网点配货列表</div>
<!-- Start 项目列表 --> </div>
<div class=""> <!-- End 项目列表头部 -->
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell"> <!-- Start 项目列表 -->
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <div class="">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell">
<!-- <el-table-column label="操作" align="center" width="120"> <!-- <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"> <template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" /> <el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货地点" align="center" /> <el-table-column prop="storeName" label="提货地点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" /> <el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" /> <el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" /> <el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="storeAddress" label="提货点地址" align="center" /> <el-table-column prop="storeAddress" label="提货点地址" align="center" />
<el-table-column prop="storeLinker" label="提货点联系人" align="center" /> <el-table-column prop="storeLinker" label="提货点联系人" align="center" />
<el-table-column prop="storePhone" 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"> <template slot-scope="scope">
<div v-for="(item,index) in scope.row.goods" style="width: 100%;height: 100%;"> <div v-for="(item,index) in scope.row.goods" style="width: 100%;height: 100%;">
<div style="width: 100%;padding:10px" <div style="width: 100%;padding:10px"
@ -73,218 +77,220 @@
</template> </template>
</el-table-column> --> </el-table-column> -->
</el-table> </el-table>
</div> </div>
<!-- End 项目列表 --> <!-- End 项目列表 -->
<div class="pages"> <div class="pages">
<div class="tit" /> <div class="tit" />
<!-- 翻页 --> <!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" :limit.sync="page.size" class="pagination" @pagination="loadList" /> <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>
</div> <!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div> </div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/lpk/reserveorder.js' import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js' import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js' import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue' import divAdd from './indexInfo.vue'
export default { export default {
name: 'OrderreserveDistributionCount', name: 'OrderreserveDistributionCount',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
divAdd 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: ''
}
}, },
brandList: [], data() {
bankList: [], return {
storeList: [] btndisabled: false,
} viewState: 1, // 1 2 3 4
}, isSearchShow: false,
mounted() { searchxianshitit: '显示查询条件',
this.$refs['btnbar'].setButtonList(this.btnList) tableLoading: false,
}, dataList: [],
created() { btnList: [{
this.initBank() type: 'success',
this.initStore() size: 'small',
this.initBrand() icon: 'export',
}, btnKey: 'build',
methods: { btnLabel: '导出'
initBank() { },
reqBank.listBankAll() {
.then(resp => { type: 'info',
this.bankList = resp.data size: 'small',
}) icon: 'cross',
}, btnKey: 'doClose',
initStore() { btnLabel: '关闭'
reqBank.listStoreOfBank(this.page.params.bankSid) }
.then(resp => { ],
this.storeList = resp.data page: {
}) total: 0, //
}, current: 1, //
initBrand() { size: 10, //
reqMall.listAllBrand().then(resp => { params: {
this.brandList = resp.data startDate: '',
}) endDate: '',
}, store: '',
// bankSid: '',
clicksearchShow() { cardType: ''
this.isSearchShow = !this.isSearchShow }
if (this.isSearchShow) { },
this.searchxianshitit = '隐藏查询条件' brandList: [],
} else { bankList: [],
this.searchxianshitit = '显示查询条件' storeList: []
} }
}, },
btnHandle(btnKey) { mounted() {
switch (btnKey) { this.$refs['btnbar'].setButtonList(this.btnList)
case 'build': // },
this.doBuild() created() {
break // this.initBank()
case 'doClose': // this.initStore()
this.doClose() // this.initBrand()
break this.loadList()
default: },
break methods: {
} initBank() {
}, reqBank.listBankAll()
bankSelect(val) { .then(resp => {
console.log('>>>>>>>>>bankSelect', val) this.bankList = resp.data
this.page.params.bankSid = val })
this.page.params.store = '' },
this.initStore() initStore() {
}, reqBank.listStoreOfBank(this.page.params.bankSid)
loadList() { .then(resp => {
this.tableLoading = true this.storeList = resp.data
req.pageOfStore(this.page).then((resp) => { })
this.tableLoading = false },
if (resp.success) { initBrand() {
const data = resp.data reqMall.listAllBrand().then(resp => {
this.page.total = data.total this.brandList = resp.data
this.dataList = data.records })
} else { },
// resp.code //
this.dataList = [] clicksearchShow() {
this.page.total = 0 this.isSearchShow = !this.isSearchShow
} if (this.isSearchShow) {
}).catch(() => { this.searchxianshitit = '隐藏查询条件'
this.tableLoading = false } 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) { indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart var pageindex = index + 1 + pagestart
return pageindex return pageindex
}, },
dosearch() { dosearch() {
this.page.current = 1 this.page.current = 1
this.loadList() this.loadList()
}, },
resetQuery() { resetQuery() {
this.page = { this.page = {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
startDate: '', startDate: '',
endDate: '', endDate: '',
store: '', store: '',
bankSid: '', bankSid: '',
cardType: '' cardType: ''
} }
} }
this.loadList() this.loadList()
}, },
toRelevancy(row) { toRelevancy(row) {
this.viewState = 3 this.viewState = 3
this.$refs['divadd'].showEdit(row) this.$refs['divadd'].showEdit(row)
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doClose() { doClose() {
this.$store.dispatch('tagsView/delView', this.$route) this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1) this.$router.go(-1)
}, },
// //
doBuild() { doBuild() {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.expExcelOfStore(this.page.params).then((resp) => { req.expExcelOfStore(this.page.params).then((resp) => {
loading.close() loading.close()
const blob = new Blob([resp], { const blob = new Blob([resp], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}) })
const fileName = '网点配货明细_' + this.page.params.startDate + '.xlsx' const fileName = '网点配货明细_' + this.page.params.startDate + '.xlsx'
const elink = document.createElement('a') const elink = document.createElement('a')
elink.download = fileName elink.download = fileName
elink.style.display = 'nonde' elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob) elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink) document.body.appendChild(elink)
elink.click() elink.click()
URL.revokeObjectURL(elink.href) URL.revokeObjectURL(elink.href)
document.body.removeChild(elink) document.body.removeChild(elink)
}).catch(() => { }).catch(() => {
loading.close() loading.close()
}) })
} }
}
} }
}
</script> </script>
<style scoped> <style scoped>
::v-deep .el-table .cell { ::v-deep .el-table .cell {
padding: 0px; padding: 0px;
} }
</style> </style>

497
src/views/orderreserve/index.vue

@ -1,21 +1,23 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="预约单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="预约单列表" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约开始日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> <el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
</el-form-item> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-form-item label="预约结束日期"> </el-form-item>
<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 label="预约结束日期">
</el-form-item> <el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
<el-form-item label="所属支行"> 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-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-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select> </el-select>
@ -29,251 +31,254 @@
<el-select v-model="page.params.cardType" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> <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-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> <el-button type="primary" size="small" icon="el-icon-search"
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> @click="dosearch">查询</el-button>
</div> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
</div> </div>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> </div>
<div class="tit">预约单列表</div> <!-- Start 项目列表头部 -->
</div> <div class="listtop">
<!-- End 项目列表头部 --> <div class="tit">预约单列表</div>
<!-- Start 项目列表 --> </div>
<div class=""> <!-- End 项目列表头部 -->
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%"> <!-- Start 项目列表 -->
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <div class="">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%">
<!-- <el-table-column label="操作" align="center" width="120"> <!-- <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"> <template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="所属支行" align="center" /> <el-table-column prop="bankName" label="所属支行" align="center" />
<el-table-column prop="storeName" label="提货点" align="center" /> <el-table-column prop="storeName" label="提货点" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" /> <el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="userName" label="用户名称" align="center" /> <el-table-column prop="userName" label="用户名称" align="center" />
<el-table-column prop="userPhone" label="联系电话" align="center" /> <el-table-column prop="userPhone" label="联系电话" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" /> <el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="商品数量" align="center" /> <el-table-column prop="goodsNumber" label="商品数量" align="center" />
<el-table-column prop="customerBank" label="客户所属支行" align="center" /> <el-table-column prop="customerBank" label="客户所属支行" align="center" />
</el-table> </el-table>
</div> </div>
<!-- End 项目列表 --> <!-- End 项目列表 -->
<div class="pages"> <div class="pages">
<div class="tit" /> <div class="tit" />
<!-- 翻页 --> <!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" :limit.sync="page.size" class="pagination" @pagination="loadList" /> <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>
</div> <!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div> </div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/lpk/reserveorder.js' import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js' import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js' import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue' import divAdd from './indexInfo.vue'
export default { export default {
name: 'OrderreserveIndex', name: 'OrderreserveIndex',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
divAdd 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: ''
}
}, },
brandList: [], data() {
bankList: [], return {
storeList: [] btndisabled: false,
} viewState: 1, // 1 2 3 4
}, isSearchShow: false,
mounted() { searchxianshitit: '显示查询条件',
this.$refs['btnbar'].setButtonList(this.btnList) tableLoading: false,
}, dataList: [],
created() { btnList: [{
this.initBank() type: 'success',
this.initStore() size: 'small',
this.initBrand() icon: 'export',
// this.getAllStore() btnKey: 'build',
// this.loadList() btnLabel: '导出'
// this.getBankList() },
}, {
methods: { type: 'info',
initBank() { size: 'small',
reqBank.listBankAll() icon: 'cross',
.then(resp => { btnKey: 'doClose',
this.bankList = resp.data btnLabel: '关闭'
}) }
}, ],
initStore() { page: {
reqBank.listStoreOfBank(this.page.params.bankSid) total: 0, //
.then(resp => { current: 1, //
this.storeList = resp.data size: 10, //
}) params: {
}, startDate: '',
initBrand() { endDate: '',
reqMall.listAllBrand().then(resp => { store: '',
this.brandList = resp.data 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() { clicksearchShow() {
this.isSearchShow = !this.isSearchShow this.isSearchShow = !this.isSearchShow
if (this.isSearchShow) { if (this.isSearchShow) {
this.searchxianshitit = '隐藏查询条件' this.searchxianshitit = '隐藏查询条件'
} else { } else {
this.searchxianshitit = '显示查询条件' this.searchxianshitit = '显示查询条件'
} }
}, },
btnHandle(btnKey) { btnHandle(btnKey) {
switch (btnKey) { switch (btnKey) {
case 'build': // case 'build': //
this.doBuild() this.doBuild()
break break
case 'doClose': case 'doClose':
this.doClose() this.doClose()
break break
default: default:
break break
} }
}, },
bankSelect(val) { bankSelect(val) {
console.log('>>>>>>>>>bankSelect', val) console.log('>>>>>>>>>bankSelect', val)
this.page.params.bankSid = val this.page.params.bankSid = val
this.page.params.store = '' this.page.params.store = ''
this.initStore() this.initStore()
}, },
loadList() { loadList() {
this.tableLoading = true this.tableLoading = true
req.pageOfCustomer(this.page).then((resp) => { req.pageOfCustomer(this.page).then((resp) => {
this.tableLoading = false this.tableLoading = false
if (resp.success) { if (resp.success) {
const data = resp.data const data = resp.data
this.page.total = data.total this.page.total = data.total
this.dataList = data.records this.dataList = data.records
} else { } else {
// resp.code // resp.code
this.dataList = [] this.dataList = []
this.page.total = 0 this.page.total = 0
} }
}).catch(() => { }).catch(() => {
this.tableLoading = false this.tableLoading = false
}) })
}, },
// //
indexMethod(index) { indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart var pageindex = index + 1 + pagestart
return pageindex return pageindex
}, },
dosearch() { dosearch() {
this.page.current = 1 this.page.current = 1
this.loadList() this.loadList()
}, },
resetQuery() { resetQuery() {
this.page = { this.page = {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
startDate: '', startDate: '',
endDate: '', endDate: '',
store: '', store: '',
bankSid: '', bankSid: '',
cardType: '' cardType: ''
} }
} }
this.loadList() this.loadList()
}, },
toRelevancy(row) { toRelevancy(row) {
this.viewState = 3 this.viewState = 3
this.$refs['divadd'].showEdit(row) this.$refs['divadd'].showEdit(row)
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doClose() { doClose() {
this.$store.dispatch('tagsView/delView', this.$route) this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1) this.$router.go(-1)
}, },
// //
doBuild() { doBuild() {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.expExcelOfCustomer(this.page.params).then((resp) => { req.expExcelOfCustomer(this.page.params).then((resp) => {
loading.close() loading.close()
const blob = new Blob([resp], { const blob = new Blob([resp], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}) })
const fileName = '预约单明细_' + this.page.params.startDate + '.xlsx' const fileName = '预约单明细_' + this.page.params.startDate + '.xlsx'
const elink = document.createElement('a') const elink = document.createElement('a')
elink.download = fileName elink.download = fileName
elink.style.display = 'nonde' elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob) elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink) document.body.appendChild(elink)
elink.click() elink.click()
URL.revokeObjectURL(elink.href) URL.revokeObjectURL(elink.href)
document.body.removeChild(elink) document.body.removeChild(elink)
}).catch(() => { }).catch(() => {
loading.close() loading.close()
}) })
} }
}
} }
}
</script> </script>
<style scoped> <style scoped>
</style> </style>

464
src/views/orderreserve/subBranch.vue

@ -1,21 +1,23 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div v-show="viewState == 1"> <div v-show="viewState == 1">
<button-bar ref="btnbar" view-title="支行配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" /> <button-bar ref="btnbar" view-title="支行配货统计" :btndisabled="btndisabled" @btnhandle="btnHandle" />
<div class="main-content"> <div class="main-content">
<div class="searchcon"> <div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow"> <el-button size="small" class="searchbtn" @click="clicksearchShow">
{{ searchxianshitit }} {{ searchxianshitit }}
</el-button> </el-button>
<div v-show="isSearchShow" class="search"> <div v-show="isSearchShow" class="search">
<el-form :inline="true" class="tab-header"> <el-form :inline="true" class="tab-header">
<el-form-item label="预约开始日期"> <el-form-item label="预约开始日期">
<el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期" format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable /> <el-date-picker v-model="page.params.startDate" type="date" placeholder="选择日期"
</el-form-item> format="yyyy-MM-dd" value-format="yyyy-MM-dd" style="width: 200px;" clearable />
<el-form-item label="预约结束日期"> </el-form-item>
<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 label="预约结束日期">
</el-form-item> <el-date-picker v-model="page.params.endDate" type="date" placeholder="选择日期"
<el-form-item label="所属支行"> 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-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-option v-for="item in bankList" :key="item.sid" :label="item.name" :value="item.sid" />
</el-select> </el-select>
@ -24,234 +26,238 @@
<el-select v-model="page.params.cardType" filterable class="item_input" clearable placeholder="请选择" style="width:100%"> <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-option v-for="item in brandList" :key="item.id" :label="item.name" :value="item.id" />
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-form> </el-form>
<div class="btn" style="text-align: center;"> <div class="btn" style="text-align: center;">
<el-button type="primary" size="small" icon="el-icon-search" @click="dosearch">查询</el-button> <el-button type="primary" size="small" icon="el-icon-search"
<el-button type="primary" size="small" icon="el-icon-refresh" @click="resetQuery">重置</el-button> @click="dosearch">查询</el-button>
</div> <el-button type="primary" size="small" icon="el-icon-refresh"
</div> @click="resetQuery">重置</el-button>
</div> </div>
<!-- Start 项目列表头部 --> </div>
<div class="listtop"> </div>
<div class="tit">支行配货列表</div> <!-- Start 项目列表头部 -->
</div> <div class="listtop">
<!-- End 项目列表头部 --> <div class="tit">支行配货列表</div>
<!-- Start 项目列表 --> </div>
<div class=""> <!-- End 项目列表头部 -->
<el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell"> <!-- Start 项目列表 -->
<!-- <el-table-column fixed width="50" type="selection" align="center" /> --> <div class="">
<el-table-column fixed width="60" label="序号" type="index" :index="indexMethod" align="center" /> <el-table v-loading="tableLoading" :data="dataList" border style="width: 100%" :cell-style="cell">
<!-- <el-table-column label="操作" align="center" width="120"> <!-- <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"> <template slot-scope="scope">
<el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button> <el-button type="primary" size="mini" @click="toRelevancy(scope.row)">明细</el-button>
</template> </template>
</el-table-column> --> </el-table-column> -->
<el-table-column prop="reserveDate" label="预约日期" align="center" /> <el-table-column prop="reserveDate" label="预约日期" align="center" />
<el-table-column prop="bankName" label="支行名称" align="center" /> <el-table-column prop="bankName" label="支行名称" align="center" />
<el-table-column prop="brandName" label="菜窖分类" align="center" /> <el-table-column prop="brandName" label="菜窖分类" align="center" />
<el-table-column prop="goodsName" label="商品名称" align="center" /> <el-table-column prop="goodsName" label="商品名称" align="center" />
<el-table-column prop="goodsNumber" label="数量(份)" align="center" /> <el-table-column prop="goodsNumber" label="数量(份)" align="center" />
<el-table-column prop="bankAddress" label="支行地址" align="center" /> <el-table-column prop="bankAddress" label="支行地址" align="center" />
<el-table-column prop="bankLinker" label="支行联系人" align="center" /> <el-table-column prop="bankLinker" label="支行联系人" align="center" />
<el-table-column prop="bankPhone" label="支行电话" align="center" /> <el-table-column prop="bankPhone" label="支行电话" align="center" />
</el-table> </el-table>
</div> </div>
<!-- End 项目列表 --> <!-- End 项目列表 -->
<div class="pages"> <div class="pages">
<div class="tit" /> <div class="tit" />
<!-- 翻页 --> <!-- 翻页 -->
<pagination v-show="dataList.length > 0" :total="page.total" :page.sync="page.current" :limit.sync="page.size" class="pagination" @pagination="loadList" /> <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>
</div> <!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div> </div>
<!-- End 查询和其列表部分 -->
<!-- 新增修改部分组件 -->
<divAdd v-show="viewState == 2 || viewState == 3" ref="divadd" @doback="resetState" @reloadlist="loadList" />
</div>
</template> </template>
<script> <script>
import req from '@/api/lpk/reserveorder.js' import req from '@/api/lpk/reserveorder.js'
import reqBank from '@/api/lpk/bank.js' import reqBank from '@/api/lpk/bank.js'
import reqMall from '@/api/adminmallapi.js' import reqMall from '@/api/adminmallapi.js'
import ButtonBar from '@/components/ButtonBar' import ButtonBar from '@/components/ButtonBar'
import Pagination from '@/components/pagination' import Pagination from '@/components/pagination'
import divAdd from './indexInfo.vue' import divAdd from './indexInfo.vue'
export default { export default {
name: 'OrderreserveSubBranch', name: 'OrderreserveSubBranch',
components: { components: {
ButtonBar, ButtonBar,
Pagination, Pagination,
divAdd 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: ''
}
}, },
brandList: [], data() {
bankList: [] return {
} btndisabled: false,
}, viewState: 1, // 1 2 3 4
mounted() { isSearchShow: false,
this.$refs['btnbar'].setButtonList(this.btnList) searchxianshitit: '显示查询条件',
}, tableLoading: false,
created() { dataList: [],
this.initBank() btnList: [{
this.initBrand() type: 'success',
}, size: 'small',
methods: { icon: 'export',
initBank() { btnKey: 'build',
reqBank.listBankAll() btnLabel: '导出'
.then(resp => { },
this.bankList = resp.data {
}) type: 'info',
}, size: 'small',
initBrand() { icon: 'cross',
reqMall.listAllBrand().then(resp => { btnKey: 'doClose',
this.brandList = resp.data btnLabel: '关闭'
}) }
}, ],
// page: {
clicksearchShow() { total: 0, //
this.isSearchShow = !this.isSearchShow current: 1, //
if (this.isSearchShow) { size: 10, //
this.searchxianshitit = '隐藏查询条件' params: {
} else { startDate: '',
this.searchxianshitit = '显示查询条件' endDate: '',
} bankSid: '',
}, cardType: ''
btnHandle(btnKey) { }
switch (btnKey) { },
case 'build': // brandList: [],
this.doBuild() bankList: []
break }
case 'doClose': },
this.doClose() mounted() {
break this.$refs['btnbar'].setButtonList(this.btnList)
default: },
break created() {
} // this.initBank()
}, // this.initBrand()
loadList() { this.loadList()
this.tableLoading = true },
req.pageOfBank(this.page).then((resp) => { methods: {
this.tableLoading = false initBank() {
if (resp.success) { reqBank.listBankAll()
const data = resp.data .then(resp => {
this.page.total = data.total this.bankList = resp.data
this.dataList = data.records })
} else { },
// resp.code initBrand() {
this.dataList = [] reqMall.listAllBrand().then(resp => {
this.page.total = 0 this.brandList = resp.data
} })
}).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
}
},
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) { indexMethod(index) {
var pagestart = (this.page.current - 1) * this.page.size var pagestart = (this.page.current - 1) * this.page.size
var pageindex = index + 1 + pagestart var pageindex = index + 1 + pagestart
return pageindex return pageindex
}, },
dosearch() { dosearch() {
this.page.current = 1 this.page.current = 1
this.loadList() this.loadList()
}, },
resetQuery() { resetQuery() {
this.page = { this.page = {
current: 1, current: 1,
size: 10, size: 10,
total: 0, total: 0,
params: { params: {
startDate: '', startDate: '',
endDate: '', endDate: '',
bankSid: '', bankSid: '',
cardType: '' cardType: ''
} }
} }
this.loadList() this.loadList()
}, },
toRelevancy(row) { toRelevancy(row) {
this.viewState = 3 this.viewState = 3
this.$refs['divadd'].showEdit(row) this.$refs['divadd'].showEdit(row)
}, },
resetState() { resetState() {
this.viewState = 1 this.viewState = 1
}, },
doClose() { doClose() {
this.$store.dispatch('tagsView/delView', this.$route) this.$store.dispatch('tagsView/delView', this.$route)
this.$router.go(-1) this.$router.go(-1)
}, },
// //
doBuild() { doBuild() {
const loading = this.$loading({ const loading = this.$loading({
lock: true, lock: true,
text: 'Loading', text: 'Loading',
spinner: 'el-icon-loading', spinner: 'el-icon-loading',
background: 'rgba(0, 0, 0, 0.7)' background: 'rgba(0, 0, 0, 0.7)'
}) })
req.expExcelOfBank(this.page.params).then((resp) => { req.expExcelOfBank(this.page.params).then((resp) => {
loading.close() loading.close()
const blob = new Blob([resp], { const blob = new Blob([resp], {
type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'
}) })
const fileName = '支行配货明细_' + this.page.params.startDate + '.xlsx' const fileName = '支行配货明细_' + this.page.params.startDate + '.xlsx'
const elink = document.createElement('a') const elink = document.createElement('a')
elink.download = fileName elink.download = fileName
elink.style.display = 'nonde' elink.style.display = 'nonde'
elink.href = URL.createObjectURL(blob) elink.href = URL.createObjectURL(blob)
document.body.appendChild(elink) document.body.appendChild(elink)
elink.click() elink.click()
URL.revokeObjectURL(elink.href) URL.revokeObjectURL(elink.href)
document.body.removeChild(elink) document.body.removeChild(elink)
}).catch(() => { }).catch(() => {
loading.close() loading.close()
}) })
} }
}
} }
}
</script> </script>
<style scoped> <style scoped>
::v-deep .el-table .cell { ::v-deep .el-table .cell {
padding: 0px; padding: 0px;
} }
</style> </style>

6
vue.config.js

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

Loading…
Cancel
Save