Browse Source

Merge remote-tracking branch 'origin/master'

master
廉洪喜 2 years ago
parent
commit
ed4611f7a4
  1. 6
      win-module-infra/win-module-infra-biz/src/main/java/com/win/module/infra/service/codegen/inner/CodegenEngine.java
  2. 154
      win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/service.vm
  3. 79
      win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/service.vm.bark
  4. 0
      win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/serviceImpl.vm.bark
  5. 8
      win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/test/serviceTest.vm
  6. 165
      win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/test/serviceTest.vm.bark
  7. 50
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java
  8. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobDetailExportReqVO.java
  9. 149
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainRespTypesVO.java
  10. 3
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainRespVO.java
  11. 2
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchasereceiptJob/PurchasereceiptJobDetailMapper.java
  12. 91
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchasereceiptJob/PurchasereceiptJobMainMapper.java
  13. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java
  14. 10
      win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java

6
win-module-infra/win-module-infra-biz/src/main/java/com/win/module/infra/service/codegen/inner/CodegenEngine.java

@ -75,13 +75,13 @@ public class CodegenEngine {
.put(javaTemplatePath("dal/mapper"),
javaModuleImplMainFilePath("dal/mysql/${table.businessName}/${table.className}Mapper"))
.put(javaTemplatePath("dal/mapper.xml"), mapperXmlFilePath())
.put(javaTemplatePath("service/serviceImpl"),
javaModuleImplMainFilePath("service/${table.businessName}/${table.className}ServiceImpl"))
// .put(javaTemplatePath("service/serviceImpl"),
// javaModuleImplMainFilePath("service/${table.businessName}/${table.className}ServiceImpl"))
.put(javaTemplatePath("service/service"),
javaModuleImplMainFilePath("service/${table.businessName}/${table.className}Service"))
// Java module-biz Test
.put(javaTemplatePath("test/serviceTest"),
javaModuleImplTestFilePath("service/${table.businessName}/${table.className}ServiceImplTest"))
javaModuleImplTestFilePath("service/${table.businessName}/${table.className}ServiceTest"))
// Java module-api Main
.put(javaTemplatePath("enums/errorcode"), javaModuleApiMainFilePath("enums/ErrorCodeConstants_手动操作"))
// SQL

154
win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/service.vm

@ -1,79 +1,99 @@
package ${basePackage}.module.${table.moduleName}.service.${table.businessName};
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
import java.util.*;
import javax.validation.*;
import ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo.*;
import ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
import ${PageResultClassName};
import ${basePackage}.module.${table.moduleName}.convert.${table.businessName}.${table.className}Convert;
import ${basePackage}.module.${table.moduleName}.dal.mysql.${table.businessName}.${table.className}Mapper;
import static ${ServiceExceptionUtilClassName}.exception;
import static ${basePackage}.module.${table.moduleName}.enums.ErrorCodeConstants.*;
/**
* ${table.classComment} Service 接口
* ${table.classComment} Service
*
* @author ${table.author}
*/
public interface ${table.className}Service {
/**
* 创建${table.classComment}
*
* @param createReqVO 创建信息
* @return 编号
*/
${primaryColumn.javaType} create${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}CreateReqVO createReqVO);
/**
* 更新${table.classComment}
*
* @param updateReqVO 更新信息
*/
void update${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}UpdateReqVO updateReqVO);
/**
* 删除${table.classComment}
*
* @param id 编号
*/
void delete${simpleClassName}(${primaryColumn.javaType} id);
/**
* 获得${table.classComment}
*
* @param id 编号
* @return ${table.classComment}
*/
${table.className}DO get${simpleClassName}(${primaryColumn.javaType} id);
/**
* 获得${table.classComment}列表
*
* @param ids 编号
* @return ${table.classComment}列表
*/
List<${table.className}DO> get${simpleClassName}List(Collection<${primaryColumn.javaType}> ids);
/**
* 获得${table.classComment}分页
*
* @param pageReqVO 分页查询
* @return ${table.classComment}分页
*/
PageResult<${table.className}DO> get${simpleClassName}Page(${sceneEnum.prefixClass}${table.className}PageReqVO pageReqVO);
/**
* 获得${table.classComment}列表, 用于 Excel 导出
*
* @param exportReqVO 查询条件
* @return ${table.classComment}列表
*/
List<${table.className}DO> get${simpleClassName}List(${sceneEnum.prefixClass}${table.className}ExportReqVO exportReqVO);
/**
* 导入${table.classComment}主信息
*
* @param datas 导入${table.classComment}主信息列表
* @param mode 导入模式1更新2追加3覆盖
* @param updatePart 是否支持更新
* @return 导入结果
*/
public List<${table.className}ExcelVO> import${table.className}List(List<${table.className}ExcelVO> datas, Integer mode, boolean updatePart);
@Service
@Validated
public class ${table.className}Service {
@Resource
private ${table.className}Mapper ${classNameVar}Mapper;
public ${primaryColumn.javaType} create${simpleClassName}(${sceneEnum.prefixClass}${table.className}CreateReqVO createReqVO) {
// 插入
${table.className}DO ${classNameVar} = ${table.className}Convert.INSTANCE.convert(createReqVO);
${classNameVar}Mapper.insert(${classNameVar});
// 返回
return ${classNameVar}.getId();
}
public void update${simpleClassName}(${sceneEnum.prefixClass}${table.className}UpdateReqVO updateReqVO) {
// 校验存在
validate${simpleClassName}Exists(updateReqVO.getId());
// 更新
${table.className}DO updateObj = ${table.className}Convert.INSTANCE.convert(updateReqVO);
${classNameVar}Mapper.updateById(updateObj);
}
public void delete${simpleClassName}(${primaryColumn.javaType} id) {
// 校验存在
validate${simpleClassName}Exists(id);
// 删除
${classNameVar}Mapper.deleteById(id);
}
private void validate${simpleClassName}Exists(${primaryColumn.javaType} id) {
if (${classNameVar}Mapper.selectById(id) == null) {
throw exception(${simpleClassName_underlineCase.toUpperCase()}_NOT_EXISTS);
}
}
public ${table.className}DO get${simpleClassName}(${primaryColumn.javaType} id) {
return ${classNameVar}Mapper.selectById(id);
}
public List<${table.className}DO> get${simpleClassName}List(Collection<${primaryColumn.javaType}> ids) {
return ${classNameVar}Mapper.selectBatchIds(ids);
}
public PageResult<${table.className}DO> get${simpleClassName}Page(${sceneEnum.prefixClass}${table.className}PageReqVO pageReqVO) {
return ${classNameVar}Mapper.selectPage(pageReqVO);
}
public List<${table.className}DO> get${simpleClassName}List(${sceneEnum.prefixClass}${table.className}ExportReqVO exportReqVO) {
return ${classNameVar}Mapper.selectList(exportReqVO);
}
public List<${table.className}ExcelVO> import${table.className}List(List<${table.className}ExcelVO> datas, Integer mode, boolean updatePart) {
if (CollUtil.isEmpty(datas)) {
throw exception(${simpleClassName_underlineCase.toUpperCase()}_IMPORT_LIST_IS_EMPTY);
}
List<${table.className}ExcelVO> errorList = new ArrayList<>();
datas.forEach(item -> {
if(errorList == null){
// 判断如果不存在,在进行插入
${table.className}DO obj = ${classNameVar}Mapper.selectByCode(item.getCode());
if (obj == null&& mode != 3) {
${classNameVar}Mapper.insert(${table.className}Convert.INSTANCE.convert(item));
}
else if (obj != null && mode != 2) {// 如果存在,判断是否允许更新
${table.className}DO ${classNameVar}DO = ${table.className}Convert.INSTANCE.convert(item);
${classNameVar}DO.setId(obj.getId());
${classNameVar}Mapper.updateById(obj);
}
}
});
return errorList;
}
}

79
win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/service.vm.bark

@ -0,0 +1,79 @@
package ${basePackage}.module.${table.moduleName}.service.${table.businessName};
import java.util.*;
import javax.validation.*;
import ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo.*;
import ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
import ${PageResultClassName};
/**
* ${table.classComment} Service 接口
*
* @author ${table.author}
*/
public interface ${table.className}Service {
/**
* 创建${table.classComment}
*
* @param createReqVO 创建信息
* @return 编号
*/
${primaryColumn.javaType} create${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}CreateReqVO createReqVO);
/**
* 更新${table.classComment}
*
* @param updateReqVO 更新信息
*/
void update${simpleClassName}(@Valid ${sceneEnum.prefixClass}${table.className}UpdateReqVO updateReqVO);
/**
* 删除${table.classComment}
*
* @param id 编号
*/
void delete${simpleClassName}(${primaryColumn.javaType} id);
/**
* 获得${table.classComment}
*
* @param id 编号
* @return ${table.classComment}
*/
${table.className}DO get${simpleClassName}(${primaryColumn.javaType} id);
/**
* 获得${table.classComment}列表
*
* @param ids 编号
* @return ${table.classComment}列表
*/
List<${table.className}DO> get${simpleClassName}List(Collection<${primaryColumn.javaType}> ids);
/**
* 获得${table.classComment}分页
*
* @param pageReqVO 分页查询
* @return ${table.classComment}分页
*/
PageResult<${table.className}DO> get${simpleClassName}Page(${sceneEnum.prefixClass}${table.className}PageReqVO pageReqVO);
/**
* 获得${table.classComment}列表, 用于 Excel 导出
*
* @param exportReqVO 查询条件
* @return ${table.classComment}列表
*/
List<${table.className}DO> get${simpleClassName}List(${sceneEnum.prefixClass}${table.className}ExportReqVO exportReqVO);
/**
* 导入${table.classComment}主信息
*
* @param datas 导入${table.classComment}主信息列表
* @param mode 导入模式1更新2追加3覆盖
* @param updatePart 是否支持更新
* @return 导入结果
*/
public List<${table.className}ExcelVO> import${table.className}List(List<${table.className}ExcelVO> datas, Integer mode, boolean updatePart);
}

0
win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/serviceImpl.vm → win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/service/serviceImpl.vm.bark

8
win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/test/serviceTest.vm

@ -61,15 +61,15 @@ import static org.mockito.Mockito.*;
#end
#end
/**
* {@link ${table.className}ServiceImpl} 的单元测试类
* {@link ${table.className}Service} 的单元测试类
*
* @author ${table.author}
*/
@Import(${table.className}ServiceImpl.class)
public class ${table.className}ServiceImplTest extends BaseDbUnitTest {
@Import(${table.className}Service.class)
public class ${table.className}ServiceTest extends BaseDbUnitTest {
@Resource
private ${table.className}ServiceImpl ${classNameVar}Service;
private ${table.className}Service ${classNameVar}Service;
@Resource
private ${table.className}Mapper ${classNameVar}Mapper;

165
win-module-infra/win-module-infra-biz/src/main/resources/codegen/java/test/serviceTest.vm.bark

@ -0,0 +1,165 @@
package ${basePackage}.module.${table.moduleName}.service.${table.businessName};
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.mock.mockito.MockBean;
import javax.annotation.Resource;
import ${baseFrameworkPackage}.test.core.ut.BaseDbUnitTest;
import ${basePackage}.module.${table.moduleName}.controller.${sceneEnum.basePackage}.${table.businessName}.vo.*;
import ${basePackage}.module.${table.moduleName}.dal.dataobject.${table.businessName}.${table.className}DO;
import ${basePackage}.module.${table.moduleName}.dal.mysql.${table.businessName}.${table.className}Mapper;
import ${PageResultClassName};
import javax.annotation.Resource;
import org.springframework.context.annotation.Import;
import java.util.*;
import java.time.LocalDateTime;
import static cn.hutool.core.util.RandomUtil.*;
import static ${basePackage}.module.${table.moduleName}.enums.ErrorCodeConstants.*;
import static ${baseFrameworkPackage}.test.core.util.AssertUtils.*;
import static ${baseFrameworkPackage}.test.core.util.RandomUtils.*;
import static ${LocalDateTimeUtilsClassName}.*;
import static ${ObjectUtilsClassName}.*;
import static ${DateUtilsClassName}.*;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.*;
## 字段模板
#macro(getPageCondition $VO)
// mock 数据
${table.className}DO db${simpleClassName} = randomPojo(${table.className}DO.class, o -> { // 等会查询到
#foreach ($column in $columns)
#if (${column.listOperation})
#set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
o.set$JavaField(null);
#end
#end
});
${classNameVar}Mapper.insert(db${simpleClassName});
#foreach ($column in $columns)
#if (${column.listOperation})
#set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
// 测试 ${column.javaField} 不匹配
${classNameVar}Mapper.insert(cloneIgnoreId(db${simpleClassName}, o -> o.set$JavaField(null)));
#end
#end
// 准备参数
${sceneEnum.prefixClass}${table.className}${VO} reqVO = new ${sceneEnum.prefixClass}${table.className}${VO}();
#foreach ($column in $columns)
#if (${column.listOperation})
#set ($JavaField = $column.javaField.substring(0,1).toUpperCase() + ${column.javaField.substring(1)})##首字母大写
#if (${column.listOperationCondition} == "BETWEEN")## BETWEEN 的情况
reqVO.set${JavaField}(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
#else
reqVO.set$JavaField(null);
#end
#end
#end
#end
/**
* {@link ${table.className}ServiceImpl} 的单元测试类
*
* @author ${table.author}
*/
@Import(${table.className}ServiceImpl.class)
public class ${table.className}ServiceImplTest extends BaseDbUnitTest {
@Resource
private ${table.className}ServiceImpl ${classNameVar}Service;
@Resource
private ${table.className}Mapper ${classNameVar}Mapper;
@Test
public void testCreate${simpleClassName}_success() {
// 准备参数
${sceneEnum.prefixClass}${table.className}CreateReqVO reqVO = randomPojo(${sceneEnum.prefixClass}${table.className}CreateReqVO.class);
// 调用
${primaryColumn.javaType} ${classNameVar}Id = ${classNameVar}Service.create${simpleClassName}(reqVO);
// 断言
assertNotNull(${classNameVar}Id);
// 校验记录的属性是否正确
${table.className}DO ${classNameVar} = ${classNameVar}Mapper.selectById(${classNameVar}Id);
assertPojoEquals(reqVO, ${classNameVar});
}
@Test
public void testUpdate${simpleClassName}_success() {
// mock 数据
${table.className}DO db${simpleClassName} = randomPojo(${table.className}DO.class);
${classNameVar}Mapper.insert(db${simpleClassName});// @Sql: 先插入出一条存在的数据
// 准备参数
${sceneEnum.prefixClass}${table.className}UpdateReqVO reqVO = randomPojo(${sceneEnum.prefixClass}${table.className}UpdateReqVO.class, o -> {
o.setId(db${simpleClassName}.getId()); // 设置更新的 ID
});
// 调用
${classNameVar}Service.update${simpleClassName}(reqVO);
// 校验是否更新正确
${table.className}DO ${classNameVar} = ${classNameVar}Mapper.selectById(reqVO.getId()); // 获取最新的
assertPojoEquals(reqVO, ${classNameVar});
}
@Test
public void testUpdate${simpleClassName}_notExists() {
// 准备参数
${sceneEnum.prefixClass}${table.className}UpdateReqVO reqVO = randomPojo(${sceneEnum.prefixClass}${table.className}UpdateReqVO.class);
// 调用, 并断言异常
assertServiceException(() -> ${classNameVar}Service.update${simpleClassName}(reqVO), ${simpleClassName_underlineCase.toUpperCase()}_NOT_EXISTS);
}
@Test
public void testDelete${simpleClassName}_success() {
// mock 数据
${table.className}DO db${simpleClassName} = randomPojo(${table.className}DO.class);
${classNameVar}Mapper.insert(db${simpleClassName});// @Sql: 先插入出一条存在的数据
// 准备参数
${primaryColumn.javaType} id = db${simpleClassName}.getId();
// 调用
${classNameVar}Service.delete${simpleClassName}(id);
// 校验数据不存在了
assertNull(${classNameVar}Mapper.selectById(id));
}
@Test
public void testDelete${simpleClassName}_notExists() {
// 准备参数
${primaryColumn.javaType} id = random${primaryColumn.javaType}Id();
// 调用, 并断言异常
assertServiceException(() -> ${classNameVar}Service.delete${simpleClassName}(id), ${simpleClassName_underlineCase.toUpperCase()}_NOT_EXISTS);
}
@Test
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
public void testGet${simpleClassName}Page() {
#getPageCondition("PageReqVO")
// 调用
PageResult<${table.className}DO> pageResult = ${classNameVar}Service.get${simpleClassName}Page(reqVO);
// 断言
assertEquals(1, pageResult.getTotal());
assertEquals(1, pageResult.getList().size());
assertPojoEquals(db${simpleClassName}, pageResult.getList().get(0));
}
@Test
@Disabled // TODO 请修改 null 为需要的值,然后删除 @Disabled 注解
public void testGet${simpleClassName}List() {
#getPageCondition("ExportReqVO")
// 调用
List<${table.className}DO> list = ${classNameVar}Service.get${simpleClassName}List(reqVO);
// 断言
assertEquals(1, list.size());
assertPojoEquals(db${simpleClassName}, list.get(0));
}
}

50
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/PurchasereceiptJobMainController.java

@ -3,6 +3,9 @@ package com.win.module.wms.controller.purchasereceiptJob;
import com.win.framework.common.pojo.CustomConditions;
import com.win.module.system.api.user.AdminUserApi;
import com.win.module.system.api.user.dto.AdminUserRespDTO;
import com.win.module.wms.convert.purchasereceiptJob.PurchasereceiptJobDetailConvert;
import com.win.module.wms.dal.dataobject.purchasereceiptJob.PurchasereceiptJobDetailDO;
import com.win.module.wms.service.purchasereceiptJob.PurchasereceiptJobDetailService;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import org.springframework.validation.annotation.Validated;
@ -10,22 +13,16 @@ 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 javax.validation.constraints.*;
import javax.validation.*;
import javax.servlet.http.*;
import java.util.*;
import java.io.IOException;
import com.win.framework.common.pojo.PageResult;
import com.win.framework.common.pojo.CommonResult;
import static com.win.framework.common.pojo.CommonResult.success;
import com.win.framework.excel.core.util.ExcelUtils;
import com.win.framework.operatelog.core.annotations.OperateLog;
import static com.win.framework.operatelog.core.enums.OperateTypeEnum.*;
import com.win.module.wms.controller.purchasereceiptJob.vo.*;
import com.win.module.wms.dal.dataobject.purchasereceiptJob.PurchasereceiptJobMainDO;
import com.win.module.wms.convert.purchasereceiptJob.PurchasereceiptJobMainConvert;
@ -40,6 +37,9 @@ public class PurchasereceiptJobMainController {
@Resource
private PurchasereceiptJobMainService purchasereceiptJobMainService;
@Resource
private PurchasereceiptJobDetailService purchasereceiptJobDetailService;
@Resource
private AdminUserApi userApi;
@ -122,4 +122,42 @@ public class PurchasereceiptJobMainController {
ExcelUtils.write(response, "采购收货任务主.xls", "数据", PurchasereceiptJobMainExcelVO.class, datas);
}
@GetMapping("/getPurchasereceiptJobyId")
@Operation(summary = "APP获得采购收货任务主子表明细列表")
@Parameter(name = "id", description = "编号", required = true, example = "1024")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:query')")
public CommonResult<PurchasereceiptJobMainRespVO> getPurchasereceiptJobyId(@RequestParam("id") Long id) {
PurchasereceiptJobMainDO purchasereceiptJobMain = purchasereceiptJobMainService.getPurchasereceiptJobMain(id);
PurchasereceiptJobMainRespVO result = PurchasereceiptJobMainConvert.INSTANCE.convert(purchasereceiptJobMain);
PurchasereceiptJobDetailExportReqVO purchasereceiptJobDetailExportReqVO = new PurchasereceiptJobDetailExportReqVO();
purchasereceiptJobDetailExportReqVO.setMasterId(result.getId());
List<PurchasereceiptJobDetailDO> purchasereceiptJobDetailList = purchasereceiptJobDetailService.getPurchasereceiptJobDetailList(purchasereceiptJobDetailExportReqVO);
List<PurchasereceiptJobDetailExcelVO> purchasereceiptJobDetailExcelVOS = PurchasereceiptJobDetailConvert.INSTANCE.convertList02(purchasereceiptJobDetailList);
result.setSubList(purchasereceiptJobDetailExcelVOS);
return success(result);
}
@PostMapping("/getPageByStatusAndTime")
@Operation(summary = "APP获得采购收货任务主子表明细列表")
@Parameter(name = "createTime", description = "今日开始结束时间", required = false, example = "[\"1699200000000\",\"1701878400000\"]")
@Parameter(name = "types", description = "字典类型数组", required = false, example = "\"types\":[\"JOB_PENDING\",\"JOB_COMPLETED\"]")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:query')")
public CommonResult<PageResult<PurchasereceiptJobMainRespVO>> getPageByStatusAndTime(@RequestBody PurchasereceiptJobMainRespTypesVO purchasereceiptJobMainRespTypesVO) {
PageResult<PurchasereceiptJobMainDO> purchasereceiptJobMainByStatusPage = purchasereceiptJobMainService.getPurchasereceiptJobMainByStatusPage(purchasereceiptJobMainRespTypesVO);
PageResult<PurchasereceiptJobMainRespVO> result = PurchasereceiptJobMainConvert.INSTANCE.convertPage(purchasereceiptJobMainByStatusPage);
return success(result);
}
@PostMapping("/getPurchasereceiptJobMainSenior")
@Operation(summary = "APP根据发货单号和单据号查询采购收货任务主任务列表")
@Parameter(name = "asnNumber", description = "发货单号", required = false, example = "100")
@Parameter(name = "number", description = "单据号", required = false, example = "100")
@PreAuthorize("@ss.hasPermission('wms:purchasereceipt-job-main:query')")
public CommonResult<List<PurchasereceiptJobMainRespVO>> getPurchasereceiptJobMainSenior(@RequestBody PurchasereceiptJobMainRespVO respVO) {
List<PurchasereceiptJobMainDO> purchasereceiptJobMainSenior = purchasereceiptJobMainService.getPurchasereceiptJobMainSenior(respVO);
List<PurchasereceiptJobMainRespVO> result = PurchasereceiptJobMainConvert.INSTANCE.convertList(purchasereceiptJobMainSenior);
return success(result);
}
}

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobDetailExportReqVO.java

@ -109,4 +109,7 @@ public class PurchasereceiptJobDetailExportReqVO {
@Schema(description = "到货主代码")
private String toOwnerCode;
@Schema(description = "主表ID", example = "6060")
private Long masterId;
}

149
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainRespTypesVO.java

@ -5,21 +5,162 @@ import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 采购收货任务主 Response VO")
import static com.win.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 采购收货任务主接收类接收多个任务状态 Response VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class PurchasereceiptJobMainRespTypesVO extends PageParam {
@Schema(description = "申请单号")
private String requestNumber;
@Schema(description = "发货单号")
private String asnNumber;
@Schema(description = "要货计划单号")
private String ppNumber;
@Schema(description = "供应商代码")
private String supplierCode;
@Schema(description = "到月台代码")
private String toDockCode;
@Schema(description = "承运商")
private String carrierCode;
@Schema(description = "运输方式")
private String transferMode;
@Schema(description = "车牌号")
private String vehiclePlateNumber;
@Schema(description = "从仓库代码")
private String fromWarehouseCode;
@Schema(description = "到仓库代码")
private String toWarehouseCode;
@Schema(description = "申请时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestTime;
@Schema(description = "要求截止时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] requestDueTime;
@Schema(description = "状态")
private String status;
@Schema(description = "过期时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] expiredTime;
@Schema(description = "最后更新时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] updateTime;
@Schema(description = "最后更新者Id")
private String updater;
@Schema(description = "状态")
private String jobStageStatus;
@Schema(description = "优先级")
private Integer priority;
@Schema(description = "优先级增量")
private Integer priorityIncrement;
@Schema(description = "部门")
private String departmentCode;
@Schema(description = "岗位")
private String userPositionCode;
@Schema(description = "承接人用户ID")
private String acceptUserId;
@Schema(description = "承接时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] acceptTime;
@Schema(description = "完成人用户ID")
private String completeUserId;
@Schema(description = "完成时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] completeTime;
@Schema(description = "从库位类型范围")
private String fromLocationTypes;
@Schema(description = "到库位类型范围")
private String toLocationTypes;
@Schema(description = "单据号")
private String number;
@Schema(description = "业务类型")
private String businessType;
@Schema(description = "备注")
private String remark;
@Schema(description = "创建时间")
@DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
private LocalDateTime[] createTime;
@Schema(description = "创建者id")
private String creator;
@Schema(description = "允许修改批次")
private String allowModifyBatch;
@Schema(description = "从库区代码范围")
private String fromAreaCodes;
@Schema(description = "到库位代码范围")
private String toAreaCodes;
@Schema(description = "自动完成")
private String autoComplete;
@Schema(description = "允许修改库位")
private String allowModifyLocation;
@Schema(description = "允许修改数量")
private String allowModifyQty;
@Schema(description = "允许大于推荐数量")
private String allowBiggerQty;
@Schema(description = "允许小于推荐数量")
private String allowSmallerQty;
@Schema(description = "允许修改库存状态")
private String allowModifyInventoryStatus;
@Schema(description = "允许连续扫描")
private String allowContinuousScanning;
@Schema(description = "允许部分完成")
private String allowPartialComplete;
@Schema(description = "允许修改箱码")
private String allowModifyPackingNumber;
@Schema(description = "任务状态list可以为空", requiredMode = Schema.RequiredMode.REQUIRED)
private List types;
@NotNull(message = "是否今日展示状态不能为空")
@Schema(description = "是否只展示今日数据ture展示false展示全部", requiredMode = Schema.RequiredMode.REQUIRED)
private Boolean today;
}

3
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/controller/purchasereceiptJob/vo/PurchasereceiptJobMainRespVO.java

@ -3,6 +3,7 @@ package com.win.module.wms.controller.purchasereceiptJob.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.*;
import java.time.LocalDateTime;
import java.util.List;
@Schema(description = "管理后台 - 采购收货任务主 Response VO")
@Data
@ -10,4 +11,6 @@ import java.time.LocalDateTime;
@ToString(callSuper = true)
public class PurchasereceiptJobMainRespVO extends PurchasereceiptJobMainBaseVO {
@Schema(description = "收货任务子表job_purchasereceipt_detail 列表数据", requiredMode = Schema.RequiredMode.REQUIRED)
private List subList;
}

2
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchasereceiptJob/PurchasereceiptJobDetailMapper.java

@ -7,6 +7,7 @@ import com.win.framework.common.pojo.PageResult;
import com.win.framework.mybatis.core.query.LambdaQueryWrapperX;
import com.win.framework.mybatis.core.mapper.BaseMapperX;
import com.win.framework.mybatis.core.util.QueryWrapperUtils;
import com.win.module.wms.dal.dataobject.barcode.BarcodeDO;
import com.win.module.wms.dal.dataobject.purchasereceiptJob.PurchasereceiptJobDetailDO;
import org.apache.ibatis.annotations.Mapper;
import com.win.module.wms.controller.purchasereceiptJob.vo.*;
@ -58,6 +59,7 @@ public interface PurchasereceiptJobDetailMapper extends BaseMapperX<Purchaserece
}
default List<PurchasereceiptJobDetailDO> selectList(PurchasereceiptJobDetailExportReqVO reqVO) {
return selectList(new LambdaQueryWrapperX<PurchasereceiptJobDetailDO>()
.eqIfPresent(PurchasereceiptJobDetailDO::getMasterId, reqVO.getMasterId())
.eqIfPresent(PurchasereceiptJobDetailDO::getPackingNumber, reqVO.getPackingNumber())
.eqIfPresent(PurchasereceiptJobDetailDO::getContainerNumber, reqVO.getContainerNumber())
.eqIfPresent(PurchasereceiptJobDetailDO::getBatch, reqVO.getBatch())

91
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/dal/mysql/purchasereceiptJob/PurchasereceiptJobMainMapper.java

@ -119,4 +119,95 @@ public interface PurchasereceiptJobMainMapper extends BaseMapperX<Purchasereceip
.orderByDesc(PurchasereceiptJobMainDO::getId));
}
default PageResult<PurchasereceiptJobMainDO> selectByStatusPage(PurchasereceiptJobMainRespTypesVO reqVO) {
return selectPage(reqVO, new LambdaQueryWrapperX<PurchasereceiptJobMainDO>()
.eqIfPresent(PurchasereceiptJobMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getAsnNumber, reqVO.getAsnNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getPpNumber, reqVO.getPpNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getSupplierCode, reqVO.getSupplierCode())
.eqIfPresent(PurchasereceiptJobMainDO::getToDockCode, reqVO.getToDockCode())
.eqIfPresent(PurchasereceiptJobMainDO::getCarrierCode, reqVO.getCarrierCode())
.eqIfPresent(PurchasereceiptJobMainDO::getTransferMode, reqVO.getTransferMode())
.eqIfPresent(PurchasereceiptJobMainDO::getVehiclePlateNumber, reqVO.getVehiclePlateNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getFromWarehouseCode, reqVO.getFromWarehouseCode())
.eqIfPresent(PurchasereceiptJobMainDO::getToWarehouseCode, reqVO.getToWarehouseCode())
.betweenIfPresent(PurchasereceiptJobMainDO::getRequestTime, reqVO.getRequestTime())
.betweenIfPresent(PurchasereceiptJobMainDO::getRequestDueTime, reqVO.getRequestDueTime())
.inIfPresent(PurchasereceiptJobMainDO::getStatus, reqVO.getTypes())
.betweenIfPresent(PurchasereceiptJobMainDO::getExpiredTime, reqVO.getExpiredTime())
.betweenIfPresent(PurchasereceiptJobMainDO::getUpdateTime, reqVO.getUpdateTime())
.eqIfPresent(PurchasereceiptJobMainDO::getUpdater, reqVO.getUpdater())
.eqIfPresent(PurchasereceiptJobMainDO::getJobStageStatus, reqVO.getJobStageStatus())
.eqIfPresent(PurchasereceiptJobMainDO::getPriority, reqVO.getPriority())
.eqIfPresent(PurchasereceiptJobMainDO::getPriorityIncrement, reqVO.getPriorityIncrement())
.eqIfPresent(PurchasereceiptJobMainDO::getDepartmentCode, reqVO.getDepartmentCode())
.eqIfPresent(PurchasereceiptJobMainDO::getUserPositionCode, reqVO.getUserPositionCode())
.eqIfPresent(PurchasereceiptJobMainDO::getAcceptUserId, reqVO.getAcceptUserId())
.betweenIfPresent(PurchasereceiptJobMainDO::getAcceptTime, reqVO.getAcceptTime())
.eqIfPresent(PurchasereceiptJobMainDO::getCompleteUserId, reqVO.getCompleteUserId())
.betweenIfPresent(PurchasereceiptJobMainDO::getCompleteTime, reqVO.getCompleteTime())
.eqIfPresent(PurchasereceiptJobMainDO::getFromLocationTypes, reqVO.getFromLocationTypes())
.eqIfPresent(PurchasereceiptJobMainDO::getToLocationTypes, reqVO.getToLocationTypes())
.eqIfPresent(PurchasereceiptJobMainDO::getNumber, reqVO.getNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getBusinessType, reqVO.getBusinessType())
.eqIfPresent(PurchasereceiptJobMainDO::getRemark, reqVO.getRemark())
.betweenIfPresent(PurchasereceiptJobMainDO::getCreateTime, reqVO.getCreateTime())
.eqIfPresent(PurchasereceiptJobMainDO::getCreator, reqVO.getCreator())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch())
.eqIfPresent(PurchasereceiptJobMainDO::getFromAreaCodes, reqVO.getFromAreaCodes())
.eqIfPresent(PurchasereceiptJobMainDO::getToAreaCodes, reqVO.getToAreaCodes())
.eqIfPresent(PurchasereceiptJobMainDO::getAutoComplete, reqVO.getAutoComplete())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyLocation, reqVO.getAllowModifyLocation())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyQty, reqVO.getAllowModifyQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowBiggerQty, reqVO.getAllowBiggerQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowSmallerQty, reqVO.getAllowSmallerQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyInventoryStatus, reqVO.getAllowModifyInventoryStatus())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowContinuousScanning, reqVO.getAllowContinuousScanning())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber())
.orderByDesc(PurchasereceiptJobMainDO::getId));
}
default List<PurchasereceiptJobMainDO> getPurchasereceiptJobMainSenior(PurchasereceiptJobMainRespVO reqVO) {
return selectList(new LambdaQueryWrapperX<PurchasereceiptJobMainDO>()
.eqIfPresent(PurchasereceiptJobMainDO::getRequestNumber, reqVO.getRequestNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getAsnNumber, reqVO.getAsnNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getPpNumber, reqVO.getPpNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getSupplierCode, reqVO.getSupplierCode())
.eqIfPresent(PurchasereceiptJobMainDO::getToDockCode, reqVO.getToDockCode())
.eqIfPresent(PurchasereceiptJobMainDO::getCarrierCode, reqVO.getCarrierCode())
.eqIfPresent(PurchasereceiptJobMainDO::getTransferMode, reqVO.getTransferMode())
.eqIfPresent(PurchasereceiptJobMainDO::getVehiclePlateNumber, reqVO.getVehiclePlateNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getFromWarehouseCode, reqVO.getFromWarehouseCode())
.eqIfPresent(PurchasereceiptJobMainDO::getToWarehouseCode, reqVO.getToWarehouseCode())
.eqIfPresent(PurchasereceiptJobMainDO::getStatus, reqVO.getStatus())
.eqIfPresent(PurchasereceiptJobMainDO::getUpdater, reqVO.getUpdater())
.eqIfPresent(PurchasereceiptJobMainDO::getJobStageStatus, reqVO.getJobStageStatus())
.eqIfPresent(PurchasereceiptJobMainDO::getPriority, reqVO.getPriority())
.eqIfPresent(PurchasereceiptJobMainDO::getPriorityIncrement, reqVO.getPriorityIncrement())
.eqIfPresent(PurchasereceiptJobMainDO::getDepartmentCode, reqVO.getDepartmentCode())
.eqIfPresent(PurchasereceiptJobMainDO::getUserPositionCode, reqVO.getUserPositionCode())
.eqIfPresent(PurchasereceiptJobMainDO::getAcceptUserId, reqVO.getAcceptUserId())
.eqIfPresent(PurchasereceiptJobMainDO::getCompleteUserId, reqVO.getCompleteUserId())
.eqIfPresent(PurchasereceiptJobMainDO::getFromLocationTypes, reqVO.getFromLocationTypes())
.eqIfPresent(PurchasereceiptJobMainDO::getToLocationTypes, reqVO.getToLocationTypes())
.eqIfPresent(PurchasereceiptJobMainDO::getNumber, reqVO.getNumber())
.eqIfPresent(PurchasereceiptJobMainDO::getBusinessType, reqVO.getBusinessType())
.eqIfPresent(PurchasereceiptJobMainDO::getRemark, reqVO.getRemark())
.eqIfPresent(PurchasereceiptJobMainDO::getCreator, reqVO.getCreator())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyBatch, reqVO.getAllowModifyBatch())
.eqIfPresent(PurchasereceiptJobMainDO::getFromAreaCodes, reqVO.getFromAreaCodes())
.eqIfPresent(PurchasereceiptJobMainDO::getToAreaCodes, reqVO.getToAreaCodes())
.eqIfPresent(PurchasereceiptJobMainDO::getAutoComplete, reqVO.getAutoComplete())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyLocation, reqVO.getAllowModifyLocation())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyQty, reqVO.getAllowModifyQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowBiggerQty, reqVO.getAllowBiggerQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowSmallerQty, reqVO.getAllowSmallerQty())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyInventoryStatus, reqVO.getAllowModifyInventoryStatus())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowContinuousScanning, reqVO.getAllowContinuousScanning())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowPartialComplete, reqVO.getAllowPartialComplete())
.eqIfPresent(PurchasereceiptJobMainDO::getAllowModifyPackingNumber, reqVO.getAllowModifyPackingNumber())
.orderByDesc(PurchasereceiptJobMainDO::getId));
}
}

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainService.java

@ -82,4 +82,14 @@ public interface PurchasereceiptJobMainService {
* @return 采购订单主列表
*/
public PurchasereceiptJobMainDO purchasereceiptJobMainDoStatusRight(String pnumber, String pstatus);
/**
* 获得采购收货任务主分页根据多个状态选择以及是否今日数据
*
* @param pageReqVO 分页查询
* @return 采购收货任务主分页
*/
PageResult<PurchasereceiptJobMainDO> getPurchasereceiptJobMainByStatusPage(PurchasereceiptJobMainRespTypesVO pageReqVO);
List<PurchasereceiptJobMainDO> getPurchasereceiptJobMainSenior(PurchasereceiptJobMainRespVO respVO);
}

10
win-module-wms/win-module-wms-biz/src/main/java/com/win/module/wms/service/purchasereceiptJob/PurchasereceiptJobMainServiceImpl.java

@ -116,4 +116,14 @@ public class PurchasereceiptJobMainServiceImpl implements PurchasereceiptJobMain
throw exception(PURCHASERECEIPT_JOB_MAIN_STATUS_ERROR);
}
}
@Override
public PageResult<PurchasereceiptJobMainDO> getPurchasereceiptJobMainByStatusPage(PurchasereceiptJobMainRespTypesVO pageReqVO) {
return purchasereceiptJobMainMapper.selectByStatusPage(pageReqVO);
}
@Override
public List<PurchasereceiptJobMainDO> getPurchasereceiptJobMainSenior(PurchasereceiptJobMainRespVO respVO) {
return purchasereceiptJobMainMapper.getPurchasereceiptJobMainSenior(respVO);
}
}

Loading…
Cancel
Save