diff --git a/src/main/java/org/springblade/business/quality/controller/QualityController.java b/src/main/java/org/springblade/business/quality/controller/QualityController.java index e9d98ec..f1be1f3 100644 --- a/src/main/java/org/springblade/business/quality/controller/QualityController.java +++ b/src/main/java/org/springblade/business/quality/controller/QualityController.java @@ -106,7 +106,7 @@ public class QualityController extends BladeController { public R> userList(@Parameter(hidden = true) @RequestParam Map quality, Query query) { Object userId = quality.get("userId"); IPage pages = qualityService.page(Condition.getPage(query), Condition.getQueryWrapper(quality, QualityEntity.class) - .eq("create_user", userId) + .eq(userId != null, "create_user", userId) .orderByDesc("create_time")); return R.data(QualityWrapper.build().pageVO(pages)); } diff --git a/src/main/java/org/springblade/business/salesOrder/controller/SalesOrderController.java b/src/main/java/org/springblade/business/salesOrder/controller/SalesOrderController.java index 7c2f234..f6b7599 100644 --- a/src/main/java/org/springblade/business/salesOrder/controller/SalesOrderController.java +++ b/src/main/java/org/springblade/business/salesOrder/controller/SalesOrderController.java @@ -64,7 +64,10 @@ public class SalesOrderController extends BladeController { @ApiOperationSupport(order = 2) @Operation(summary = "分页", description = "传入salesOrder") public R> list(@Parameter(hidden = true) @RequestParam Map salesOrder, Query query) { - IPage pages = salesOrderService.page(Condition.getPage(query), Condition.getQueryWrapper(salesOrder, SalesOrder.class)); + Object userId = salesOrder.get("userId"); + IPage pages = salesOrderService.page(Condition.getPage(query), Condition.getQueryWrapper(salesOrder, SalesOrder.class) + .eq(userId != null, "create_user", userId) + .orderByDesc("create_time")); return R.data(SalesOrderWrapper.build().pageVO(pages)); } @@ -75,20 +78,7 @@ public class SalesOrderController extends BladeController { @ApiOperationSupport(order = 4) @Operation(summary = "新增", description = "传入salesOrder") public R save(@Valid @RequestBody SalesOrderDTO salesOrder) { - salesOrder.setCode("COI0" + CommonUtil.getSalesOrderCode()); - boolean save = salesOrderService.save(salesOrder); - if (save) { - List detailList = salesOrder.getDetailList(); - if (CollectionUtils.isNotEmpty(detailList)) { - detailList.forEach(detail -> detail.setSoId(salesOrder.getId())); - save = salesOrderDetailService.saveBatch(detailList); - } - } - - if (save) { - // 将销售订单同步给mes - } - return R.status(save); + return R.status(salesOrderService.saveAndDetail(salesOrder)); } /** @@ -98,6 +88,11 @@ public class SalesOrderController extends BladeController { @ApiOperationSupport(order = 5) @Operation(summary = "修改", description = "传入salesOrder") public R update(@Valid @RequestBody SalesOrderDTO salesOrder) { + List detailList = salesOrder.getDetailList(); + if (CollectionUtils.isNotEmpty(detailList)) { + detailList.forEach(detail -> detail.setSoId(salesOrder.getId())); + salesOrderDetailService.saveOrUpdateBatch(detailList); + } return R.status(salesOrderService.updateById(salesOrder)); } diff --git a/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrder.java b/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrder.java index 90710ba..3361d1e 100644 --- a/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrder.java +++ b/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrder.java @@ -1,12 +1,15 @@ package org.springblade.business.salesOrder.pojo.entity; import com.baomidou.mybatisplus.annotation.TableName; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import lombok.EqualsAndHashCode; import org.springblade.core.mp.base.BaseEntity; +import org.springblade.core.tool.utils.DateUtil; import java.io.Serial; +import java.util.Date; /** * 销售订单表 实体类 @@ -31,8 +34,9 @@ public class SalesOrder extends BaseEntity { /** * 交货日期 */ + @JsonFormat(pattern = DateUtil.PATTERN_DATE) @Schema(description = "交货日期") - private String deliveryDate; + private Date deliveryDate; /** * 运输地址 */ diff --git a/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrderDetail.java b/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrderDetail.java index 83990ad..e96893f 100644 --- a/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrderDetail.java +++ b/src/main/java/org/springblade/business/salesOrder/pojo/entity/SalesOrderDetail.java @@ -50,7 +50,7 @@ public class SalesOrderDetail extends BaseEntity { /** * 商品数量 */ - @Schema(description = "商品编号") + @Schema(description = "商品数量") private Integer commodityCount; /** diff --git a/src/main/java/org/springblade/business/salesOrder/service/ISalesOrderService.java b/src/main/java/org/springblade/business/salesOrder/service/ISalesOrderService.java index 70fa277..6d18c27 100644 --- a/src/main/java/org/springblade/business/salesOrder/service/ISalesOrderService.java +++ b/src/main/java/org/springblade/business/salesOrder/service/ISalesOrderService.java @@ -1,5 +1,6 @@ package org.springblade.business.salesOrder.service; +import org.springblade.business.salesOrder.pojo.dto.SalesOrderDTO; import org.springblade.business.salesOrder.pojo.entity.SalesOrder; import org.springblade.core.mp.base.BaseService; @@ -11,4 +12,5 @@ import org.springblade.core.mp.base.BaseService; */ public interface ISalesOrderService extends BaseService { + boolean saveAndDetail(SalesOrderDTO salesOrder); } diff --git a/src/main/java/org/springblade/business/salesOrder/service/impl/SalesOrderServiceImpl.java b/src/main/java/org/springblade/business/salesOrder/service/impl/SalesOrderServiceImpl.java index 071aa24..c88708d 100644 --- a/src/main/java/org/springblade/business/salesOrder/service/impl/SalesOrderServiceImpl.java +++ b/src/main/java/org/springblade/business/salesOrder/service/impl/SalesOrderServiceImpl.java @@ -1,10 +1,19 @@ package org.springblade.business.salesOrder.service.impl; +import lombok.AllArgsConstructor; +import org.apache.commons.collections.CollectionUtils; import org.springblade.business.salesOrder.mapper.SalesOrderMapper; +import org.springblade.business.salesOrder.pojo.dto.SalesOrderDTO; import org.springblade.business.salesOrder.pojo.entity.SalesOrder; +import org.springblade.business.salesOrder.pojo.entity.SalesOrderDetail; +import org.springblade.business.salesOrder.service.ISalesOrderDetailService; import org.springblade.business.salesOrder.service.ISalesOrderService; +import org.springblade.common.utils.CommonUtil; import org.springblade.core.mp.base.BaseServiceImpl; import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.List; /** * 销售订单表 服务实现类 @@ -13,7 +22,26 @@ import org.springframework.stereotype.Service; * @since 2025-07-16 */ @Service +@AllArgsConstructor public class SalesOrderServiceImpl extends BaseServiceImpl implements ISalesOrderService { + private final ISalesOrderDetailService salesOrderDetailService; + @Override + @Transactional(rollbackFor = Exception.class) + public boolean saveAndDetail(SalesOrderDTO salesOrder) { + salesOrder.setCode("COI0" + CommonUtil.getSalesOrderCode()); + boolean save = this.save(salesOrder); + if (save) { + List detailList = salesOrder.getDetailList(); + if (CollectionUtils.isNotEmpty(detailList)) { + detailList.forEach(detail -> detail.setSoId(salesOrder.getId())); + save = salesOrderDetailService.saveBatch(detailList); + } + } + if (save) { + // 将销售订单同步给mes + } + return save; + } } diff --git a/src/main/java/org/springblade/modules/system/controller/UserController.java b/src/main/java/org/springblade/modules/system/controller/UserController.java index eeb87c5..cc30dd4 100644 --- a/src/main/java/org/springblade/modules/system/controller/UserController.java +++ b/src/main/java/org/springblade/modules/system/controller/UserController.java @@ -38,6 +38,7 @@ import io.swagger.v3.oas.annotations.tags.Tag; import jakarta.servlet.http.HttpServletResponse; import jakarta.validation.Valid; import lombok.AllArgsConstructor; +import org.springblade.common.utils.CommonUtil; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.launch.constant.AppConstant; import org.springblade.core.mp.support.Condition; @@ -373,6 +374,7 @@ public class UserController { @PostMapping("/register-user") public R registerUser(@RequestBody User user) { user.setUserType(1); + user.setCode("CCI0" + CommonUtil.getSalesOrderCode()); user.setRoleId("1945392838767751170"); user.setDeptId("1123598813738675201"); user.setPostId("1123598817738675208");