+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
@@ -205,10 +263,12 @@ export default {
productCoilStatistics: {},
productPagination: { total: 0, currentPage: 1, pageSize: 20 },
productCoilLoading: false,
+ productCoilBo: {},
deliveryCoilList: [],
deliveryCoilStatistics: {},
deliveryPagination: { total: 0, currentPage: 1, pageSize: 20 },
deliveryCoilLoading: false,
+ deliveryCoilBo: {},
};
},
computed: {
@@ -302,9 +362,11 @@ export default {
},
fetchDeliveryCoils() {
this.deliveryCoilLoading = true;
- listDeliveryCoilsByOrder(this.orderId, {
+ listDeliveryCoilsByOrder({
+ orderId: this.orderId,
pageNum: this.deliveryPagination.currentPage,
- pageSize: this.deliveryPagination.pageSize
+ pageSize: this.deliveryPagination.pageSize,
+ coilBo: this.deliveryCoilBo
}).then(res => {
this.deliveryCoilList = res.rows || [];
this.deliveryPagination.total = res.total || 0;
@@ -314,9 +376,11 @@ export default {
},
fetchProductCoils() {
this.productCoilLoading = true;
- listProductCoilsByContract(this.orderId, {
+ listProductCoilsByContract({
+ contractId: this.orderId,
pageNum: this.productPagination.currentPage,
- pageSize: this.productPagination.pageSize
+ pageSize: this.productPagination.pageSize,
+ coilBo: this.productCoilBo
}).then(res => {
this.productCoilList = res.rows || [];
this.productPagination.total = res.total || 0;
@@ -325,15 +389,33 @@ export default {
});
},
fetchDeliveryCoilStatistics() {
- getDeliveryCoilsStatisticsByOrder(this.orderId).then(res => {
+ getDeliveryCoilsStatisticsByOrder({ orderId: this.orderId, coilBo: this.deliveryCoilBo }).then(res => {
this.deliveryCoilStatistics = res.data || {};
});
},
fetchProductCoilStatistics() {
- getProductCoilsStatisticsByContract(this.orderId).then(res => {
+ getProductCoilsStatisticsByContract({ contractId: this.orderId, coilBo: this.productCoilBo }).then(res => {
this.productCoilStatistics = res.data || {};
});
},
+ handleProductFilter() {
+ this.productPagination.currentPage = 1;
+ this.fetchProductCoils();
+ this.fetchProductCoilStatistics();
+ },
+ resetProductFilter() {
+ this.productCoilBo = {};
+ this.handleProductFilter();
+ },
+ handleDeliveryFilter() {
+ this.deliveryPagination.currentPage = 1;
+ this.fetchDeliveryCoils();
+ this.fetchDeliveryCoilStatistics();
+ },
+ resetDeliveryFilter() {
+ this.deliveryCoilBo = {};
+ this.handleDeliveryFilter();
+ },
handleProductPageChange({ currentPage, pageSize }) {
this.productPagination.currentPage = currentPage;
this.productPagination.pageSize = pageSize;
diff --git a/klp-ui/src/views/crm/objection/index.vue b/klp-ui/src/views/crm/objection/index.vue
index 961acfdfa..4373fd7d4 100644
--- a/klp-ui/src/views/crm/objection/index.vue
+++ b/klp-ui/src/views/crm/objection/index.vue
@@ -398,7 +398,7 @@ export default {
...this.form,
coilIds: this.coilListToCsv(this.formCoilList)
};
-
+
if (this.form.objectionId != null) {
updateSalesObjection(formData).then(response => {
this.$modal.msgSuccess("修改成功");
@@ -465,11 +465,11 @@ export default {
path: '/wms/coil/' + coil.coilId,
});
},
-
+
// 获取订单已发货的钢卷
getShippedCoils() {
if (this.form.orderId) {
- listOrderPackaging(this.form.orderId, { pageNum: 1, pageSize: 10000 }).then(response => {
+ listOrderPackaging({ orderId: this.form.orderId, pageNum: 1, pageSize: 10000 }).then(response => {
this.shippedCoils = response.rows || [];
}).catch(() => {
this.shippedCoils = [];
diff --git a/klp-ui/src/views/crm/order/index.vue b/klp-ui/src/views/crm/order/index.vue
index 44aae12d1..9c2470d72 100644
--- a/klp-ui/src/views/crm/order/index.vue
+++ b/klp-ui/src/views/crm/order/index.vue
@@ -86,6 +86,28 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
@@ -227,6 +249,7 @@ export default {
customerList: [],
contractList: [],
coilList: [],
+ coilBo: {},
deliveryWaybillList: [],
}
},
@@ -259,10 +282,22 @@ export default {
},
/** 查询发货配卷列表 */
getCoilList() {
- listOrderPackaging(this.currentOrder.orderId, { pageNum: 1, pageSize: 10000 }).then(response => {
+ listOrderPackaging({
+ orderId: this.currentOrder.orderId,
+ pageNum: 1,
+ pageSize: 10000,
+ coilBo: this.coilBo
+ }).then(response => {
this.coilList = response.rows || [];
});
},
+ handleCoilFilter() {
+ this.getCoilList();
+ },
+ resetCoilFilter() {
+ this.coilBo = {};
+ this.getCoilList();
+ },
/** 合同号改变事件 */
handleContractChange(contractId) {
const contract = this.contractList.find(item => item.contractId === contractId)
@@ -398,4 +433,4 @@ export default {
},
}
}
-
\ No newline at end of file
+
diff --git a/klp-ui/src/views/crm/saleman/index.vue b/klp-ui/src/views/crm/saleman/index.vue
index 89ae5b53a..bafe6dac1 100644
--- a/klp-ui/src/views/crm/saleman/index.vue
+++ b/klp-ui/src/views/crm/saleman/index.vue
@@ -77,14 +77,65 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
+
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
+
@@ -181,6 +232,8 @@ export default {
productPagination: { total: 0, currentPage: 1, pageSize: 20 },
// 生产成果统计
productCoilStatistics: {},
+ // 生产成果筛选
+ productCoilBo: {},
// 生产成果加载
productCoilLoading: false,
// 计划发货列表
@@ -189,6 +242,8 @@ export default {
deliveryPagination: { total: 0, currentPage: 1, pageSize: 20 },
// 计划发货统计
deliveryCoilStatistics: {},
+ // 计划发货筛选
+ deliveryCoilBo: {},
// 计划发货加载
deliveryCoilLoading: false,
// 发货单据列表
@@ -292,7 +347,7 @@ export default {
return Promise.resolve();
}
this.rightLoading = true;
-
+
switch (tabName) {
case 'customer':
return listCustomer({
@@ -349,9 +404,10 @@ export default {
fetchProductCoils(salesman) {
this.productCoilLoading = true;
return listProductCoilsBySalesman({
- salesman: salesman,
+ salesman,
pageNum: this.productPagination.currentPage,
- pageSize: this.productPagination.pageSize
+ pageSize: this.productPagination.pageSize,
+ coilBo: this.productCoilBo
}).then(res => {
this.productList = res.rows || [];
this.productPagination.total = res.total || 0;
@@ -364,16 +420,28 @@ export default {
});
},
fetchProductCoilStatistics(salesman) {
- getProductCoilsStatisticsBySalesman(salesman).then(res => {
+ getProductCoilsStatisticsBySalesman({ salesman, coilBo: this.productCoilBo }).then(res => {
this.productCoilStatistics = res.data || {};
});
},
+ handleProductFilter() {
+ this.productPagination.currentPage = 1;
+ if (this.selectedItem) {
+ this.fetchProductCoils(this.selectedItem.dictValue);
+ this.fetchProductCoilStatistics(this.selectedItem.dictValue);
+ }
+ },
+ resetProductFilter() {
+ this.productCoilBo = {};
+ this.handleProductFilter();
+ },
fetchDeliveryCoils(principal) {
this.deliveryCoilLoading = true;
return listDeliveryCoilsByPrincipal({
- principal: principal,
+ principal,
pageNum: this.deliveryPagination.currentPage,
- pageSize: this.deliveryPagination.pageSize
+ pageSize: this.deliveryPagination.pageSize,
+ coilBo: this.deliveryCoilBo
}).then(res => {
this.deliveryList = res.rows || [];
this.deliveryPagination.total = res.total || 0;
@@ -386,10 +454,21 @@ export default {
});
},
fetchDeliveryCoilStatistics(principal) {
- getDeliveryCoilsStatisticsByPrincipal(principal).then(res => {
+ getDeliveryCoilsStatisticsByPrincipal({ principal, coilBo: this.deliveryCoilBo }).then(res => {
this.deliveryCoilStatistics = res.data || {};
});
},
+ handleDeliveryFilter() {
+ this.deliveryPagination.currentPage = 1;
+ if (this.selectedItem) {
+ this.fetchDeliveryCoils(this.selectedItem.dictValue);
+ this.fetchDeliveryCoilStatistics(this.selectedItem.dictValue);
+ }
+ },
+ resetDeliveryFilter() {
+ this.deliveryCoilBo = {};
+ this.handleDeliveryFilter();
+ },
handleProductPageChange({ currentPage, pageSize }) {
this.productPagination.currentPage = currentPage;
this.productPagination.pageSize = pageSize;
diff --git a/klp-ui/src/views/wms/post/aps/orderTrack.vue b/klp-ui/src/views/wms/post/aps/orderTrack.vue
index e9ff89e02..3defc8877 100644
--- a/klp-ui/src/views/wms/post/aps/orderTrack.vue
+++ b/klp-ui/src/views/wms/post/aps/orderTrack.vue
@@ -132,6 +132,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 查询
+ 重置
+
+
@@ -221,6 +250,7 @@ export default {
productCoilStatistics: {},
productPagination: { total: 0, currentPage: 1, pageSize: 20 },
productCoilLoading: false,
+ productCoilBo: {},
batchTransferDialogVisible: false,
batchTargetContractId: '',
batchTransferCoilIds: [],
@@ -387,9 +417,11 @@ export default {
fetchProductCoils() {
if (!this.currentOrder || !this.currentOrder.orderId) return
this.productCoilLoading = true
- listProductCoilsByContract(this.currentOrder.orderId, {
+ listProductCoilsByContract({
+ contractId: this.currentOrder.orderId,
pageNum: this.productPagination.currentPage,
- pageSize: this.productPagination.pageSize
+ pageSize: this.productPagination.pageSize,
+ coilBo: this.productCoilBo
}).then(res => {
this.productCoilList = res.rows || []
this.productPagination.total = res.total || 0
@@ -399,10 +431,19 @@ export default {
},
fetchProductCoilStatistics() {
if (!this.currentOrder || !this.currentOrder.orderId) return
- getProductCoilsStatisticsByContract(this.currentOrder.orderId).then(res => {
+ getProductCoilsStatisticsByContract({ contractId: this.currentOrder.orderId, coilBo: this.productCoilBo }).then(res => {
this.productCoilStatistics = res.data || {}
})
},
+ handleProductFilter() {
+ this.productPagination.currentPage = 1
+ this.fetchProductCoils()
+ this.fetchProductCoilStatistics()
+ },
+ resetProductFilter() {
+ this.productCoilBo = {}
+ this.handleProductFilter()
+ },
handleProductSelectionChange(selection) {
this.selectedProductRows = selection
},
diff --git a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java
index 8d7c2969d..4bfde79c7 100644
--- a/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java
+++ b/klp-wms/src/main/java/com/klp/controller/WmsDeliveryWaybillDetailController.java
@@ -26,6 +26,7 @@ import com.klp.domain.vo.WmsDeliveryWaybillDetailVo;
import com.klp.domain.bo.WmsDeliveryWaybillDetailBo;
import com.klp.service.IWmsDeliveryWaybillDetailService;
import com.klp.domain.bo.WmsMaterialCoilBo;
+import com.klp.domain.bo.PrincipalCoilQueryBo;
import com.klp.service.IWmsMaterialCoilService;
import com.klp.common.core.page.TableDataInfo;
@@ -188,34 +189,34 @@ public class WmsDeliveryWaybillDetailController extends BaseController {
/**
- * 根据负责人(principal)查询已发货绑定的钢卷列表(分页)
+ * 根据负责人(principal)查询已发货绑定的钢卷列表(分页),支持钢卷信息筛选
*/
- @GetMapping("/coilListByPrincipal")
- public TableDataInfo coilListByPrincipal(
- @RequestParam(required = false) String principal,
- PageQuery pageQuery) {
- List boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(principal);
+ @PostMapping("/coilListByPrincipal")
+ public TableDataInfo coilListByPrincipal(@RequestBody PrincipalCoilQueryBo bo) {
+ List boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(bo.getPrincipal());
if (boundCoilIds == null || boundCoilIds.isEmpty()) {
return new TableDataInfo<>();
}
- WmsMaterialCoilBo wmsMaterialCoilBo = new WmsMaterialCoilBo();
- wmsMaterialCoilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
- return iWmsMaterialCoilService.queryPageList(wmsMaterialCoilBo, pageQuery);
+ WmsMaterialCoilBo coilBo = bo.getCoilBo() != null ? bo.getCoilBo() : new WmsMaterialCoilBo();
+ coilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
+ PageQuery pageQuery = new PageQuery();
+ pageQuery.setPageNum(bo.getPageNum());
+ pageQuery.setPageSize(bo.getPageSize());
+ return iWmsMaterialCoilService.queryPageList(coilBo, pageQuery);
}
/**
- * 根据负责人(principal)统计已发货绑定钢卷的汇总数据(数量、毛重、净重)
+ * 根据负责人(principal)统计已发货绑定钢卷的汇总数据,支持钢卷信息筛选
*/
- @GetMapping("/coilListByPrincipal/statistics")
- public R> getCoilListByPrincipalStatistics(
- @RequestParam(required = false) String principal) {
- List boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(principal);
+ @PostMapping("/coilListByPrincipal/statistics")
+ public R> getCoilListByPrincipalStatistics(@RequestBody PrincipalCoilQueryBo bo) {
+ List boundCoilIds = iWmsDeliveryWaybillDetailService.getBoundCoilIdsByPrincipal(bo.getPrincipal());
if (boundCoilIds == null || boundCoilIds.isEmpty()) {
return R.ok();
}
- WmsMaterialCoilBo wmsMaterialCoilBo = new WmsMaterialCoilBo();
- wmsMaterialCoilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
- return R.ok(iWmsMaterialCoilService.getStatistics(wmsMaterialCoilBo));
+ WmsMaterialCoilBo coilBo = bo.getCoilBo() != null ? bo.getCoilBo() : new WmsMaterialCoilBo();
+ coilBo.setCoilIds(boundCoilIds.stream().map(String::valueOf).collect(Collectors.joining(",")));
+ return R.ok(iWmsMaterialCoilService.getStatistics(coilBo));
}
}
diff --git a/klp-wms/src/main/java/com/klp/domain/bo/PrincipalCoilQueryBo.java b/klp-wms/src/main/java/com/klp/domain/bo/PrincipalCoilQueryBo.java
new file mode 100644
index 000000000..c7567920a
--- /dev/null
+++ b/klp-wms/src/main/java/com/klp/domain/bo/PrincipalCoilQueryBo.java
@@ -0,0 +1,28 @@
+package com.klp.domain.bo;
+
+import lombok.Data;
+import java.io.Serializable;
+
+/**
+ * 负责人钢卷查询请求对象
+ *
+ * @author klp
+ * @date 2026-07-09
+ */
+@Data
+public class PrincipalCoilQueryBo implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /** 负责人 */
+ private String principal;
+
+ /** 分页页码 */
+ private Integer pageNum;
+
+ /** 分页大小 */
+ private Integer pageSize;
+
+ /** 钢卷筛选条件 */
+ private WmsMaterialCoilBo coilBo;
+}