Compare commits
No commits in common. 'main' and 'ck' have entirely different histories.
@ -1,29 +0,0 @@
|
||||
package cn.iocoder.yudao.module.common.enums;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.core.IntArrayValuable;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
|
||||
@Getter
|
||||
@AllArgsConstructor
|
||||
public enum MoldBrandStatusEnum implements IntArrayValuable {
|
||||
|
||||
ON_MACHINE(0, "在机"),
|
||||
STANDBY(1, "待用"),
|
||||
REPAIRING(2, "维修"),
|
||||
SCRAPPED(3, "报废"),
|
||||
IN_STOCK(4, "在库");
|
||||
|
||||
public static final int[] ARRAYS = Arrays.stream(values()).mapToInt(MoldBrandStatusEnum::getStatus).toArray();
|
||||
|
||||
private final Integer status;
|
||||
private final String name;
|
||||
|
||||
@Override
|
||||
public int[] array() {
|
||||
return ARRAYS;
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,16 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.enums.stock;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Getter
|
||||
public enum ErpStockCheckApproveActionEnum {
|
||||
|
||||
SUBMIT("SUBMIT"),
|
||||
APPROVE("APPROVE"),
|
||||
REJECT("REJECT");
|
||||
|
||||
private final String actionType;
|
||||
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.enums.stock;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Getter
|
||||
public enum ErpStockInApproveActionEnum {
|
||||
|
||||
SUBMIT("SUBMIT"),
|
||||
APPROVE("APPROVE"),
|
||||
REJECT("REJECT"),
|
||||
AUTO_APPROVE("AUTO_APPROVE");
|
||||
|
||||
private final String actionType;
|
||||
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.enums.stock;
|
||||
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
|
||||
@RequiredArgsConstructor
|
||||
@Getter
|
||||
public enum ErpStockOutApproveActionEnum {
|
||||
|
||||
SUBMIT("SUBMIT"),
|
||||
APPROVE("APPROVE"),
|
||||
REJECT("REJECT"),
|
||||
AUTO_APPROVE("AUTO_APPROVE");
|
||||
|
||||
private final String actionType;
|
||||
|
||||
}
|
||||
@ -1,106 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.mold.vo.MoldPressureNetRecordPageReqVO;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.mold.vo.MoldPressureNetRecordRespVO;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.mold.vo.MoldPressureNetRecordSaveReqVO;
|
||||
import cn.iocoder.yudao.module.erp.dal.dataobject.mold.MoldPressureNetRecordDO;
|
||||
import cn.iocoder.yudao.module.erp.service.mold.MoldPressureNetRecordService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
|
||||
@Tag(name = "管理后台 - 子模具压网记录")
|
||||
@RestController
|
||||
@RequestMapping("/erp/mold-pressure-net-record")
|
||||
@Validated
|
||||
public class MoldPressureNetRecordController {
|
||||
|
||||
@Resource
|
||||
private MoldPressureNetRecordService moldPressureNetRecordService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建子模具压网记录")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:create')")
|
||||
public CommonResult<Long> createMoldPressureNetRecord(@Valid @RequestBody MoldPressureNetRecordSaveReqVO createReqVO) {
|
||||
return success(moldPressureNetRecordService.createMoldPressureNetRecord(createReqVO));
|
||||
}
|
||||
|
||||
@PostMapping("/batch-create")
|
||||
@Operation(summary = "批量创建子模具压网记录")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:create')")
|
||||
public CommonResult<Boolean> createMoldPressureNetRecordBatch(@Valid @RequestBody List<MoldPressureNetRecordSaveReqVO> createReqVOList) {
|
||||
moldPressureNetRecordService.createBatchMoldPressureNetRecord(createReqVOList);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新子模具压网记录")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:update')")
|
||||
public CommonResult<Boolean> updateMoldPressureNetRecord(@Valid @RequestBody MoldPressureNetRecordSaveReqVO updateReqVO) {
|
||||
moldPressureNetRecordService.updateMoldPressureNetRecord(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除子模具压网记录")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:delete')")
|
||||
public CommonResult<Boolean> deleteMoldPressureNetRecord(@RequestParam("id") Long id) {
|
||||
moldPressureNetRecordService.deleteMoldPressureNetRecord(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得子模具压网记录")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:query')")
|
||||
public CommonResult<MoldPressureNetRecordRespVO> getMoldPressureNetRecord(@RequestParam("id") Long id) {
|
||||
MoldPressureNetRecordDO record = moldPressureNetRecordService.getMoldPressureNetRecord(id);
|
||||
return success(BeanUtils.toBean(record, MoldPressureNetRecordRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得子模具压网记录分页")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:query')")
|
||||
public CommonResult<PageResult<MoldPressureNetRecordRespVO>> getMoldPressureNetRecordPage(@Valid MoldPressureNetRecordPageReqVO pageReqVO) {
|
||||
PageResult<MoldPressureNetRecordDO> pageResult = moldPressureNetRecordService.getMoldPressureNetRecordPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, MoldPressureNetRecordRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出子模具压网记录 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('erp:mold-brand:query')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportMoldPressureNetRecordExcel(@Valid MoldPressureNetRecordPageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<MoldPressureNetRecordDO> list = moldPressureNetRecordService.getMoldPressureNetRecordPage(pageReqVO).getList();
|
||||
ExcelUtils.write(response, "子模具压网记录.xls", "数据", MoldPressureNetRecordRespVO.class,
|
||||
BeanUtils.toBean(list, MoldPressureNetRecordRespVO.class));
|
||||
}
|
||||
}
|
||||
@ -1,32 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold.vo;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 模具型号分页 Response VO")
|
||||
@Data
|
||||
public class MoldBrandPageRespVO {
|
||||
|
||||
@Schema(description = "分页结果", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
private PageResult<MoldBrandRespVO> pageResult;
|
||||
|
||||
@Schema(description = "全部数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
||||
private Long allCount;
|
||||
|
||||
@Schema(description = "在机数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
|
||||
private Long onMachineCount;
|
||||
|
||||
@Schema(description = "待用数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
private Long standbyCount;
|
||||
|
||||
@Schema(description = "在库数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "8")
|
||||
private Long inStockCount;
|
||||
|
||||
@Schema(description = "维修数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "5")
|
||||
private Long repairingCount;
|
||||
|
||||
@Schema(description = "报废数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
private Long scrappedCount;
|
||||
|
||||
}
|
||||
@ -1,28 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 模具型号状态统计 Response VO")
|
||||
@Data
|
||||
public class MoldBrandStatusStatisticsRespVO {
|
||||
|
||||
@Schema(description = "全部数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
||||
private Long allCount;
|
||||
|
||||
@Schema(description = "在机数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "10")
|
||||
private Long onMachineCount;
|
||||
|
||||
@Schema(description = "待用数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
private Long standbyCount;
|
||||
|
||||
@Schema(description = "在库数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "8")
|
||||
private Long inStockCount;
|
||||
|
||||
@Schema(description = "维修数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "5")
|
||||
private Long repairingCount;
|
||||
|
||||
@Schema(description = "报废数量", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
private Long scrappedCount;
|
||||
|
||||
}
|
||||
@ -1,42 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold.vo;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - 子模具压网记录分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class MoldPressureNetRecordPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "模具组ID", example = "1")
|
||||
private Long moldBrandId;
|
||||
|
||||
@Schema(description = "模具组名称", example = "A组")
|
||||
private String moldBrandName;
|
||||
|
||||
@Schema(description = "子模具ID", example = "1")
|
||||
private Long moldId;
|
||||
|
||||
@Schema(description = "子模具名称", example = "子模具A")
|
||||
private String moldName;
|
||||
|
||||
@Schema(description = "压网时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] pressureNetTime;
|
||||
|
||||
@Schema(description = "备注", example = "备注")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
}
|
||||
@ -1,49 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold.vo;
|
||||
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
import com.alibaba.excel.annotation.ExcelProperty;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - 子模具压网记录 Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class MoldPressureNetRecordRespVO {
|
||||
|
||||
@Schema(description = "ID", example = "1")
|
||||
@ExcelProperty("ID")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "模具组ID", example = "1")
|
||||
@ExcelProperty("模具组ID")
|
||||
private Long moldBrandId;
|
||||
|
||||
@Schema(description = "模具组名称", example = "A组")
|
||||
@ExcelProperty("模具组名称")
|
||||
private String moldBrandName;
|
||||
|
||||
@Schema(description = "子模具ID", example = "1")
|
||||
@ExcelProperty("子模具ID")
|
||||
private Long moldId;
|
||||
|
||||
@Schema(description = "子模具名称", example = "子模具A")
|
||||
@ExcelProperty("子模具名称")
|
||||
private String moldName;
|
||||
|
||||
@Schema(description = "压网时间")
|
||||
@ExcelProperty("压网时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime pressureNetTime;
|
||||
|
||||
@Schema(description = "备注", example = "备注")
|
||||
@ExcelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
@ -1,44 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.mold.vo;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
|
||||
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - 子模具压网记录新增/修改 Request VO")
|
||||
@Data
|
||||
public class MoldPressureNetRecordSaveReqVO {
|
||||
|
||||
@Schema(description = "ID", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "模具组ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "模具组ID不能为空")
|
||||
private Long moldBrandId;
|
||||
|
||||
@Schema(description = "模具组名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "A组")
|
||||
private String moldBrandName;
|
||||
|
||||
@Schema(description = "子模具ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "子模具ID不能为空")
|
||||
private Long moldId;
|
||||
|
||||
@Schema(description = "子模具名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "子模具A")
|
||||
private String moldName;
|
||||
|
||||
@Schema(description = "压网时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@NotNull(message = "压网时间不能为空")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonSerialize(using = LocalDateTimeSerializer.class)
|
||||
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
|
||||
private LocalDateTime pressureNetTime;
|
||||
|
||||
@Schema(description = "备注", example = "备注")
|
||||
private String remark;
|
||||
}
|
||||
@ -1,108 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product;
|
||||
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme.ErpPackagingSchemePageReqVO;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme.ErpPackagingSchemeRespVO;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme.ErpPackagingSchemeSaveReqVO;
|
||||
import cn.iocoder.yudao.module.erp.dal.dataobject.product.ErpPackagingSchemeDO;
|
||||
import cn.iocoder.yudao.module.erp.service.product.ErpPackagingSchemeService;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
|
||||
|
||||
@Tag(name = "管理后台 - ERP 包装方案")
|
||||
@RestController
|
||||
@RequestMapping("/erp/packaging-scheme")
|
||||
@Validated
|
||||
public class ErpPackagingSchemeController {
|
||||
|
||||
@Resource
|
||||
private ErpPackagingSchemeService packagingSchemeService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建包装方案")
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:create')")
|
||||
public CommonResult<Long> createPackagingScheme(@Valid @RequestBody ErpPackagingSchemeSaveReqVO createReqVO) {
|
||||
return success(packagingSchemeService.createPackagingScheme(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新包装方案")
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:update')")
|
||||
public CommonResult<Boolean> updatePackagingScheme(@Valid @RequestBody ErpPackagingSchemeSaveReqVO updateReqVO) {
|
||||
packagingSchemeService.updatePackagingScheme(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除包装方案")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:delete')")
|
||||
public CommonResult<Boolean> deletePackagingScheme(@RequestParam("id") Long id) {
|
||||
packagingSchemeService.deletePackagingScheme(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得包装方案")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:query')")
|
||||
public CommonResult<ErpPackagingSchemeRespVO> getPackagingScheme(@RequestParam("id") Long id) {
|
||||
ErpPackagingSchemeDO scheme = packagingSchemeService.getPackagingScheme(id);
|
||||
return success(BeanUtils.toBean(scheme, ErpPackagingSchemeRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得包装方案分页")
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:query')")
|
||||
public CommonResult<PageResult<ErpPackagingSchemeRespVO>> getPackagingSchemePage(@Valid ErpPackagingSchemePageReqVO pageReqVO) {
|
||||
PageResult<ErpPackagingSchemeDO> pageResult = packagingSchemeService.getPackagingSchemePage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, ErpPackagingSchemeRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/simple-list")
|
||||
@Operation(summary = "获得包装方案精简列表", description = "只包含已启用的包装方案")
|
||||
public CommonResult<List<ErpPackagingSchemeRespVO>> getPackagingSchemeSimpleList() {
|
||||
List<ErpPackagingSchemeDO> list = packagingSchemeService.getPackagingSchemeListByStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
return success(convertList(list, item -> BeanUtils.toBean(item, ErpPackagingSchemeRespVO.class)));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出包装方案 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('erp:packaging-scheme:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportPackagingSchemeExcel(@Valid ErpPackagingSchemePageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<ErpPackagingSchemeDO> list = packagingSchemeService.getPackagingSchemePage(pageReqVO).getList();
|
||||
ExcelUtils.write(response, "包装方案.xls", "数据", ErpPackagingSchemeRespVO.class,
|
||||
BeanUtils.toBean(list, ErpPackagingSchemeRespVO.class));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,20 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.category;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 产品分类树状 Response VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
public class ErpProductCategoryTreeRespVO extends ErpProductCategoryRespVO {
|
||||
|
||||
@Schema(description = "子分类列表")
|
||||
private List<ErpProductCategoryTreeRespVO> children;
|
||||
|
||||
@Schema(description = "是否叶子节点", example = "true")
|
||||
private Boolean leaf = true;
|
||||
|
||||
}
|
||||
@ -1,18 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.category;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 产品分类按类型分组 Response VO")
|
||||
@Data
|
||||
public class ErpProductCategoryTypeGroupRespVO {
|
||||
|
||||
@Schema(description = "分类类型", example = "1")
|
||||
private Integer type;
|
||||
|
||||
@Schema(description = "该类型下的树状分类列表")
|
||||
private List<ErpProductCategoryTreeRespVO> children;
|
||||
|
||||
}
|
||||
@ -1,34 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
import lombok.EqualsAndHashCode;
|
||||
import lombok.ToString;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 包装方案分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class ErpPackagingSchemePageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "方案编码", example = "BZFA202501010001")
|
||||
private String code;
|
||||
|
||||
@Schema(description = "方案名称", example = "标准包装方案")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "状态", example = "0")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
}
|
||||
@ -1,56 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.annotations.DictFormat;
|
||||
import cn.iocoder.yudao.framework.excel.core.convert.DictConvert;
|
||||
import cn.iocoder.yudao.module.system.enums.DictTypeConstants;
|
||||
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
|
||||
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 = "管理后台 - ERP 包装方案 Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class ErpPackagingSchemeRespVO {
|
||||
|
||||
@Schema(description = "包装方案编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@ExcelProperty("编号")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "方案编码", requiredMode = Schema.RequiredMode.REQUIRED, example = "BZFA202501010001")
|
||||
@ExcelProperty("方案编码")
|
||||
private String code;
|
||||
|
||||
@Schema(description = "方案名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "标准包装方案")
|
||||
@ExcelProperty("方案名称")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "每包数量(件)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
||||
@ExcelProperty("每包数量(件)")
|
||||
private BigDecimal packageQuantity;
|
||||
|
||||
@Schema(description = "每托包数(包)", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
@ExcelProperty("每托包数(包)")
|
||||
private BigDecimal palletPackageQuantity;
|
||||
|
||||
@Schema(description = "每托总数量(件)", requiredMode = Schema.RequiredMode.REQUIRED, example = "2000")
|
||||
@ExcelProperty("每托总数量(件)")
|
||||
private BigDecimal palletTotalQuantity;
|
||||
|
||||
@Schema(description = "备注", example = "默认包装")
|
||||
@ExcelProperty("备注")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
|
||||
@ExcelProperty(value = "状态", converter = DictConvert.class)
|
||||
@DictFormat(DictTypeConstants.COMMON_STATUS)
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
@ -1,48 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.packagingscheme;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.framework.common.validation.InEnum;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.DecimalMin;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 包装方案新增/修改 Request VO")
|
||||
@Data
|
||||
public class ErpPackagingSchemeSaveReqVO {
|
||||
|
||||
@Schema(description = "包装方案编号", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "方案编码", example = "BZFA202501010001")
|
||||
private String code;
|
||||
|
||||
@Schema(description = "方案名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "标准包装方案")
|
||||
@NotBlank(message = "方案名称不能为空")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "每包数量(件)", requiredMode = Schema.RequiredMode.REQUIRED, example = "100")
|
||||
@NotNull(message = "每包数量不能为空")
|
||||
@DecimalMin(value = "0", inclusive = false, message = "每包数量必须大于 0")
|
||||
private BigDecimal packageQuantity;
|
||||
|
||||
@Schema(description = "每托包数(包)", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
@NotNull(message = "每托包数不能为空")
|
||||
@DecimalMin(value = "0", inclusive = false, message = "每托包数必须大于 0")
|
||||
private BigDecimal palletPackageQuantity;
|
||||
|
||||
@Schema(description = "每托总数量(件)", example = "2000")
|
||||
private BigDecimal palletTotalQuantity;
|
||||
|
||||
@Schema(description = "备注", example = "默认包装")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "0")
|
||||
@NotNull(message = "状态不能为空")
|
||||
@InEnum(CommonStatusEnum.class)
|
||||
private Integer status;
|
||||
|
||||
}
|
||||
@ -1,33 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.product;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Schema(description = "管理后台 - 产品关联包装方案 Response VO")
|
||||
@Data
|
||||
public class ProductPackagingSchemeRespVO {
|
||||
|
||||
@Schema(description = "关联记录 ID", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "包装方案 ID", example = "1")
|
||||
private Long packagingSchemeId;
|
||||
|
||||
@Schema(description = "包装方案名称", example = "标准包装方案")
|
||||
private String packagingSchemeName;
|
||||
|
||||
@Schema(description = "每包数量(件)", example = "100")
|
||||
private BigDecimal packageQuantity;
|
||||
|
||||
@Schema(description = "每托包数(包)", example = "20")
|
||||
private BigDecimal palletPackageQuantity;
|
||||
|
||||
@Schema(description = "每托总数量(件)", example = "2000")
|
||||
private BigDecimal palletTotalQuantity;
|
||||
|
||||
@Schema(description = "是否默认方案", example = "1")
|
||||
private Integer defaultStatus;
|
||||
|
||||
}
|
||||
@ -1,19 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.product;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - 产品关联包装方案 Request VO")
|
||||
@Data
|
||||
public class ProductPackagingSchemeSaveReqVO {
|
||||
|
||||
@Schema(description = "包装方案 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "包装方案 ID 不能为空")
|
||||
private Long packagingSchemeId;
|
||||
|
||||
@Schema(description = "是否默认方案", example = "1")
|
||||
private Integer defaultStatus;
|
||||
|
||||
}
|
||||
@ -1,22 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.product;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
@Schema(description = "管理后台 - 产品关联供应商 Response VO")
|
||||
@Data
|
||||
public class ProductSupplierRespVO {
|
||||
|
||||
@Schema(description = "关联记录 ID", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "供应商 ID", example = "1")
|
||||
private Long supplierId;
|
||||
|
||||
@Schema(description = "供应商名称", example = "默认供应商")
|
||||
private String supplierName;
|
||||
|
||||
@Schema(description = "是否默认供应商", example = "1")
|
||||
private Integer defaultStatus;
|
||||
|
||||
}
|
||||
@ -1,19 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.product.vo.product;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - 产品关联供应商 Request VO")
|
||||
@Data
|
||||
public class ProductSupplierSaveReqVO {
|
||||
|
||||
@Schema(description = "供应商 ID", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "供应商 ID 不能为空")
|
||||
private Long supplierId;
|
||||
|
||||
@Schema(description = "是否默认供应商", example = "1")
|
||||
private Integer defaultStatus;
|
||||
|
||||
}
|
||||
@ -1,45 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.check;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库存盘点单审核记录 Response VO")
|
||||
@Data
|
||||
public class ErpStockCheckApproveRecordRespVO {
|
||||
|
||||
@Schema(description = "编号", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "盘点单编号", example = "1")
|
||||
private Long stockCheckId;
|
||||
|
||||
@Schema(description = "操作类型", example = "SUBMIT")
|
||||
private String actionType;
|
||||
|
||||
@Schema(description = "变更前状态", example = "0")
|
||||
private Integer fromStatus;
|
||||
|
||||
@Schema(description = "变更后状态", example = "10")
|
||||
private Integer toStatus;
|
||||
|
||||
@Schema(description = "目标审核人编号", example = "1")
|
||||
private Long targetUserId;
|
||||
|
||||
@Schema(description = "目标审核人名称", example = "李四")
|
||||
private String targetUserName;
|
||||
|
||||
@Schema(description = "备注", example = "请审核")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "操作人", example = "1")
|
||||
private String creator;
|
||||
|
||||
@Schema(description = "操作人名称", example = "张三")
|
||||
private String creatorName;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
@ -1,23 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.check;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库存盘点单审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockCheckAuditReqVO {
|
||||
|
||||
@Schema(description = "盘点编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "盘点编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核结果 20-通过 1-驳回", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
@NotNull(message = "审核结果不能为空")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "审核备注", example = "审核通过")
|
||||
private String remark;
|
||||
|
||||
}
|
||||
@ -1,26 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.check;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库存盘点按仓库/库区生成盘点项 Request VO")
|
||||
@Data
|
||||
public class ErpStockCheckGenerateByLocationReqVO {
|
||||
|
||||
@Schema(description = "仓库编号列表", example = "[1,2]")
|
||||
private List<Long> warehouseIds;
|
||||
|
||||
@Schema(description = "库区编号列表", example = "[11,12]")
|
||||
private List<Long> areaIds;
|
||||
|
||||
@Schema(description = "是否允许为空,默认 false", example = "false")
|
||||
private Boolean allowEmpty;
|
||||
|
||||
public boolean validSelection() {
|
||||
return (warehouseIds != null && !warehouseIds.isEmpty()) || (areaIds != null && !areaIds.isEmpty());
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,17 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.check;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import java.util.List;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库存盘点按产品生成盘点项 Request VO")
|
||||
@Data
|
||||
public class ErpStockCheckGenerateByProductReqVO {
|
||||
|
||||
@Schema(description = "产品编号列表", requiredMode = Schema.RequiredMode.REQUIRED, example = "[1,2]")
|
||||
@NotEmpty(message = "产品编号列表不能为空")
|
||||
private List<Long> productIds;
|
||||
|
||||
}
|
||||
@ -1,22 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.check;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库存盘点单提交审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockCheckSubmitReqVO {
|
||||
|
||||
@Schema(description = "盘点编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "盘点编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核人编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "1888")
|
||||
private Long auditUserId;
|
||||
|
||||
@Schema(description = "提交备注", example = "请审核")
|
||||
private String remark;
|
||||
|
||||
}
|
||||
@ -1,44 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.in;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它入库单审核记录 Response VO")
|
||||
@Data
|
||||
public class ErpStockInApproveRecordRespVO {
|
||||
|
||||
@Schema(description = "编号", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "入库单编号", example = "1")
|
||||
private Long stockInId;
|
||||
|
||||
@Schema(description = "操作类型", example = "SUBMIT")
|
||||
private String actionType;
|
||||
|
||||
@Schema(description = "变更前状态", example = "0")
|
||||
private Integer fromStatus;
|
||||
|
||||
@Schema(description = "变更后状态", example = "10")
|
||||
private Integer toStatus;
|
||||
|
||||
@Schema(description = "目标审核人编号", example = "1")
|
||||
private Long targetUserId;
|
||||
|
||||
@Schema(description = "目标审核人名称", example = "李四")
|
||||
private String targetUserName;
|
||||
|
||||
@Schema(description = "备注", example = "请审核")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "操作人", example = "1")
|
||||
private String creator;
|
||||
|
||||
@Schema(description = "操作人名称", example = "张三")
|
||||
private String creatorName;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
@ -1,22 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.in;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它入库单审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockInAuditReqVO {
|
||||
|
||||
@Schema(description = "入库编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "入库编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核结果 20-通过 1-驳回", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
@NotNull(message = "审核结果不能为空")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "审核备注", example = "审核通过")
|
||||
private String remark;
|
||||
}
|
||||
@ -1,21 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.in;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它入库单提交审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockInSubmitReqVO {
|
||||
|
||||
@Schema(description = "入库编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "入库编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核人编号", example = "1888")
|
||||
private Long auditUserId;
|
||||
|
||||
@Schema(description = "提交备注", example = "请审核")
|
||||
private String remark;
|
||||
}
|
||||
@ -1,44 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它出库单审核记录 Response VO")
|
||||
@Data
|
||||
public class ErpStockOutApproveRecordRespVO {
|
||||
|
||||
@Schema(description = "编号", example = "1")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "出库单编号", example = "1")
|
||||
private Long stockOutId;
|
||||
|
||||
@Schema(description = "操作类型", example = "SUBMIT")
|
||||
private String actionType;
|
||||
|
||||
@Schema(description = "变更前状态", example = "0")
|
||||
private Integer fromStatus;
|
||||
|
||||
@Schema(description = "变更后状态", example = "10")
|
||||
private Integer toStatus;
|
||||
|
||||
@Schema(description = "目标审核人编号", example = "1")
|
||||
private Long targetUserId;
|
||||
|
||||
@Schema(description = "目标审核人名称", example = "李四")
|
||||
private String targetUserName;
|
||||
|
||||
@Schema(description = "备注", example = "请审核")
|
||||
private String remark;
|
||||
|
||||
@Schema(description = "操作人", example = "1")
|
||||
private String creator;
|
||||
|
||||
@Schema(description = "操作人名称", example = "张三")
|
||||
private String creatorName;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
private LocalDateTime createTime;
|
||||
}
|
||||
@ -1,22 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它出库单审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockOutAuditReqVO {
|
||||
|
||||
@Schema(description = "出库编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "出库编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核结果 20-通过 1-驳回", requiredMode = Schema.RequiredMode.REQUIRED, example = "20")
|
||||
@NotNull(message = "审核结果不能为空")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "审核备注", example = "审核通过")
|
||||
private String remark;
|
||||
}
|
||||
@ -1,21 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.stock.vo.out;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 其它出库单提交审核 Request VO")
|
||||
@Data
|
||||
public class ErpStockOutSubmitReqVO {
|
||||
|
||||
@Schema(description = "出库编号", requiredMode = Schema.RequiredMode.REQUIRED, example = "11756")
|
||||
@NotNull(message = "出库编号不能为空")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "审核人编号", example = "1888")
|
||||
private Long auditUserId;
|
||||
|
||||
@Schema(description = "提交备注", example = "请审核")
|
||||
private String remark;
|
||||
}
|
||||
@ -1,114 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehousearea;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.stock.vo.warehouse.ErpWarehouseRespVO;
|
||||
import cn.iocoder.yudao.module.erp.dal.dataobject.stock.ErpWarehouseDO;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
||||
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
|
||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
|
||||
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.warehousearea.vo.*;
|
||||
import cn.iocoder.yudao.module.erp.dal.dataobject.warehousearea.WarehouseAreaDO;
|
||||
import cn.iocoder.yudao.module.erp.service.warehousearea.WarehouseAreaService;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
|
||||
@Tag(name = "管理后台 - ERP 库区信息")
|
||||
@RestController
|
||||
@RequestMapping("/erp/warehouse-area")
|
||||
@Validated
|
||||
public class WarehouseAreaController {
|
||||
|
||||
@Resource
|
||||
private WarehouseAreaService warehouseAreaService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建ERP 库区信息")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:create')")
|
||||
public CommonResult<Long> createWarehouseArea(@Valid @RequestBody WarehouseAreaSaveReqVO createReqVO) {
|
||||
return success(warehouseAreaService.createWarehouseArea(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新ERP 库区信息")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:update')")
|
||||
public CommonResult<Boolean> updateWarehouseArea(@Valid @RequestBody WarehouseAreaSaveReqVO updateReqVO) {
|
||||
warehouseAreaService.updateWarehouseArea(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除ERP 库区信息")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:delete')")
|
||||
public CommonResult<Boolean> deleteWarehouseArea(@RequestParam("id") Long id) {
|
||||
warehouseAreaService.deleteWarehouseArea(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得ERP 库区信息")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:query')")
|
||||
public CommonResult<WarehouseAreaRespVO> getWarehouseArea(@RequestParam("id") Long id) {
|
||||
WarehouseAreaDO warehouseArea = warehouseAreaService.getWarehouseArea(id);
|
||||
return success(BeanUtils.toBean(warehouseArea, WarehouseAreaRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得ERP 库区信息分页")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:query')")
|
||||
public CommonResult<PageResult<WarehouseAreaRespVO>> getWarehouseAreaPage(@Valid WarehouseAreaPageReqVO pageReqVO) {
|
||||
PageResult<WarehouseAreaDO> pageResult = warehouseAreaService.getWarehouseAreaPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, WarehouseAreaRespVO.class));
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/simple-list")
|
||||
@Operation(summary = "获得库区精简列表", description = "只包含被开启的仓库库区,主要用于前端的下拉选项")
|
||||
public CommonResult<List<WarehouseAreaRespVO>> getWarehouseSimpleList(@RequestParam(value = "warehouseId", required = false) Long warehouseId) {
|
||||
List<WarehouseAreaDO> list = warehouseAreaService.getWarehouseListByStatusAndWarehouseId(CommonStatusEnum.ENABLE.getStatus(), warehouseId);
|
||||
return success(convertList(list, area -> new WarehouseAreaRespVO()
|
||||
.setId(area.getId())
|
||||
.setWarehouseId(area.getWarehouseId())
|
||||
.setAreaCode(area.getAreaCode())
|
||||
.setAreaName(area.getAreaName())
|
||||
.setStatus(area.getStatus())));
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出ERP 库区信息 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-area:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportWarehouseAreaExcel(@Valid WarehouseAreaPageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<WarehouseAreaDO> list = warehouseAreaService.getWarehouseAreaPage(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "ERP 库区信息.xls", "数据", WarehouseAreaRespVO.class,
|
||||
BeanUtils.toBean(list, WarehouseAreaRespVO.class));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,41 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehousearea.vo;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import java.math.BigDecimal;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库区信息分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WarehouseAreaPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "所属仓库id", example = "19404")
|
||||
private Long warehouseId;
|
||||
|
||||
@Schema(description = "库区编码")
|
||||
private String areaCode;
|
||||
|
||||
@Schema(description = "库区名称", example = "赵六")
|
||||
private String areaName;
|
||||
|
||||
@Schema(description = "面积(平方米)")
|
||||
private BigDecimal areaSize;
|
||||
|
||||
@Schema(description = "库区描述", example = "你说的对")
|
||||
private String description;
|
||||
|
||||
@Schema(description = "开启状态", example = "2")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
}
|
||||
@ -1,48 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehousearea.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import java.math.BigDecimal;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
import com.alibaba.excel.annotation.*;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库区信息 Response VO")
|
||||
@Data
|
||||
@ExcelIgnoreUnannotated
|
||||
public class WarehouseAreaRespVO {
|
||||
|
||||
@Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1157")
|
||||
@ExcelProperty("id")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "所属仓库id", requiredMode = Schema.RequiredMode.REQUIRED, example = "19404")
|
||||
@ExcelProperty("所属仓库id")
|
||||
private Long warehouseId;
|
||||
|
||||
@Schema(description = "库区编码", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("库区编码")
|
||||
private String areaCode;
|
||||
|
||||
@Schema(description = "库区名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "赵六")
|
||||
@ExcelProperty("库区名称")
|
||||
private String areaName;
|
||||
|
||||
@Schema(description = "面积(平方米)")
|
||||
@ExcelProperty("面积(平方米)")
|
||||
private BigDecimal areaSize;
|
||||
|
||||
@Schema(description = "库区描述", example = "你说的对")
|
||||
@ExcelProperty("库区描述")
|
||||
private String description;
|
||||
|
||||
@Schema(description = "开启状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "2")
|
||||
@ExcelProperty("开启状态")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
@ExcelProperty("创建时间")
|
||||
private LocalDateTime createTime;
|
||||
|
||||
}
|
||||
@ -1,38 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehousearea.vo;
|
||||
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotEmpty;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.math.BigDecimal;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库区信息新增/修改 Request VO")
|
||||
@Data
|
||||
public class WarehouseAreaSaveReqVO {
|
||||
|
||||
@Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "1157")
|
||||
private Long id;
|
||||
|
||||
@Schema(description = "所属仓库id", example = "19404")
|
||||
private Long warehouseId;
|
||||
|
||||
@Schema(description = "库区编码", requiredMode = Schema.RequiredMode.REQUIRED)
|
||||
// @NotEmpty(message = "库区编码不能为空")
|
||||
private String areaCode;
|
||||
|
||||
@Schema(description = "库区名称", requiredMode = Schema.RequiredMode.REQUIRED, example = "A区")
|
||||
@NotEmpty(message = "库区名称不能为空")
|
||||
private String areaName;
|
||||
|
||||
@Schema(description = "面积(平方米)")
|
||||
private BigDecimal areaSize;
|
||||
|
||||
@Schema(description = "库区描述", example = "常温区")
|
||||
private String description;
|
||||
|
||||
@Schema(description = "开启状态", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
|
||||
@NotNull(message = "开启状态不能为空")
|
||||
private Integer status;
|
||||
|
||||
}
|
||||
@ -1,110 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehouselocation;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.enums.CommonStatusEnum;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.security.access.prepost.PreAuthorize;
|
||||
import io.swagger.v3.oas.annotations.tags.Tag;
|
||||
import io.swagger.v3.oas.annotations.Parameter;
|
||||
import io.swagger.v3.oas.annotations.Operation;
|
||||
|
||||
import java.util.*;
|
||||
import java.io.IOException;
|
||||
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageResult;
|
||||
import cn.iocoder.yudao.framework.common.pojo.CommonResult;
|
||||
import cn.iocoder.yudao.framework.common.util.object.BeanUtils;
|
||||
import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success;
|
||||
import static cn.iocoder.yudao.framework.common.util.collection.CollectionUtils.convertList;
|
||||
|
||||
import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils;
|
||||
|
||||
import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog;
|
||||
import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.*;
|
||||
|
||||
import cn.iocoder.yudao.module.erp.controller.admin.warehouselocation.vo.*;
|
||||
import cn.iocoder.yudao.module.erp.dal.dataobject.warehouselocation.WarehouseLocationDO;
|
||||
import cn.iocoder.yudao.module.erp.service.warehouselocation.WarehouseLocationService;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.Valid;
|
||||
|
||||
@Tag(name = "管理后台 - ERP 库位信息")
|
||||
@RestController
|
||||
@RequestMapping("/erp/warehouse-location")
|
||||
@Validated
|
||||
public class WarehouseLocationController {
|
||||
|
||||
@Resource
|
||||
private WarehouseLocationService warehouseLocationService;
|
||||
|
||||
@PostMapping("/create")
|
||||
@Operation(summary = "创建ERP 库位信息")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:create')")
|
||||
public CommonResult<Long> createWarehouseLocation(@Valid @RequestBody WarehouseLocationSaveReqVO createReqVO) {
|
||||
return success(warehouseLocationService.createWarehouseLocation(createReqVO));
|
||||
}
|
||||
|
||||
@PutMapping("/update")
|
||||
@Operation(summary = "更新ERP 库位信息")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:update')")
|
||||
public CommonResult<Boolean> updateWarehouseLocation(@Valid @RequestBody WarehouseLocationSaveReqVO updateReqVO) {
|
||||
warehouseLocationService.updateWarehouseLocation(updateReqVO);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@DeleteMapping("/delete")
|
||||
@Operation(summary = "删除ERP 库位信息")
|
||||
@Parameter(name = "id", description = "编号", required = true)
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:delete')")
|
||||
public CommonResult<Boolean> deleteWarehouseLocation(@RequestParam("id") Long id) {
|
||||
warehouseLocationService.deleteWarehouseLocation(id);
|
||||
return success(true);
|
||||
}
|
||||
|
||||
@GetMapping("/get")
|
||||
@Operation(summary = "获得ERP 库位信息")
|
||||
@Parameter(name = "id", description = "编号", required = true, example = "1024")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:query')")
|
||||
public CommonResult<WarehouseLocationRespVO> getWarehouseLocation(@RequestParam("id") Long id) {
|
||||
WarehouseLocationDO warehouseLocation = warehouseLocationService.getWarehouseLocation(id);
|
||||
return success(BeanUtils.toBean(warehouseLocation, WarehouseLocationRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/page")
|
||||
@Operation(summary = "获得ERP 库位信息分页")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:query')")
|
||||
public CommonResult<PageResult<WarehouseLocationRespVO>> getWarehouseLocationPage(@Valid WarehouseLocationPageReqVO pageReqVO) {
|
||||
PageResult<WarehouseLocationDO> pageResult = warehouseLocationService.getWarehouseLocationPage(pageReqVO);
|
||||
return success(BeanUtils.toBean(pageResult, WarehouseLocationRespVO.class));
|
||||
}
|
||||
|
||||
@GetMapping("/simple-list")
|
||||
@Operation(summary = "获得ERP 库位信息精简列表", description = "只包含已启用的库位,主要用于前端下拉选项")
|
||||
public CommonResult<List<WarehouseLocationRespVO>> getWarehouseLocationSimpleList() {
|
||||
List<WarehouseLocationDO> list = warehouseLocationService.getWarehouseLocationListByStatus(CommonStatusEnum.ENABLE.getStatus());
|
||||
return success(convertList(list, item -> new WarehouseLocationRespVO()
|
||||
.setId(item.getId())
|
||||
.setWarehouseId(item.getWarehouseId())
|
||||
.setAreaId(item.getAreaId())
|
||||
.setCode(item.getCode())
|
||||
.setName(item.getName())
|
||||
.setStatus(item.getStatus())));
|
||||
}
|
||||
|
||||
@GetMapping("/export-excel")
|
||||
@Operation(summary = "导出ERP 库位信息 Excel")
|
||||
@PreAuthorize("@ss.hasPermission('erp:warehouse-location:export')")
|
||||
@ApiAccessLog(operateType = EXPORT)
|
||||
public void exportWarehouseLocationExcel(@Valid WarehouseLocationPageReqVO pageReqVO,
|
||||
HttpServletResponse response) throws IOException {
|
||||
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
|
||||
List<WarehouseLocationDO> list = warehouseLocationService.getWarehouseLocationPage(pageReqVO).getList();
|
||||
// 导出 Excel
|
||||
ExcelUtils.write(response, "ERP 库位信息.xls", "数据", WarehouseLocationRespVO.class,
|
||||
BeanUtils.toBean(list, WarehouseLocationRespVO.class));
|
||||
}
|
||||
|
||||
}
|
||||
@ -1,59 +0,0 @@
|
||||
package cn.iocoder.yudao.module.erp.controller.admin.warehouselocation.vo;
|
||||
|
||||
import lombok.*;
|
||||
import java.util.*;
|
||||
import io.swagger.v3.oas.annotations.media.Schema;
|
||||
import cn.iocoder.yudao.framework.common.pojo.PageParam;
|
||||
import java.math.BigDecimal;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
|
||||
|
||||
@Schema(description = "管理后台 - ERP 库位信息分页 Request VO")
|
||||
@Data
|
||||
@EqualsAndHashCode(callSuper = true)
|
||||
@ToString(callSuper = true)
|
||||
public class WarehouseLocationPageReqVO extends PageParam {
|
||||
|
||||
@Schema(description = "所属仓库ID", example = "19287")
|
||||
private Long warehouseId;
|
||||
|
||||
@Schema(description = "所属库区ID", example = "513")
|
||||
private Long areaId;
|
||||
|
||||
@Schema(description = "库位编码")
|
||||
private String code;
|
||||
|
||||
@Schema(description = "库位名称", example = "张三")
|
||||
private String name;
|
||||
|
||||
@Schema(description = "面积")
|
||||
private BigDecimal areaSize;
|
||||
|
||||
@Schema(description = "最大载重量")
|
||||
private BigDecimal maxLoadWeight;
|
||||
|
||||
@Schema(description = "库位位置X")
|
||||
private Integer positionX;
|
||||
|
||||
@Schema(description = "库位位置Y")
|
||||
private Integer positionY;
|
||||
|
||||
@Schema(description = "库位位置Z")
|
||||
private Integer positionZ;
|
||||
|
||||
@Schema(description = "是否允许产品混放")
|
||||
private Boolean allowProductMix;
|
||||
|
||||
@Schema(description = "是否允许批次混放")
|
||||
private Boolean allowBatchMix;
|
||||
|
||||
@Schema(description = "开启状态", example = "1")
|
||||
private Integer status;
|
||||
|
||||
@Schema(description = "创建时间")
|
||||
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
|
||||
private LocalDateTime[] createTime;
|
||||
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue