Przeglądaj źródła

订单审核及查看审核记录基本完成;撤销功能基本完成;修复字段命名导致的序列化问题

Huanyi 2 tygodni temu
rodzic
commit
ff5a733d5f
22 zmienionych plików z 177 dodań i 81 usunięć
  1. 14 3
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpColorKindController.java
  2. 5 5
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpModelController.java
  3. 8 0
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpOrderController.java
  4. 7 7
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpPackController.java
  5. 31 31
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpClient.java
  6. 3 3
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpColorKind.java
  7. 4 4
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpModel.java
  8. 5 5
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrder.java
  9. 6 6
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrderAudit.java
  10. 2 2
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrderDetail.java
  11. 3 3
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpPack.java
  12. 1 1
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/vo/ErpOrderAuditVo.java
  13. 5 2
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/enums/ErpOrderStatus.java
  14. 1 0
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/mapper/ErpOrderAuditMapper.java
  15. 9 1
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpColorKindService.java
  16. 5 0
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpOrderService.java
  17. 9 1
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpPackService.java
  18. 2 2
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpClientServiceImpl.java
  19. 19 0
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpColorKindServiceImpl.java
  20. 1 1
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpModelServiceImpl.java
  21. 18 4
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpOrderServiceImpl.java
  22. 19 0
      ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpPackServiceImpl.java

+ 14 - 3
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpColorKindController.java

@@ -2,6 +2,9 @@ package org.dromara.erp.controller;
 
 import lombok.RequiredArgsConstructor;
 import org.dromara.common.core.domain.R;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.erp.domain.query.ErpColorKindQuery;
 import org.dromara.erp.domain.vo.ErpColorKindVo;
 import org.dromara.erp.service.IErpColorKindService;
 import org.springframework.validation.annotation.Validated;
@@ -25,10 +28,18 @@ public class ErpColorKindController {
     private final IErpColorKindService erpColorKindService;
 
     /**
-     * 查询所有颜色种类列表
+     * 分页查询颜色种类列表
      */
-    @GetMapping("/all")
-    public R<List<ErpColorKindVo>> all() {
+    @GetMapping("/page")
+    public TableDataInfo<ErpColorKindVo> page(ErpColorKindQuery query, PageQuery pageQuery) {
+        return erpColorKindService.queryPageList(query, pageQuery);
+    }
+
+    /**
+     * 查询颜色种类列表(不分页)
+     */
+    @GetMapping("/list")
+    public R<List<ErpColorKindVo>> list() {
         return R.ok(erpColorKindService.queryList());
     }
 

+ 5 - 5
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpModelController.java

@@ -30,16 +30,16 @@ public class ErpModelController {
     /**
      * 分页查询型材列表
      */
-    @GetMapping("/list")
-    public TableDataInfo<ErpModelVo> list(ErpModelQuery query, PageQuery pageQuery) {
+    @GetMapping("/page")
+    public TableDataInfo<ErpModelVo> page(ErpModelQuery query, PageQuery pageQuery) {
         return erpModelService.queryPageList(query, pageQuery);
     }
 
     /**
-     * 查询型号列表 (全量或前N条)
+     * 查询型材列表(不分页)
      */
-    @GetMapping("/all")
-    public R<List<ErpModelVo>> all(ErpModelQuery query) {
+    @GetMapping("/list")
+    public R<List<ErpModelVo>> list(ErpModelQuery query) {
         return R.ok(erpModelService.queryList(query));
     }
 

+ 8 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpOrderController.java

@@ -63,4 +63,12 @@ public class ErpOrderController {
     public R<Void> audit(@RequestBody org.dromara.erp.domain.ErpOrderAudit audit) {
         return erpOrderService.auditOrder(audit) ? R.ok() : R.fail();
     }
+
+    /**
+     * 撤销订单(单纯修改订单状态为已撤销)
+     */
+    @PostMapping("/cancel/{rowId}")
+    public R<Void> cancel(@PathVariable("rowId") String rowId) {
+        return erpOrderService.cancelOrder(rowId) ? R.ok() : R.fail();
+    }
 }

+ 7 - 7
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/controller/ErpPackController.java

@@ -1,7 +1,9 @@
 package org.dromara.erp.controller;
 
 import lombok.RequiredArgsConstructor;
-import org.dromara.common.core.domain.R;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.erp.domain.query.ErpPackQuery;
 import org.dromara.erp.domain.vo.ErpPackVo;
 import org.dromara.erp.service.IErpPackService;
 import org.springframework.validation.annotation.Validated;
@@ -9,8 +11,6 @@ import org.springframework.web.bind.annotation.GetMapping;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
-import java.util.List;
-
 /**
  * ERP 包装档案控制器
  *
@@ -25,11 +25,11 @@ public class ErpPackController {
     private final IErpPackService erpPackService;
 
     /**
-     * 查询所有包装档案列表
+     * 分页查询包装档案列表
      */
-    @GetMapping("/all")
-    public R<List<ErpPackVo>> all() {
-        return R.ok(erpPackService.queryList());
+    @GetMapping("/page")
+    public TableDataInfo<ErpPackVo> page(ErpPackQuery query, PageQuery pageQuery) {
+        return erpPackService.queryPageList(query, pageQuery);
     }
 
 }

+ 31 - 31
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpClient.java

@@ -28,133 +28,133 @@ public class ErpClient implements Serializable {
     /**
      * 序号(主键)
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 代码
      */
-    @TableField("Num")
+    @TableField("FNum")
     private String num;
 
     /**
      * 名称
      */
-    @TableField("Name")
+    @TableField("FName")
     private String name;
 
     /**
      * 分类(国内,国外)
      */
-    @TableField("Class")
+    @TableField("FClass")
     private String clientClass;
 
     /**
      * 地区
      */
-    @TableField("AreaID")
+    @TableField("FAreaID")
     private String areaId;
 
     /**
      * 销售部门
      */
-    @TableField("SaleDept")
+    @TableField("FSaleDept")
     private String saleDept;
 
     /**
      * 负责人
      */
-    @TableField("DutyMan")
+    @TableField("FDutyMan")
     private String dutyMan;
 
     /**
      * 业务员
      */
-    @TableField("SaleMan")
+    @TableField("FSaleMan")
     private String saleMan;
 
     /**
      * 跟单员
      */
-    @TableField("TraceMan")
+    @TableField("FTraceMan")
     private String traceMan;
 
     /**
      * 客户经理
      */
-    @TableField("ManagerMan")
+    @TableField("FManagerMan")
     private String managerMan;
 
     /**
      * 信用额度
      */
-    @TableField("CreditAmt")
+    @TableField("FCreditAmt")
     private BigDecimal creditAmt;
 
     /**
      * 合同期限
      */
-    @TableField("ContractLimit")
+    @TableField("FContractLimit")
     private String contractLimit;
 
     /**
      * 付款方式
      */
-    @TableField("PayMode")
+    @TableField("FPayMode")
     private String payMode;
 
     /**
      * 计提日期
      */
-    @TableField("DeductDate")
+    @TableField("FDeductDate")
     private Date deductDate;
 
     /**
      * 联系人
      */
-    @TableField("ContactMan")
+    @TableField("FContactMan")
     private String contactMan;
 
     /**
      * 地址
      */
-    @TableField("ContactAddr")
+    @TableField("FContactAddr")
     private String contactAddr;
 
     /**
      * 电话
      */
-    @TableField("ContactTel")
+    @TableField("FContactTel")
     private String contactTel;
 
     /**
      * 手机
      */
-    @TableField("ContactMobile")
+    @TableField("FContactMobile")
     private String contactMobile;
 
     /**
      * 传真
      */
-    @TableField("ContactFax")
+    @TableField("FContactFax")
     private String contactFax;
 
     /**
      * 邮编
      */
-    @TableField("ContactPost")
+    @TableField("FContactPost")
     private String contactPost;
 
     /**
      * 网址
      */
-    @TableField("ContactNet")
+    @TableField("FContactNet")
     private String contactNet;
 
     /**
      * 邮箱
      */
-    @TableField("ContactEmail")
+    @TableField("FContactEmail")
     private String contactEmail;
 
     /**
@@ -238,55 +238,55 @@ public class ErpClient implements Serializable {
     /**
      * 客户简称
      */
-    @TableField("ShortName")
+    @TableField("FShortName")
     private String shortName;
 
     /**
      * 经销商ID
      */
-    @TableField("DealerID")
+    @TableField("FDealerID")
     private String dealerId;
 
     /**
      * 是否经销商
      */
-    @TableField("IsDealer")
+    @TableField("FIsDealer")
     private Integer isDealer;
 
     /**
      * 铝价品种
      */
-    @TableField("AluVariety")
+    @TableField("FAluVariety")
     private String aluVariety;
 
     /**
      * 获价类型
      */
-    @TableField("AluGainKind")
+    @TableField("FAluGainKind")
     private String aluGainKind;
 
     /**
      * 标签名称
      */
-    @TableField("ClientLabel")
+    @TableField("FClientLabel")
     private String clientLabel;
 
     /**
      * 信用等级
      */
-    @TableField("CreditRating")
+    @TableField("FCreditRating")
     private String creditRating;
 
     /**
      * 拼音码
      */
-    @TableField("PYCode")
+    @TableField("FPYCode")
     private String pyCode;
 
     /**
      * 首单日期
      */
-    @TableField("FirstDate")
+    @TableField("FFirstDate")
     private Date firstDate;
 
 }

+ 3 - 3
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpColorKind.java

@@ -27,19 +27,19 @@ public class ErpColorKind implements Serializable {
     /**
      * 序号(主键)
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 代码
      */
-    @TableField("Num")
+    @TableField("FNum")
     private String num;
 
     /**
      * 名称
      */
-    @TableField("Name")
+    @TableField("FName")
     private String name;
 
     /**

+ 4 - 4
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpModel.java

@@ -28,19 +28,19 @@ public class ErpModel implements Serializable {
     /**
      * 记录号(主键)
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 代码 (型号)
      */
-    @TableField("Num")
+    @TableField("FNum")
     private String num;
 
     /**
      * 名称
      */
-    @TableField("Name")
+    @TableField("FName")
     private String name;
 
     /**
@@ -94,7 +94,7 @@ public class ErpModel implements Serializable {
     /**
      * 备注
      */
-    @TableField("Note")
+    @TableField("FNote")
     private String note;
 
     /**

+ 5 - 5
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrder.java

@@ -27,31 +27,31 @@ public class ErpOrder implements Serializable {
     /**
      * 订单主键
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 订单单号
      */
-    @TableField("Code")
+    @TableField("FCode")
     private String code;
 
     /**
      * 下单人
      */
-    @TableField("Placer")
+    @TableField("FPlacer")
     private Long placer;
 
     /**
      * 下单时间
      */
-    @TableField("PlaceTime")
+    @TableField("FPlaceTime")
     private Date placeTime;
 
     /**
      * 订单状态 (0-待审核)
      */
-    @TableField("Status")
+    @TableField("FStatus")
     private Integer status;
 
     /**

+ 6 - 6
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrderAudit.java

@@ -25,40 +25,40 @@ public class ErpOrderAudit implements Serializable {
     /**
      * 审核记录主键
      */
-    @TableId(value = "RowID")
+    @TableId(value = "FRowID")
     @JsonProperty("rowId")
     private String rowId;
 
     /**
      * 订单ID
      */
-    @TableField("OrderID")
+    @TableField("FOrderID")
     @JsonProperty("orderId")
     private String orderId;
 
     /**
      * 审核人
      */
-    @TableField("Auditor")
+    @TableField("FAuditor")
     private Long auditor;
 
     /**
      * 审核时间
      */
-    @TableField("AuditTime")
+    @TableField("FAuditTime")
     private Date auditTime;
 
     /**
      * 审核结果(1-通过, 2-驳回)
      */
-    @TableField("AuditResult")
+    @TableField("FAuditResult")
     @JsonProperty("auditResult")
     private Integer auditResult;
 
     /**
      * 驳回原因
      */
-    @TableField("RejectReason")
+    @TableField("FRejectReason")
     private String rejectReason;
 
     /**

+ 2 - 2
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpOrderDetail.java

@@ -29,13 +29,13 @@ public class ErpOrderDetail implements Serializable {
     /**
      * 记录主键
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 主订单ID
      */
-    @TableField("OrderID")
+    @TableField("FOrderID")
     private String orderId;
 
     /**

+ 3 - 3
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/ErpPack.java

@@ -27,19 +27,19 @@ public class ErpPack implements Serializable {
     /**
      * 序号(主键)
      */
-    @TableId("RowID")
+    @TableId("FRowID")
     private String rowId;
 
     /**
      * 代码
      */
-    @TableField("Num")
+    @TableField("FNum")
     private String num;
 
     /**
      * 名称
      */
-    @TableField("Name")
+    @TableField("FName")
     private String name;
 
     /**

+ 1 - 1
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/domain/vo/ErpOrderAuditVo.java

@@ -34,12 +34,12 @@ public class ErpOrderAuditVo implements Serializable {
     /**
      * 审核人
      */
-    @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "auditor")
     private Long auditor;
 
     /**
      * 审核人名称
      */
+    @Translation(type = TransConstant.USER_ID_TO_NICKNAME, mapper = "auditor")
     private String auditorName;
 
     /**

+ 5 - 2
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/enums/ErpOrderStatus.java

@@ -11,9 +11,12 @@ import lombok.Getter;
 @AllArgsConstructor
 public enum ErpOrderStatus {
 
+    CANCELLED(-1, "已撤销"),
     WAIT_AUDIT(0, "待审核"),
-    AUDITED(1, "已审核"),
-    REJECTED(2, "已驳回");
+    REJECTED(1, "已驳回"),
+    WAIT_SIGN(2, "待签批"),
+    PRODUCING(3, "生产中"),
+    FINISHED(4, "已完成");
 
     private final Integer code;
     private final String info;

+ 1 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/mapper/ErpOrderAuditMapper.java

@@ -8,5 +8,6 @@ import org.dromara.erp.domain.vo.ErpOrderAuditVo;
  * 订单审核记录 Mapper 接口
  * @Author: Antigravity
  */
+@com.baomidou.dynamic.datasource.annotation.DS("htsail_cs")
 public interface ErpOrderAuditMapper extends BaseMapperPlus<ErpOrderAudit, ErpOrderAuditVo> {
 }

+ 9 - 1
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpColorKindService.java

@@ -1,5 +1,8 @@
 package org.dromara.erp.service;
 
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.erp.domain.query.ErpColorKindQuery;
 import org.dromara.erp.domain.vo.ErpColorKindVo;
 
 import java.util.List;
@@ -12,7 +15,12 @@ import java.util.List;
 public interface IErpColorKindService {
 
     /**
-     * 查询所有颜色种类
+     * 分页查询颜色种类列表
+     */
+    TableDataInfo<ErpColorKindVo> queryPageList(ErpColorKindQuery query, PageQuery pageQuery);
+
+    /**
+     * 查询所有颜色种类(不分页)
      */
     List<ErpColorKindVo> queryList();
 

+ 5 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpOrderService.java

@@ -37,4 +37,9 @@ public interface IErpOrderService {
      * 审核订单
      */
     Boolean auditOrder(org.dromara.erp.domain.ErpOrderAudit audit);
+
+    /**
+     * 撤销订单
+     */
+    Boolean cancelOrder(String rowId);
 }

+ 9 - 1
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/IErpPackService.java

@@ -1,5 +1,8 @@
 package org.dromara.erp.service;
 
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.erp.domain.query.ErpPackQuery;
 import org.dromara.erp.domain.vo.ErpPackVo;
 
 import java.util.List;
@@ -12,7 +15,12 @@ import java.util.List;
 public interface IErpPackService {
 
     /**
-     * 查询所有包装档案
+     * 分页查询包装档案列表
+     */
+    TableDataInfo<ErpPackVo> queryPageList(ErpPackQuery query, PageQuery pageQuery);
+
+    /**
+     * 查询所有包装档案(不分页)
      */
     List<ErpPackVo> queryList();
 

+ 2 - 2
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpClientServiceImpl.java

@@ -39,7 +39,7 @@ public class ErpClientServiceImpl implements IErpClientService, CommonErpClientS
             return Map.of();
         }
         List<ErpClient> clients = baseMapper.selectList(Wrappers.lambdaQuery(ErpClient.class)
-            .select(ErpClient::getRowId, ErpClient::getName, ErpClient::getClass, ErpClient::getEnterDate)
+            .select(ErpClient::getRowId, ErpClient::getName, ErpClient::getClientClass, ErpClient::getEnterDate)
             .in(ErpClient::getRowId, authClientRowIds));
         return clients.stream().collect(Collectors.toMap(ErpClient::getRowId, client -> {
             CommonErpClientVo vo = new CommonErpClientVo();
@@ -69,7 +69,7 @@ public class ErpClientServiceImpl implements IErpClientService, CommonErpClientS
         lqw.like(StringUtils.isNotBlank(query.getNum()), ErpClient::getNum, query.getNum());
         lqw.like(StringUtils.isNotBlank(query.getShortName()), ErpClient::getShortName, query.getShortName());
         lqw.like(StringUtils.isNotBlank(query.getPyCode()), ErpClient::getPyCode, query.getPyCode());
-        lqw.eq(StringUtils.isNotBlank(query.getClientClass()), ErpClient::getClass, query.getClientClass());
+        lqw.eq(StringUtils.isNotBlank(query.getClientClass()), ErpClient::getClientClass, query.getClientClass());
         lqw.eq(query.getStopUse() != null, ErpClient::getStopUse, query.getStopUse());
         lqw.orderByAsc(ErpClient::getNum);
         return lqw;

+ 19 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpColorKindServiceImpl.java

@@ -1,8 +1,13 @@
 package org.dromara.erp.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.erp.domain.ErpColorKind;
+import org.dromara.erp.domain.query.ErpColorKindQuery;
 import org.dromara.erp.domain.vo.ErpColorKindVo;
 import org.dromara.erp.mapper.ErpColorKindMapper;
 import org.dromara.erp.service.IErpColorKindService;
@@ -21,6 +26,20 @@ public class ErpColorKindServiceImpl implements IErpColorKindService {
 
     private final ErpColorKindMapper baseMapper;
 
+    @Override
+    public TableDataInfo<ErpColorKindVo> queryPageList(ErpColorKindQuery query, PageQuery pageQuery) {
+        LambdaQueryWrapper<ErpColorKind> lqw = buildQueryWrapper(query);
+        IPage<ErpColorKindVo> page = baseMapper.selectVoPage(pageQuery.build(), lqw);
+        return TableDataInfo.build(page);
+    }
+
+    private LambdaQueryWrapper<ErpColorKind> buildQueryWrapper(ErpColorKindQuery query) {
+        LambdaQueryWrapper<ErpColorKind> lqw = Wrappers.lambdaQuery();
+        lqw.eq(ErpColorKind::getStopUse, 0);
+        lqw.orderByAsc(ErpColorKind::getNum);
+        return lqw;
+    }
+
     @Override
     public List<ErpColorKindVo> queryList() {
         return baseMapper.selectVoList(Wrappers.lambdaQuery(ErpColorKind.class)

+ 1 - 1
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpModelServiceImpl.java

@@ -38,7 +38,7 @@ public class ErpModelServiceImpl implements IErpModelService {
     public List<ErpModelVo> queryList(ErpModelQuery query) {
         LambdaQueryWrapper<ErpModel> lqw = buildQueryWrapper(query);
         if (ObjectUtil.isEmpty(query.getNum()) && ObjectUtil.isEmpty(query.getName())) {
-            lqw.last("OFFSET 0 ROWS ETCH NEXT 100 ROWS ONLY");
+            lqw.last("OFFSET 0 ROWS FETCH NEXT 100 ROWS ONLY");
         }
         return baseMapper.selectVoList(lqw);
     }

+ 18 - 4
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpOrderServiceImpl.java

@@ -9,6 +9,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.dromara.common.core.utils.MapstructUtils;
 import org.dromara.common.mybatis.core.page.PageQuery;
 import org.dromara.common.mybatis.core.page.TableDataInfo;
+import org.dromara.common.mybatis.utils.IdGeneratorUtil;
 import org.dromara.erp.domain.ErpOrder;
 import org.dromara.erp.domain.query.ErpOrderQuery;
 import org.dromara.erp.domain.vo.ErpOrderVo;
@@ -101,7 +102,7 @@ public class ErpOrderServiceImpl implements IErpOrderService {
             entity.setRowId(IdUtil.fastUUID());
         }
         if (ObjectUtil.isEmpty(entity.getCode())) {
-            entity.setCode(IdUtil.fastSimpleUUID());
+            entity.setCode(IdGeneratorUtil.nextIdWithPrefix("ORD"));
         }
         if (entity.getPlacer() == null) {
             try {
@@ -151,9 +152,9 @@ public class ErpOrderServiceImpl implements IErpOrderService {
         }
         
         // 根据审核结果设置订单状态
-        if (ErpAuditResult.PASS.getCode().equals(audit.getAuditResult())) { // 通过
-            order.setStatus(ErpOrderStatus.AUDITED.getCode());
-        } else if (ErpAuditResult.REJECT.getCode().equals(audit.getAuditResult())) { // 驳回
+        if (ErpAuditResult.PASS.getCode().equals(audit.getAuditResult())) { // 通过 → 待签批
+            order.setStatus(ErpOrderStatus.WAIT_SIGN.getCode());
+        } else if (ErpAuditResult.REJECT.getCode().equals(audit.getAuditResult())) { // 驳回 → 已驳回
             order.setStatus(ErpOrderStatus.REJECTED.getCode());
         }
         baseMapper.updateById(order);
@@ -170,4 +171,17 @@ public class ErpOrderServiceImpl implements IErpOrderService {
         }
         return erpOrderAuditMapper.insert(audit) > 0;
     }
+
+    @Override
+    public Boolean cancelOrder(String rowId) {
+        ErpOrder order = baseMapper.selectById(rowId);
+        if (order == null) {
+            throw new org.dromara.common.core.exception.ServiceException("订单不存在");
+        }
+        if (!ErpOrderStatus.WAIT_AUDIT.getCode().equals(order.getStatus())) {
+            throw new org.dromara.common.core.exception.ServiceException("仅待审核状态的订单可以撤销");
+        }
+        order.setStatus(ErpOrderStatus.CANCELLED.getCode());
+        return baseMapper.updateById(order) > 0;
+    }
 }

+ 19 - 0
ruoyi-modules/yingpaipay-erp/src/main/java/org/dromara/erp/service/impl/ErpPackServiceImpl.java

@@ -1,8 +1,13 @@
 package org.dromara.erp.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.RequiredArgsConstructor;
+import org.dromara.common.mybatis.core.page.PageQuery;
+import org.dromara.common.mybatis.core.page.TableDataInfo;
 import org.dromara.erp.domain.ErpPack;
+import org.dromara.erp.domain.query.ErpPackQuery;
 import org.dromara.erp.domain.vo.ErpPackVo;
 import org.dromara.erp.mapper.ErpPackMapper;
 import org.dromara.erp.service.IErpPackService;
@@ -21,6 +26,20 @@ public class ErpPackServiceImpl implements IErpPackService {
 
     private final ErpPackMapper baseMapper;
 
+    @Override
+    public TableDataInfo<ErpPackVo> queryPageList(ErpPackQuery query, PageQuery pageQuery) {
+        LambdaQueryWrapper<ErpPack> lqw = buildQueryWrapper(query);
+        IPage<ErpPackVo> page = baseMapper.selectVoPage(pageQuery.build(), lqw);
+        return TableDataInfo.build(page);
+    }
+
+    private LambdaQueryWrapper<ErpPack> buildQueryWrapper(ErpPackQuery query) {
+        LambdaQueryWrapper<ErpPack> lqw = Wrappers.lambdaQuery();
+        lqw.eq(ErpPack::getStopUse, 0);
+        lqw.orderByAsc(ErpPack::getNum);
+        return lqw;
+    }
+
     @Override
     public List<ErpPackVo> queryList() {
         return baseMapper.selectVoList(Wrappers.lambdaQuery(ErpPack.class)