Merge remote-tracking branch 'origin/dev' into test
This commit is contained in:
@@ -4,6 +4,7 @@ import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 收发货规则 Response VO")
|
||||
@@ -47,11 +48,11 @@ public class ContractReceiveSendRespDTO {
|
||||
|
||||
@Schema(description = "区间下限")
|
||||
@ExcelProperty("区间下限")
|
||||
private String gradeDown;
|
||||
private BigDecimal gradeDown;
|
||||
|
||||
@Schema(description = "区间上限")
|
||||
@ExcelProperty("区间上限")
|
||||
private String gradeUp;
|
||||
private BigDecimal gradeUp;
|
||||
|
||||
@Schema(description = "合同id", example = "22162")
|
||||
@ExcelProperty("合同id")
|
||||
|
||||
@@ -5,6 +5,7 @@ import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
@@ -38,10 +39,10 @@ public class ContractReceiveSendPageReqVO extends PageParam {
|
||||
private String rangeWay;
|
||||
|
||||
@Schema(description = "区间下限")
|
||||
private String gradeDown;
|
||||
private BigDecimal gradeDown;
|
||||
|
||||
@Schema(description = "区间上限")
|
||||
private String gradeUp;
|
||||
private BigDecimal gradeUp;
|
||||
|
||||
@Schema(description = "合同id", example = "22162")
|
||||
private Long contractId;
|
||||
|
||||
@@ -5,6 +5,7 @@ import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 收发货规则 Response VO")
|
||||
@@ -50,11 +51,11 @@ public class ContractReceiveSendRespVO {
|
||||
|
||||
@Schema(description = "区间下限")
|
||||
@ExcelProperty("区间下限")
|
||||
private String gradeDown;
|
||||
private BigDecimal gradeDown;
|
||||
|
||||
@Schema(description = "区间上限")
|
||||
@ExcelProperty("区间上限")
|
||||
private String gradeUp;
|
||||
private BigDecimal gradeUp;
|
||||
|
||||
@Schema(description = "合同id", example = "22162")
|
||||
@ExcelProperty("合同id")
|
||||
|
||||
@@ -3,6 +3,8 @@ package com.zt.plat.module.contractorder.api.vo.contract;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Schema(description = "管理后台 - 收发货规则新增/修改 Request VO")
|
||||
@Data
|
||||
public class ContractReceiveSendSaveReqVO {
|
||||
@@ -35,10 +37,10 @@ public class ContractReceiveSendSaveReqVO {
|
||||
private String rangeWay;
|
||||
|
||||
@Schema(description = "区间下限")
|
||||
private String gradeDown;
|
||||
private BigDecimal gradeDown;
|
||||
|
||||
@Schema(description = "区间上限")
|
||||
private String gradeUp;
|
||||
private BigDecimal gradeUp;
|
||||
|
||||
@Schema(description = "合同id", example = "22162")
|
||||
private Long contractId;
|
||||
|
||||
@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
|
||||
import lombok.*;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
/**
|
||||
* 收发货规则 DO
|
||||
*
|
||||
@@ -73,12 +75,12 @@ public class ContractReceiveSendDO extends BusinessBaseDO {
|
||||
* 区间下限
|
||||
*/
|
||||
@TableField("GRD_DOWN")
|
||||
private String gradeDown;
|
||||
private BigDecimal gradeDown;
|
||||
/**
|
||||
* 区间上限
|
||||
*/
|
||||
@TableField("GRD_UP")
|
||||
private String gradeUp;
|
||||
private BigDecimal gradeUp;
|
||||
/**
|
||||
* 合同id
|
||||
*/
|
||||
|
||||
@@ -58,5 +58,7 @@ public interface ErrorCodeConstants {
|
||||
|
||||
ErrorCode MATERIAL_ERROR = new ErrorCode( 1_017_000_009, "主物料信息错误");
|
||||
|
||||
ErrorCode INTERNAL_WAREHOUSE_NOT_EXISTS= new ErrorCode(1_017_000_011,"内部仓库不存在");
|
||||
|
||||
ErrorCode WAREHOUSE_FACTORY_NOT_EXISTS=new ErrorCode(1_017_000_010,"库位与工厂信息不存在");
|
||||
}
|
||||
@@ -168,9 +168,8 @@ public class ErpMaterialController {
|
||||
@GetMapping("/erpMaterial-mainMaterial-code")
|
||||
@Operation(summary = "通过主物料编号查询子物料信息")
|
||||
@PreAuthorize("@ss.hasPermission('sply:erp-material:query')")
|
||||
public CommonResult<List<ErpMaterialRespVO>> getErpMaterialByMainMaterialByCOde(String code) {
|
||||
|
||||
return success(BeanUtils.toBean(List.of(new MaterialInfomationPageReqDTO()), ErpMaterialRespVO.class));
|
||||
public CommonResult<ErpMaterialRespVO> getErpMaterialByMainMaterialByCode(String code) {
|
||||
return success(BeanUtils.toBean(erpMaterialService.getErpMaterialByMainMaterialByCode(code), ErpMaterialRespVO.class));
|
||||
}
|
||||
|
||||
//查询物料
|
||||
@@ -179,6 +178,6 @@ public class ErpMaterialController {
|
||||
@PreAuthorize("@ss.hasPermission('sply:erp-material:query')")
|
||||
public CommonResult<List<ErpMaterialRespVO>> getErpMaterialByApiByCode(String code) {
|
||||
|
||||
return success(BeanUtils.toBean(List.of(new MaterialInfomationPageReqDTO()), ErpMaterialRespVO.class));
|
||||
return success(BeanUtils.toBean(erpMaterialService.getErpMaterialByApiByCode(code), ErpMaterialRespVO.class));
|
||||
}
|
||||
}
|
||||
@@ -83,8 +83,8 @@ public class ErpWarehouseController {
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得ERP库位分页")
|
||||
@PreAuthorize("@ss.hasPermission('sply:erp-warehouse:query')")
|
||||
public CommonResult<PageResult<ErpWarehouseRespVO>> getErpWarehousePage(@Valid ErpWarehousePageReqVO pageReqVO) {
|
||||
PageResult<ErpWarehouseRespVO> pageResult = erpWarehouseService.getErpWarehousePage(pageReqVO);
|
||||
public CommonResult<PageResult<ErpWarehouseDO> > getErpWarehousePage(@Valid ErpWarehousePageReqVO pageReqVO) {
|
||||
PageResult<ErpWarehouseDO> pageResult = erpWarehouseService.getErpWarehousePage(pageReqVO);
|
||||
return success(pageResult);
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,119 @@
|
||||
package com.zt.plat.module.erp.controller.admin.erp.internalwarehouse;
|
||||
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseEnableDisableReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehousePageReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseRespVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseSaveReqVO;
|
||||
import com.zt.plat.module.erp.dal.dataobject.erp.internalwarehouse.InternalWarehouseDO;
|
||||
import com.zt.plat.module.erp.service.erp.internalwarehouse.InternalWarehouseService;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import com.zt.plat.framework.business.interceptor.BusinessControllerMarker;
|
||||
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
||||
import jakarta.validation.constraints.*;
|
||||
import jakarta.validation.*;
|
||||
import jakarta.servlet.http.*;
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.vo.BatchDeleteReqVO;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.common.pojo.CommonResult;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
import static com.zt.plat.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import com.zt.plat.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import com.zt.plat.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import static com.zt.plat.framework.apilog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
|
||||
@Tag(name = "管理后台 - ERP内部库位")
|
||||
@RestController
|
||||
@RequestMapping("/base/internal-warehouse")
|
||||
@Validated
|
||||
public class InternalWarehouseController implements BusinessControllerMarker {
|
||||
|
||||
|
||||
@Resource
|
||||
private InternalWarehouseService internalWarehouseService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建ERP库位")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:create')")
|
||||
public CommonResult<InternalWarehouseRespVO> createInternalWarehouse(@Valid @RequestBody InternalWarehouseSaveReqVO createReqVO) {
|
||||
return success(internalWarehouseService.createInternalWarehouse(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新ERP库位")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:update')")
|
||||
public CommonResult<Boolean> updateInternalWarehouse(@Valid @RequestBody InternalWarehouseSaveReqVO updateReqVO) {
|
||||
internalWarehouseService.updateInternalWarehouse(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除ERP库位")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:delete')")
|
||||
public CommonResult<Boolean> deleteInternalWarehouse(@RequestParam("id") Long id) {
|
||||
internalWarehouseService.deleteInternalWarehouse(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete-list")
|
||||
@Parameter(name = "ids", description = "编号", required = true)
|
||||
@Operation(summary = "批量删除ERP库位")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:delete')")
|
||||
public CommonResult<Boolean> deleteInternalWarehouseList(@RequestBody BatchDeleteReqVO req) {
|
||||
internalWarehouseService.deleteInternalWarehouseListByIds(req.getIds());
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得ERP库位")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:query')")
|
||||
public CommonResult<InternalWarehouseRespVO> getInternalWarehouse(@RequestParam("id") Long id) {
|
||||
InternalWarehouseDO internalWarehouse = internalWarehouseService.getInternalWarehouse(id);
|
||||
return success(BeanUtils.toBean(internalWarehouse, InternalWarehouseRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得ERP库位分页")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:query')")
|
||||
public CommonResult<PageResult<InternalWarehouseRespVO>> getInternalWarehousePage(@Valid InternalWarehousePageReqVO pageReqVO) {
|
||||
PageResult<InternalWarehouseDO> pageResult = internalWarehouseService.getInternalWarehousePage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, InternalWarehouseRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出ERP库位 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('bse:internal-warehouse:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportInternalWarehouseExcel(@Valid InternalWarehousePageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<InternalWarehouseDO> list = internalWarehouseService.getInternalWarehousePage(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "ERP库位.xls", "数据", InternalWarehouseRespVO.class,
|
||||
BeanUtils.toBean(list, InternalWarehouseRespVO.class));
|
||||
}
|
||||
|
||||
//启用和停用
|
||||
@PostMapping("/enable-disable")
|
||||
@Operation(summary = "启用和停用ERP库位")
|
||||
public CommonResult<Boolean> enableDisable(@Valid @RequestBody InternalWarehouseEnableDisableReqVO reqVO) {
|
||||
internalWarehouseService.enableDisable(reqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,19 @@
|
||||
package com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import jakarta.validation.constraints.NotNull;
|
||||
import lombok.Data;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
|
||||
|
||||
import java.util.List;
|
||||
@Data
|
||||
@Schema(description = "ERP库位启用禁用 Request VO")
|
||||
@Validated
|
||||
public class InternalWarehouseEnableDisableReqVO {
|
||||
@Schema(description = "主键列表")
|
||||
@NotNull(message = "主键列表不能为空")
|
||||
private List<String> ids;
|
||||
@Schema(description = "状态")
|
||||
private String isEnable;
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static com.zt.plat.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - ERP库位分页 Request VO")
|
||||
@Data
|
||||
public class InternalWarehousePageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "工厂编码")
|
||||
private String factoryNumber;
|
||||
|
||||
@Schema(description = "库位名称", example = "赵六")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "库位编码")
|
||||
private String number;
|
||||
|
||||
@Schema(description = "类型;数据字典(SPLY_FACT_TP)", example = "2")
|
||||
private String type;
|
||||
|
||||
@Schema(description = "绑定库位名称", example = "张三")
|
||||
private String relativityName;
|
||||
|
||||
@Schema(description = "绑定库位编码")
|
||||
private String relativityNumber;
|
||||
|
||||
@Schema(description = "是否启用")
|
||||
private String isEnable;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
@Schema(description = "erp公司编码")
|
||||
private String companyIdCustom;
|
||||
|
||||
@Schema(description = "erp公司名称")
|
||||
private String companyNameCustom;
|
||||
|
||||
@Schema(description = "工厂名称")
|
||||
private String factoryName;
|
||||
}
|
||||
@@ -0,0 +1,61 @@
|
||||
package com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
import com.alibaba.excel.annotation.*;
|
||||
|
||||
@Schema(description = "管理后台 - ERP库位 Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class InternalWarehouseRespVO {
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "20049")
|
||||
@ExcelProperty("主键")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "工厂编码")
|
||||
@ExcelProperty("工厂编码")
|
||||
private String factoryNumber;
|
||||
|
||||
@Schema(description = "库位名称", example = "赵六")
|
||||
@ExcelProperty("库位名称")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "库位编码")
|
||||
@ExcelProperty("库位编码")
|
||||
private String number;
|
||||
|
||||
@Schema(description = "类型;数据字典(SPLY_FACT_TP)", example = "2")
|
||||
@ExcelProperty("类型;数据字典(SPLY_FACT_TP)")
|
||||
private String type;
|
||||
|
||||
@Schema(description = "绑定库位名称", example = "张三")
|
||||
@ExcelProperty("绑定库位名称")
|
||||
private String relativityName;
|
||||
|
||||
@Schema(description = "绑定库位编码")
|
||||
@ExcelProperty("绑定库位编码")
|
||||
private String relativityNumber;
|
||||
|
||||
@Schema(description = "是否启用")
|
||||
@ExcelProperty("是否启用")
|
||||
private String isEnable;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
@Schema(description = "erp公司编码")
|
||||
@ExcelProperty("erp公司编码")
|
||||
private String companyIdCustom;
|
||||
|
||||
@Schema(description = "erp公司名称")
|
||||
@ExcelProperty("erp公司名称")
|
||||
private String companyNameCustom;
|
||||
@Schema(description = "工厂名称")
|
||||
@ExcelProperty("工厂名称")
|
||||
private String factoryName;
|
||||
}
|
||||
@@ -0,0 +1,44 @@
|
||||
package com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import jakarta.validation.constraints.*;
|
||||
|
||||
@Schema(description = "管理后台 - ERP库位新增/修改 Request VO")
|
||||
@Data
|
||||
public class InternalWarehouseSaveReqVO {
|
||||
|
||||
@Schema(description = "主键", requiredMode = Schema.RequiredMode.REQUIRED, example = "20049")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "工厂编码")
|
||||
private String factoryNumber;
|
||||
|
||||
@Schema(description = "库位名称", example = "赵六")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "库位编码")
|
||||
private String number;
|
||||
|
||||
@Schema(description = "类型;数据字典(SPLY_FACT_TP)", example = "2")
|
||||
private String type;
|
||||
|
||||
@Schema(description = "绑定库位名称", example = "张三")
|
||||
private String relativityName;
|
||||
|
||||
@Schema(description = "绑定库位编码")
|
||||
private String relativityNumber;
|
||||
|
||||
@Schema(description = "是否启用")
|
||||
private String isEnable;
|
||||
|
||||
@Schema(description = "erp公司编码")
|
||||
private String companyIdCustom;
|
||||
|
||||
@Schema(description = "erp公司名称")
|
||||
private String companyNameCustom;
|
||||
@Schema(description = "工厂名称")
|
||||
private String factoryName;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,85 @@
|
||||
package com.zt.plat.module.erp.dal.dataobject.erp.internalwarehouse;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.LocalDateTime;
|
||||
import com.baomidou.mybatisplus.annotation.*;
|
||||
import com.zt.plat.framework.mybatis.core.dataobject.BusinessBaseDO;
|
||||
/**
|
||||
* ERP库位 DO
|
||||
*
|
||||
* @author 后台管理-1
|
||||
*/
|
||||
@TableName("bse_intl_wrh")
|
||||
@KeySequence("bse_intl_wrh_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
@Builder
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
/**
|
||||
* 支持业务基类继承:isBusiness=true 时继承 BusinessBaseDO,否则继承 BaseDO
|
||||
*/
|
||||
public class InternalWarehouseDO extends BusinessBaseDO {
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* 主键
|
||||
*/
|
||||
@TableId(type = IdType.ASSIGN_ID)
|
||||
private Long id;
|
||||
/**
|
||||
* 工厂编码
|
||||
*/
|
||||
@TableField("FACT_NUM")
|
||||
private String factoryNumber;
|
||||
/**
|
||||
* 库位名称
|
||||
*/
|
||||
@TableField("NAME")
|
||||
private String name;
|
||||
/**
|
||||
* 库位编码
|
||||
*/
|
||||
@TableField("NUM")
|
||||
private String number;
|
||||
/**
|
||||
* 类型;数据字典(SPLY_FACT_TP)
|
||||
*/
|
||||
@TableField("TP")
|
||||
private String type;
|
||||
/**
|
||||
* 绑定库位名称
|
||||
*/
|
||||
@TableField("REL_NAME")
|
||||
private String relativityName;
|
||||
/**
|
||||
* 绑定库位编码
|
||||
*/
|
||||
@TableField("REL_NUM")
|
||||
private String relativityNumber;
|
||||
/**
|
||||
* 是否启用
|
||||
*/
|
||||
@TableField("IS_ENB")
|
||||
private String isEnable;
|
||||
/**
|
||||
* erp公司编码
|
||||
*/
|
||||
@TableField("CPN_ID_CST")
|
||||
private String companyIdCustom;
|
||||
/**
|
||||
* erp公司名称
|
||||
*/
|
||||
@TableField("CPN_NAME_CST")
|
||||
private String companyNameCustom;
|
||||
/**
|
||||
* 工厂名称
|
||||
*/
|
||||
@TableField("FACT_NAME")
|
||||
private String factoryName;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,37 @@
|
||||
package com.zt.plat.module.erp.dal.mysql.erp.internalwarehouse;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.mybatis.core.query.LambdaQueryWrapperX;
|
||||
import com.zt.plat.framework.mybatis.core.mapper.BaseMapperX;
|
||||
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehousePageReqVO;
|
||||
import com.zt.plat.module.erp.dal.dataobject.erp.internalwarehouse.InternalWarehouseDO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
|
||||
/**
|
||||
* ERP库位 Mapper
|
||||
*
|
||||
* @author 后台管理-1
|
||||
*/
|
||||
@Mapper
|
||||
public interface InternalWarehouseMapper extends BaseMapperX<InternalWarehouseDO> {
|
||||
|
||||
default PageResult<InternalWarehouseDO> selectPage(InternalWarehousePageReqVO reqVO) {
|
||||
return selectPage(reqVO, new LambdaQueryWrapperX<InternalWarehouseDO>()
|
||||
.eqIfPresent(InternalWarehouseDO::getFactoryNumber, reqVO.getFactoryNumber())
|
||||
.likeIfPresent(InternalWarehouseDO::getName, reqVO.getName())
|
||||
.eqIfPresent(InternalWarehouseDO::getNumber, reqVO.getNumber())
|
||||
.eqIfPresent(InternalWarehouseDO::getType, reqVO.getType())
|
||||
.likeIfPresent(InternalWarehouseDO::getRelativityName, reqVO.getRelativityName())
|
||||
.eqIfPresent(InternalWarehouseDO::getRelativityNumber, reqVO.getRelativityNumber())
|
||||
.eqIfPresent(InternalWarehouseDO::getIsEnable, reqVO.getIsEnable())
|
||||
.betweenIfPresent(InternalWarehouseDO::getCreateTime, reqVO.getCreateTime())
|
||||
.eqIfPresent(InternalWarehouseDO::getCompanyIdCustom, reqVO.getCompanyIdCustom())
|
||||
.eqIfPresent(InternalWarehouseDO::getCompanyNameCustom, reqVO.getCompanyNameCustom())
|
||||
.orderByDesc(InternalWarehouseDO::getId));
|
||||
}
|
||||
|
||||
}
|
||||
@@ -80,4 +80,8 @@ public interface ErpMaterialService {
|
||||
List<ErpMaterialDO> getErpMaterialByMainMaterial(Long mainMaterialId);
|
||||
|
||||
List<ErpMaterialDO> getErpMaterialByApi( MaterialInfomationPageReqDTO material);
|
||||
|
||||
ErpMaterialDO getErpMaterialByMainMaterialByCode(String code);
|
||||
|
||||
List <ErpMaterialDO>getErpMaterialByApiByCode(String code);
|
||||
}
|
||||
@@ -34,6 +34,7 @@ import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static com.zt.plat.framework.common.pojo.PageParam.PAGE_SIZE_NONE;
|
||||
import static com.zt.plat.module.erp.enums.ErrorCodeConstants.*;
|
||||
import static dm.jdbc.util.DriverUtil.log;
|
||||
|
||||
@@ -292,6 +293,41 @@ public class ErpMaterialServiceImpl implements ErpMaterialService {
|
||||
return erpMaterialDOList;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ErpMaterialDO getErpMaterialByMainMaterialByCode(String code) {
|
||||
MaterialInfomationPageReqDTO material = new MaterialInfomationPageReqDTO();
|
||||
material.setCode(code);
|
||||
material.setPageSize(PAGE_SIZE_NONE);
|
||||
CommonResult<PageResult<MaterialInfomationRespDTO>> materialInfomationPage = materialInfomationApi.getMaterialInfomationPage(material);
|
||||
if (materialInfomationPage.isSuccess() && materialInfomationPage.getData() != null&& !materialInfomationPage.getData().getList().isEmpty()) {
|
||||
return buildErpMaterialDOData(CommonResult.success(materialInfomationPage.getData().getList().get(0)));
|
||||
}
|
||||
return null;
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<ErpMaterialDO> getErpMaterialByApiByCode(String code) {
|
||||
MaterialInfomationPageReqDTO material = new MaterialInfomationPageReqDTO();
|
||||
material.setCode(code);
|
||||
material.setPageSize(PAGE_SIZE_NONE);
|
||||
CommonResult<PageResult<MaterialInfomationRespDTO>> materialInfomationPage = materialInfomationApi.getMaterialInfomationPage(material);
|
||||
List<ErpMaterialDO> erpMaterialDOList = new ArrayList<>();
|
||||
if (materialInfomationPage.isSuccess() && materialInfomationPage.getData() != null&& !materialInfomationPage.getData().getList().isEmpty()) {
|
||||
ErpMaterialDO erpMaterialDO = buildErpMaterialDOData(CommonResult.success(materialInfomationPage.getData().getList().get(0)));
|
||||
List<ErpMaterialCorrRspVO> erpMaterialByMainMaterial = erpMaterialCorrService.getErpMaterialByMainMaterial(erpMaterialDO.getId());
|
||||
CommonResult<List<MaterialInfomationRespDTO>> materialInfomationListByIds = materialInfomationApi.getMaterialInfomationListByIds(erpMaterialByMainMaterial.stream().map(ErpMaterialCorrRspVO::getMaterialId).toList());
|
||||
if (materialInfomationListByIds.getData() == null || materialInfomationListByIds.getData().isEmpty()) {
|
||||
return erpMaterialDOList;
|
||||
}
|
||||
materialInfomationListByIds.getData().forEach(
|
||||
materialInfomation -> {
|
||||
erpMaterialDOList.add(buildErpMaterialDOData(CommonResult.success(materialInfomation)));
|
||||
}
|
||||
);
|
||||
}
|
||||
return erpMaterialDOList;
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional
|
||||
@XxlJob("getErpMaterialTask")
|
||||
|
||||
@@ -60,7 +60,7 @@ public interface ErpWarehouseService {
|
||||
* @param pageReqVO 分页查询
|
||||
* @return ERP库位分页
|
||||
*/
|
||||
PageResult<ErpWarehouseRespVO> getErpWarehousePage(ErpWarehousePageReqVO pageReqVO);
|
||||
PageResult<ErpWarehouseDO> getErpWarehousePage(ErpWarehousePageReqVO pageReqVO);
|
||||
|
||||
void callErpRfcInterface();
|
||||
|
||||
|
||||
@@ -150,32 +150,32 @@ public class ErpWarehouseServiceImpl implements ErpWarehouseService {
|
||||
|
||||
|
||||
@Override
|
||||
public PageResult<ErpWarehouseRespVO> getErpWarehousePage(ErpWarehousePageReqVO pageReqVO) {
|
||||
PageResult<ErpWarehouseRespVO> erpWarehouseRespVOPageResult = BeanUtils.toBean(erpWarehouseMapper.selectPage(pageReqVO), ErpWarehouseRespVO.class);
|
||||
if (erpWarehouseRespVOPageResult.getList() == null) {
|
||||
return erpWarehouseRespVOPageResult;
|
||||
public PageResult<ErpWarehouseDO> getErpWarehousePage(ErpWarehousePageReqVO pageReqVO) {
|
||||
// PageResult<ErpWarehouseRespVO> erpWarehouseRespVOPageResult = BeanUtils.toBean(erpWarehouseMapper.selectPage(pageReqVO), ErpWarehouseRespVO.class);
|
||||
// if (erpWarehouseRespVOPageResult.getList() == null) {
|
||||
// return erpWarehouseRespVOPageResult;
|
||||
// }
|
||||
// erpWarehouseRespVOPageResult.getList().forEach(this::setWarehouseFactoryInfo);
|
||||
// return erpWarehouseRespVOPageResult;
|
||||
// 获取分页数据
|
||||
List<ErpWarehouseDO> list = erpWarehouseMapper.getPageByReq(pageReqVO);
|
||||
if (list == null) {
|
||||
list = CollUtil.newArrayList();
|
||||
}
|
||||
erpWarehouseRespVOPageResult.getList().forEach(this::setWarehouseFactoryInfo);
|
||||
return erpWarehouseRespVOPageResult;
|
||||
// // 获取分页数据
|
||||
// List<ErpWarehouseDO> list = erpWarehouseMapper.getPageByReq(pageReqVO);
|
||||
// if (list == null) {
|
||||
// list = CollUtil.newArrayList();
|
||||
// }
|
||||
// // 分页处理
|
||||
// int pageNo = pageReqVO.getPageNo();
|
||||
// int pageSize = pageReqVO.getPageSize();
|
||||
// int total = list.size();
|
||||
// // 计算分页起始和结束位置
|
||||
// int fromIndex = (pageNo - 1) * pageSize;
|
||||
// int toIndex = Math.min(fromIndex + pageSize, total);
|
||||
// // 如果起始位置超出范围,则返回空列表
|
||||
// if (fromIndex >= total) {
|
||||
// return new PageResult<>(new ArrayList<>(), (long) total);
|
||||
// }
|
||||
// // 截取当前页数据
|
||||
// List<ErpWarehouseDO> pageList = list.subList(fromIndex, toIndex);
|
||||
// return new PageResult<>(pageList, (long) total);
|
||||
// 分页处理
|
||||
int pageNo = pageReqVO.getPageNo();
|
||||
int pageSize = pageReqVO.getPageSize();
|
||||
int total = list.size();
|
||||
// 计算分页起始和结束位置
|
||||
int fromIndex = (pageNo - 1) * pageSize;
|
||||
int toIndex = Math.min(fromIndex + pageSize, total);
|
||||
// 如果起始位置超出范围,则返回空列表
|
||||
if (fromIndex >= total) {
|
||||
return new PageResult<>(new ArrayList<>(), (long) total);
|
||||
}
|
||||
// 截取当前页数据
|
||||
List<ErpWarehouseDO> pageList = list.subList(fromIndex, toIndex);
|
||||
return new PageResult<>(pageList, (long) total);
|
||||
}
|
||||
|
||||
// 设置主物料信息
|
||||
|
||||
@@ -0,0 +1,67 @@
|
||||
package com.zt.plat.module.erp.service.erp.internalwarehouse;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseEnableDisableReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehousePageReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseRespVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseSaveReqVO;
|
||||
import com.zt.plat.module.erp.dal.dataobject.erp.internalwarehouse.InternalWarehouseDO;
|
||||
import jakarta.validation.*;
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
|
||||
/**
|
||||
* ERP库位 Service 接口
|
||||
*
|
||||
* @author 后台管理-1
|
||||
*/
|
||||
public interface InternalWarehouseService {
|
||||
|
||||
/**
|
||||
* 创建ERP库位
|
||||
*
|
||||
* @param createReqVO 创建信息
|
||||
* @return 编号
|
||||
*/
|
||||
InternalWarehouseRespVO createInternalWarehouse(@Valid InternalWarehouseSaveReqVO createReqVO);
|
||||
|
||||
/**
|
||||
* 更新ERP库位
|
||||
*
|
||||
* @param updateReqVO 更新信息
|
||||
*/
|
||||
void updateInternalWarehouse(@Valid InternalWarehouseSaveReqVO updateReqVO);
|
||||
|
||||
/**
|
||||
* 删除ERP库位
|
||||
*
|
||||
* @param id 编号
|
||||
*/
|
||||
void deleteInternalWarehouse(Long id);
|
||||
|
||||
/**
|
||||
* 批量删除ERP库位
|
||||
*
|
||||
* @param ids 编号
|
||||
*/
|
||||
void deleteInternalWarehouseListByIds(List<Long> ids);
|
||||
|
||||
/**
|
||||
* 获得ERP库位
|
||||
*
|
||||
* @param id 编号
|
||||
* @return ERP库位
|
||||
*/
|
||||
InternalWarehouseDO getInternalWarehouse(Long id);
|
||||
|
||||
/**
|
||||
* 获得ERP库位分页
|
||||
*
|
||||
* @param pageReqVO 分页查询
|
||||
* @return ERP库位分页
|
||||
*/
|
||||
PageResult<InternalWarehouseDO> getInternalWarehousePage(InternalWarehousePageReqVO pageReqVO);
|
||||
|
||||
void enableDisable(InternalWarehouseEnableDisableReqVO enableDisableReqVO);
|
||||
}
|
||||
@@ -0,0 +1,112 @@
|
||||
package com.zt.plat.module.erp.service.erp.internalwarehouse;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseEnableDisableReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehousePageReqVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseRespVO;
|
||||
import com.zt.plat.module.erp.controller.admin.erp.internalwarehouse.vo.InternalWarehouseSaveReqVO;
|
||||
import com.zt.plat.module.erp.dal.dataobject.erp.internalwarehouse.InternalWarehouseDO;
|
||||
import com.zt.plat.module.erp.dal.mysql.erp.internalwarehouse.InternalWarehouseMapper;
|
||||
import org.springframework.stereotype.Service;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.*;
|
||||
|
||||
import com.zt.plat.framework.common.pojo.PageResult;
|
||||
import com.zt.plat.framework.common.pojo.PageParam;
|
||||
import com.zt.plat.framework.common.util.object.BeanUtils;
|
||||
|
||||
|
||||
|
||||
import static com.zt.plat.framework.common.exception.util.ServiceExceptionUtil.exception;
|
||||
import static com.zt.plat.framework.common.util.collection.CollectionUtils.convertList;
|
||||
import static com.zt.plat.framework.common.util.collection.CollectionUtils.diffList;
|
||||
import static com.zt.plat.module.erp.enums.ErrorCodeConstants.INTERNAL_WAREHOUSE_NOT_EXISTS;
|
||||
|
||||
|
||||
/**
|
||||
* ERP库位 Service 实现类
|
||||
*
|
||||
* @author 后台管理-1
|
||||
*/
|
||||
@Service
|
||||
@Validated
|
||||
public class InternalWarehouseServiceImpl implements InternalWarehouseService {
|
||||
|
||||
@Resource
|
||||
private InternalWarehouseMapper internalWarehouseMapper;
|
||||
|
||||
@Override
|
||||
public InternalWarehouseRespVO createInternalWarehouse(InternalWarehouseSaveReqVO createReqVO) {
|
||||
// 插入
|
||||
InternalWarehouseDO internalWarehouse = BeanUtils.toBean(createReqVO, InternalWarehouseDO.class);
|
||||
internalWarehouseMapper.insert(internalWarehouse);
|
||||
// 返回
|
||||
return BeanUtils.toBean(internalWarehouse, InternalWarehouseRespVO.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateInternalWarehouse(InternalWarehouseSaveReqVO updateReqVO) {
|
||||
// 校验存在
|
||||
validateInternalWarehouseExists(updateReqVO.getId());
|
||||
// 更新
|
||||
InternalWarehouseDO updateObj = BeanUtils.toBean(updateReqVO, InternalWarehouseDO.class);
|
||||
internalWarehouseMapper.updateById(updateObj);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteInternalWarehouse(Long id) {
|
||||
// 校验存在
|
||||
validateInternalWarehouseExists(id);
|
||||
// 删除
|
||||
internalWarehouseMapper.deleteById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void deleteInternalWarehouseListByIds(List<Long> ids) {
|
||||
// 校验存在
|
||||
validateInternalWarehouseExists(ids);
|
||||
// 删除
|
||||
internalWarehouseMapper.deleteByIds(ids);
|
||||
}
|
||||
|
||||
private void validateInternalWarehouseExists(List<Long> ids) {
|
||||
List<InternalWarehouseDO> list = internalWarehouseMapper.selectByIds(ids);
|
||||
if (CollUtil.isEmpty(list) || list.size() != ids.size()) {
|
||||
throw exception(INTERNAL_WAREHOUSE_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
private void validateInternalWarehouseExists(Long id) {
|
||||
if (internalWarehouseMapper.selectById(id) == null) {
|
||||
throw exception(INTERNAL_WAREHOUSE_NOT_EXISTS);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public InternalWarehouseDO getInternalWarehouse(Long id) {
|
||||
return internalWarehouseMapper.selectById(id);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageResult<InternalWarehouseDO> getInternalWarehousePage(InternalWarehousePageReqVO pageReqVO) {
|
||||
return internalWarehouseMapper.selectPage(pageReqVO);
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public void enableDisable(InternalWarehouseEnableDisableReqVO enableDisableReqVO) {
|
||||
enableDisableReqVO.getIds().forEach(id -> {
|
||||
// 校验存在
|
||||
validateInternalWarehouseExists(Long.valueOf(id));
|
||||
// 更新
|
||||
InternalWarehouseDO updateObj = new InternalWarehouseDO();
|
||||
updateObj.setId(Long.valueOf(id));
|
||||
updateObj.setIsEnable(enableDisableReqVO.getIsEnable());
|
||||
internalWarehouseMapper.updateById(updateObj);
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.zt.plat.module.erp.dal.mysql.erp.internalwarehouse.InternalWarehouseMapper">
|
||||
|
||||
<!--
|
||||
一般情况下,尽可能使用 Mapper 进行 CRUD 增删改查即可。
|
||||
无法满足的场景,例如说多表关联查询,才使用 XML 编写 SQL。
|
||||
代码生成器暂时只生成 Mapper XML 文件本身,更多推荐 MybatisX 快速开发插件来生成查询。
|
||||
文档可见:https://www.iocoder.cn/MyBatis/x-plugins/
|
||||
-->
|
||||
|
||||
</mapper>
|
||||
Reference in New Issue
Block a user