From 4d84802f381a447171c5dda28d44a0e53e93f3f4 Mon Sep 17 00:00:00 2001 From: xuhy <3313886187@qq.com> Date: 星期五, 13 十二月 2024 17:09:05 +0800 Subject: [PATCH] 后台设置、小票机管理、员工管理,系统管理,售后管理 --- manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java | 94 ++++++++++++++++++++++++++++++++++------------ 1 files changed, 69 insertions(+), 25 deletions(-) diff --git a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java index 9c8b853..5ab8ca9 100644 --- a/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java +++ b/manage/src/main/java/com/jilongda/manage/controller/TWarehousingController.java @@ -1,17 +1,30 @@ package com.jilongda.manage.controller; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.jilongda.common.basic.ApiResult; +import com.jilongda.common.basic.PageInfo; +import com.jilongda.common.constants.WarehousingConstant; +import com.jilongda.common.enums.WarehousingTypeEnum; +import com.jilongda.common.security.JwtTokenUtils; +import com.jilongda.common.utils.CodeGenerateUtils; +import com.jilongda.manage.dto.TWarehousingDTO; +import com.jilongda.manage.model.TFrameWarehousingDetail; import com.jilongda.manage.model.TWarehousing; +import com.jilongda.manage.query.TWarehousingDetailQuery; +import com.jilongda.manage.service.TFrameWarehousingDetailService; import com.jilongda.manage.service.TWarehousingService; +import com.jilongda.manage.vo.TFrameWarehousingDetailVO; +import com.jilongda.manage.vo.TWarehousingVO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.validation.annotation.Validated; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; + +import java.time.LocalDateTime; +import java.util.List; /** * <p> @@ -28,36 +41,67 @@ @Autowired private TWarehousingService warehousingService; + @Autowired + private TFrameWarehousingDetailService frameWarehousingDetailService; /** - * 获取镜架/镜片出库入库列表 + * 出入库单列表 */ -// @ApiOperation(value = "获取镜架/镜片出库入库分页列表") -// @PostMapping(value = "/pageList") -// public ApiResult<PageInfo<TWarehousingVO>> pageList(@RequestBody TWarehousingQuery query) { -// return ApiResult.success(warehousingService.pageList(query)); -// } - -// /** -// * 获取镜架/镜片出库入库列表 -// */ -// @ApiOperation(value = "获取镜架/镜片出库入库列表") -// @PostMapping(value = "/list") -// public ApiResult<List<TWarehousing>> list(@RequestBody TWarehousingQuery query) { -// List<TWarehousing> list = warehousingService.list(Wrappers.lambdaQuery(TWarehousing.class) -// .eq(TWarehousing::getStatus, 1)); -// return ApiResult.success(list); -// } + @ApiOperation(value = "镜架出入库单列表") + @PostMapping(value = "/inventoryReceiptList") + public ApiResult<PageInfo<TWarehousingVO>> inventoryReceiptList(@RequestBody TWarehousingDetailQuery query) { + return ApiResult.success(warehousingService.inventoryReceiptList(query)); + } /** - * 添加镜架/镜片出库入库 + * 库存明细记录列表 */ - @ApiOperation(value = "添加镜架/镜片出库入库") - @PostMapping(value = "/add") - public ApiResult<String> add(@Validated @RequestBody TWarehousing dto) { + @ApiOperation(value = "镜架库存明细记录列表") + @PostMapping(value = "/detailList") + public ApiResult<PageInfo<TFrameWarehousingDetailVO>> detailList(@RequestBody TWarehousingDetailQuery query) { + PageInfo<TFrameWarehousingDetailVO> frameWarehousingDetailVOPageInfo = warehousingService.detailList(query); + return ApiResult.success(frameWarehousingDetailVOPageInfo); + } + + /** + * 添加镜架出库,入库,作废,退货 + */ + @ApiOperation(value = "添加镜架出库,入库,作废,退货") + @PostMapping(value = "/outBound") + public ApiResult<String> outBound(@Validated @RequestBody TWarehousingDTO dto) { + // 获取当前用户 + String username = JwtTokenUtils.getUsername(); + dto.setCreateBy(username); + dto.setCreateTime(LocalDateTime.now()); + dto.setType(WarehousingTypeEnum.FRAME.getCode()); warehousingService.save(dto); + + // 添加明细 + List<TFrameWarehousingDetail> frameWarehousingDetails = dto.getFrameWarehousingDetails(); + frameWarehousingDetails.forEach(detail -> { + detail.setWarehousingId(dto.getId()); + detail.setCode(WarehousingConstant.OUT_BOUND+CodeGenerateUtils.generateVolumeSn()); + }); + frameWarehousingDetailService.saveBatch(frameWarehousingDetails); return ApiResult.success(); } + /** + * 查询详情 + */ + @ApiOperation(value = "镜架查询详情") + @GetMapping(value = "/getDetailById") + public ApiResult<TWarehousingVO> getDetailById(@RequestParam Integer id) { + TWarehousing warehousing = warehousingService.getById(id); + TWarehousingVO vo = new TWarehousingVO(); + BeanUtils.copyProperties(warehousing, vo); + List<TFrameWarehousingDetail> list = frameWarehousingDetailService.list(Wrappers.lambdaQuery(TFrameWarehousingDetail.class) + .eq(TFrameWarehousingDetail::getWarehousingId, id)); + vo.setFrameWarehousingDetails(list); + // 统计数量 + vo.setTotalNum(list.stream().mapToInt(TFrameWarehousingDetail::getTotal).sum()); + return ApiResult.success(vo); + } + } -- Gitblit v1.7.1