diff --git a/klp-ui/src/views/crm/js/actions.js b/klp-ui/src/views/crm/js/actions.js index f5bc3115..fee66080 100644 --- a/klp-ui/src/views/crm/js/actions.js +++ b/klp-ui/src/views/crm/js/actions.js @@ -1,116 +1,169 @@ -import request from '@/utils/request' +import { addOrder, updateOrder } from '@/api/crm/order' +import { addOrderItem, updateOrderItem } from '@/api/crm/orderItem' +import { addOrderOperationTrace } from '@/api/crm/orderOperationTrace' -/** - * 查询销售报表汇总数据 - */ -export function getSummary(query) { - return request({ - url: '/crm/salesReport/summary', - method: 'get', - params: query - }) +// 需要被记录的操作 +const ORDER_ACTIONS = { + createPreOrder: 'createPreOrder', + updatePreOrder: 'updatePreOrder', + approvePreOrder: 'approvePreOrder', + createOrder: 'createOrder', + updateOrder: 'updateOrder', + createOrderdetail: 'createOrderdetail', + updateOrderdetail: 'updateOrderdetail', } -/** - * 分页查询销售报表订单明细 - */ -export function getOrderDetails(query) { - return request({ - url: '/crm/salesReport/orderDetails', - method: 'get', - params: query - }) +const actions = { + // 创建预订单 + createPreOrder: { + type: 'createPreOrder', + name: '创建预订单', + description: '创建一个预订单', + // 预订单的相关信息 + async handler(payload) { + const { data: order } = await addOrder({ + ...payload, + }) + if (order.orderId) { + addOrderOperationTrace({ + orderId: order.orderId, + operationType: ORDER_ACTIONS.createPreOrder, + newStatus: order.orderId, + operationContent: JSON.stringify(payload) + }) + } + return order + } + }, + // 修改预订单 + updatePreOrder: { + type: 'updatePreOrder', + name: '修改预订单', + description: '修改预订单的相关信息', + // 预订单的相关信息 + async handler(payload) { + await updateOrder({ + ...payload, + }) + + addOrderOperationTrace({ + orderId: payload.orderId, + operationType: ORDER_ACTIONS.updatePreOrder, + newStatus: payload.orderId, + operationContent: JSON.stringify(payload) + }) + + return payload + } + }, + // 创建订单明细 + createOrderdetail: { + type: 'createOrderdetail', + name: '创建订单明细', + description: '创建订单明细的相关信息', + // 订单明细的相关信息 + async handler(payload) { + const { data: orderItem } = await addOrderItem({ + ...payload, + }) + if (orderItem.orderItemId) { + addOrderOperationTrace({ + orderId: orderItem.orderId, + operationType: ORDER_ACTIONS.createOrderdetail, + newStatus: payload.orderItemId, + operationContent: JSON.stringify(payload) + }) + } + return orderItem + } + }, + // 修改订单明细 + updateOrderdetail: { + type: 'updateOrderdetail', + name: '修改订单明细', + description: '修改订单明细的相关信息', + // 订单明细的相关信息 + async handler(payload) { + await updateOrderItem({ + ...payload, + }) + addOrderOperationTrace({ + orderId: payload.orderId, + operationType: ORDER_ACTIONS.updateOrderdetail, + newStatus: payload.orderItemId, + operationContent: JSON.stringify(payload) + }) + + return payload + } + }, + + // 预订单审批为正式订单 + approvePreOrder: { + type: 'approvePreOrder', + name: '审批预订单', + description: '审批预订单为正式订单', + // 预订单的相关信息 + async handler(payload) { + await updateOrder({ + ...payload, + }) + if (payload.orderId) { + addOrderOperationTrace({ + orderId: payload.orderId, + operationType: ORDER_ACTIONS.approvePreOrder, + newStatus: payload.orderId, + operationContent: JSON.stringify(payload) + }) + } + return payload + } + }, + // 直接创建正式订单 + createOrder: { + type: 'createOrder', + name: '创建正式订单', + description: '直接创建一个正式订单', + // 正式订单的相关信息 + async handler(payload) { + const { data: order } = await addOrder({ + ...payload, + }) + if (order.orderId) { + addOrderOperationTrace({ + orderId: order.orderId, + operationType: ORDER_ACTIONS.createOrder, + newStatus: order.orderId, + operationContent: JSON.stringify(payload) + }) + } + return order + } + }, + // 正式订单修改 + updateOrder: { + type: 'updateOrder', + name: '修改正式订单', + description: '修改正式订单的相关信息', + // 正式订单的相关信息 + async handler(payload) { + await updateOrder({ + ...payload, + }) + if (payload.orderId) { + addOrderOperationTrace({ + orderId: payload.orderId, + operationType: ORDER_ACTIONS.updateOrder, + newStatus: payload.orderId, + operationContent: JSON.stringify(payload) + }) + } + return payload + } + } } -/** - * 查询完整销售报表数据 - */ -export function getFullSalesReport(query) { - return request({ - url: '/crm/salesReport/fullReport', - method: 'get', - params: query - }) -} - -/** - * 查询销售员统计数据 - */ -export function getSalesmanStats(query) { - return request({ - url: '/crm/salesReport/salesmanStats', - method: 'get', - params: query - }) -} - -/** - * 查询客户等级统计数据 - */ -export function getCustomerLevelStats(query) { - return request({ - url: '/crm/salesReport/customerLevelStats', - method: 'get', - params: query - }) -} - -/** - * 查询行业统计数据 - */ -export function getIndustryStats(query) { - return request({ - url: '/crm/salesReport/industryStats', - method: 'get', - params: query - }) -} - -/** - * 导出销售报表订单明细 - */ -export function exportOrderDetails(query) { - return request({ - url: '/crm/salesReport/exportOrderDetails', - method: 'post', - data: query, - // 导出文件需指定响应类型(可选,根据项目ExcelUtil配置调整) - responseType: 'blob' - }) -} - -/** - * 导出销售员统计数据 - */ -export function exportSalesmanStats(query) { - return request({ - url: '/crm/salesReport/exportSalesmanStats', - method: 'post', - data: query, - responseType: 'blob' - }) -} - -/** - * 导出客户等级统计数据 - */ -export function exportCustomerLevelStats(query) { - return request({ - url: '/crm/salesReport/exportCustomerLevelStats', - method: 'post', - data: query, - responseType: 'blob' - }) -} - -/** - * 导出行业统计数据 - */ -export function exportIndustryStats(query) { - return request({ - url: '/crm/salesReport/exportIndustryStats', - method: 'post', - data: query, - responseType: 'blob' - }) +export { + ORDER_ACTIONS, + actions, } \ No newline at end of file diff --git a/klp-ui/src/views/crm/preOrder/index.vue b/klp-ui/src/views/crm/preOrder/index.vue index 56822cc1..5624cdb7 100644 --- a/klp-ui/src/views/crm/preOrder/index.vue +++ b/klp-ui/src/views/crm/preOrder/index.vue @@ -76,14 +76,15 @@ {{ parseTime(scope.row.deliveryDate, '{y}-{m}-{d}') }} - + + + @@ -137,6 +137,7 @@ export default { grossWeight: '', netWeight: '7080', referenceLength: '320', + length: '320', productionDate: '2025-03-19', // 底部信息字段 address: '唐山市滦州市茨榆坨工业区', diff --git a/klp-ui/src/views/wms/coil/panels/base.vue b/klp-ui/src/views/wms/coil/panels/base.vue index 46e05622..d943d5a8 100644 --- a/klp-ui/src/views/wms/coil/panels/base.vue +++ b/klp-ui/src/views/wms/coil/panels/base.vue @@ -90,6 +90,7 @@ + @@ -206,6 +207,9 @@ + + + @@ -311,6 +315,10 @@ export default { type: Boolean, default: false, }, + showLength: { + type: Boolean, + default: false, + }, }, data() { return { diff --git a/klp-ui/src/views/wms/coil/product.vue b/klp-ui/src/views/wms/coil/product.vue index 78dff59f..319bacc8 100644 --- a/klp-ui/src/views/wms/coil/product.vue +++ b/klp-ui/src/views/wms/coil/product.vue @@ -1,5 +1,10 @@