diff --git a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java index 8ad43bc85..805ebbd44 100644 --- a/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java +++ b/pjcloud-canteen/pjcloud-canteen-biz/src/main/java/com/bsd/pjcloud/canteen/service/impl/CanteenSpuServiceImpl.java @@ -112,7 +112,7 @@ public class CanteenSpuServiceImpl extends ServiceImpl list = canteenDailyMenuMapper.selectList(DyWrapper); - List spuIds = list.stream().map(CanteenDailyMenuEntity::getSpuId).distinct().collect(java.util.stream.Collectors.toList()); + List spuIds = list.stream().map(CanteenDailyMenuEntity::getSpuId).distinct().collect(Collectors.toList()); wrapper.notIn(!CollectionUtils.isEmpty(list), CanteenSpuEntity::getId, spuIds); //再次分类餐段过滤 @@ -122,7 +122,7 @@ public class CanteenSpuServiceImpl extends ServiceImpl caIds = canteenCategoryEntities.stream().map(CanteenCategoryEntity::getId).collect(Collectors.toList()); wrapper.in(!CollectionUtils.isEmpty(caIds), CanteenSpuEntity::getCategoryId, caIds); - wrapper.orderByAsc(CanteenSpuEntity::getSort); +// wrapper.orderByAsc(CanteenSpuEntity::getSort); return baseMapper.selectPageByScope(page, wrapper, DataScope.of()); } diff --git a/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/dto/inventoryrecords/ImportCgPlanDTO.java b/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/dto/inventoryrecords/ImportCgPlanDTO.java new file mode 100644 index 000000000..0d7997e39 --- /dev/null +++ b/pjcloud-supermarket/pjcloud-supermarket-api/src/main/java/com/bsd/pjcloud/supermarket/dto/inventoryrecords/ImportCgPlanDTO.java @@ -0,0 +1,10 @@ +package com.bsd.pjcloud.supermarket.dto.inventoryrecords; + + +import lombok.Data; + +@Data +public class ImportCgPlanDTO { + + +} diff --git a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpInventoryRecordsController.java b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpInventoryRecordsController.java index 224a201ba..5425458b8 100644 --- a/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpInventoryRecordsController.java +++ b/pjcloud-supermarket/pjcloud-supermarket-biz/src/main/java/com/bsd/pjcloud/supermarket/controller/SmErpInventoryRecordsController.java @@ -6,10 +6,15 @@ import cn.hutool.core.collection.CollUtil; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bsd.pjcloud.common.core.util.BeanUtils; import com.bsd.pjcloud.common.core.util.R; import com.bsd.pjcloud.common.log.annotation.SysLog; -import com.bsd.pjcloud.supermarket.entity.SmErpInventoryRecordsEntity; -import com.bsd.pjcloud.supermarket.service.SmErpInventoryRecordsService; +import com.bsd.pjcloud.supermarket.dto.cgplan.ErpCgPlanDTO; +import com.bsd.pjcloud.supermarket.entity.*; +import com.bsd.pjcloud.supermarket.service.*; +import com.bsd.pjcloud.supermarket.vo.cgplan.ErpUnitVo; +import com.bsd.pjcloud.supermarket.vo.cgplan.SmErpCgPlanVo; +import com.bsd.pjcloud.supermarket.vo.cgplan.SmeErpCgPlanItemVo; import org.springframework.security.access.prepost.PreAuthorize; import com.bsd.pjcloud.common.excel.annotation.ResponseExcel; import io.swagger.v3.oas.annotations.security.SecurityRequirement; @@ -22,6 +27,7 @@ import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Objects; +import java.util.stream.Collectors; /** * 出入库记录表 @@ -37,6 +43,10 @@ import java.util.Objects; public class SmErpInventoryRecordsController { private final SmErpInventoryRecordsService smErpInventoryRecordsService; + private final SmErpInventoryRecordsItemService smErpInventoryRecordsItemService; + private final SmErpCgPlanService smErpCgPlanService; + private final SmErpSpuService smErpSpuService; + private final SmErpUnitService smErpUnitService; /** * 分页查询 @@ -55,6 +65,7 @@ public class SmErpInventoryRecordsController { } + /** * 通过id查询出入库记录表 * @param id id @@ -64,7 +75,44 @@ public class SmErpInventoryRecordsController { @GetMapping("/{id}" ) @PreAuthorize("@pms.hasPermission('supermarket_smErpInventoryRecords_view')" ) public R getById(@PathVariable("id" ) Long id) { - return R.ok(smErpInventoryRecordsService.getById(id)); + SmErpInventoryRecordsEntity smErpInventoryRecordsEntity = smErpInventoryRecordsService.getById(id); + List list =smErpInventoryRecordsItemService.list(new LambdaQueryWrapper() + .eq(SmErpInventoryRecordsItemEntity::getInventoryId, id)); + + //获取采购item下已选择的item的所有包装单位 + List spuIds =list.stream().map(vo -> vo.getErpSpuId()).collect(Collectors.toList()); + List unitList = smErpUnitService.list(new LambdaQueryWrapper().in(SmErpUnitEntity::getSpuId, spuIds)); + + +// +// SmErpCgPlanVo bean = BeanUtils.toBean(smErpCgPlanEntity, SmErpCgPlanVo.class, (source) -> { +// List smeErpCgPlanItemVos = BeanUtils.toBean(list, SmeErpCgPlanItemVo.class); +// smeErpCgPlanItemVos.stream().forEach(item -> { +// List unitEntities = unitList.stream().filter(unit -> unit.getSpuId().equals(item.getErpSpuId())).collect(Collectors.toList()); +// +//// unitList.stream().forEach(unit -> { +//// if(unit.getId().equals(item.getUnitId())){ +//// item.setSpec(unit.getSpec()); +//// item.setUnit(unit.getUnit()); +//// item.setPackageNum(unit.getPackageNum()); +//// item.setPurchasePrice(unit.getPurchasePrice()); +//// } +//// }); +// item.setErpUnitVos(BeanUtils.toBean(unitEntities, ErpUnitVo.class)); +// }); +// source.setItems(smeErpCgPlanItemVos); +// }); + + +// voList.stream().forEach(vo -> { +// List unitEntities = unitList.stream().filter(unit -> unit.getSpuId().equals(vo.getId())).collect(Collectors.toList()); +// vo.setErpUnitVos(BeanUtils.toBean(unitEntities, ErpUnitVo.class)); +// }); + + + +// return R.ok(bean); + return R.ok(); } /** @@ -119,4 +167,39 @@ public class SmErpInventoryRecordsController { public List export(SmErpInventoryRecordsEntity smErpInventoryRecords,Long[] ids) { return smErpInventoryRecordsService.list(Wrappers.lambdaQuery(smErpInventoryRecords).in(ArrayUtil.isNotEmpty(ids), SmErpInventoryRecordsEntity::getId, ids)); } + + + + /** + * 采购分页查询 + * @param page 分页对象 + * @param smErpCgPlan 采购计划 + * @return + */ + @Operation(summary = "导入采购单" , description = "导入采购单" ) + @GetMapping("/importSmErpCgPlan" ) + @PreAuthorize("@pms.hasPermission('supermarket_smErpInventoryRecords_add')" ) + public R importSmErpCgPlan(@ParameterObject Page page, @ParameterObject SmErpCgPlanEntity smErpCgPlan) { + LambdaQueryWrapper wrapper = Wrappers.lambdaQuery(); + wrapper.like(StrUtil.isNotBlank(smErpCgPlan.getPlanCode()),SmErpCgPlanEntity::getPlanCode,smErpCgPlan.getPlanCode()); + wrapper.eq(Objects.nonNull(smErpCgPlan.getPlanDate()),SmErpCgPlanEntity::getPlanDate,smErpCgPlan.getPlanDate()); + wrapper.eq(Objects.nonNull(smErpCgPlan.getHandlerUserId()),SmErpCgPlanEntity::getHandlerUserId,smErpCgPlan.getHandlerUserId()); + wrapper.eq(StrUtil.isNotBlank(smErpCgPlan.getCheckStatus()),SmErpCgPlanEntity::getCheckStatus,smErpCgPlan.getCheckStatus()); + return R.ok(smErpCgPlanService.page(page, wrapper)); + } + + /** + * 入库选择商品分页数据 + * 分页查询 + * @param page 分页对象 + * @return + */ + @Operation(summary = "选择商品分页数据" , description = "选择商品分页数据" ) + @GetMapping("/erpSpuPage" ) + @PreAuthorize("@pms.hasPermission('supermarket_smErpInventoryRecords_view')" ) + public R getErpSpuPage(@ParameterObject Page page, @ParameterObject ErpCgPlanDTO erpCgPlanDTO) { + return R.ok(smErpSpuService.getErpSpuPage(page, erpCgPlanDTO)); + } + + } \ No newline at end of file