采购单初期版本

This commit is contained in:
lifenlong 2021-10-09 08:08:24 +08:00
parent b91927bfde
commit c8ac7159cf
6 changed files with 55 additions and 29 deletions

View File

@ -1,12 +1,17 @@
package cn.lili.controller.purchase;
package cn.lili.controller.other.purchase;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.vo.PageVO;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.goods.entity.dos.GoodsUnit;
import cn.lili.modules.goods.service.GoodsUnitService;
import cn.lili.modules.purchase.entity.dos.PurchaseOrder;
import cn.lili.modules.purchase.entity.params.PurchaseOrderSearchParams;
import cn.lili.modules.purchase.entity.vos.PurchaseOrderVO;
import cn.lili.modules.purchase.service.PurchaseOrderService;
import cn.lili.mybatis.util.PageUtil;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -33,9 +38,19 @@ public class PurchaseBuyerController {
@Autowired
private PurchaseOrderService purchaseOrderService;
@Autowired
private GoodsUnitService goodsUnitService;
@ApiOperation(value = "分页获取商品计量单位")
@GetMapping("/goodsUnit")
public ResultMessage<IPage<GoodsUnit>> goodsUnitPage(PageVO pageVO) {
return ResultUtil.data(goodsUnitService.page(PageUtil.initPage(pageVO)));
}
@ApiOperation(value = "添加采购单")
@PostMapping
public ResultMessage<PurchaseOrderVO> addPurchaseOrderVO(PurchaseOrderVO purchaseOrderVO) {
public ResultMessage<PurchaseOrderVO> addPurchaseOrderVO(@RequestBody PurchaseOrderVO purchaseOrderVO) {
return ResultUtil.data(purchaseOrderService.addPurchaseOrder(purchaseOrderVO));
}
@ -64,7 +79,7 @@ public class PurchaseBuyerController {
@PutMapping("/{id}")
public ResultMessage<Object> close(@NotNull @PathVariable String id) {
purchaseOrderService.close(id);
return ResultUtil.success();
return ResultUtil.success(ResultCode.SUCCESS);
}
}

View File

@ -1,9 +1,14 @@
package cn.lili.controller.purchase;
package cn.lili.controller.other.purchase;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.purchase.entity.dos.PurchaseOrder;
import cn.lili.modules.purchase.entity.dos.PurchaseQuoted;
import cn.lili.modules.purchase.entity.vos.PurchaseQuotedVO;
import cn.lili.modules.purchase.service.PurchaseOrderService;
import cn.lili.modules.purchase.service.PurchaseQuotedService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -30,10 +35,19 @@ public class PurchaseQuotedController {
*/
@Autowired
private PurchaseQuotedService purchaseQuotedService;
/**
* 采购单
*/
@Autowired
private PurchaseOrderService purchaseOrderService;
@ApiOperation(value = "添加采购单报价")
@PostMapping
public ResultMessage<PurchaseQuoted> addPurchaseOrderVO(PurchaseQuotedVO purchaseQuotedVO) {
public ResultMessage<PurchaseQuoted> addPurchaseOrderVO(@RequestBody PurchaseQuotedVO purchaseQuotedVO) {
PurchaseOrder purchaseOrder=purchaseOrderService.getById(purchaseQuotedVO.getPurchaseOrderId());
if(DateUtil.compare(purchaseOrder.getDeadline(),new DateTime())< 0){
ResultUtil.error(ResultCode.PURCHASE_ORDER_DEADLINE_ERROR);
}
return ResultUtil.data(purchaseQuotedService.addPurchaseQuoted(purchaseQuotedVO));
}

View File

@ -449,6 +449,8 @@ public enum ResultCode {
CUSTOM_WORDS_SECRET_KEY_ERROR(90002, "秘钥验证失败!"),
CONNECT_NOT_EXIST(90000, "登录方式不存在!"),
ELASTICSEARCH_INDEX_INIT_ERROR(90003, "索引初始化失败!"),
PURCHASE_ORDER_DEADLINE_ERROR(90004,"供求单,已超过报名截止时间")
;
private final Integer code;

View File

@ -1,24 +1,23 @@
package cn.lili.modules.purchase.serviceimpl;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.utils.BeanUtil;
import cn.lili.modules.purchase.entity.dos.PurchaseOrder;
import cn.lili.modules.purchase.entity.dos.PurchaseOrderItem;
import cn.lili.modules.purchase.entity.params.PurchaseOrderSearchParams;
import cn.lili.modules.purchase.entity.vos.PurchaseOrderVO;
import cn.lili.modules.purchase.mapper.PurchaseOrderMapper;
import cn.lili.modules.purchase.service.PurchaseOrderItemService;
import cn.lili.modules.purchase.service.PurchaseOrderService;
import cn.lili.mybatis.util.PageUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.Map;
/**
* 采购单业务层实现
@ -37,6 +36,7 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
BeanUtil.copyProperties(purchaseOrderVO, purchaseOrder);
//添加采购单
purchaseOrder.setStatus("OPEN");
purchaseOrder.setMemberId(UserContext.getCurrentUser().getId());
this.save(purchaseOrder);
//添加采购单子内容
purchaseOrderItemService.addPurchaseOrderItem(purchaseOrder.getId(), purchaseOrderVO.getPurchaseOrderItems());
@ -51,9 +51,8 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
BeanUtil.copyProperties(purchaseOrder, purchaseOrderVO);
//获取采购单子内容
Map<String, Object> map = new HashMap<>(2);
map.put("purchaseOrderId", id);
purchaseOrderVO.setPurchaseOrderItems(purchaseOrderItemService.listByMap(map));
purchaseOrderVO.setPurchaseOrderItems(purchaseOrderItemService.list(
new LambdaQueryWrapper<PurchaseOrderItem>().eq(PurchaseOrderItem::getPurchaseOrderId,id)));
return purchaseOrderVO;
}
@ -61,21 +60,15 @@ public class PurchaseOrderServiceImpl extends ServiceImpl<PurchaseOrderMapper, P
public IPage<PurchaseOrder> page(PurchaseOrderSearchParams purchaseOrderSearchParams) {
LambdaQueryWrapper<PurchaseOrder> lambdaQueryWrapper = Wrappers.lambdaQuery();
if (purchaseOrderSearchParams.getMemberId() != null) {
lambdaQueryWrapper.eq(PurchaseOrder::getMemberId, purchaseOrderSearchParams.getMemberId());
}
if (purchaseOrderSearchParams.getCategoryId() != null) {
lambdaQueryWrapper.eq(PurchaseOrder::getCategoryId, purchaseOrderSearchParams.getCategoryId());
}
if (purchaseOrderSearchParams.getStatus() != null) {
lambdaQueryWrapper.eq(PurchaseOrder::getStatus, purchaseOrderSearchParams.getStatus());
}
Page page = new Page();
page.setSize(purchaseOrderSearchParams.getPageSize());
page.setPages(purchaseOrderSearchParams.getPageNumber());
IPage<PurchaseOrder> purchaseOrders = this.page(page, lambdaQueryWrapper);
return purchaseOrders;
lambdaQueryWrapper.eq(purchaseOrderSearchParams.getMemberId() != null,
PurchaseOrder::getMemberId, purchaseOrderSearchParams.getMemberId());
lambdaQueryWrapper.eq(purchaseOrderSearchParams.getCategoryId() != null,
PurchaseOrder::getCategoryId, purchaseOrderSearchParams.getCategoryId());
lambdaQueryWrapper.eq(purchaseOrderSearchParams.getStatus() != null,
PurchaseOrder::getStatus, purchaseOrderSearchParams.getStatus());
lambdaQueryWrapper.orderByDesc(PurchaseOrder::getCreateTime);
return this.page(PageUtil.initPage(purchaseOrderSearchParams), lambdaQueryWrapper);
}
@Override

View File

@ -4,6 +4,7 @@ import cn.lili.common.utils.BeanUtil;
import cn.lili.modules.purchase.entity.dos.PurchaseQuoted;
import cn.lili.modules.purchase.entity.vos.PurchaseQuotedVO;
import cn.lili.modules.purchase.mapper.PurchaseQuotedMapper;
import cn.lili.modules.purchase.service.PurchaseOrderService;
import cn.lili.modules.purchase.service.PurchaseQuotedItemService;
import cn.lili.modules.purchase.service.PurchaseQuotedService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@ -11,7 +12,6 @@ import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
@ -26,9 +26,10 @@ import java.util.List;
public class PurchaseQuotedServiceImpl extends ServiceImpl<PurchaseQuotedMapper, PurchaseQuoted> implements PurchaseQuotedService {
@Autowired
private PurchaseQuotedItemService purchaseQuotedItemService;
@Override
public PurchaseQuotedVO addPurchaseQuoted(PurchaseQuotedVO purchaseQuotedVO) {
PurchaseQuoted purchaseQuoted = new PurchaseQuoted();
BeanUtil.copyProperties(purchaseQuotedVO, purchaseQuoted);
//添加报价单
@ -42,6 +43,7 @@ public class PurchaseQuotedServiceImpl extends ServiceImpl<PurchaseQuotedMapper,
public List<PurchaseQuoted> getByPurchaseOrderId(String purchaseOrderId) {
LambdaQueryWrapper<PurchaseQuoted> lambdaQueryWrapper = Wrappers.lambdaQuery();
lambdaQueryWrapper.eq(PurchaseQuoted::getPurchaseOrderId, purchaseOrderId);
lambdaQueryWrapper.orderByDesc(PurchaseQuoted::getCreateTime);
return this.list(lambdaQueryWrapper);
}

View File

@ -1,4 +1,4 @@
package cn.lili.controller.purchase;
package cn.lili.controller.other.purchase;
import cn.lili.common.enums.ResultUtil;
import cn.lili.common.vo.ResultMessage;