feat(biz): 更新成品入库出库日志功能并新增原材料入库出库日志模块

This commit is contained in:
zxy 2026-05-22 11:35:28 +08:00
parent bd434cf25e
commit 1884ead27a
16 changed files with 1050 additions and 98 deletions

View File

@ -0,0 +1,94 @@
package com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog;
import com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageParam;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult;
import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils;
import com.ningxia.yunxi.chemmes.framework.excel.core.util.ExcelUtils;
import com.ningxia.yunxi.chemmes.framework.operatelog.core.annotations.OperateLog;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogPageReqVO;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogRespVO;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog.RawStorageLogDO;
import com.ningxia.yunxi.chemmes.module.biz.service.rawstoragelog.RawStorageLogService;
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.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.io.IOException;
import java.util.List;
import static com.ningxia.yunxi.chemmes.framework.common.pojo.CommonResult.success;
import static com.ningxia.yunxi.chemmes.framework.operatelog.core.enums.OperateTypeEnum.EXPORT;
@Tag(name = "管理后台 - 入/出库日志")
@RestController
@RequestMapping("/twm/raw-storage-log")
@Validated
public class RawStorageLogController {
@Resource
private RawStorageLogService rawStorageLogService;
@PostMapping("/create")
@Operation(summary = "创建入/出库日志")
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:create')")
public CommonResult<Integer> createRawStorageLog(@Valid @RequestBody RawStorageLogSaveReqVO createReqVO) {
return success(rawStorageLogService.createRawStorageLog(createReqVO));
}
@PutMapping("/update")
@Operation(summary = "更新入/出库日志")
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:update')")
public CommonResult<Boolean> updateRawStorageLog(@Valid @RequestBody RawStorageLogSaveReqVO updateReqVO) {
rawStorageLogService.updateRawStorageLog(updateReqVO);
return success(true);
}
@DeleteMapping("/delete")
@Operation(summary = "删除入/出库日志")
@Parameter(name = "id", description = "编号", required = true)
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:delete')")
public CommonResult<Boolean> deleteRawStorageLog(@RequestParam("id") Integer id) {
rawStorageLogService.deleteRawStorageLog(id);
return success(true);
}
@GetMapping("/get")
@Operation(summary = "获得入/出库日志")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:query')")
public CommonResult<RawStorageLogRespVO> getRawStorageLog(@RequestParam("id") Integer id) {
RawStorageLogDO rawStorageLog = rawStorageLogService.getRawStorageLog(id);
return success(BeanUtils.toBean(rawStorageLog, RawStorageLogRespVO.class));
}
@GetMapping("/page")
@Operation(summary = "获得入/出库日志分页")
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:query')")
public CommonResult<PageResult<RawStorageLogRespVO>> getRawStorageLogPage(@Valid RawStorageLogPageReqVO pageReqVO) {
PageResult<RawStorageLogDO> pageResult = rawStorageLogService.getRawStorageLogPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, RawStorageLogRespVO.class));
}
@GetMapping("/export-excel")
@Operation(summary = "导出入/出库日志 Excel")
@PreAuthorize("@ss.hasPermission('twm:raw-storage-log:export')")
@OperateLog(type = EXPORT)
public void exportRawStorageLogExcel(@Valid RawStorageLogPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<RawStorageLogDO> list = rawStorageLogService.getRawStorageLogPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "入/出库日志.xls", "数据", RawStorageLogRespVO.class,
BeanUtils.toBean(list, RawStorageLogRespVO.class));
}
}

View File

@ -0,0 +1,123 @@
package com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo;
import com.ningxia.yunxi.chemmes.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.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import static com.ningxia.yunxi.chemmes.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 RawStorageLogPageReqVO extends PageParam {
@Schema(description = "入/出库Id", example = "25543")
private Integer stockId;
@Schema(description = "备注", example = "随便")
private String description;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "状态1为保存2为提交3为作废", example = "1")
private Boolean status;
@Schema(description = "仓储id", example = "29167")
private Integer storeHouseId;
@Schema(description = "库区id", example = "22342")
private Integer storeAreaId;
@Schema(description = "仓储编码")
private String storeHouseCd;
@Schema(description = "仓储名称", example = "张三")
private String storeHouseName;
@Schema(description = "库区编码")
private String storeAreCd;
@Schema(description = "库区名称", example = "张三")
private String storeAreaName;
@Schema(description = "物料id", example = "1835")
private Integer materialId;
@Schema(description = "物料名称", example = "芋艿")
private String matName;
@Schema(description = "物料编码")
private String matCode;
@Schema(description = "规格型号")
private String spec;
@Schema(description = "单位")
private String unit;
@Schema(description = "批次号")
private String lotNo;
@Schema(description = "操作数量")
private BigDecimal operatorQty;
@Schema(description = "单据类型 1为入库2为出库", example = "1")
private Boolean operatorType;
@Schema(description = "业务类型 (10 采购入库11 盘盈入库12 其它入库 21 生产领料 22 盘亏出库 23采购退料)", example = "1")
private Integer businessType;
@Schema(description = "盘点数量")
private BigDecimal storageAft;
@Schema(description = "盘点前数量")
private BigDecimal storageBef;
@Schema(description = "入/出库子表Id", example = "21687")
private Integer stockItemId;
@Schema(description = "入出库单号")
private String dpstNo;
@Schema(description = "供应商编码")
private String supplierNo;
@Schema(description = "供应商名称", example = "李四")
private String supplierName;
@Schema(description = "供应商id", example = "31354")
private Integer supplierId;
@Schema(description = "采购数量")
private BigDecimal purQty;
@Schema(description = "业务日期")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDate[] billDate;
@Schema(description = "操作人id", example = "16781")
private Integer operatorId;
@Schema(description = "操作人", example = "芋艿")
private String operatorName;
@Schema(description = "关联单号")
private String relarionNo;
@Schema(description = "关联单号id", example = "21271")
private Integer relarionId;
@Schema(description = "关联子单号id", example = "25577")
private Integer relarionDetailId;
}

View File

@ -0,0 +1,153 @@
package com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.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 java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
@Schema(description = "管理后台 - 入/出库日志 Response VO")
@Data
@ExcelIgnoreUnannotated
public class RawStorageLogRespVO {
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "30554")
@ExcelProperty("主键id")
private Integer id;
@Schema(description = "入/出库Id", example = "25543")
@ExcelProperty("入/出库Id")
private Integer stockId;
@Schema(description = "备注", example = "随便")
@ExcelProperty("备注")
private String description;
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "状态1为保存2为提交3为作废", example = "1")
@ExcelProperty("状态1为保存2为提交3为作废")
private Boolean status;
@Schema(description = "仓储id", requiredMode = Schema.RequiredMode.REQUIRED, example = "29167")
@ExcelProperty("仓储id")
private Integer storeHouseId;
@Schema(description = "库区id", requiredMode = Schema.RequiredMode.REQUIRED, example = "22342")
@ExcelProperty("库区id")
private Integer storeAreaId;
@Schema(description = "仓储编码")
@ExcelProperty("仓储编码")
private String storeHouseCd;
@Schema(description = "仓储名称", example = "张三")
@ExcelProperty("仓储名称")
private String storeHouseName;
@Schema(description = "库区编码")
@ExcelProperty("库区编码")
private String storeAreCd;
@Schema(description = "库区名称", example = "张三")
@ExcelProperty("库区名称")
private String storeAreaName;
@Schema(description = "物料id", example = "1835")
@ExcelProperty("物料id")
private Integer materialId;
@Schema(description = "物料名称", example = "芋艿")
@ExcelProperty("物料名称")
private String matName;
@Schema(description = "物料编码")
@ExcelProperty("物料编码")
private String matCode;
@Schema(description = "规格型号")
@ExcelProperty("规格型号")
private String spec;
@Schema(description = "单位")
@ExcelProperty("单位")
private String unit;
@Schema(description = "批次号")
@ExcelProperty("批次号")
private String lotNo;
@Schema(description = "操作数量")
@ExcelProperty("操作数量")
private BigDecimal operatorQty;
@Schema(description = "单据类型 1为入库2为出库", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@ExcelProperty("单据类型 1为入库2为出库")
private Boolean operatorType;
@Schema(description = "业务类型 (10 采购入库11 盘盈入库12 其它入库 21 生产领料 22 盘亏出库 23采购退料)", example = "1")
@ExcelProperty("业务类型 (10 采购入库11 盘盈入库12 其它入库 21 生产领料 22 盘亏出库 23采购退料)")
private Integer businessType;
@Schema(description = "盘点数量")
@ExcelProperty("盘点数量")
private BigDecimal storageAft;
@Schema(description = "盘点前数量")
@ExcelProperty("盘点前数量")
private BigDecimal storageBef;
@Schema(description = "入/出库子表Id", example = "21687")
@ExcelProperty("入/出库子表Id")
private Integer stockItemId;
@Schema(description = "入出库单号", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("入出库单号")
private String dpstNo;
@Schema(description = "供应商编码")
@ExcelProperty("供应商编码")
private String supplierNo;
@Schema(description = "供应商名称", example = "李四")
@ExcelProperty("供应商名称")
private String supplierName;
@Schema(description = "供应商id", example = "31354")
@ExcelProperty("供应商id")
private Integer supplierId;
@Schema(description = "采购数量")
@ExcelProperty("采购数量")
private BigDecimal purQty;
@Schema(description = "业务日期")
@ExcelProperty("业务日期")
private LocalDate billDate;
@Schema(description = "操作人id", example = "16781")
@ExcelProperty("操作人id")
private Integer operatorId;
@Schema(description = "操作人", example = "芋艿")
@ExcelProperty("操作人")
private String operatorName;
@Schema(description = "关联单号")
@ExcelProperty("关联单号")
private String relarionNo;
@Schema(description = "关联单号id", example = "21271")
@ExcelProperty("关联单号id")
private Integer relarionId;
@Schema(description = "关联子单号id", example = "25577")
@ExcelProperty("关联子单号id")
private Integer relarionDetailId;
}

View File

@ -0,0 +1,118 @@
package com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.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;
import java.time.LocalDate;
@Schema(description = "管理后台 - 入/出库日志新增/修改 Request VO")
@Data
public class RawStorageLogSaveReqVO {
@Schema(description = "主键id", requiredMode = Schema.RequiredMode.REQUIRED, example = "30554")
private Integer id;
@Schema(description = "入/出库Id", example = "25543")
private Integer stockId;
@Schema(description = "备注", example = "随便")
private String description;
@Schema(description = "状态1为保存2为提交3为作废", example = "1")
private Boolean status;
@Schema(description = "仓储id", requiredMode = Schema.RequiredMode.REQUIRED, example = "29167")
@NotNull(message = "仓储id不能为空")
private Integer storeHouseId;
@Schema(description = "库区id", requiredMode = Schema.RequiredMode.REQUIRED, example = "22342")
@NotNull(message = "库区id不能为空")
private Integer storeAreaId;
@Schema(description = "仓储编码")
private String storeHouseCd;
@Schema(description = "仓储名称", example = "张三")
private String storeHouseName;
@Schema(description = "库区编码")
private String storeAreCd;
@Schema(description = "库区名称", example = "张三")
private String storeAreaName;
@Schema(description = "物料id", example = "1835")
private Integer materialId;
@Schema(description = "物料名称", example = "芋艿")
private String matName;
@Schema(description = "物料编码")
private String matCode;
@Schema(description = "规格型号")
private String spec;
@Schema(description = "单位")
private String unit;
@Schema(description = "批次号")
private String lotNo;
@Schema(description = "操作数量")
private BigDecimal operatorQty;
@Schema(description = "单据类型 1为入库2为出库", requiredMode = Schema.RequiredMode.REQUIRED, example = "1")
@NotNull(message = "单据类型 1为入库2为出库不能为空")
private Boolean operatorType;
@Schema(description = "业务类型 (10 采购入库11 盘盈入库12 其它入库 21 生产领料 22 盘亏出库 23采购退料)", example = "1")
private Integer businessType;
@Schema(description = "盘点数量")
private BigDecimal storageAft;
@Schema(description = "盘点前数量")
private BigDecimal storageBef;
@Schema(description = "入/出库子表Id", example = "21687")
private Integer stockItemId;
@Schema(description = "入出库单号", requiredMode = Schema.RequiredMode.REQUIRED)
@NotEmpty(message = "入出库单号不能为空")
private String dpstNo;
@Schema(description = "供应商编码")
private String supplierNo;
@Schema(description = "供应商名称", example = "李四")
private String supplierName;
@Schema(description = "供应商id", example = "31354")
private Integer supplierId;
@Schema(description = "采购数量")
private BigDecimal purQty;
@Schema(description = "业务日期")
private LocalDate billDate;
@Schema(description = "操作人id", example = "16781")
private Integer operatorId;
@Schema(description = "操作人", example = "芋艿")
private String operatorName;
@Schema(description = "关联单号")
private String relarionNo;
@Schema(description = "关联单号id", example = "21271")
private Integer relarionId;
@Schema(description = "关联子单号id", example = "25577")
private Integer relarionDetailId;
}

View File

@ -1,14 +1,13 @@
package com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.prostoragelog;
import lombok.*;
import java.util.*;
import java.time.LocalDateTime;
import java.time.LocalDateTime;
import java.math.BigDecimal;
import java.math.BigDecimal;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* 成品入/出库日志 DO
@ -16,7 +15,7 @@ import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDO;
* @author 管理员
*/
@TableName("twm_pro_storage_log")
@KeySequence("twm_pro_storage_log_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@KeySequence("twm_pro_storage_log_seq")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@ -41,7 +40,7 @@ public class ProStorageLogDO extends BaseDO {
/**
* 状态1为保存2为提交3为作废
*/
private Boolean status;
private String status;
/**
* 仓储id
*/
@ -97,11 +96,11 @@ public class ProStorageLogDO extends BaseDO {
/**
* 单据类型 1为入库2为出库
*/
private Boolean inOutType;
private String operatorType;
/**
* 单据类型 (10 生产入库11 盘盈入库12 其它入库 21 成品入库 22 盘亏出库 23生产退库)
* 单据类型 (10 成品入库11 盘盈入库12 其它入库 21 成品出库 22 盘亏出库 23生产退库)
*/
private Integer billType;
private String businessType;
/**
* 盘点数量
*/
@ -114,5 +113,33 @@ public class ProStorageLogDO extends BaseDO {
* /出库子表Id
*/
private Integer stockItemId;
/**
* 业务日期
*/
private LocalDate billDate;
/**
* 操作人id
*/
private String operatorId;
/**
* 操作人
*/
private String operatorName;
/**
* 关联单号
*/
private String relarionNo;
/**
* 关联单号id
*/
private Integer relarionId;
/**
* 关联子单号id
*/
private Integer relarionDetailId;
/**
* 入出库单号
*/
private String dpstNo;
}

View File

@ -0,0 +1,161 @@
package com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog;
import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ningxia.yunxi.chemmes.framework.mybatis.core.dataobject.BaseDO;
import lombok.*;
import java.math.BigDecimal;
import java.time.LocalDate;
/**
* /出库日志 DO
*
* @author 管理员
*/
@TableName("twm_raw_storage_log")
@KeySequence("twm_raw_storage_log_seq") // 用于 OraclePostgreSQLKingbaseDB2H2 数据库的主键自增如果是 MySQL 等数据库可不写
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class RawStorageLogDO extends BaseDO {
/**
* 主键id
*/
@TableId
private Integer id;
/**
* /出库Id
*/
private Integer stockId;
/**
* 备注
*/
private String description;
/**
* 状态1为保存2为提交3为作废
*/
private Boolean status;
/**
* 仓储id
*/
private Integer storeHouseId;
/**
* 库区id
*/
private Integer storeAreaId;
/**
* 仓储编码
*/
private String storeHouseCd;
/**
* 仓储名称
*/
private String storeHouseName;
/**
* 库区编码
*/
private String storeAreCd;
/**
* 库区名称
*/
private String storeAreaName;
/**
* 物料id
*/
private Integer materialId;
/**
* 物料名称
*/
private String matName;
/**
* 物料编码
*/
private String matCode;
/**
* 规格型号
*/
private String spec;
/**
* 单位
*/
private String unit;
/**
* 批次号
*/
private String lotNo;
/**
* 操作数量
*/
private BigDecimal operatorQty;
/**
* 单据类型 1为入库2为出库
*/
private String operatorType;
/**
* 业务类型 (10 采购入库11 盘盈入库12 其它入库 21 生产领料 22 盘亏出库 23采购退料)
*/
private String businessType;
/**
* 盘点数量
*/
private BigDecimal storageAft;
/**
* 盘点前数量
*/
private BigDecimal storageBef;
/**
* /出库子表Id
*/
private Integer stockItemId;
/**
* 入出库单号
*/
private String dpstNo;
/**
* 供应商编码
*/
private String supplierNo;
/**
* 供应商名称
*/
private String supplierName;
/**
* 供应商id
*/
private Integer supplierId;
/**
* 采购数量
*/
private BigDecimal purQty;
/**
* 业务日期
*/
private LocalDate billDate;
/**
* 操作人id
*/
private Integer operatorId;
/**
* 操作人
*/
private String operatorName;
/**
* 关联单号
*/
private String relarionNo;
/**
* 关联单号id
*/
private Integer relarionId;
/**
* 关联子单号id
*/
private Integer relarionDetailId;
}

View File

@ -34,12 +34,20 @@ public interface ProStorageLogMapper extends BaseMapperX<ProStorageLogDO> {
.eqIfPresent(ProStorageLogDO::getUnit, reqVO.getUnit())
.eqIfPresent(ProStorageLogDO::getLotNo, reqVO.getLotNo())
.eqIfPresent(ProStorageLogDO::getOperatorQty, reqVO.getOperatorQty())
.eqIfPresent(ProStorageLogDO::getInOutType, reqVO.getInOutType())
.eqIfPresent(ProStorageLogDO::getBillType, reqVO.getBillType())
.eqIfPresent(ProStorageLogDO::getOperatorType, reqVO.getInOutType())
.eqIfPresent(ProStorageLogDO::getBusinessType, reqVO.getBillType())
.eqIfPresent(ProStorageLogDO::getStorageAft, reqVO.getStorageAft())
.eqIfPresent(ProStorageLogDO::getStorageBef, reqVO.getStorageBef())
.eqIfPresent(ProStorageLogDO::getStockItemId, reqVO.getStockItemId())
.orderByDesc(ProStorageLogDO::getId));
}
default String selectMaxPurReceiptNo(String operatorType) {
ProStorageLogDO proStorageLog = selectOne(new LambdaQueryWrapperX<ProStorageLogDO>()
.eq(ProStorageLogDO::getOperatorType, operatorType)
.orderByDesc(ProStorageLogDO::getDpstNo)
.last("LIMIT 1"));
return proStorageLog != null ? proStorageLog.getDpstNo() : null;
}
}

View File

@ -0,0 +1,63 @@
package com.ningxia.yunxi.chemmes.module.biz.dal.mysql.rawstoragelog;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult;
import com.ningxia.yunxi.chemmes.framework.mybatis.core.mapper.BaseMapperX;
import com.ningxia.yunxi.chemmes.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogPageReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog.RawStorageLogDO;
import org.apache.ibatis.annotations.Mapper;
/**
* /出库日志 Mapper
*
* @author 管理员
*/
@Mapper
public interface RawStorageLogMapper extends BaseMapperX<RawStorageLogDO> {
default PageResult<RawStorageLogDO> selectPage(RawStorageLogPageReqVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<RawStorageLogDO>()
.eqIfPresent(RawStorageLogDO::getStockId, reqVO.getStockId())
.eqIfPresent(RawStorageLogDO::getDescription, reqVO.getDescription())
.betweenIfPresent(RawStorageLogDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(RawStorageLogDO::getStatus, reqVO.getStatus())
.eqIfPresent(RawStorageLogDO::getStoreHouseId, reqVO.getStoreHouseId())
.eqIfPresent(RawStorageLogDO::getStoreAreaId, reqVO.getStoreAreaId())
.eqIfPresent(RawStorageLogDO::getStoreHouseCd, reqVO.getStoreHouseCd())
.likeIfPresent(RawStorageLogDO::getStoreHouseName, reqVO.getStoreHouseName())
.eqIfPresent(RawStorageLogDO::getStoreAreCd, reqVO.getStoreAreCd())
.likeIfPresent(RawStorageLogDO::getStoreAreaName, reqVO.getStoreAreaName())
.eqIfPresent(RawStorageLogDO::getMaterialId, reqVO.getMaterialId())
.likeIfPresent(RawStorageLogDO::getMatName, reqVO.getMatName())
.eqIfPresent(RawStorageLogDO::getMatCode, reqVO.getMatCode())
.eqIfPresent(RawStorageLogDO::getSpec, reqVO.getSpec())
.eqIfPresent(RawStorageLogDO::getUnit, reqVO.getUnit())
.eqIfPresent(RawStorageLogDO::getLotNo, reqVO.getLotNo())
.eqIfPresent(RawStorageLogDO::getOperatorQty, reqVO.getOperatorQty())
.eqIfPresent(RawStorageLogDO::getOperatorType, reqVO.getOperatorType())
.eqIfPresent(RawStorageLogDO::getBusinessType, reqVO.getBusinessType())
.eqIfPresent(RawStorageLogDO::getStorageAft, reqVO.getStorageAft())
.eqIfPresent(RawStorageLogDO::getStorageBef, reqVO.getStorageBef())
.eqIfPresent(RawStorageLogDO::getStockItemId, reqVO.getStockItemId())
.eqIfPresent(RawStorageLogDO::getDpstNo, reqVO.getDpstNo())
.eqIfPresent(RawStorageLogDO::getSupplierNo, reqVO.getSupplierNo())
.likeIfPresent(RawStorageLogDO::getSupplierName, reqVO.getSupplierName())
.eqIfPresent(RawStorageLogDO::getSupplierId, reqVO.getSupplierId())
.eqIfPresent(RawStorageLogDO::getPurQty, reqVO.getPurQty())
// .betweenIfPresent(RawStorageLogDO::getBillDate, reqVO.getBillDate())
.eqIfPresent(RawStorageLogDO::getOperatorId, reqVO.getOperatorId())
.likeIfPresent(RawStorageLogDO::getOperatorName, reqVO.getOperatorName())
.eqIfPresent(RawStorageLogDO::getRelarionNo, reqVO.getRelarionNo())
.eqIfPresent(RawStorageLogDO::getRelarionId, reqVO.getRelarionId())
.eqIfPresent(RawStorageLogDO::getRelarionDetailId, reqVO.getRelarionDetailId())
.orderByDesc(RawStorageLogDO::getId));
}
default String selectMaxNo(String operatorType) {
RawStorageLogDO logDO = selectOne(new LambdaQueryWrapperX<RawStorageLogDO>()
.eq(RawStorageLogDO::getOperatorType, operatorType)
.orderByDesc(RawStorageLogDO::getDpstNo)
.last("LIMIT 1"));
return logDO != null ? logDO.getDpstNo() : null;
}
}

View File

@ -52,4 +52,6 @@ public interface ProStorageLogService {
*/
PageResult<ProStorageLogDO> getProStorageLogPage(ProStorageLogPageReqVO pageReqVO);
void saveProStorageLog(ProStorageLogDO saveReqVO);
}

View File

@ -1,6 +1,7 @@
package com.ningxia.yunxi.chemmes.module.biz.service.prostoragelog;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult;
import com.ningxia.yunxi.chemmes.framework.common.util.CodeGenerateUtils;
import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.prostoragelog.vo.ProStorageLogPageReqVO;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.prostoragelog.vo.ProStorageLogSaveReqVO;
@ -67,4 +68,21 @@ public class ProStorageLogServiceImpl implements ProStorageLogService {
return proStorageLogMapper.selectPage(pageReqVO);
}
@Override
public void saveProStorageLog(ProStorageLogDO saveReqVO) {
String orderNumber = generatePurReceiptNo(saveReqVO.getOperatorType());
saveReqVO.setDpstNo(orderNumber);
proStorageLogMapper.insert(saveReqVO);
}
private String generatePurReceiptNo(String operatorType) {
String prefix = "RK";
if ("2".equals(operatorType)) {
prefix = "CK";
}
String maxPurReceiptNo = proStorageLogMapper.selectMaxPurReceiptNo(operatorType);
return CodeGenerateUtils.generateCodeWithDateSequence(prefix, "yyyyMM", 3, maxPurReceiptNo);
}
}

View File

@ -9,8 +9,10 @@ import com.ningxia.yunxi.chemmes.module.biz.controller.admin.purreceiptdetail.vo
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.purreceiptdetail.vo.PurReceiptDetailSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.purreceipt.PurReceiptDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.purreceiptdetail.PurReceiptDetailDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog.RawStorageLogDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.purreceipt.PurReceiptMapper;
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.purreceiptdetail.PurReceiptDetailMapper;
import com.ningxia.yunxi.chemmes.module.biz.service.rawstoragelog.RawStorageLogService;
import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.user.AdminUserDO;
import com.ningxia.yunxi.chemmes.module.system.dal.mysql.user.AdminUserMapper;
import org.springframework.stereotype.Service;
@ -43,6 +45,9 @@ public class PurReceiptServiceImpl implements PurReceiptService {
@Resource
private AdminUserMapper adminUserMapper;
@Resource
private RawStorageLogService rawStorageLogService;
@Override
@Transactional(rollbackFor = Exception.class)
@ -70,7 +75,11 @@ public class PurReceiptServiceImpl implements PurReceiptService {
// detail.setPurOrdDetailId(item.getPurOrdDetailId());
detail.setOrdQty(item.getOrdQty());
detail.setReceiptQty(item.getReceiptQty());
detail.setId(null);
purReceiptDetailMapper.insert(detail);
if ("2".equals(createReqVO.getPurStatus())) {
saveRwaStorageLog(purReceipt, detail);
}
}
}
@ -100,9 +109,19 @@ public class PurReceiptServiceImpl implements PurReceiptService {
detail.setOrdQty(item.getOrdQty());
detail.setReceiptQty(item.getReceiptQty());
purReceiptDetailMapper.insert(detail);
if ("2".equals(updateReqVO.getPurStatus())) {
saveRwaStorageLog(updateObj, detail);
}
}
}
}
private void saveRwaStorageLog(PurReceiptDO purReceipt, PurReceiptDetailDO item) {
RawStorageLogDO rawStorageLog = BeanUtils.toBean(item, RawStorageLogDO.class);
rawStorageLog.setRelarionId(purReceipt.getId());
rawStorageLog.setRelarionNo(purReceipt.getPurReceiptNo());
rawStorageLogService.saveRawStorageLog(rawStorageLog);
}
@Override
@Transactional(rollbackFor = Exception.class)

View File

@ -0,0 +1,57 @@
package com.ningxia.yunxi.chemmes.module.biz.service.rawstoragelog;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogPageReqVO;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog.RawStorageLogDO;
import javax.validation.Valid;
/**
* /出库日志 Service 接口
*
* @author 管理员
*/
public interface RawStorageLogService {
/**
* 创建入/出库日志
*
* @param createReqVO 创建信息
* @return 编号
*/
Integer createRawStorageLog(@Valid RawStorageLogSaveReqVO createReqVO);
/**
* 更新入/出库日志
*
* @param updateReqVO 更新信息
*/
void updateRawStorageLog(@Valid RawStorageLogSaveReqVO updateReqVO);
/**
* 删除入/出库日志
*
* @param id 编号
*/
void deleteRawStorageLog(Integer id);
/**
* 获得入/出库日志
*
* @param id 编号
* @return /出库日志
*/
RawStorageLogDO getRawStorageLog(Integer id);
/**
* 获得入/出库日志分页
*
* @param pageReqVO 分页查询
* @return /出库日志分页
*/
PageResult<RawStorageLogDO> getRawStorageLogPage(RawStorageLogPageReqVO pageReqVO);
void saveRawStorageLog(RawStorageLogDO rawStorageLog);
}

View File

@ -0,0 +1,88 @@
package com.ningxia.yunxi.chemmes.module.biz.service.rawstoragelog;
import com.ningxia.yunxi.chemmes.framework.common.pojo.PageResult;
import com.ningxia.yunxi.chemmes.framework.common.util.CodeGenerateUtils;
import com.ningxia.yunxi.chemmes.framework.common.util.object.BeanUtils;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogPageReqVO;
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.rawstoragelog.vo.RawStorageLogSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.rawstoragelog.RawStorageLogDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.rawstoragelog.RawStorageLogMapper;
import org.springframework.stereotype.Service;
import org.springframework.validation.annotation.Validated;
import javax.annotation.Resource;
import static com.ningxia.yunxi.chemmes.framework.common.exception.util.ServiceExceptionUtil.exception;
/**
* /出库日志 Service 实现类
*
* @author 管理员
*/
@Service
@Validated
public class RawStorageLogServiceImpl implements RawStorageLogService {
@Resource
private RawStorageLogMapper rawStorageLogMapper;
@Override
public Integer createRawStorageLog(RawStorageLogSaveReqVO createReqVO) {
// 插入
RawStorageLogDO rawStorageLog = BeanUtils.toBean(createReqVO, RawStorageLogDO.class);
rawStorageLogMapper.insert(rawStorageLog);
// 返回
return rawStorageLog.getId();
}
@Override
public void updateRawStorageLog(RawStorageLogSaveReqVO updateReqVO) {
// 校验存在
validateRawStorageLogExists(updateReqVO.getId());
// 更新
RawStorageLogDO updateObj = BeanUtils.toBean(updateReqVO, RawStorageLogDO.class);
rawStorageLogMapper.updateById(updateObj);
}
@Override
public void deleteRawStorageLog(Integer id) {
// 校验存在
validateRawStorageLogExists(id);
// 删除
rawStorageLogMapper.deleteById(id);
}
private void validateRawStorageLogExists(Integer id) {
if (rawStorageLogMapper.selectById(id) == null) {
throw exception("入/出库日志不存在`");
}
}
@Override
public RawStorageLogDO getRawStorageLog(Integer id) {
return rawStorageLogMapper.selectById(id);
}
@Override
public PageResult<RawStorageLogDO> getRawStorageLogPage(RawStorageLogPageReqVO pageReqVO) {
return rawStorageLogMapper.selectPage(pageReqVO);
}
@Override
public void saveRawStorageLog(RawStorageLogDO rawStorageLog) {
// 生成订单号
rawStorageLog.setDpstNo(generateOrderNo(rawStorageLog.getOperatorType()));
rawStorageLogMapper.insert(rawStorageLog);
}
private String generateOrderNo(String operatorType) {
String prefix = "RK";
if ("2".equals(operatorType)) {
prefix = "CK";
}
String maxPurReceiptNo = rawStorageLogMapper.selectMaxNo(operatorType);
return CodeGenerateUtils.generateCodeWithDateSequence(prefix, "yyyyMM", 3, maxPurReceiptNo);
}
}

View File

@ -7,9 +7,8 @@ import com.ningxia.yunxi.chemmes.module.biz.controller.admin.saledelivery.vo.Sal
import com.ningxia.yunxi.chemmes.module.biz.controller.admin.saledeliverydetail.vo.SaleDeliveryDetailSaveReqVO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.order.OrderDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.orderitem.OrderItemDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.prostorage.ProStorageDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.prostorageinventory.ProStorageInventoryDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.prostoragemat.ProStorageMatDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.prostoragelog.ProStorageLogDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.saledelivery.SaleDeliveryDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.dataobject.saledeliverydetail.SaleDeliveryDetailDO;
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.order.OrderMapper;
@ -20,6 +19,7 @@ import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.prostoragemat.ProStorageMa
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.saledelivery.SaleDeliveryMapper;
import com.ningxia.yunxi.chemmes.module.biz.dal.mysql.saledeliverydetail.SaleDeliveryDetailMapper;
import com.ningxia.yunxi.chemmes.module.biz.service.prostorage.ProStorageService;
import com.ningxia.yunxi.chemmes.module.biz.service.prostoragelog.ProStorageLogService;
import com.ningxia.yunxi.chemmes.module.system.dal.dataobject.user.AdminUserDO;
import com.ningxia.yunxi.chemmes.module.system.dal.mysql.user.AdminUserMapper;
import org.springframework.stereotype.Service;
@ -71,6 +71,9 @@ public class SaleDeliveryServiceImpl implements SaleDeliveryService {
@Resource
private ProStorageService proStorageService;
@Resource
private ProStorageLogService proStorageLogService;
@Override
@Transactional(rollbackFor = Exception.class)
public Integer createSaleDelivery(SaleDeliverySaveReqVO createReqVO) {
@ -230,66 +233,99 @@ public class SaleDeliveryServiceImpl implements SaleDeliveryService {
if (detailList == null || detailList.isEmpty()) {
throw exception("出库单明细不能为空");
}
// 存入 proStorageLogService
for (SaleDeliveryDetailDO saleDeliveryDetailDO : detailList) {
ProStorageDO proStorage = ProStorageDO.builder()
.billNo(proStorageService.generateSaleDeliveryNo())
.operatorType(2)
.businessType(21)
// .billType("0")
.status(1)
.billDate(LocalDate.now())
.operatorId(saleDelivery.getDeliveryEmpId())
.operatorName(saleDelivery.getDeliveryEmpName())
.relarionNo(saleDelivery.getSaleDeliveryNo())
.relarionId(saleDelivery.getId())
.sourceNo(saleDelivery.getSaleOrdNo())
.sourceId(saleDelivery.getSaleOrdId())
.build();
proStorageMapper.insert(proStorage);
for (SaleDeliveryDetailDO detail : detailList) {
ProStorageInventoryDO inventory = proStorageInventoryMapper.selectById(detail.getTwmStorageDetailId());
if (inventory == null) {
throw exception("库存不存在:仓库[" + detail.getStoreHouseName() + "] 批次[" + detail.getLotNo() + "]");
}
BigDecimal deliveriedQty = detail.getDeliveriedQty() != null ? detail.getDeliveriedQty() : BigDecimal.ZERO;
if (inventory.getUseQty().compareTo(deliveriedQty) < 0) {
throw exception("库存不足:当前可用数量[" + inventory.getUseQty() + "] < 发货数量[" + deliveriedQty + "]");
}
inventory.setUseQty(inventory.getUseQty().subtract(deliveriedQty));
inventory.setYardQty(inventory.getYardQty().subtract(deliveriedQty));
inventory.setPackQty(inventory.getPackQty() - (detail.getDeliveriedBagQty()));
proStorageInventoryMapper.updateById(inventory);
ProStorageMatDO storageMat = ProStorageMatDO.builder()
.stockId(proStorage.getId().longValue())
.storeHouseId(detail.getStoreHouseId())
.storeAreaId(detail.getStoreAreaId())
.storeHouseCd(detail.getStoreHouseCd())
.storeHouseName(detail.getStoreHouseName())
.storeAreCd(detail.getStoreAreCd())
.storeAreaName(detail.getStoreAreaName())
ProStorageLogDO proStorageLogDO = ProStorageLogDO.builder()
.stockId(saleDeliveryDetailDO.getId())
.description("销售出库")
.status("2")
.storeHouseId(saleDeliveryDetailDO.getStoreHouseId())
.storeAreaId(saleDeliveryDetailDO.getStoreAreaId())
.storeHouseCd(saleDeliveryDetailDO.getStoreHouseCd())
.storeHouseName(saleDeliveryDetailDO.getStoreHouseName())
.storeAreCd(saleDeliveryDetailDO.getStoreAreCd())
.storeAreaName(saleDeliveryDetailDO.getStoreAreaName())
.materialId(saleDelivery.getMaterialId())
.matName(saleDelivery.getMaterialName())
.matCode(saleDelivery.getMaterialCode())
.spec(saleDelivery.getSpec())
.unit(saleDelivery.getUnit())
.lotNo(detail.getLotNo())
.operatorQty(detail.getDeliveriedQty())
.bagSpec(detail.getBagSpec())
.bagQty(detail.getDeliveriedBagQty())
.relarionId(detail.getSaleDeliveryId().longValue())
.planId(inventory.getPlanId())
.proNo(inventory.getProNo())
.sourceId(inventory.getId())
.inventBillNo(inventory.getInventBillNo())
.lotNo(saleDeliveryDetailDO.getLotNo())
.operatorQty(saleDeliveryDetailDO.getDeliveriedQty())
.operatorType("2")
.businessType("21")
.stockItemId(saleDeliveryDetailDO.getId())
.billDate(LocalDate.now())
.operatorId(saleDelivery.getDeliveryEmpId())
.operatorName(saleDelivery.getDeliveryEmpName())
.relarionNo(saleDelivery.getSaleDeliveryNo())
.relarionId(saleDelivery.getId())
.relarionDetailId(saleDeliveryDetailDO.getId())
.build();
proStorageMatMapper.insert(storageMat);
proStorageLogService.saveProStorageLog(proStorageLogDO);
}
// ProStorageDO proStorage = ProStorageDO.builder()
// .billNo(proStorageService.generateSaleDeliveryNo())
// .operatorType(2)
// .businessType(21)
//// .billType("0")
// .status(1)
// .billDate(LocalDate.now())
// .operatorId(saleDelivery.getDeliveryEmpId())
// .operatorName(saleDelivery.getDeliveryEmpName())
// .relarionNo(saleDelivery.getSaleDeliveryNo())
// .relarionId(saleDelivery.getId())
// .sourceNo(saleDelivery.getSaleOrdNo())
// .sourceId(saleDelivery.getSaleOrdId())
// .build();
// proStorageMapper.insert(proStorage);
//
// for (SaleDeliveryDetailDO detail : detailList) {
// ProStorageInventoryDO inventory = proStorageInventoryMapper.selectById(detail.getTwmStorageDetailId());
// if (inventory == null) {
// throw exception("库存不存在:仓库[" + detail.getStoreHouseName() + "] 批次[" + detail.getLotNo() + "]");
// }
//
// BigDecimal deliveriedQty = detail.getDeliveriedQty() != null ? detail.getDeliveriedQty() : BigDecimal.ZERO;
// if (inventory.getUseQty().compareTo(deliveriedQty) < 0) {
// throw exception("库存不足:当前可用数量[" + inventory.getUseQty() + "] < 发货数量[" + deliveriedQty + "]");
// }
//
// inventory.setUseQty(inventory.getUseQty().subtract(deliveriedQty));
// inventory.setYardQty(inventory.getYardQty().subtract(deliveriedQty));
// inventory.setPackQty(inventory.getPackQty() - (detail.getDeliveriedBagQty()));
// proStorageInventoryMapper.updateById(inventory);
// ProStorageMatDO storageMat = ProStorageMatDO.builder()
// .stockId(proStorage.getId().longValue())
// .storeHouseId(detail.getStoreHouseId())
// .storeAreaId(detail.getStoreAreaId())
// .storeHouseCd(detail.getStoreHouseCd())
// .storeHouseName(detail.getStoreHouseName())
// .storeAreCd(detail.getStoreAreCd())
// .storeAreaName(detail.getStoreAreaName())
// .materialId(saleDelivery.getMaterialId())
// .matName(saleDelivery.getMaterialName())
// .matCode(saleDelivery.getMaterialCode())
// .spec(saleDelivery.getSpec())
// .unit(saleDelivery.getUnit())
// .lotNo(detail.getLotNo())
// .operatorQty(detail.getDeliveriedQty())
// .bagSpec(detail.getBagSpec())
// .bagQty(detail.getDeliveriedBagQty())
//
// .relarionId(detail.getSaleDeliveryId().longValue())
// .planId(inventory.getPlanId())
// .proNo(inventory.getProNo())
// .sourceId(inventory.getId())
// .inventBillNo(inventory.getInventBillNo())
// .build();
// proStorageMatMapper.insert(storageMat);
// }
if (saleDelivery.getSaleOrdId() != null && saleDelivery.getSaleOrdDetailId() != null) {
OrderItemDO currentOrderItem = orderItemMapper.selectById(saleDelivery.getSaleOrdDetailId());
if (currentOrderItem == null) {
@ -332,7 +368,7 @@ public class SaleDeliveryServiceImpl implements SaleDeliveryService {
}
saleDelivery.setDeliveryStatus("2");
saleDelivery.setTwmStorageId(proStorage.getId());
// saleDelivery.setTwmStorageId(proStorage.getId());
saleDeliveryMapper.updateById(saleDelivery);
}
}

View File

@ -32,27 +32,13 @@ declare module 'vue' {
Echart: typeof import('./../components/Echart/src/Echart.vue')['default']
Editor: typeof import('./../components/Editor/src/Editor.vue')['default']
ElAlert: typeof import('element-plus/es')['ElAlert']
ElAside: typeof import('element-plus/es')['ElAside']
ElAutoResizer: typeof import('element-plus/es')['ElAutoResizer']
ElAvatar: typeof import('element-plus/es')['ElAvatar']
ElBadge: typeof import('element-plus/es')['ElBadge']
ElButton: typeof import('element-plus/es')['ElButton']
ElButtonGroup: typeof import('element-plus/es')['ElButtonGroup']
ElCard: typeof import('element-plus/es')['ElCard']
ElCarousel: typeof import('element-plus/es')['ElCarousel']
ElCarouselItem: typeof import('element-plus/es')['ElCarouselItem']
ElCascader: typeof import('element-plus/es')['ElCascader']
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
ElCheckboxGroup: typeof import('element-plus/es')['ElCheckboxGroup']
ElCol: typeof import('element-plus/es')['ElCol']
ElCollapse: typeof import('element-plus/es')['ElCollapse']
ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem']
ElCollapseTransition: typeof import('element-plus/es')['ElCollapseTransition']
ElColorPicker: typeof import('element-plus/es')['ElColorPicker']
ElContainer: typeof import('element-plus/es')['ElContainer']
ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
ElDescriptions: typeof import('element-plus/es')['ElDescriptions']
ElDescriptionsItem: typeof import('element-plus/es')['ElDescriptionsItem']
ElDialog: typeof import('element-plus/es')['ElDialog']
ElDivider: typeof import('element-plus/es')['ElDivider']
ElDrawer: typeof import('element-plus/es')['ElDrawer']
@ -68,41 +54,27 @@ declare module 'vue' {
ElementTask: typeof import('./../components/bpmnProcessDesigner/package/penal/task/ElementTask.vue')['default']
ElForm: typeof import('element-plus/es')['ElForm']
ElFormItem: typeof import('element-plus/es')['ElFormItem']
ElHeader: typeof import('element-plus/es')['ElHeader']
ElIcon: typeof import('element-plus/es')['ElIcon']
ElImage: typeof import('element-plus/es')['ElImage']
ElImageViewer: typeof import('element-plus/es')['ElImageViewer']
ElInput: typeof import('element-plus/es')['ElInput']
ElInputNumber: typeof import('element-plus/es')['ElInputNumber']
ElLink: typeof import('element-plus/es')['ElLink']
ElMain: typeof import('element-plus/es')['ElMain']
ElOption: typeof import('element-plus/es')['ElOption']
ElPagination: typeof import('element-plus/es')['ElPagination']
ElPopover: typeof import('element-plus/es')['ElPopover']
ElRadio: typeof import('element-plus/es')['ElRadio']
ElRadioButton: typeof import('element-plus/es')['ElRadioButton']
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
ElRate: typeof import('element-plus/es')['ElRate']
ElRow: typeof import('element-plus/es')['ElRow']
ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
ElSelect: typeof import('element-plus/es')['ElSelect']
ElSkeleton: typeof import('element-plus/es')['ElSkeleton']
ElSlider: typeof import('element-plus/es')['ElSlider']
ElSpace: typeof import('element-plus/es')['ElSpace']
ElSwitch: typeof import('element-plus/es')['ElSwitch']
ElTable: typeof import('element-plus/es')['ElTable']
ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
ElTableV2: typeof import('element-plus/es')['ElTableV2']
ElTabPane: typeof import('element-plus/es')['ElTabPane']
ElTabs: typeof import('element-plus/es')['ElTabs']
ElTag: typeof import('element-plus/es')['ElTag']
ElText: typeof import('element-plus/es')['ElText']
ElTimeline: typeof import('element-plus/es')['ElTimeline']
ElTimelineItem: typeof import('element-plus/es')['ElTimelineItem']
ElTimePicker: typeof import('element-plus/es')['ElTimePicker']
ElTimeSelect: typeof import('element-plus/es')['ElTimeSelect']
ElTooltip: typeof import('element-plus/es')['ElTooltip']
ElTransfer: typeof import('element-plus/es')['ElTransfer']
ElTree: typeof import('element-plus/es')['ElTree']
ElTreeSelect: typeof import('element-plus/es')['ElTreeSelect']
ElUpload: typeof import('element-plus/es')['ElUpload']
@ -118,11 +90,26 @@ declare module 'vue' {
InputPassword: typeof import('./../components/InputPassword/src/InputPassword.vue')['default']
InputWithColor: typeof import('./../components/InputWithColor/index.vue')['default']
MagicCubeEditor: typeof import('./../components/MagicCubeEditor/index.vue')['default']
Millexecute: typeof import('./../api/biz/millexecute/index.ts')['default']
Milloutput: typeof import('./../api/biz/milloutput/index.ts')['default']
Pagination: typeof import('./../components/Pagination/index.vue')['default']
ProcessDesigner: typeof import('./../components/bpmnProcessDesigner/package/designer/ProcessDesigner.vue')['default']
ProcessPalette: typeof import('./../components/bpmnProcessDesigner/package/palette/ProcessPalette.vue')['default']
ProcessViewer: typeof import('./../components/bpmnProcessDesigner/package/designer/ProcessViewer.vue')['default']
PropertiesPanel: typeof import('./../components/bpmnProcessDesigner/package/penal/PropertiesPanel.vue')['default']
Purapply: typeof import('./../api/biz/purapply/index.ts')['default']
PurApplyForm: typeof import('./../views/biz/purapply/PurApplyForm.vue')['default']
Purapplyitem: typeof import('./../api/biz/purapplyitem/index.ts')['default']
PurApplyItemForm: typeof import('./../views/biz/purapplyitem/PurApplyItemForm.vue')['default']
PurOrderSelectDialog: typeof import('./../views/biz/purreceipt/PurOrderSelectDialog.vue')['default']
Purreceipt: typeof import('./../api/biz/purreceipt/index.ts')['default']
Purreceiptdetail: typeof import('./../api/biz/purreceiptdetail/index.ts')['default']
PurReceiptDetailForm: typeof import('./../views/biz/purreceiptdetail/PurReceiptDetailForm.vue')['default']
PurReceiptForm: typeof import('./../views/biz/purreceipt/PurReceiptForm.vue')['default']
Purreturn: typeof import('./../api/biz/purreturn/index.ts')['default']
Purreturndetail: typeof import('./../api/biz/purreturndetail/index.ts')['default']
PurReturnDetailForm: typeof import('./../views/biz/purreturndetail/PurReturnDetailForm.vue')['default']
PurReturnForm: typeof import('./../views/biz/purreturn/PurReturnForm.vue')['default']
Qrcode: typeof import('./../components/Qrcode/src/Qrcode.vue')['default']
ReceiveTask: typeof import('./../components/bpmnProcessDesigner/package/penal/task/task-components/ReceiveTask.vue')['default']
RouterLink: typeof import('vue-router')['RouterLink']

View File

@ -7,8 +7,6 @@ export {}
declare global {
const DICT_TYPE: typeof import('@/utils/dict')['DICT_TYPE']
const EffectScope: typeof import('vue')['EffectScope']
const ElMessage: typeof import('element-plus/es')['ElMessage']
const ElMessageBox: typeof import('element-plus/es')['ElMessageBox']
const computed: typeof import('vue')['computed']
const createApp: typeof import('vue')['createApp']
const customRef: typeof import('vue')['customRef']