diff --git a/src/api/product.js b/src/api/product.js index 20fa026..7ef9423 100644 --- a/src/api/product.js +++ b/src/api/product.js @@ -769,3 +769,11 @@ export function resetInventoryUse(data) { data }) } + +export function getOutOfStockProduct(params) { + return request({ + url: 'sale/manage/wares/list-no-sale', + method: 'get', + params + }) +} diff --git a/src/api/wholeNetwork/index.js b/src/api/wholeNetwork/index.js new file mode 100644 index 0000000..27320c1 --- /dev/null +++ b/src/api/wholeNetwork/index.js @@ -0,0 +1,8 @@ +import request from '@/utils/request' + +export function getSystemSourceList() { + return request({ + url: '/system//pub/enums/product-source', + method: 'get' + }) +} diff --git a/src/api/wholeNetwork/orderSync.js b/src/api/wholeNetwork/orderSync.js new file mode 100644 index 0000000..a2043c1 --- /dev/null +++ b/src/api/wholeNetwork/orderSync.js @@ -0,0 +1,17 @@ +import request from '@/utils/request' + +export function getOrderSyncFailList(params) { + return request({ + url: '/sale/manage/order-sync/list', + method: 'get', + params + }) +} + +export function updateOrderSyncStatus(data) { + return request({ + url: '/sale/manage/order-sync/updateStatus', + method: 'post', + data + }) +} diff --git a/src/api/wholeNetwork/productManage.js b/src/api/wholeNetwork/productManage.js new file mode 100644 index 0000000..90bd3c8 --- /dev/null +++ b/src/api/wholeNetwork/productManage.js @@ -0,0 +1,48 @@ +import request from '@/utils/request' + +export function getProductList(params) { + return request({ + url: '/sale/manage/all-product/list', + method: 'get', + params + }) +} + +export function addProductInfo(params) { + return request({ + url: '/sale/manage/all-product/save', + method: 'post', + data: params + }) +} + +export function updateProductInfo(params) { + return request({ + url: '/sale/manage/all-product/update', + method: 'post', + data: params + }) +} + +export function deleteProduct(id) { + return request({ + url: `/sale/manage/all-product/${id}`, + method: 'delete' + }) +} + +export function updateProductInventory(params) { + return request({ + url: '/sale/manage/all-product/change-inventory', + method: 'post', + data: params + }) +} + +export function getProductDetailsList(params) { + return request({ + url: '/sale/manage/all-product-detail/list', + method: 'get', + params + }) +} diff --git a/src/components/Delivery/unhandeled.vue b/src/components/Delivery/unhandeled.vue index 2dd0161..a23e93f 100644 --- a/src/components/Delivery/unhandeled.vue +++ b/src/components/Delivery/unhandeled.vue @@ -41,6 +41,13 @@ @click="orderDk" >订单抵扣 + - { + const params = { + ...this.params, + pkWaresList: this.params.pkWaresList ? this.params.pkWaresList.split(',') : [], + mergeType: this.hdform.mergeType + } del - .deliverUnhandeldMerge( - Object.assign({}, this.params, { - mergeType: this.hdform.mergeType - }) - ) + .deliverUnhandeldMerge(params) .then((res) => { this.$message({ message: res.msg, diff --git a/src/router/index.js b/src/router/index.js index fe20997..41af54c 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -3474,6 +3474,39 @@ export const constantRoutes = [ } ] }, + { + path: '/whole-network', + name: 'WholeNetwork', + component: Layout, + meta: { title: '全网管理', icon: 'info', icon1: 'infoSel' }, + children: [ + { + path: 'productManage', + name: 'WholeNetworkProductManageList', + component: () => import('@/views/wholeNetwork/productManage/index'), + meta: { title: '全网产品管理' } + }, + { + path: 'productManageSummary', + name: 'WholeNetworkProductManageSummary', + component: () => import('@/views/wholeNetwork/productManage/summary'), + meta: { title: '全网产品统计' } + }, + { + path: 'orderSyncFail', + name: 'WholeNetworkOrderSyncFail', + component: () => import('@/views/wholeNetwork/orderSyncFail/index'), + meta: { title: '同步失败订单' } + }, + { + path: 'productManageDetails', + name: 'WholeNetworkProductManageDetails', + component: () => import('@/views/wholeNetwork/productManage/details'), + meta: { title: '全网产品管理详情' }, + hidden: true + } + ] + }, // 404 page must be placed at the end !!! { path: '*', redirect: '/404', hidden: true }, diff --git a/src/views/information/realInfo/index.vue b/src/views/information/realInfo/index.vue index 8ba2667..519df6f 100644 --- a/src/views/information/realInfo/index.vue +++ b/src/views/information/realInfo/index.vue @@ -475,8 +475,13 @@ export default { text: '证件(反面)', checked: true, prop: 'idCardBack' + }, + { + id: 12, + text: '详细地址', + checked: true, + prop: 'address' } - ], moren: 'RealInfo', topList: [ diff --git a/src/views/logistics/commodity/ckspdd.vue b/src/views/logistics/commodity/ckspdd.vue index 90c1d8d..1aaca0a 100644 --- a/src/views/logistics/commodity/ckspdd.vue +++ b/src/views/logistics/commodity/ckspdd.vue @@ -74,6 +74,7 @@ + - + + + + + + + - + - + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + 搜索 + + + + + + {{ item.waresName }} ({{ item.waresCode }}) + + + + + + + + + + + + + + + + + + {{ '取消' }} + {{ + '确认' + }} + + + + + + + diff --git a/src/views/logistics/delivery/index.vue b/src/views/logistics/delivery/index.vue index 558d23d..2e5530e 100644 --- a/src/views/logistics/delivery/index.vue +++ b/src/views/logistics/delivery/index.vue @@ -6,7 +6,7 @@ :moren="moren" /> - + @@ -64,22 +64,6 @@ - - - - - - - - - - - + {{ '搜索' }} - {{ '重置' }} + {{ '重置' }} @@ -1076,74 +1055,14 @@ - - - - - - - - - - - - - - - - - - - {{ '取消' }} - {{ - '确认' - }} - - + :selected="selectedProductList" + @submit="handleSubmit" + /> @@ -1156,14 +1075,15 @@ import yihandeled from '@/components/Delivery/yihandeled.vue' import nowdelivery from '@/components/Delivery/nowdelivery.vue' import * as del from '@/api/delivery.js' import { getRouters } from '@/api/settle' -import { productList } from '@/api/product' +import OutOfStockProductList from './components/OutOfStockProductList.vue' export default { name: 'Fhqd', components: { topBar, unhandeled, yihandeled, - nowdelivery + nowdelivery, + OutOfStockProductList }, data() { return { @@ -1175,10 +1095,8 @@ export default { } ], dialogVisible: false, - dialogList: [], - lsArr: [], - tableData: [], - productLists: [], + + productLists: '', select: {}, orderTypeList: [], // 订单类型 orderStatusList: [], // 订单状态 @@ -1196,6 +1114,7 @@ export default { yesornoList: [], // 二次发货 storehouseList: [], // 发货仓库 total: '', + selectedProductList: [], queryParams: { pageNum: 1, pageSize: 500, @@ -1230,7 +1149,7 @@ export default { payTime: [], printTime: [], // 打印时间2 deliverTime: [], // 发货时间2 - productIdList: [] + pkWaresList: [] }, isActive: true, areaData: [], @@ -1255,84 +1174,15 @@ export default { }, methods: { clearProduct() { - this.tableData = [] - this.lsArr = [] - this.queryParams.productIdList = [] - this.productLists = [] + this.selectedProductList = [] + this.queryParams.pkWaresList = [] + this.productLists = '' }, openDig() { - this.select = {} - productList(Object.assign({ isPutOn: 0 }, this.queryParams)).then( - (res) => { - res.rows.forEach((item) => { - item.quantity = 1 - item.pkProduct = item.pkProduct - item.isGift = 0 - }) - this.dialogList = res.rows - this.total = res.total - } - ) this.dialogVisible = true + this.select = {} }, - handleClose() { - this.dialogVisible = false - }, - getDataList() { - productList( - Object.assign({ isPutOn: 0 }, this.queryParams, this.select) - ).then((res) => { - res.rows.forEach((item) => { - item.quantity = 1 - item.pkProduct = item.pkProduct - item.isGift = 0 - }) - this.dialogList = res.rows - this.total = res.total - }) - }, - dialogChange(val) { - this.lsArr = val - }, - onSubmit() { - // this.tableData = [] - this.lsArr.forEach((item) => { - this.tableData.push(item) - }) - // this.tableData = this.clearArr(this.tableData) - this.dialogVisible = false - this.dialogList.forEach((row) => { - this.$refs.lessonTableRef.toggleRowSelection(row, false) - }) - // 判断重复 - const arr = this.tableData - let isTrue = false - for (var i = 0; i < arr.length; i++) { - // 首次遍历数组 - for (var j = i + 1; j < arr.length; j++) { - // 再次遍历数组 - if (arr[i].productCode == arr[j].productCode) { - if (arr[i].isGift == arr[j].isGift) { - isTrue = true - } - } - } - } - if (isTrue) { - this.$message.error('请勿选择重复的商品') - this.tableData = [] - this.lsArr = [] - this.queryParams.productIdList = [] - this.productLists = [] - return - } - this.queryParams.productIdList = [] - this.productLists = [] - this.tableData.forEach((item) => { - this.queryParams.productIdList.push(item.pkId) - this.productLists.push(item.productName) - }) - }, + tableRowClassName({ row, rowIndex }) { if (rowIndex % 2 == 1) { return 'warning-row' @@ -1477,7 +1327,8 @@ export default { }) }, // 重置 - reChongzhi() { + resetHandle() { + this.selectedProductList = [] this.queryParams = { pageNum: 1, pageSize: 500, @@ -1488,6 +1339,11 @@ export default { // 展开折叠 changeActive() { this.isActive = !this.isActive + }, + handleSubmit(products) { + this.selectedProductList = [...products] + this.queryParams.pkWaresList = products.map((item) => item.pkId).join(',') + this.productLists = products.map((item) => item.waresName).join(',') } } } diff --git a/src/views/wholeNetwork/orderSyncFail/index.vue b/src/views/wholeNetwork/orderSyncFail/index.vue new file mode 100644 index 0000000..f9896d5 --- /dev/null +++ b/src/views/wholeNetwork/orderSyncFail/index.vue @@ -0,0 +1,307 @@ + + + + + + + + + + + + + + + + + + + + + { + getSearch(); + resetPageNum(); + } + " + > + {{ '搜索' }} + + {{ '重置' }} + + + + + + + + + + + + + + + 仓储编号:{{ item.wmsCode }} + 变动数量:{{ item.changeNum }} + + + + + + + + + + 手动处理 + + + + + + + + + + + + + + + diff --git a/src/views/wholeNetwork/productManage/components/UpdateDialog.vue b/src/views/wholeNetwork/productManage/components/UpdateDialog.vue new file mode 100644 index 0000000..799a930 --- /dev/null +++ b/src/views/wholeNetwork/productManage/components/UpdateDialog.vue @@ -0,0 +1,136 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/views/wholeNetwork/productManage/components/UpdateInventory.vue b/src/views/wholeNetwork/productManage/components/UpdateInventory.vue new file mode 100644 index 0000000..593fbc8 --- /dev/null +++ b/src/views/wholeNetwork/productManage/components/UpdateInventory.vue @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + diff --git a/src/views/wholeNetwork/productManage/details.vue b/src/views/wholeNetwork/productManage/details.vue new file mode 100644 index 0000000..b703e1b --- /dev/null +++ b/src/views/wholeNetwork/productManage/details.vue @@ -0,0 +1,286 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + { + getSearch(); + resetPageNum(); + } + " + > + 搜索 + + 重置 + + + + + + + + + + {{ '导出' }} + + + + + + + + + + + + + + + + + + + + diff --git a/src/views/wholeNetwork/productManage/index.vue b/src/views/wholeNetwork/productManage/index.vue new file mode 100644 index 0000000..7e163c3 --- /dev/null +++ b/src/views/wholeNetwork/productManage/index.vue @@ -0,0 +1,392 @@ + + + + + + + + + + + + + + + + + + + + + { + getSearch(); + resetPageNum(); + } + " + > + {{ '搜索' }} + + {{ '重置' }} + + + + + + + + + + 新增 + + 导出 + + + + + + + + + + + + + + + + + + + + 详情 + + + 修改 + + + 修改库存 + + + 删除 + + + + + + + + + + + + + + + + diff --git a/src/views/wholeNetwork/productManage/summary.vue b/src/views/wholeNetwork/productManage/summary.vue new file mode 100644 index 0000000..ffd14b9 --- /dev/null +++ b/src/views/wholeNetwork/productManage/summary.vue @@ -0,0 +1,15 @@ + + + + + + + + +