From bba37340718e937ed276d422cb82cd71d52b7614 Mon Sep 17 00:00:00 2001 From: c Date: Fri, 3 Apr 2026 10:22:50 +0800 Subject: [PATCH] =?UTF-8?q?fix:=200.1.1=20=E4=BF=AE=E6=AD=A3=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E5=A6=82=E4=B8=8B=EF=BC=9A=201.=20=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6=E6=B7=BB=E5=8A=A0=E4=BA=86=E7=94=9F=E4=BA=A7?= =?UTF-8?q?=E7=8E=AF=E5=A2=83=E9=85=8D=E7=BD=AE=E6=96=87=E4=BB=B6=EF=BC=8C?= =?UTF-8?q?=E6=A0=B9=E6=8D=AE=E7=8E=AF=E5=A2=83=E5=88=86=E5=88=AB=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E6=95=B0=E6=8D=AE=E5=BA=93=E9=85=8D=E7=BD=AE=EF=BC=8C?= =?UTF-8?q?Swagger=E9=85=8D=E7=BD=AE=E4=BB=A5=E5=8F=8ACORS=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=E3=80=82=202.=20=E5=81=9A=E4=BA=86=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E5=A1=AB=E5=85=85=E5=9F=BA=E7=A1=80=20Entity=20=E9=85=8D?= =?UTF-8?q?=E7=BD=AE=EF=BC=8C=E4=B8=94=E5=88=86=E5=88=AB=E5=AF=B9=E5=BA=94?= =?UTF-8?q?=E4=BA=86=E6=96=B0=E8=80=81=E9=A1=B9=E7=9B=AE=E7=9A=84=E5=9F=BA?= =?UTF-8?q?=E7=A1=80=20Entity=EF=BC=8C=E8=87=AA=E5=8A=A8=E5=A1=AB=E5=85=85?= =?UTF-8?q?=E5=9F=BA=E6=9C=AC=E7=9A=84=E5=88=9B=E5=BB=BA=E4=BF=A1=E6=81=AF?= =?UTF-8?q?=E5=92=8C=E6=9B=B4=E6=96=B0=E4=BF=A1=E6=81=AF=E3=80=82=203.=20?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E4=BA=86=E4=B8=80=E4=B8=8B=E5=85=A5=E5=BA=93?= =?UTF-8?q?=E7=9A=84=E7=8A=B6=E6=80=81=E9=97=AE=E9=A2=98=E5=92=8C=E5=B1=95?= =?UTF-8?q?=E7=A4=BA=E9=97=AE=E9=A2=98=E3=80=82=204.=20=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E4=BA=86=E7=BA=BF=E4=B8=8A=E6=95=B0=E6=8D=AE=E5=BA=93=E8=A1=A8?= =?UTF-8?q?=E5=90=8D=E7=9A=84=E5=A4=A7=E5=B0=8F=E5=86=99=E5=92=8C=E9=A1=B9?= =?UTF-8?q?=E7=9B=AE=E4=B8=8D=E7=AC=A6=E5=90=88=E7=9A=84=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E3=80=82=205.=20=E4=BC=98=E5=8C=96=E4=BA=86=E7=89=A9=E6=96=99?= =?UTF-8?q?=E6=80=BB=E8=A1=A8=E7=9A=84=20DTO=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- build.gradle.kts | 4 +- .../com/niuan/erp/common/base/BaseEntity.java | 44 +++++++++++++ .../common/base/OldBaseCustomerEntity.java | 19 ++++++ .../niuan/erp/common/base/OldBaseEntity.java | 46 +++++++++++++ .../erp/common/config/SecurityConfig.java | 16 ++++- .../common/handler/AutoFillEntityHandler.java | 64 +++++++++++++++++++ .../erp/module/common/entity/Document.java | 32 ++-------- .../common/entity/DocumentMaterial.java | 29 ++------- .../erp/module/production/entity/Bom.java | 32 ++-------- .../erp/module/production/entity/BomItem.java | 2 + .../production/entity/ProductionPlan.java | 32 ++-------- .../FinishedProductReceiptServiceImpl.java | 8 +-- .../purchase/entity/PurchaseOrderItem.java | 29 ++------- .../module/purchase/entity/PurchasePlan.java | 26 ++------ .../purchase/entity/PurchasePlanItem.java | 4 +- .../service/impl/PurchasePlanServiceImpl.java | 2 - .../niuan/erp/module/sale/entity/Device.java | 27 +------- .../erp/module/sale/entity/RepairRecord.java | 29 ++------- .../erp/module/sale/entity/SaleOrderItem.java | 29 ++------- .../erp/module/sys/entity/KeyAccount.java | 35 ++-------- .../niuan/erp/module/sys/entity/Store.java | 35 ++-------- .../erp/module/sys/entity/SysChannel.java | 35 ++-------- .../erp/module/sys/entity/SysPermission.java | 53 ++------------- .../erp/module/sys/entity/SysRecord.java | 30 +-------- .../niuan/erp/module/sys/entity/SysRole.java | 38 ++--------- .../erp/module/sys/entity/SysRoleChannel.java | 2 +- .../niuan/erp/module/sys/entity/SysUser.java | 40 ++---------- .../niuan/erp/module/sys/entity/UserRole.java | 2 +- .../niuan/erp/module/sys/entity/Vendor.java | 33 +--------- .../erp/module/sys/mapper/SysUserMapper.java | 4 +- .../erp/module/sys/mapper/UserRoleMapper.java | 2 +- .../service/impl/KeyAccountServiceImpl.java | 5 -- .../controller/WarehouseItemController.java | 11 ++-- .../dto/WarehouseItemAddAndUpdateDto.java | 40 ++++++++++++ .../controller/dto/WarehouseItemDto.java | 44 +++++++------ .../dto/WarehouseItemSearchParams.java | 9 +++ .../converter/WarehouseItemConverter.java | 2 + .../warehouse/entity/InventoryCountItem.java | 29 ++------- .../erp/module/warehouse/entity/Stock.java | 29 ++------- .../module/warehouse/entity/Warehouse.java | 32 ++-------- .../warehouse/entity/WarehouseItem.java | 32 ++-------- .../service/WarehouseItemService.java | 5 +- .../impl/WarehouseItemServiceImpl.java | 12 +--- src/main/resources/application-dev.yml | 4 ++ src/main/resources/application-prod.yml | 17 +++++ src/main/resources/application.yml | 2 +- .../resources/i18n/messages_en_US.properties | 1 + .../resources/i18n/messages_zh_CN.properties | 1 + .../resources/mapper/sys/SysChannelMapper.xml | 10 +-- .../mapper/sys/SysPermissionMapper.xml | 4 +- .../resources/mapper/sys/SysRoleMapper.xml | 4 +- src/main/resources/sql/dev/id.sql | 2 +- 52 files changed, 412 insertions(+), 666 deletions(-) create mode 100644 src/main/java/com/niuan/erp/common/base/BaseEntity.java create mode 100644 src/main/java/com/niuan/erp/common/base/OldBaseCustomerEntity.java create mode 100644 src/main/java/com/niuan/erp/common/base/OldBaseEntity.java create mode 100644 src/main/java/com/niuan/erp/common/handler/AutoFillEntityHandler.java create mode 100644 src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemAddAndUpdateDto.java create mode 100644 src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemSearchParams.java create mode 100644 src/main/resources/application-prod.yml diff --git a/build.gradle.kts b/build.gradle.kts index f386b03..815ccd9 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -5,7 +5,7 @@ plugins { } group = "com.niuan" -version = "0.0.1-SNAPSHOT" +version = "0.1.1" description = "erp" java { @@ -33,7 +33,7 @@ dependencies { implementation("org.springframework.boot:spring-boot-starter-websocket") implementation("org.springframework.boot:spring-boot-starter-validation") implementation("org.springframework.boot:spring-boot-starter-aop") - compileOnly("com.baomidou:mybatis-plus-spring-boot3-starter:3.5.16") + implementation("com.baomidou:mybatis-plus-spring-boot3-starter:3.5.16") implementation("com.baomidou:mybatis-plus-jsqlparser:3.5.16") developmentOnly("org.springframework.boot:spring-boot-devtools") runtimeOnly("com.mysql:mysql-connector-j") diff --git a/src/main/java/com/niuan/erp/common/base/BaseEntity.java b/src/main/java/com/niuan/erp/common/base/BaseEntity.java new file mode 100644 index 0000000..9d9891c --- /dev/null +++ b/src/main/java/com/niuan/erp/common/base/BaseEntity.java @@ -0,0 +1,44 @@ +package com.niuan.erp.common.base; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Getter; +import lombok.Setter; + +import java.time.LocalDateTime; + +/** + * 基础 Entity + *
+ * 需要注意如果是老数据库迁移过来的表结构使用的是大写驼峰法命名,使用的基础类为 {@link com.niuan.erp.common.base.OldBaseEntity} + */ +@Getter +@Setter +public class BaseEntity { + + @TableId(value = "id", type = IdType.AUTO) + private Long id; + + @TableField(value = "status", fill = FieldFill.INSERT) + private Integer status; + + @TableField(value = "create_user_id", fill = FieldFill.INSERT) + private Long createUserId; + + @TableField(value = "create_user_name", fill = FieldFill.INSERT) + private String createUserName; + + @TableField(value = "create_date", fill = FieldFill.INSERT) + private LocalDateTime createDate; + + @TableField(value = "update_user_id", fill = FieldFill.UPDATE) + private Long updateUserId; + + @TableField(value = "update_user_name", fill = FieldFill.UPDATE) + private String updateUserName; + + @TableField(value = "update_date", fill = FieldFill.UPDATE) + private LocalDateTime updateDate; +} diff --git a/src/main/java/com/niuan/erp/common/base/OldBaseCustomerEntity.java b/src/main/java/com/niuan/erp/common/base/OldBaseCustomerEntity.java new file mode 100644 index 0000000..454c28a --- /dev/null +++ b/src/main/java/com/niuan/erp/common/base/OldBaseCustomerEntity.java @@ -0,0 +1,19 @@ +package com.niuan.erp.common.base; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.Getter; +import lombok.Setter; + +/** + * 旧的包含 customerId 的基础 Entity + *
+ * 旧的数据库使用的是 `大写驼峰法` 命名的数据表字段 + */ +@Getter +@Setter +public class OldBaseCustomerEntity extends OldBaseEntity { + + @TableField(value = "CustomerId", fill = FieldFill.INSERT) + private Integer customerId; +} diff --git a/src/main/java/com/niuan/erp/common/base/OldBaseEntity.java b/src/main/java/com/niuan/erp/common/base/OldBaseEntity.java new file mode 100644 index 0000000..6e675af --- /dev/null +++ b/src/main/java/com/niuan/erp/common/base/OldBaseEntity.java @@ -0,0 +1,46 @@ +package com.niuan.erp.common.base; + +import com.baomidou.mybatisplus.annotation.FieldFill; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import lombok.Getter; +import lombok.Setter; + +import java.time.LocalDateTime; + +/** + * 旧数据结构的基础 Entity + *
+ * 旧的数据库使用的是 `大写驼峰法` 命名的数据表字段 + *
+ * 新建的数据库表 Entity 使用 {@link com.niuan.erp.common.base.BaseEntity} + */ +@Getter +@Setter +public class OldBaseEntity { + + @TableId(value = "Id", type = IdType.AUTO) + private Long id; + + @TableField(value = "Status", fill = FieldFill.INSERT) + private Integer status; + + @TableField(value = "CreateUserId", fill = FieldFill.INSERT) + private Long createUserId; + + @TableField(value = "CreateUserName", fill = FieldFill.INSERT) + private String createUserName; + + @TableField(value = "CreateDate", fill = FieldFill.INSERT) + private LocalDateTime createDate; + + @TableField(value = "UpdateUserId", fill = FieldFill.UPDATE) + private Long updateUserId; + + @TableField(value = "UpdateUserName", fill = FieldFill.UPDATE) + private String updateUserName; + + @TableField(value = "UpdateDate", fill = FieldFill.UPDATE) + private LocalDateTime updateDate; +} diff --git a/src/main/java/com/niuan/erp/common/config/SecurityConfig.java b/src/main/java/com/niuan/erp/common/config/SecurityConfig.java index 9cbd3c1..7092be3 100644 --- a/src/main/java/com/niuan/erp/common/config/SecurityConfig.java +++ b/src/main/java/com/niuan/erp/common/config/SecurityConfig.java @@ -8,6 +8,8 @@ import com.niuan.erp.common.security.JwtAuthenticationFilter; import com.niuan.erp.common.security.TokenService; import jakarta.servlet.http.HttpServletRequest; import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Primary; @@ -17,6 +19,7 @@ import org.springframework.security.config.annotation.authentication.configurati import org.springframework.security.config.annotation.method.configuration.EnableMethodSecurity; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity; +import org.springframework.security.config.annotation.web.configurers.AbstractHttpConfigurer; import org.springframework.security.core.session.SessionRegistry; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.security.crypto.password.PasswordEncoder; @@ -26,6 +29,7 @@ import org.springframework.web.cors.CorsConfiguration; import org.springframework.web.cors.CorsConfigurationSource; import org.springframework.web.cors.UrlBasedCorsConfigurationSource; +import java.util.Arrays; import java.util.List; /** @@ -33,6 +37,7 @@ import java.util.List; * - Web端(后台管理):使用传统Session方式(基于Cookie) * - 小程序端:使用JWT方式(基于Token) */ +@Slf4j @Configuration @EnableWebSecurity @EnableMethodSecurity @@ -49,11 +54,14 @@ public class SecurityConfig { private final PasswordEncoder passwordEncoder; + @Value("${cors.allowed-origins:http://localhost:*,http://127.0.0.1:*}") + private String allowedOriginsStr; + @Bean public SecurityFilterChain filterChain(HttpSecurity http, SessionRegistry sessionRegistry) throws Exception { http // 禁用 CSRF(JWT需要禁用,Session方式通过其他方式防护) - .csrf(csrf -> csrf.disable()) + .csrf(AbstractHttpConfigurer::disable) .cors(cors -> cors.configurationSource(corsConfigurationSource())) @@ -138,8 +146,10 @@ public class SecurityConfig { public CorsConfigurationSource corsConfigurationSource() { CorsConfiguration configuration = new CorsConfiguration(); - // 允许的前端 origin - configuration.setAllowedOriginPatterns(List.of("http://localhost:*", "http://127.0.0.1:*")); + // 允许的前端 origin(从配置读取,逗号分隔转列表) + List allowedOrigins = Arrays.asList(allowedOriginsStr.split(",")); + configuration.setAllowedOriginPatterns(allowedOrigins); + log.info("加载 CORS 配置允许地址:{}", allowedOrigins); // 允许凭证(Cookie) configuration.setAllowCredentials(true); diff --git a/src/main/java/com/niuan/erp/common/handler/AutoFillEntityHandler.java b/src/main/java/com/niuan/erp/common/handler/AutoFillEntityHandler.java new file mode 100644 index 0000000..c2de213 --- /dev/null +++ b/src/main/java/com/niuan/erp/common/handler/AutoFillEntityHandler.java @@ -0,0 +1,64 @@ +package com.niuan.erp.common.handler; + +import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; +import com.niuan.erp.common.base.BaseEntity; +import com.niuan.erp.common.base.OldBaseCustomerEntity; +import com.niuan.erp.common.base.OldBaseEntity; +import com.niuan.erp.common.utils.SecurityUtils; +import org.apache.ibatis.reflection.MetaObject; +import org.springframework.stereotype.Component; +import org.springframework.util.StringUtils; + +import java.time.LocalDateTime; +import java.util.Objects; + +@Component +public class AutoFillEntityHandler implements MetaObjectHandler { + + + @Override + public void insertFill(MetaObject metaObject) { + Object originalObj = metaObject.getOriginalObject(); + + if (Objects.requireNonNull(originalObj) instanceof OldBaseEntity entity) { + insertFillOldBaseEntity(entity); + } + + if (Objects.requireNonNull(originalObj) instanceof BaseEntity entity) { + insertFillBaseEntity(entity); + } + + if (Objects.requireNonNull(originalObj) instanceof OldBaseCustomerEntity entity) { + if (entity.getCustomerId() == null) entity.setCustomerId(SecurityUtils.getCustomerId()); + } + } + + @Override + public void updateFill(MetaObject metaObject) { + Object originalObj = metaObject.getOriginalObject(); + if (Objects.requireNonNull(originalObj) instanceof OldBaseEntity entity) { + updateFillOldBaseEntity(entity); + } + + } + + private void insertFillOldBaseEntity(OldBaseEntity entity) { + if (entity.getStatus() == null) entity.setStatus(0); + if (entity.getCreateUserId() == null) entity.setCreateUserId(SecurityUtils.getUserId()); + if (!StringUtils.hasText(entity.getCreateUserName())) entity.setCreateUserName(SecurityUtils.getUserName()); + if (entity.getCreateDate() == null) entity.setCreateDate(LocalDateTime.now()); + } + + private void insertFillBaseEntity(BaseEntity entity) { + if (entity.getStatus() == null) entity.setStatus(0); + if (entity.getCreateUserId() == null) entity.setCreateUserId(SecurityUtils.getUserId()); + if (!StringUtils.hasText(entity.getCreateUserName())) entity.setCreateUserName(SecurityUtils.getUserName()); + if (entity.getCreateDate() == null) entity.setCreateDate(LocalDateTime.now()); + } + + private void updateFillOldBaseEntity(OldBaseEntity entity) { + if (entity.getUpdateUserId() == null) entity.setUpdateUserId(SecurityUtils.getUserId()); + if (!StringUtils.hasText(entity.getUpdateUserName())) entity.setUpdateUserName(SecurityUtils.getUserName()); + if (entity.getUpdateDate() == null) entity.setUpdateDate(LocalDateTime.now()); + } +} diff --git a/src/main/java/com/niuan/erp/module/common/entity/Document.java b/src/main/java/com/niuan/erp/module/common/entity/Document.java index d234348..33c5ff6 100644 --- a/src/main/java/com/niuan/erp/module/common/entity/Document.java +++ b/src/main/java/com/niuan/erp/module/common/entity/Document.java @@ -4,12 +4,14 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import com.niuan.erp.module.common.enums.DocumentType; import com.niuan.erp.module.common.enums.FormStatus; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -25,34 +27,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("productionform") -public class Document implements Serializable { +public class Document extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("StoreNo") private Integer storeNo; @@ -97,7 +76,4 @@ public class Document implements Serializable { @TableField("GroupId") private Integer groupId; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/common/entity/DocumentMaterial.java b/src/main/java/com/niuan/erp/module/common/entity/DocumentMaterial.java index 6aad53e..d2b5842 100644 --- a/src/main/java/com/niuan/erp/module/common/entity/DocumentMaterial.java +++ b/src/main/java/com/niuan/erp/module/common/entity/DocumentMaterial.java @@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -23,34 +25,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("materialinout") -public class DocumentMaterial implements Serializable { +public class DocumentMaterial extends OldBaseEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("DocumentNo") private Integer documentNo; diff --git a/src/main/java/com/niuan/erp/module/production/entity/Bom.java b/src/main/java/com/niuan/erp/module/production/entity/Bom.java index f51fcdb..877a410 100644 --- a/src/main/java/com/niuan/erp/module/production/entity/Bom.java +++ b/src/main/java/com/niuan/erp/module/production/entity/Bom.java @@ -4,11 +4,13 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import com.niuan.erp.module.production.controller.dto.BomItemDto; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; import java.util.List; @@ -25,34 +27,11 @@ import java.util.List; @Setter @ToString @TableName("bom_list") -public class Bom implements Serializable { +public class Bom extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("ParentId") private Long parentId; @@ -77,9 +56,6 @@ public class Bom implements Serializable { @TableField("customerName") private String customerName; - @TableField("CustomerId") - private Integer customerId; - @TableField(exist = false) private List bomItems; } diff --git a/src/main/java/com/niuan/erp/module/production/entity/BomItem.java b/src/main/java/com/niuan/erp/module/production/entity/BomItem.java index 9ed3af5..693d3c6 100644 --- a/src/main/java/com/niuan/erp/module/production/entity/BomItem.java +++ b/src/main/java/com/niuan/erp/module/production/entity/BomItem.java @@ -8,6 +8,7 @@ import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; /** @@ -24,6 +25,7 @@ import java.io.Serializable; @TableName("bom") public class BomItem implements Serializable { + @Serial private static final long serialVersionUID = 1L; @TableId(value = "Id", type = IdType.AUTO) diff --git a/src/main/java/com/niuan/erp/module/production/entity/ProductionPlan.java b/src/main/java/com/niuan/erp/module/production/entity/ProductionPlan.java index ad922b1..247aa75 100644 --- a/src/main/java/com/niuan/erp/module/production/entity/ProductionPlan.java +++ b/src/main/java/com/niuan/erp/module/production/entity/ProductionPlan.java @@ -4,11 +4,13 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import com.niuan.erp.module.production.enums.ProductionPlanStatus; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -24,34 +26,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("produceorder") -public class ProductionPlan implements Serializable { +public class ProductionPlan extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("ProductionNum") private String productionNum; @@ -93,7 +72,4 @@ public class ProductionPlan implements Serializable { @TableField("GroupName") private String groupName; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/production/service/impl/FinishedProductReceiptServiceImpl.java b/src/main/java/com/niuan/erp/module/production/service/impl/FinishedProductReceiptServiceImpl.java index 01b1bcd..6f70281 100644 --- a/src/main/java/com/niuan/erp/module/production/service/impl/FinishedProductReceiptServiceImpl.java +++ b/src/main/java/com/niuan/erp/module/production/service/impl/FinishedProductReceiptServiceImpl.java @@ -165,7 +165,7 @@ public class FinishedProductReceiptServiceImpl extends ServiceImpl @@ -23,34 +22,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("keyaccount") -public class KeyAccount implements Serializable { +public class KeyAccount extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("KeyAccountCode") private String keyAccountCode; @@ -80,7 +56,4 @@ public class KeyAccount implements Serializable { @TableField("reserve2") private String reserve2; - - @TableField("CustomerId") - private Long customerId; } diff --git a/src/main/java/com/niuan/erp/module/sys/entity/Store.java b/src/main/java/com/niuan/erp/module/sys/entity/Store.java index 06d4b60..cd13ddb 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/Store.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/Store.java @@ -1,15 +1,14 @@ package com.niuan.erp.module.sys.entity; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; -import java.time.LocalDateTime; /** *

@@ -23,34 +22,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("storage_list") -public class Store implements Serializable { +public class Store extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("StoreNo") private Integer storeNo; @@ -68,7 +44,4 @@ public class Store implements Serializable { @TableField("ProjectId") private Long projectId; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysChannel.java b/src/main/java/com/niuan/erp/module/sys/entity/SysChannel.java index 5a3b997..9b400cb 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysChannel.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysChannel.java @@ -2,37 +2,14 @@ package com.niuan.erp.module.sys.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; +import com.niuan.erp.common.base.OldBaseEntity; +import lombok.Getter; +import lombok.Setter; -import java.time.LocalDateTime; - -@Data +@Getter +@Setter @TableName("yy_syschannel") -public class SysChannel { - - @TableField("Id") - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; +public class SysChannel extends OldBaseEntity { @TableField("ChannelType") private Integer channelType; diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysPermission.java b/src/main/java/com/niuan/erp/module/sys/entity/SysPermission.java index eda88d1..ef6781b 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysPermission.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysPermission.java @@ -1,16 +1,15 @@ package com.niuan.erp.module.sys.entity; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.BaseEntity; import com.niuan.erp.module.sys.enums.PermissionType; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; -import java.time.LocalDateTime; /** *

@@ -24,61 +23,17 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("sys_permission") -public class SysPermission implements Serializable { +public class SysPermission extends BaseEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "id", type = IdType.AUTO) - private Long id; - /** * 父权限ID,0表示根节点 */ @TableField("parent_id") private Long parentId; - /** - * 状态:0-禁用,1-启用 - */ - @TableField("status") - private Integer status; - - /** - * 创建时间 - */ - @TableField("create_date") - private LocalDateTime createDate; - - /** - * 创建人ID - */ - @TableField("create_user_id") - private Long createUserId; - - /** - * 创建人姓名 - */ - @TableField("create_user_name") - private String createUserName; - - /** - * 最后更新时间 - */ - @TableField("update_date") - private LocalDateTime updateDate; - - /** - * 更新人ID - */ - @TableField("update_user_id") - private Long updateUserId; - - /** - * 更新人姓名 - */ - @TableField("update_user_name") - private String updateUserName; - /** * 权限名字,没有 i18n 时,作为显示名称 */ diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysRecord.java b/src/main/java/com/niuan/erp/module/sys/entity/SysRecord.java index 737508c..c23cfee 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysRecord.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysRecord.java @@ -2,12 +2,12 @@ package com.niuan.erp.module.sys.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; import java.io.Serializable; -import java.time.LocalDateTime; /** *

@@ -20,35 +20,11 @@ import java.time.LocalDateTime; @Getter @Setter @ToString -@TableName("yy_sysrecord") -public class SysRecord implements Serializable { +@TableName("YY_SysRecord") +public class SysRecord extends OldBaseEntity implements Serializable { private static final long serialVersionUID = 1L; - @TableField("Id") - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("ChannelName") private String channelName; diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysRole.java b/src/main/java/com/niuan/erp/module/sys/entity/SysRole.java index 9841b69..9dc6311 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysRole.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysRole.java @@ -1,41 +1,17 @@ package com.niuan.erp.module.sys.entity; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; -import lombok.Data; +import com.niuan.erp.common.base.OldBaseEntity; +import lombok.Getter; +import lombok.Setter; -import java.time.LocalDateTime; import java.util.List; -@Data -@TableName("yy_sysrole") -public class SysRole { - - @TableId(value = "Id", type = IdType.NONE) // 非自增,允许 null - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; +@Getter +@Setter +@TableName("YY_SysRole") +public class SysRole extends OldBaseEntity { @TableField("RoleType") private Integer roleType; diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysRoleChannel.java b/src/main/java/com/niuan/erp/module/sys/entity/SysRoleChannel.java index bdebc9b..0a13cc0 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysRoleChannel.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysRoleChannel.java @@ -6,7 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableName; import lombok.Data; @Data -@TableName("yy_sysrolechannelmapping") +@TableName("YY_SysRoleChannelMapping") public class SysRoleChannel { @TableId("Id") diff --git a/src/main/java/com/niuan/erp/module/sys/entity/SysUser.java b/src/main/java/com/niuan/erp/module/sys/entity/SysUser.java index a7bfce3..4be6f8c 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/SysUser.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/SysUser.java @@ -1,41 +1,18 @@ package com.niuan.erp.module.sys.entity; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import com.niuan.erp.module.sys.enums.UserType; -import lombok.Data; +import lombok.Getter; +import lombok.Setter; import java.time.LocalDateTime; -@Data -@TableName("yy_users") -public class SysUser { - - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; +@Getter +@Setter +@TableName("YY_Users") +public class SysUser extends OldBaseCustomerEntity { @TableField("UserType") private UserType userType; @@ -76,9 +53,6 @@ public class SysUser { @TableField("isCustomer") private Integer isCustomer; - @TableField("CustomerId") - private Integer customerId; - @TableField(value = "openid") private String openid; } diff --git a/src/main/java/com/niuan/erp/module/sys/entity/UserRole.java b/src/main/java/com/niuan/erp/module/sys/entity/UserRole.java index 7f90bfa..d765e87 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/UserRole.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/UserRole.java @@ -9,7 +9,7 @@ import lombok.Data; * User 和 Role 关联表 */ @Data -@TableName("yy_usersrolemapping") +@TableName("YY_UsersRoleMapping") public class UserRole { @TableId("Id") diff --git a/src/main/java/com/niuan/erp/module/sys/entity/Vendor.java b/src/main/java/com/niuan/erp/module/sys/entity/Vendor.java index 1492888..651f1af 100644 --- a/src/main/java/com/niuan/erp/module/sys/entity/Vendor.java +++ b/src/main/java/com/niuan/erp/module/sys/entity/Vendor.java @@ -1,15 +1,13 @@ package com.niuan.erp.module.sys.entity; -import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; -import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; import java.io.Serializable; -import java.time.LocalDateTime; /** *

@@ -23,34 +21,10 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("vendor") -public class Vendor implements Serializable { +public class Vendor extends OldBaseCustomerEntity implements Serializable { private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("VendorNo") private Integer vendorNo; @@ -80,7 +54,4 @@ public class Vendor implements Serializable { @TableField("reserve2") private String reserve2; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/sys/mapper/SysUserMapper.java b/src/main/java/com/niuan/erp/module/sys/mapper/SysUserMapper.java index 64977ba..d460dfa 100644 --- a/src/main/java/com/niuan/erp/module/sys/mapper/SysUserMapper.java +++ b/src/main/java/com/niuan/erp/module/sys/mapper/SysUserMapper.java @@ -14,7 +14,7 @@ public interface SysUserMapper extends BaseMapper { /** * 根据角色ID查询用户ID列表 */ - @Select("SELECT DISTINCT ur.UserId FROM role_permission ur WHERE ur.role_id = #{roleId}") + @Select("SELECT DISTINCT ur.UserId FROM YY_UsersRoleMapping ur WHERE ur.RoleId = #{roleId}") List selectUserIdsByRoleId(@Param("roleId") Long roleId); /** @@ -22,7 +22,7 @@ public interface SysUserMapper extends BaseMapper { */ @Select(""" SELECT DISTINCT ur.UserId - FROM yy_usersrolemapping ur + FROM YY_UsersRoleMapping ur INNER JOIN role_permission rp ON ur.RoleId = rp.role_id WHERE rp.permission_id = #{permissionId} """) diff --git a/src/main/java/com/niuan/erp/module/sys/mapper/UserRoleMapper.java b/src/main/java/com/niuan/erp/module/sys/mapper/UserRoleMapper.java index da93c8a..eeda630 100644 --- a/src/main/java/com/niuan/erp/module/sys/mapper/UserRoleMapper.java +++ b/src/main/java/com/niuan/erp/module/sys/mapper/UserRoleMapper.java @@ -11,6 +11,6 @@ import java.util.List; @Mapper public interface UserRoleMapper extends BaseMapper { - @Select("SELECT RoleId FROM yy_usersrolemapping WHERE UserId = #{userId}") + @Select("SELECT RoleId FROM YY_UsersRoleMapping WHERE UserId = #{userId}") List selectRoleIdsByUserId(@Param("userId") Long userId); } diff --git a/src/main/java/com/niuan/erp/module/sys/service/impl/KeyAccountServiceImpl.java b/src/main/java/com/niuan/erp/module/sys/service/impl/KeyAccountServiceImpl.java index fef102a..b786421 100644 --- a/src/main/java/com/niuan/erp/module/sys/service/impl/KeyAccountServiceImpl.java +++ b/src/main/java/com/niuan/erp/module/sys/service/impl/KeyAccountServiceImpl.java @@ -77,11 +77,6 @@ public class KeyAccountServiceImpl extends ServiceImpl> getWarehouseItemPage(@Validated BasePageReqParams pageParams, - @Validated(Get.class) WarehouseItemDto searchParams) { + WarehouseItemSearchParams searchParams) { var wrapper = new LambdaQueryWrapper(); if (searchParams != null) { if (StringUtils.hasText(searchParams.searchCode())) { @@ -69,7 +70,7 @@ public class WarehouseItemController { @Operation(summary = "新增物料信息", operationId = "addWarehouseItem") @PostMapping("/addWarehouseItem") @PreAuthorize("hasAuthority('warehouse_item:add')") - public BaseResult addWarehouseItem(@Validated(Add.class) @RequestBody WarehouseItemDto dto) { + public BaseResult addWarehouseItem(@Validated(Add.class) @RequestBody WarehouseItemAddAndUpdateDto dto) { warehouseItemService.addWarehouseItem(dto); return BaseResult.success(); } @@ -78,7 +79,7 @@ public class WarehouseItemController { @Operation(summary = "更新物料信息", operationId = "updateWarehouseItem") @PostMapping("/updateWarehouseItem") @PreAuthorize("hasAuthority('warehouse_item:edit')") - public BaseResult updateWarehouseItem(@Validated(Update.class) @RequestBody WarehouseItemDto dto) { + public BaseResult updateWarehouseItem(@Validated(Update.class) @RequestBody WarehouseItemAddAndUpdateDto dto) { warehouseItemService.updateWarehouseItem(dto); return BaseResult.success(); } diff --git a/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemAddAndUpdateDto.java b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemAddAndUpdateDto.java new file mode 100644 index 0000000..569f548 --- /dev/null +++ b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemAddAndUpdateDto.java @@ -0,0 +1,40 @@ +package com.niuan.erp.module.warehouse.controller.dto; + +import com.niuan.erp.common.base.CommonValidateGroup.Add; +import com.niuan.erp.common.base.CommonValidateGroup.Update; +import io.swagger.v3.oas.annotations.media.Schema; +import jakarta.validation.constraints.Min; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; + +@Schema(description = "物料新增/更新 DTO") +public record WarehouseItemAddAndUpdateDto( + @Schema(description = "ID (更新时必填)") + @NotNull(message = "warehouse.warehouse_item.validate.id.not_null", groups = Update.class) + Long id, + + @Schema(description = "物料编号") + @NotBlank(message = "warehouse.warehouse_item.validate.part_number.not_null", groups = {Add.class, Update.class}) + String partNumber, + + @Schema(description = "物料规格") + @NotBlank(message = "warehouse.warehouse_item.validate.product_specs.not_null", groups = {Add.class, Update.class}) + String productSpecs, + + @Schema(description = "物料类型") + @NotBlank(message = "warehouse.warehouse_item.validate.product_type.not_null", groups = {Add.class, Update.class}) + String productType, + + @Schema(description = "物料品牌") + String productBrand, + + @Schema(description = "包装数量") + @Min(value = 1, message = "warehouse.warehouse_item.validate.product_packing.min", groups = {Add.class, Update.class}) + Integer productPacking, + + @Schema(description = "包装尺寸") + String productPackSize, + + @Schema(description = "物料备注") + String productMark +) {} diff --git a/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemDto.java b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemDto.java index 5d0d3ad..ded52a5 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemDto.java +++ b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemDto.java @@ -1,33 +1,41 @@ package com.niuan.erp.module.warehouse.controller.dto; +import io.swagger.v3.oas.annotations.media.Schema; + import java.time.LocalDateTime; +@Schema(description = "物料 DTO") public record WarehouseItemDto( + @Schema(description = "ID") Long id, - Integer status, + + @Schema(description = "创建时间") LocalDateTime createDate, - Long createUserId, + + @Schema(description = "创建人名称") String createUserName, - LocalDateTime updateDate, - Long updateUserId, - String updateUserName, + + @Schema(description = "物料编号") String partNumber, + + @Schema(description = "物料类型") String productType, + + @Schema(description = "物料规格") String productSpecs, + + @Schema(description = "物料品牌") String productBrand, + + @Schema(description = "包装数量") Integer productPacking, - String productPackUnit, + + @Schema(description = "包装尺寸") String productPackSize, + + @Schema(description = "物料价格") Double productPrice, - Integer productStockTotal, - String vdName, - Integer vendorCode1, - Integer vendorCode2, - Integer vendorCode3, - Integer manufactureSpec, - String productMark, - Integer reserve1, - String reserve2, - Integer productOccupyTotal, - Integer customerId, - String searchCode) {} \ No newline at end of file + + @Schema(description = "物料备注") + String productMark +) {} diff --git a/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemSearchParams.java b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemSearchParams.java new file mode 100644 index 0000000..75c85a5 --- /dev/null +++ b/src/main/java/com/niuan/erp/module/warehouse/controller/dto/WarehouseItemSearchParams.java @@ -0,0 +1,9 @@ +package com.niuan.erp.module.warehouse.controller.dto; + +import io.swagger.v3.oas.annotations.media.Schema; + +@Schema(description = "物料搜索参数") +public record WarehouseItemSearchParams( + @Schema(description = "搜索编码 (物料编号)") + String searchCode +) {} diff --git a/src/main/java/com/niuan/erp/module/warehouse/converter/WarehouseItemConverter.java b/src/main/java/com/niuan/erp/module/warehouse/converter/WarehouseItemConverter.java index 711ee74..b505cfb 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/converter/WarehouseItemConverter.java +++ b/src/main/java/com/niuan/erp/module/warehouse/converter/WarehouseItemConverter.java @@ -1,5 +1,6 @@ package com.niuan.erp.module.warehouse.converter; +import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemAddAndUpdateDto; import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemDto; import com.niuan.erp.module.warehouse.entity.WarehouseItem; import org.mapstruct.Mapper; @@ -12,4 +13,5 @@ public interface WarehouseItemConverter { WarehouseItem toEntity(WarehouseItemDto dto); WarehouseItemDto toDto(WarehouseItem entity); List toDtoList(List entities); + WarehouseItem toEntity(WarehouseItemAddAndUpdateDto dto); } \ No newline at end of file diff --git a/src/main/java/com/niuan/erp/module/warehouse/entity/InventoryCountItem.java b/src/main/java/com/niuan/erp/module/warehouse/entity/InventoryCountItem.java index 1a75e02..436e540 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/entity/InventoryCountItem.java +++ b/src/main/java/com/niuan/erp/module/warehouse/entity/InventoryCountItem.java @@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -23,34 +25,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("stocktaking") -public class InventoryCountItem implements Serializable { +public class InventoryCountItem extends OldBaseEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("StoreNo") private Integer storeNo; diff --git a/src/main/java/com/niuan/erp/module/warehouse/entity/Stock.java b/src/main/java/com/niuan/erp/module/warehouse/entity/Stock.java index adafb64..702a22e 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/entity/Stock.java +++ b/src/main/java/com/niuan/erp/module/warehouse/entity/Stock.java @@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -23,34 +25,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("storagecount") -public class Stock implements Serializable { +public class Stock extends OldBaseEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("StoreNo") private Integer storeNo; diff --git a/src/main/java/com/niuan/erp/module/warehouse/entity/Warehouse.java b/src/main/java/com/niuan/erp/module/warehouse/entity/Warehouse.java index 6fd51e1..0d884a8 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/entity/Warehouse.java +++ b/src/main/java/com/niuan/erp/module/warehouse/entity/Warehouse.java @@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -23,34 +25,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("storage_list") -public class Warehouse implements Serializable { +public class Warehouse extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("StoreNo") private Integer storeNo; @@ -68,7 +47,4 @@ public class Warehouse implements Serializable { @TableField("ProjectId") private Long projectId; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/warehouse/entity/WarehouseItem.java b/src/main/java/com/niuan/erp/module/warehouse/entity/WarehouseItem.java index 7c1a1d8..5529005 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/entity/WarehouseItem.java +++ b/src/main/java/com/niuan/erp/module/warehouse/entity/WarehouseItem.java @@ -4,10 +4,12 @@ import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; +import com.niuan.erp.common.base.OldBaseCustomerEntity; import lombok.Getter; import lombok.Setter; import lombok.ToString; +import java.io.Serial; import java.io.Serializable; import java.time.LocalDateTime; @@ -23,34 +25,11 @@ import java.time.LocalDateTime; @Setter @ToString @TableName("product") -public class WarehouseItem implements Serializable { +public class WarehouseItem extends OldBaseCustomerEntity implements Serializable { + @Serial private static final long serialVersionUID = 1L; - @TableId(value = "Id", type = IdType.AUTO) - private Long id; - - @TableField("Status") - private Integer status; - - @TableField("CreateDate") - private LocalDateTime createDate; - - @TableField("CreateUserId") - private Long createUserId; - - @TableField("CreateUserName") - private String createUserName; - - @TableField("UpdateDate") - private LocalDateTime updateDate; - - @TableField("UpdateUserId") - private Long updateUserId; - - @TableField("UpdateUserName") - private String updateUserName; - @TableField("PartNumber") private String partNumber; @@ -104,7 +83,4 @@ public class WarehouseItem implements Serializable { @TableField("ProductOccupyTotal") private Integer productOccupyTotal; - - @TableField("CustomerId") - private Integer customerId; } diff --git a/src/main/java/com/niuan/erp/module/warehouse/service/WarehouseItemService.java b/src/main/java/com/niuan/erp/module/warehouse/service/WarehouseItemService.java index bf3f0dc..1123bd9 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/service/WarehouseItemService.java +++ b/src/main/java/com/niuan/erp/module/warehouse/service/WarehouseItemService.java @@ -6,6 +6,7 @@ import com.niuan.erp.common.base.BasePageReqParams; import com.niuan.erp.common.base.BaseSelectDto; import com.niuan.erp.module.warehouse.controller.dto.ProductVendorMapAddDto; import com.niuan.erp.module.warehouse.controller.dto.ProductVendorMapDto; +import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemAddAndUpdateDto; import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemDto; import com.niuan.erp.module.warehouse.entity.WarehouseItem; @@ -19,9 +20,9 @@ public interface WarehouseItemService { IPage getWarehouseItemPage(BasePageReqParams pageParams, LambdaQueryWrapper wrapper); - void addWarehouseItem(WarehouseItemDto dto); + void addWarehouseItem(WarehouseItemAddAndUpdateDto dto); - void updateWarehouseItem(WarehouseItemDto dto); + void updateWarehouseItem(WarehouseItemAddAndUpdateDto dto); void deleteWarehouseItem(long id); diff --git a/src/main/java/com/niuan/erp/module/warehouse/service/impl/WarehouseItemServiceImpl.java b/src/main/java/com/niuan/erp/module/warehouse/service/impl/WarehouseItemServiceImpl.java index c676a99..d9784a1 100644 --- a/src/main/java/com/niuan/erp/module/warehouse/service/impl/WarehouseItemServiceImpl.java +++ b/src/main/java/com/niuan/erp/module/warehouse/service/impl/WarehouseItemServiceImpl.java @@ -12,6 +12,7 @@ import com.niuan.erp.module.sys.entity.Vendor; import com.niuan.erp.module.sys.service.VendorService; import com.niuan.erp.module.warehouse.controller.dto.ProductVendorMapAddDto; import com.niuan.erp.module.warehouse.controller.dto.ProductVendorMapDto; +import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemAddAndUpdateDto; import com.niuan.erp.module.warehouse.controller.dto.WarehouseItemDto; import com.niuan.erp.module.warehouse.converter.WarehouseItemConverter; import com.niuan.erp.module.warehouse.entity.ProductVendorMap; @@ -60,21 +61,14 @@ public class WarehouseItemServiceImpl extends ServiceImpl \ No newline at end of file diff --git a/src/main/resources/mapper/sys/SysPermissionMapper.xml b/src/main/resources/mapper/sys/SysPermissionMapper.xml index 2384429..815ee41 100644 --- a/src/main/resources/mapper/sys/SysPermissionMapper.xml +++ b/src/main/resources/mapper/sys/SysPermissionMapper.xml @@ -29,8 +29,8 @@ diff --git a/src/main/resources/mapper/sys/SysRoleMapper.xml b/src/main/resources/mapper/sys/SysRoleMapper.xml index d1e0c18..91b940d 100644 --- a/src/main/resources/mapper/sys/SysRoleMapper.xml +++ b/src/main/resources/mapper/sys/SysRoleMapper.xml @@ -19,8 +19,8 @@ diff --git a/src/main/resources/sql/dev/id.sql b/src/main/resources/sql/dev/id.sql index d911a61..91b98d5 100644 --- a/src/main/resources/sql/dev/id.sql +++ b/src/main/resources/sql/dev/id.sql @@ -9,4 +9,4 @@ ALTER TABLE yy_sysrolechannelmapping DROP temp_id; ALTER TABLE yy_sysrolechannelmapping ADD PRIMARY KEY (id); ALTER TABLE yy_sysrolechannelmapping MODIFY id BIGINT NOT NULL AUTO_INCREMENT; -ALTER TABLE purchaseplandetails ADD Order_item_id BIGINT DEFAULT NULL COMMENT "关联 purchasematerial 的 ID, 订单明细 ID"; \ No newline at end of file +ALTER TABLE PurchasePlanDetails ADD Order_item_id BIGINT DEFAULT NULL COMMENT "关联 purchasematerial 的 ID, 订单明细 ID"; \ No newline at end of file