diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreCustomerController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreCustomerController.java index de5b36b91..e811d9e40 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreCustomerController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreCustomerController.java @@ -102,8 +102,8 @@ public class StoreCustomerController extends XktBaseController { @PreAuthorize("@ss.hasPermi('system:customer:list')") @ApiOperation(value = "查询档口客户列表", httpMethod = "GET", response = R.class) @PostMapping("/page") - public Page selectPage(@Validated @RequestBody StoreCusPageVO pageVO) { - return storeCusService.selectPage(ObjectUtils.isEmpty(pageVO) ? null : BeanUtil.toBean(pageVO, StoreCusPageDTO.class)); + public Page selectPage(@Validated @RequestBody StoreCusPageVO pageVO) { + return storeCusService.selectPage(BeanUtil.toBean(pageVO, StoreCusPageDTO.class)); } diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java index 8fd1d8469..60f3643ce 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreProductController.java @@ -55,8 +55,8 @@ public class StoreProductController extends XktBaseController { @PreAuthorize("@ss.hasPermi('system:product:list')") @ApiOperation(value = "查询档口商品列表", httpMethod = "POST", response = R.class) @PostMapping("/page") - public Page page(@Validated @RequestBody StoreProdPageVO pageVO) { - return storeProdService.page(ObjectUtils.isEmpty(pageVO) ? null : BeanUtil.toBean(pageVO, StoreProdPageDTO.class)); + public Page page(@Validated @RequestBody StoreProdPageVO pageVO) { + return storeProdService.page(BeanUtil.toBean(pageVO, StoreProdPageDTO.class)); } /** diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreSaleController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreSaleController.java index 4726e9358..8a3cb4b73 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreSaleController.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/StoreSaleController.java @@ -4,13 +4,15 @@ import cn.hutool.core.bean.BeanUtil; import com.ruoyi.common.annotation.Log; import com.ruoyi.common.core.controller.XktBaseController; import com.ruoyi.common.core.domain.R; -import com.ruoyi.common.core.page.TableDataInfo; +import com.ruoyi.common.core.page.Page; import com.ruoyi.common.enums.BusinessType; import com.ruoyi.common.utils.poi.ExcelUtil; import com.ruoyi.web.controller.xkt.vo.storeCustomer.StoreCusGeneralSaleVO; +import com.ruoyi.web.controller.xkt.vo.storeSale.StoreSalePageVO; import com.ruoyi.web.controller.xkt.vo.storeSale.StoreSaleVO; import com.ruoyi.xkt.domain.StoreSale; import com.ruoyi.xkt.dto.storeSale.StoreSaleDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageDTO; import com.ruoyi.xkt.service.IStoreSaleService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; @@ -47,6 +49,17 @@ public class StoreSaleController extends XktBaseController { return success(BeanUtil.toBean(storeSaleService.getCusGeneralSale(days, storeId, storeCusId), StoreCusGeneralSaleVO.class)); } + /** + * 查询档口销售出库列表 + */ + @PreAuthorize("@ss.hasPermi('system:sale:list')") + @ApiOperation(value = "查询档口销售出库列表", httpMethod = "POST", response = R.class) + @PostMapping("/page") + public Page page(@Validated @RequestBody StoreSalePageVO salePageVO) { + return storeSaleService.page(BeanUtil.toBean(salePageVO, StoreSalePageDTO.class)); + } + + /** * 新增档口销售出库 */ @@ -58,32 +71,35 @@ public class StoreSaleController extends XktBaseController { return success(storeSaleService.insertStoreSale(BeanUtil.toBean(storeSaleVO, StoreSaleDTO.class))); } - - - - - - - - - - - - - - - /** - * 查询档口销售出库列表 + * 修改档口销售出库 */ - @PreAuthorize("@ss.hasPermi('system:sale:list')") - @GetMapping("/list") - public TableDataInfo list(StoreSale storeSale) { - startPage(); - List list = storeSaleService.selectStoreSaleList(storeSale); - return getDataTable(list); + @PreAuthorize("@ss.hasPermi('system:sale:edit')") + @Log(title = "修改档口销售出库", businessType = BusinessType.UPDATE) + @ApiOperation(value = "修改档口销售出库", httpMethod = "PUT", response = R.class) + @PutMapping + public R edit(@Validated @RequestBody StoreSaleVO storeSaleVO) { + return success(storeSaleService.updateStoreSale(BeanUtil.toBean(storeSaleVO, StoreSaleDTO.class))); } + + + + + + + + + + + + + + + + + + /** * 导出档口销售出库列表 */ @@ -106,16 +122,6 @@ public class StoreSaleController extends XktBaseController { } - /** - * 修改档口销售出库 - */ - @PreAuthorize("@ss.hasPermi('system:sale:edit')") - @Log(title = "档口销售出库", businessType = BusinessType.UPDATE) - @PutMapping - public R edit(@RequestBody StoreSale storeSale) { - return success(storeSaleService.updateStoreSale(storeSale)); - } - /** * 删除档口销售出库 */ diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/BasePageVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/BasePageVO.java index d189f73e1..8645ca7b5 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/BasePageVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/BasePageVO.java @@ -4,6 +4,8 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; +import javax.validation.constraints.NotNull; + /** * @author liujiang * @version v1.0 @@ -13,8 +15,10 @@ import lombok.Data; @Data public class BasePageVO { + @NotNull(message = "pageNum不能为空") @ApiModelProperty(name = "pageNum") private int pageNum; + @NotNull(message = "pageSize不能为空") @ApiModelProperty(name = "pageSize") private int pageSize; diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSalePageVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSalePageVO.java new file mode 100644 index 000000000..9900c78da --- /dev/null +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSalePageVO.java @@ -0,0 +1,43 @@ +package com.ruoyi.web.controller.xkt.vo.storeSale; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.web.controller.xkt.vo.BasePageVO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@EqualsAndHashCode(callSuper = true) +@ApiModel("档口销售出库单分页查询入参") +@Data +public class StoreSalePageVO extends BasePageVO { + + @NotNull(message = "档口ID不能为空") + @ApiModelProperty(name = "档口ID") + private Long storeId; + @ApiModelProperty(name = "商品货号") + private String prodArtNum; + @ApiModelProperty(name = "客户名称") + private String cusName; + @ApiModelProperty(name = "销售类型", notes = "普通销售、销售退货、普通销售/销售退货 GENERAL_SALE SALE_REFUND SALE_AND_REFUND") + private String saleType; + @ApiModelProperty(name = "结款状态") + private String paymentStatus; + @ApiModelProperty(name = "支付方式") + private String payWay; + @ApiModelProperty(name = "销售开始时间") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTimeStart; + @ApiModelProperty(name = "销售结束时间") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTimeEnd; + +} diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleVO.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleVO.java index 3a2f3c1b0..96ab8fb11 100644 --- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleVO.java +++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/xkt/vo/storeSale/StoreSaleVO.java @@ -21,6 +21,11 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class StoreSaleVO { + @NotNull(message = "是否为返单不能为空!") + @ApiModelProperty(name = "是否为返单", notes = "true 是返单 false 不是返单") + private Boolean refund; + @ApiModelProperty(name = "storeSaleId", notes = "新增为空,编辑必传") + private Long storeSaleId; @ApiModelProperty(name = "档口ID") @NotNull(message = "档口ID不能为空!") private Long storeId; @@ -53,6 +58,9 @@ public class StoreSaleVO { @NotNull(message = "档口商品颜色尺码ID不能为空!") @ApiModelProperty(name = "档口商品颜色尺码ID") private Long storeProdColorSizeId; + @ApiModelProperty(name = "商品货号") + @NotBlank(message = "商品货号不能为空!") + private String prodArtNum; @ApiModelProperty(name = "销售条码") private String sns; @NotNull(message = "销售单价不能为空!") diff --git a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/Page.java b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/Page.java index 890ede7a3..ef2a227be 100644 --- a/ruoyi-common/src/main/java/com/ruoyi/common/core/page/Page.java +++ b/ruoyi-common/src/main/java/com/ruoyi/common/core/page/Page.java @@ -58,18 +58,23 @@ public class Page implements Serializable { */ private String msg = "操作成功"; + public static Page convert(PageInfo pageInfo) { + return BeanUtil.toBean(pageInfo, Page.class); + } + public static Page convert(PageInfo pageInfo, List list) { Page page = BeanUtil.toBean(pageInfo, Page.class); page.setList(CollectionUtils.isEmpty(list) ? new ArrayList<>() : list); return page; } - public static Page empty() { + + public static Page empty(int pageSize, int pageNum) { Page page = new Page<>(); page.setList(new ArrayList<>()); page.setTotal(0); - page.setPageNum(1); - page.setPageSize(10); + page.setPageNum(pageNum); + page.setPageSize(pageSize); return page; } diff --git a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSale.java b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSale.java index c7763e0bc..1be60e097 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSale.java +++ b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSale.java @@ -30,56 +30,67 @@ public class StoreSale extends XktBaseEntity { */ @TableId private Long id; - /** * 档口ID */ @Excel(name = "档口ID") private Long storeId; - /** * 档口客户ID */ @Excel(name = "档口客户ID") private Long storeCusId; - /** - * 销售类型(普通销售、销售退货、普通销售/销售退货) + * 档口客户名称呢 + */ + private String storeCusName; + /** + * 销售类型(普通销售、销售退货、普通销售/销售退货)GENERAL_SALE SALE_REFUND SALE_AND_REFUND */ @Excel(name = "销售类型") private String saleType; - /** * 单据编号 */ @Excel(name = "单据编号") private String code; - /** * 单据日期 */ @JsonFormat(pattern = "yyyy-MM-dd") @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") private Date voucherDate; - /** * 数量 */ @Excel(name = "数量") private Integer quantity; - /** * 总金额 */ @Excel(name = "总金额") private BigDecimal amount; - /** * 支付方式(支付宝、微信、现金、欠款) */ @Excel(name = "支付方式", readConverterExp = "支=付宝、微信、现金、欠款") private String payWay; - + /** + * 结款状态(已结清、欠款) SETTLED、DEBT + */ + private String paymentStatus; + /** + * 操作人ID + */ + private Long operatorId; + /** + * 操作人名称 + */ + private String operatorName; + /** + * 备注 + */ + private String remark; @Override public String toString() { diff --git a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleDetail.java b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleDetail.java index e78adb537..ccd201337 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleDetail.java +++ b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleDetail.java @@ -53,6 +53,12 @@ public class StoreSaleDetail extends XktBaseEntity { @Excel(name = "销售类型", readConverterExp = "普=通销售、销售退货") private String saleType; + /** + * 商品货号 + */ + @Excel(name = "商品货号") + private String prodArtNum; + /** * 销售单价 */ diff --git a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleRefundRecord.java b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleRefundRecord.java index 2b89fb2ee..980e1071b 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleRefundRecord.java +++ b/xkt/src/main/java/com/ruoyi/xkt/domain/StoreSaleRefundRecord.java @@ -1,6 +1,7 @@ package com.ruoyi.xkt.domain; import com.baomidou.mybatisplus.annotation.TableId; +import com.fasterxml.jackson.annotation.JsonFormat; import com.ruoyi.common.annotation.Excel; import com.ruoyi.common.core.domain.XktBaseEntity; import lombok.Data; @@ -9,6 +10,7 @@ import org.apache.commons.lang3.builder.ToStringBuilder; import org.apache.commons.lang3.builder.ToStringStyle; import java.math.BigDecimal; +import java.util.Date; /** * 档口销售返单对象 store_sale_refund_record @@ -32,55 +34,67 @@ public class StoreSaleRefundRecord extends XktBaseEntity { */ @Excel(name = "档口销售出库ID") private Long storeSaleId; - /** * 档口ID */ @Excel(name = "档口ID") private Long storeId; - /** * 档口销售客户ID */ @Excel(name = "档口销售客户ID") private Long storeCusId; - /** - * 档口销售商品ID + * 档口客户名称呢 */ - @Excel(name = "档口销售商品ID") - private Long storeProdId; - + private String storeCusName; /** - * 销售类型(销售、退货、销售/退货) + * 销售类型(普通销售、销售退货、普通销售/销售退货)GENERAL_SALE SALE_REFUND SALE_AND_REFUND */ - @Excel(name = "销售类型", readConverterExp = "销=售、退货、销售/退货") - private Long saleType; - + @Excel(name = "销售类型") + private String saleType; /** * 单据编号 */ @Excel(name = "单据编号") private String code; - + /** + * 单据日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "单据日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date voucherDate; /** * 数量 */ @Excel(name = "数量") private Integer quantity; - /** * 总金额 */ @Excel(name = "总金额") private BigDecimal amount; - /** - * 支付方式 + * 支付方式(支付宝、微信、现金、欠款) */ - @Excel(name = "支付方式") - private Long payWay; - + @Excel(name = "支付方式", readConverterExp = "支=付宝、微信、现金、欠款") + private String payWay; + /** + * 结款状态(已结清、欠款) SETTLED、DEBT + */ + private String paymentStatus; + /** + * 操作人ID + */ + private Long operatorId; + /** + * 操作人名称 + */ + private String operatorName; + /** + * 备注 + */ + private String remark; @Override public String toString() { @@ -89,7 +103,6 @@ public class StoreSaleRefundRecord extends XktBaseEntity { .append("storeSaleId", getStoreSaleId()) .append("storeId", getStoreId()) .append("storeCusId", getStoreCusId()) - .append("storeProdId", getStoreProdId()) .append("saleType", getSaleType()) .append("code", getCode()) .append("quantity", getQuantity()) diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleDTO.java index 77dd26daa..82e0fc698 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleDTO.java +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSaleDTO.java @@ -5,9 +5,6 @@ import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import javax.validation.Valid; -import javax.validation.constraints.NotBlank; -import javax.validation.constraints.NotNull; import java.math.BigDecimal; import java.util.List; @@ -21,49 +18,43 @@ import java.util.List; @JsonInclude(JsonInclude.Include.NON_NULL) public class StoreSaleDTO { + @ApiModelProperty(name = "是否为返单", notes = "true 是返单 false 不是返单") + private Boolean refund; + @ApiModelProperty("档口销售ID") + private Long storeSaleId; @ApiModelProperty(name = "档口ID") - @NotNull(message = "档口ID不能为空!") private Long storeId; @ApiModelProperty(name = "档口客户ID") - @NotNull(message = "档口客户ID不能为空!") private Long storeCusId; @ApiModelProperty(name = "销售类型(普通销售 GENERAL_SALE、销售退货 SALE_REFUND、普通销售/销售退货 SALE_AND_REFUND)") - @NotBlank(message = "销售类型不能为空!") private String saleType; @ApiModelProperty(name = "数量") - @NotNull(message = "数量不能为空!") private Integer quantity; @ApiModelProperty(name = "总金额") - @NotNull(message = "总金额不能为空!") private BigDecimal amount; - @NotBlank(message = "支付方式不能为空!") @ApiModelProperty(name = "支付方式(支付宝、微信、现金、欠款)ALIPAY WECHAT_PAY CASH DEBT") private String payWay; - @NotNull(message = "销售详情列表不能为空!") - @Valid + @ApiModelProperty(name = "结款状态(已结清、欠款) SETTLED、DEBT") + private String paymentStatus; @ApiModelProperty(name = "销售详情列表") private List detailList; - @Data public static class SaleDetailVO { - @NotNull(message = "档口商品ID不能为空!") @ApiModelProperty(name = "档口商品ID") private Long storeProdId; - @NotNull(message = "档口商品颜色尺码ID不能为空!") @ApiModelProperty(name = "档口商品颜色尺码ID") private Long storeProdColorSizeId; + @ApiModelProperty(name = "商品货号") + private String prodArtNum; @ApiModelProperty(name = "销售条码") private String sns; - @NotNull(message = "销售单价不能为空!") @ApiModelProperty(name = "销售单价") private BigDecimal price; @ApiModelProperty(name = "给客户优惠后单价") private BigDecimal discountedPrice; @ApiModelProperty(name = "数量") - @NotNull(message = "数量不能为空!") private Integer quantity; - @NotNull(message = "总金额不能为空!") @ApiModelProperty(name = "总金额") private BigDecimal amount; @ApiModelProperty(name = "其它优惠") diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageDTO.java new file mode 100644 index 000000000..84803e966 --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageDTO.java @@ -0,0 +1,43 @@ +package com.ruoyi.xkt.dto.storeSale; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.ruoyi.xkt.dto.BasePageDTO; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@EqualsAndHashCode(callSuper = true) +@ApiModel("档口销售出库单分页查询入参") +@Data +public class StoreSalePageDTO extends BasePageDTO { + + @NotNull(message = "档口ID不能为空") + @ApiModelProperty(name = "档口ID") + private Long storeId; + @ApiModelProperty(name = "商品货号") + private String prodArtNum; + @ApiModelProperty(name = "客户名称") + private String cusName; + @ApiModelProperty(name = "销售类型", notes = "普通销售、销售退货、普通销售/销售退货 GENERAL_SALE SALE_REFUND SALE_AND_REFUND") + private String saleType; + @ApiModelProperty(name = "结款状态") + private String paymentStatus; + @ApiModelProperty(name = "支付方式") + private String payWay; + @ApiModelProperty(name = "销售开始时间") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTimeStart; + @ApiModelProperty(name = "销售结束时间") + @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8") + private Date createTimeEnd; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageResDTO.java b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageResDTO.java new file mode 100644 index 000000000..6a7d11537 --- /dev/null +++ b/xkt/src/main/java/com/ruoyi/xkt/dto/storeSale/StoreSalePageResDTO.java @@ -0,0 +1,46 @@ +package com.ruoyi.xkt.dto.storeSale; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.math.BigDecimal; +import java.util.Date; + +/** + * @author liujiang + * @version v1.0 + * @date 2025/3/27 15:12 + */ +@ApiModel("档口销售出库列表数据") +@Data +public class StoreSalePageResDTO { + + @ApiModelProperty(name = "档口销售ID") + private Long storeSaleId; + @ApiModelProperty(name = "档口ID") + private Long storeId; + @ApiModelProperty("code") + private String code; + @ApiModelProperty(name = "客户名称") + private String cusName; + @ApiModelProperty(name = "销售时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private Date createTime; + @ApiModelProperty(name = "销售类型(普通销售、销售退货、普通销售/销售退货)GENERAL_SALE SALE_REFUND SALE_AND_REFUND") + private String saleType; + @ApiModelProperty(name = "销售数量") + private Integer quantity; + @ApiModelProperty(name = "总金额") + private BigDecimal amount; + @ApiModelProperty(name = "结款状态") + private String paymentStatus; + @ApiModelProperty(name = "支付方式") + private String payWay; + @ApiModelProperty(name = "操作人") + private String operatorName; + @ApiModelProperty(name = "备注") + private String remark; + +} diff --git a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreSaleMapper.java b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreSaleMapper.java index 374b3bbf5..61ef13765 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreSaleMapper.java +++ b/xkt/src/main/java/com/ruoyi/xkt/mapper/StoreSaleMapper.java @@ -2,6 +2,8 @@ package com.ruoyi.xkt.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ruoyi.xkt.domain.StoreSale; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageResDTO; import java.util.List; @@ -59,4 +61,7 @@ public interface StoreSaleMapper extends BaseMapper { * @return 结果 */ public int deleteStoreSaleByStoreSaleIds(Long[] storeSaleIds); + + List selectPage(StoreSalePageDTO pageDTO); + } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreSaleService.java b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreSaleService.java index 79d21542a..242237a21 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/IStoreSaleService.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/IStoreSaleService.java @@ -1,8 +1,11 @@ package com.ruoyi.xkt.service; +import com.ruoyi.common.core.page.Page; import com.ruoyi.xkt.domain.StoreSale; import com.ruoyi.xkt.dto.storeCustomer.StoreCusGeneralSaleDTO; import com.ruoyi.xkt.dto.storeSale.StoreSaleDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageResDTO; import java.util.List; @@ -40,10 +43,10 @@ public interface IStoreSaleService { /** * 修改档口销售出库 * - * @param storeSale 档口销售出库 + * @param storeSaleDTO 档口销售出库 * @return 结果 */ - public int updateStoreSale(StoreSale storeSale); + public int updateStoreSale(StoreSaleDTO storeSaleDTO); /** * 批量删除档口销售出库 @@ -70,4 +73,11 @@ public interface IStoreSaleService { */ StoreCusGeneralSaleDTO getCusGeneralSale(Integer days, Long storeId, Long storeCusId); + /** + * 分页查询销售出库列表 + * @param pageDTO 入参 + * @return Page + */ + Page page(StoreSalePageDTO pageDTO); + } diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java index 2ae058b92..ab08c0be6 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreProductServiceImpl.java @@ -132,7 +132,7 @@ public class StoreProductServiceImpl implements IStoreProductService { List prodList = storeProdColorMapper.selectStoreProdColorPage(pageDTO); // 如果查询结果为空,则直接返回空列表 if (CollectionUtils.isEmpty(prodList)) { - return Page.empty(); + return Page.empty(pageDTO.getPageSize(), pageDTO.getPageNum()); } // 提取查询结果中的商店产品ID列表 List storeProdIdList = prodList.stream().map(StoreProdPageResDTO::getStoreProdId).collect(Collectors.toList()); diff --git a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java index dd01b1552..242af1c81 100644 --- a/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java +++ b/xkt/src/main/java/com/ruoyi/xkt/service/impl/StoreSaleServiceImpl.java @@ -2,7 +2,10 @@ package com.ruoyi.xkt.service.impl; import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.github.pagehelper.PageHelper; +import com.github.pagehelper.PageInfo; import com.ruoyi.common.constant.HttpStatus; +import com.ruoyi.common.core.page.Page; import com.ruoyi.common.exception.ServiceException; import com.ruoyi.common.utils.DateUtils; import com.ruoyi.xkt.domain.StoreCustomer; @@ -10,6 +13,8 @@ import com.ruoyi.xkt.domain.StoreSale; import com.ruoyi.xkt.domain.StoreSaleDetail; import com.ruoyi.xkt.dto.storeCustomer.StoreCusGeneralSaleDTO; import com.ruoyi.xkt.dto.storeSale.StoreSaleDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageDTO; +import com.ruoyi.xkt.dto.storeSale.StoreSalePageResDTO; import com.ruoyi.xkt.mapper.StoreCustomerMapper; import com.ruoyi.xkt.mapper.StoreSaleDetailMapper; import com.ruoyi.xkt.mapper.StoreSaleMapper; @@ -48,8 +53,8 @@ public class StoreSaleServiceImpl implements IStoreSaleService { /** * 获取当前档口客户的销售业绩 * - * @param days 查询时间diff - * @param storeId 档口ID + * @param days 查询时间diff + * @param storeId 档口ID * @param storeCusId 档口客户ID * @return StoreCusGeneralSaleDTO */ @@ -85,6 +90,20 @@ public class StoreSaleServiceImpl implements IStoreSaleService { return generalSaleDTO.setSaleAmount(saleAmount).setSaleCount(saleCount).setDebtAmount(debtAmount); } + /** + * 销售出库列表查询 + * + * @param pageDTO 入参 + * @return Page + */ + @Override + @Transactional(readOnly = true) + public Page page(StoreSalePageDTO pageDTO) { + PageHelper.startPage(pageDTO.getPageNum(), pageDTO.getPageSize()); + List list = storeSaleMapper.selectPage(pageDTO); + return Page.convert(new PageInfo<>(list)); + } + /** * 新增档口销售出库 * @@ -107,54 +126,6 @@ public class StoreSaleServiceImpl implements IStoreSaleService { } - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - /** * 查询档口销售出库 * @@ -181,12 +152,19 @@ public class StoreSaleServiceImpl implements IStoreSaleService { /** * 修改档口销售出库 * - * @param storeSale 档口销售出库 + * @param storeSaleDTO 档口销售出库 * @return 结果 */ @Override @Transactional - public int updateStoreSale(StoreSale storeSale) { + public int updateStoreSale(StoreSaleDTO storeSaleDTO) { + StoreSale storeSale = Optional.ofNullable(this.storeSaleMapper.selectOne(new LambdaQueryWrapper() + .eq(StoreSale::getId, storeSaleDTO.getStoreSaleId()).eq(StoreSale::getDelFlag, "0"))) + .orElseThrow(() -> new ServiceException("档口销售出库订单不存在!", HttpStatus.ERROR)); + // 若为返单,则将之前数据记录到返单记录表中 + if (Objects.equals(storeSaleDTO.getRefund(), Boolean.TRUE)) { + + } storeSale.setUpdateTime(DateUtils.getNowDate()); return storeSaleMapper.updateStoreSale(storeSale); } diff --git a/xkt/src/main/resources/mapper/StoreSaleMapper.xml b/xkt/src/main/resources/mapper/StoreSaleMapper.xml index fe0ec5fa7..3f97e30d7 100644 --- a/xkt/src/main/resources/mapper/StoreSaleMapper.xml +++ b/xkt/src/main/resources/mapper/StoreSaleMapper.xml @@ -117,4 +117,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{id} + + + + \ No newline at end of file