fix feeding record

plp
chenshuichuan 2 years ago
parent 17255fc2a8
commit e6692e2fde

@ -89,8 +89,8 @@ public class FeedingRecordController {
@Operation(summary = "获得投料记录分页")
@PreAuthorize("@ss.hasPermission('mes:feeding-record:query')")
public CommonResult<PageResult<FeedingRecordRespVO>> getFeedingRecordPage(@Valid FeedingRecordPageReqVO pageReqVO) {
PageResult<FeedingRecordDO> pageResult = feedingRecordService.getFeedingRecordPage(pageReqVO);
return success(BeanUtils.toBean(pageResult, FeedingRecordRespVO.class));
PageResult<FeedingRecordRespVO> pageResult = feedingRecordService.getFeedingRecordPage(pageReqVO);
return success(pageResult);
}
@GetMapping("/export-excel")
@ -100,10 +100,10 @@ public class FeedingRecordController {
public void exportFeedingRecordExcel(@Valid FeedingRecordPageReqVO pageReqVO,
HttpServletResponse response) throws IOException {
pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE);
List<FeedingRecordDO> list = feedingRecordService.getFeedingRecordPage(pageReqVO).getList();
List<FeedingRecordRespVO> list = feedingRecordService.getFeedingRecordPage(pageReqVO).getList();
// 导出 Excel
ExcelUtils.write(response, "投料记录.xls", "数据", FeedingRecordRespVO.class,
BeanUtils.toBean(list, FeedingRecordRespVO.class));
list);
}
// ==================== 子表(投料记录明细) ====================

@ -24,8 +24,10 @@ public class FeedingRecordRespVO {
private String feedingRecordCode;
@Schema(description = "产品id", example = "9099")
@ExcelProperty("产品id")
private Long productId;
@Schema(description = "产品id", example = "9099")
@ExcelProperty("产品")
private String productName;
@Schema(description = "计划id", example = "4922")
@ExcelProperty("计划id")
@ -54,8 +56,10 @@ public class FeedingRecordRespVO {
private LocalDateTime feedingTime;
@Schema(description = "记录人", example = "13784")
@ExcelProperty("记录人")
private Long userId;
@Schema(description = "记录人", example = "13784")
@ExcelProperty("记录人")
private String userName;
@Schema(description = "备注", example = "随便")
@ExcelProperty("备注")
@ -69,5 +73,7 @@ public class FeedingRecordRespVO {
@Schema(description = "创建时间", requiredMode = Schema.RequiredMode.REQUIRED)
@ExcelProperty("创建时间")
private LocalDateTime createTime;
@Schema(description = "记录人", example = "13784")
private String creator;
}

@ -12,7 +12,10 @@ import java.math.BigDecimal;
import java.time.LocalDateTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY;
//缺少品验工序,品验是拿机器印墨,
/***
*
* **/
@Schema(description = "管理后台 - 生产报工明细 Response VO")
@Data
@ExcelIgnoreUnannotated

@ -4,6 +4,7 @@ import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.security.core.LoginUser;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordDetailRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordSaveReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.itemrequisition.vo.ItemRequisitionDetailRespVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingplan.FeedingRecordPlanDO;
@ -62,8 +63,8 @@ public interface FeedingRecordService {
* @param pageReqVO
* @return
*/
PageResult<FeedingRecordDO> getFeedingRecordPage(FeedingRecordPageReqVO pageReqVO);
PageResult<FeedingRecordRespVO> getFeedingRecordPage(FeedingRecordPageReqVO pageReqVO);
List<FeedingRecordRespVO> buildList(List<FeedingRecordDO> list);
// ==================== 子表(投料记录明细) ====================
/**

@ -24,7 +24,6 @@ import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordDetailMa
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordMapper;
import cn.iocoder.yudao.module.mes.dal.mysql.itemrequisition.ItemRequisitionMapper;
import cn.iocoder.yudao.module.mes.dal.redis.no.MesNoRedisDAO;
import cn.iocoder.yudao.module.mes.service.feedingplan.FeedingRecordPlanService;
import cn.iocoder.yudao.module.mes.service.itemrequisition.ItemRequisitionService;
import cn.iocoder.yudao.module.mes.service.stockworkshop.StockWorkshopService;
import cn.iocoder.yudao.module.system.api.user.AdminUserApi;
@ -65,8 +64,7 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
private MesNoRedisDAO noRedisDAO;
@Resource
private AdminUserApi adminUserApi;
@Resource
private FeedingRecordPlanService recordPlanService;
@Resource
private FeedingRecordPlanMapper recordPlanMapper;
@Resource
@ -152,8 +150,27 @@ public class FeedingRecordServiceImpl implements FeedingRecordService {
}
@Override
public PageResult<FeedingRecordDO> getFeedingRecordPage(FeedingRecordPageReqVO pageReqVO) {
return feedingRecordMapper.selectPage(pageReqVO);
public PageResult<FeedingRecordRespVO> getFeedingRecordPage(FeedingRecordPageReqVO pageReqVO) {
PageResult<FeedingRecordDO> pageResult = feedingRecordMapper.selectPage(pageReqVO);
return new PageResult<>(buildList(pageResult.getList()),pageResult.getTotal());
}
@Override
public List<FeedingRecordRespVO> buildList(List<FeedingRecordDO> list) {
if (CollUtil.isEmpty(list)) {
return Collections.emptyList();
}
Map<Long, ErpProductDO> map = productService.getProductMap(
convertSet(list, FeedingRecordDO::getItemId));
// 1.4 管理员信息
Map<Long, AdminUserRespDTO> userMap = adminUserApi.getUserMap(
convertSet(list, FeedingRecordDO::getUserId));
return BeanUtils.toBean(list, FeedingRecordRespVO.class, item -> {
MapUtils.findAndThen(map, item.getProductId(),
product -> item.setProductName(product.getName()));
MapUtils.findAndThen(userMap, Long.valueOf(item.getCreator()),
user -> item.setUserName(user.getNickname()));
});
}
// ==================== 子表(投料记录明细) ====================

@ -1,33 +1,26 @@
package cn.iocoder.yudao.module.mes.service.feedingrecord;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.mock.mockito.MockBean;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import cn.iocoder.yudao.framework.test.core.ut.BaseDbUnitTest;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.*;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordPageReqVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordRespVO;
import cn.iocoder.yudao.module.mes.controller.admin.feedingrecord.vo.FeedingRecordSaveReqVO;
import cn.iocoder.yudao.module.mes.dal.dataobject.feedingrecord.FeedingRecordDO;
import cn.iocoder.yudao.module.mes.dal.mysql.feedingrecord.FeedingRecordMapper;
import cn.iocoder.yudao.framework.common.pojo.PageResult;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.springframework.context.annotation.Import;
import javax.annotation.Resource;
import java.util.*;
import java.time.LocalDateTime;
import static cn.hutool.core.util.RandomUtil.*;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.*;
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.*;
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.*;
import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.*;
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.*;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.*;
import static cn.iocoder.yudao.framework.common.util.date.LocalDateTimeUtils.buildBetweenTime;
import static cn.iocoder.yudao.framework.common.util.object.ObjectUtils.cloneIgnoreId;
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertPojoEquals;
import static cn.iocoder.yudao.framework.test.core.util.AssertUtils.assertServiceException;
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomLongId;
import static cn.iocoder.yudao.framework.test.core.util.RandomUtils.randomPojo;
import static cn.iocoder.yudao.module.mes.enums.ErrorCodeConstants.FEEDING_RECORD_NOT_EXISTS;
import static org.junit.jupiter.api.Assertions.*;
import static org.mockito.Mockito.*;
/**
* {@link FeedingRecordServiceImpl}
@ -165,7 +158,7 @@ public class FeedingRecordServiceImplTest extends BaseDbUnitTest {
reqVO.setCreateTime(buildBetweenTime(2023, 2, 1, 2023, 2, 28));
// 调用
PageResult<FeedingRecordDO> pageResult = feedingRecordService.getFeedingRecordPage(reqVO);
PageResult<FeedingRecordRespVO> pageResult = feedingRecordService.getFeedingRecordPage(reqVO);
// 断言
assertEquals(1, pageResult.getTotal());
assertEquals(1, pageResult.getList().size());

Loading…
Cancel
Save