From a7873d383118a36685742d9bc68a01fff7a250ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=83=91=E6=98=8E=E6=A2=81?= <2429105222@qq.com> Date: Fri, 10 Feb 2023 15:05:00 +0800 Subject: [PATCH] =?UTF-8?q?=E7=94=B3=E8=B4=AD=E4=BB=A3=E7=A0=81=E6=8F=90?= =?UTF-8?q?=E4=BA=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../purchase/PurApplyController.java | 329 +++++++++++++++++ .../purchase/PurPlanController.java | 337 ++++++++++++++++++ .../glxp/api/dao/purchase/PurApplyDao.java | 23 ++ .../api/dao/purchase/PurApplyDetailDao.java | 28 ++ .../com/glxp/api/dao/purchase/PurPlanDao.java | 23 ++ .../api/dao/purchase/PurPlanDetailDao.java | 25 ++ .../api/entity/purchase/PurApplyEntity.java | 6 +- .../api/entity/purchase/PurPlanEntity.java | 2 +- .../api/req/purchase/PostPurApplyRequest.java | 19 + .../api/req/purchase/PostPurPlanRequest.java | 18 + .../req/purchase/PurApplyDetailRequest.java | 35 ++ .../api/req/purchase/PurApplyRequest.java | 107 ++++++ .../req/purchase/PurPlanDetailRequest.java | 50 +++ .../glxp/api/req/purchase/PurPlanRequest.java | 94 +++++ .../api/res/purchase/PurApplyResponse.java | 26 +- .../res/purchase/PurOrderDetailResponse.java | 50 +++ .../purchase/PurApplyDetailService.java | 28 ++ .../api/service/purchase/PurApplyService.java | 20 ++ .../purchase/PurPlanDetailService.java | 26 ++ .../api/service/purchase/PurPlanService.java | 22 ++ .../impl/PurApplyDetailImplService.java | 79 ++++ .../purchase/impl/PurApplyServiceImpl.java | 48 +++ .../impl/PurPlanDetailServiceImpl.java | 74 ++++ .../purchase/impl/PurPlanServiceImpl.java | 48 +++ ...SubWarehouseDao.xml => PurPlanService.xml} | 0 .../mybatis/mapper/purchase/PurApplyDao.xml | 124 +++++++ .../mapper/purchase/PurApplyDetailDao.xml | 99 +++++ .../mybatis/mapper/purchase/PurPlanDao.xml | 121 +++++++ .../mapper/purchase/PurPlanDetailDao.xml | 96 +++++ 29 files changed, 1939 insertions(+), 18 deletions(-) create mode 100644 src/main/java/com/glxp/api/controller/purchase/PurApplyController.java create mode 100644 src/main/java/com/glxp/api/controller/purchase/PurPlanController.java create mode 100644 src/main/java/com/glxp/api/dao/purchase/PurApplyDao.java create mode 100644 src/main/java/com/glxp/api/dao/purchase/PurApplyDetailDao.java create mode 100644 src/main/java/com/glxp/api/dao/purchase/PurPlanDao.java create mode 100644 src/main/java/com/glxp/api/dao/purchase/PurPlanDetailDao.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PostPurApplyRequest.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PostPurPlanRequest.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java create mode 100644 src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java create mode 100644 src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java create mode 100644 src/main/java/com/glxp/api/service/purchase/PurApplyDetailService.java create mode 100644 src/main/java/com/glxp/api/service/purchase/PurApplyService.java create mode 100644 src/main/java/com/glxp/api/service/purchase/PurPlanDetailService.java create mode 100644 src/main/java/com/glxp/api/service/purchase/PurPlanService.java create mode 100644 src/main/java/com/glxp/api/service/purchase/impl/PurApplyDetailImplService.java create mode 100644 src/main/java/com/glxp/api/service/purchase/impl/PurApplyServiceImpl.java create mode 100644 src/main/java/com/glxp/api/service/purchase/impl/PurPlanDetailServiceImpl.java create mode 100644 src/main/java/com/glxp/api/service/purchase/impl/PurPlanServiceImpl.java rename src/main/resources/mybatis/mapper/auth/{InvSubWarehouseDao.xml => PurPlanService.xml} (100%) create mode 100644 src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml create mode 100644 src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml create mode 100644 src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml create mode 100644 src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml diff --git a/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java b/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java new file mode 100644 index 000000000..20d463f73 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/purchase/PurApplyController.java @@ -0,0 +1,329 @@ +package com.glxp.api.controller.purchase; + +import cn.hutool.core.collection.CollUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.annotation.RepeatSubmit; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.constant.Constant; +import com.glxp.api.constant.ConstantStatus; +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.entity.purchase.PurApplyEntity; +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.entity.purchase.PurPlanEntity; +import com.glxp.api.req.purchase.PostPurApplyRequest; +import com.glxp.api.req.purchase.PurApplyDetailRequest; +import com.glxp.api.req.purchase.PurApplyRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.purchase.PurApplyResponse; +import com.glxp.api.res.purchase.PurOrderDetailResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.IBasicBussinessTypeService; +import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.basic.UdiRlSupService; +import com.glxp.api.service.purchase.PurApplyDetailService; +import com.glxp.api.service.purchase.PurApplyService; +import com.glxp.api.service.purchase.PurPlanDetailService; +import com.glxp.api.service.purchase.PurPlanService; +import com.glxp.api.util.GennerOrderUtils; +import com.glxp.api.util.OrderNoTypeBean; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.constraints.NotEmpty; +import java.util.Arrays; +import java.util.Date; +import java.util.List; + +/** + * pur + * + * @author anthony.ywj + * @date 2022-10-12 + */ +@Validated +@RequiredArgsConstructor +@RestController +public class PurApplyController { + + @Resource + PurApplyService purApplyService; + @Resource + PurApplyDetailService purApplyDetailService; + @Resource + PurPlanService purPlanService; + @Resource + PurPlanDetailService purPlanDetailService; + + + @Resource + CustomerService customerService; + @Resource + GennerOrderUtils gennerOrderUtils; + @Resource + UdiRelevanceService udiRelevanceService; + @Resource + UdiRlSupService udiRlSupService; + @Resource + IBasicBussinessTypeService basicBussinessTypeService; + + /** + * 新增申购单 + */ + @RepeatSubmit() + @AuthRuleAnnotation("") + @PostMapping("/purchase/apply/postOrder") + public BaseResponse postOrder(@RequestBody PostPurApplyRequest postPurApplyRequest) { + + Long userId = customerService.getUserId(); + PurApplyEntity purApplyEntity = postPurApplyRequest.getPurApplyEntity(); + purApplyEntity.setCreateUser(userId + ""); + purApplyEntity.setCreateTime(new Date()); + purApplyEntity.setUpdateTime(new Date()); + purApplyEntity.setStatus(postPurApplyRequest.getEditStatus()); //草稿状态 + if(postPurApplyRequest.getType()!=null){ + String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.SG_ORDER, "yyyyMMdd")); + purApplyEntity.setBillNo(billNo); + } + if (purApplyEntity.getId() == null) { + purApplyService.insert(purApplyEntity); + } else { + + purApplyService.update(purApplyEntity); +// if (CollUtil.isNotEmpty(postPurApplyRequest.getSubErpOrders())) { +// purApplyDetailService.deleteByOrderId(purApplyEntity.getId() + ""); +// } + } +// if (CollUtil.isNotEmpty(postPurApplyRequest.getSubErpOrders())) { +// for (StockOrderDetailEntity stockOrderDetailEntity : postPurApplyRequest.getSubErpOrders()) { +// PurApplyDetailEntity purApplyDetailEntity = new PurApplyDetailEntity(); +// BeanUtils.copyProperties(stockOrderDetailEntity, purApplyDetailEntity); +// purApplyDetailEntity.setCount(stockOrderDetailEntity.getCount()); +// purApplyDetailEntity.setOrderIdFk(purApplyEntity.getId() + ""); +// purApplyDetailService.insert(purApplyDetailEntity); +// } +// } + + return ResultVOUtils.success("提交成功!"); + } + + + /** + * 查询申购单列表 + */ + @GetMapping("/purchase/apply/list") + public BaseResponse list(PurApplyRequest purApplyRequest) { + + if (purApplyRequest.getStatus() == null) { + purApplyRequest.setStatus(11); //查询未审核和草稿状态 + } + + List purApplyEntities = purApplyService.queryPageList(purApplyRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(purApplyEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(purApplyEntities); + return ResultVOUtils.success(pageSimpleResponse); + + } + + + /** + * 查询申购单列表 + */ + @GetMapping("/purchase/apply/auditList") + public BaseResponse auditList(PurApplyRequest purApplyRequest) { + + if (purApplyRequest.getStatus() == null) { + purApplyRequest.setStatus(10); //查询未审核和已审核状态 + } + + List purApplyEntities = purApplyService.queryPageList(purApplyRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(purApplyEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(purApplyEntities); + return ResultVOUtils.success(pageSimpleResponse); + + } + + + /** + * 审核申购单 + */ + @RepeatSubmit() + @PostMapping("/purchase/apply/auditOrder") + public BaseResponse auditOrder(@RequestBody PurApplyResponse purApplyRequest) { + + + Long userId = customerService.getUserId(); + PurApplyEntity purApplyEntity = new PurApplyEntity(); + BeanUtils.copyProperties(purApplyRequest, purApplyEntity); + purApplyEntity.setUpdateTime(new Date()); + purApplyEntity.setAuditTime(new Date()); + purApplyEntity.setAuditUser(userId + ""); + purApplyService.update(purApplyEntity); + + //审核通过后转换成采购计划单 + if (purApplyEntity.getStatus() == ConstantStatus.APPLY_AUDIT_ED && purApplyRequest.isAudtoPlan()) { + PurPlanEntity purPlanEntity = new PurPlanEntity(); + String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd")); + purPlanEntity.setBillNo(billNo); + purPlanEntity.setBillDate(new Date()); + purPlanEntity.setStatus(ConstantStatus.APPLY_DRAFT); + purPlanEntity.setBillType("purPlan"); + purPlanEntity.setCreateTime(new Date()); + purPlanEntity.setUpdateTime(new Date()); + purPlanEntity.setApplyBillNo(purApplyEntity.getBillNo()); + purPlanEntity.setApplyCreateBy(purApplyEntity.getCreateUser()); + purPlanEntity.setApplyRemark(purApplyEntity.getRemark()); + purPlanEntity.setApplyAuditBy(purApplyEntity.getAuditUser()); + purPlanEntity.setRemark("申购科室:" + purApplyRequest.getTargetInvCode() + + ";申购人:" + purApplyRequest.getCreateByName() + ";申购原因:" + purApplyRequest.getRemark()); + purApplyEntity.setPlanBillNo(purPlanEntity.getBillNo()); + purApplyEntity.setGeneratePlan(true); + purApplyService.update(purApplyEntity); + purPlanService.insert(purPlanEntity); + List purApplyDetailEntities = purApplyDetailService.findByOrderId(purApplyEntity.getId() + ""); + if (CollUtil.isNotEmpty(purApplyDetailEntities)) { + for (PurApplyDetailEntity purApplyDetailEntity : purApplyDetailEntities) { + PurPlanDetailEntity purPlanDetailEntity = new PurPlanDetailEntity(); + BeanUtils.copyProperties(purApplyDetailEntity, purPlanDetailEntity); + purPlanDetailEntity.setOrderIdFk(purPlanEntity.getId() + ""); + purPlanDetailService.insert(purPlanDetailEntity); + } + } + } + return ResultVOUtils.success("更新成功!"); + } + + + /** + * 新增申购单 + */ + @RepeatSubmit() + @PostMapping("/purchase/apply") + public BaseResponse add(@RequestBody PurApplyEntity purApplyRequest) { + + purApplyService.insert(purApplyRequest); + return ResultVOUtils.success("新增成功!"); + } + + /** + * 修改申购单 + */ + @RepeatSubmit() + @PutMapping("/purchase/apply") + public BaseResponse edit(@RequestBody PurApplyEntity purApplyRequest) { + purApplyService.update(purApplyRequest); + return ResultVOUtils.success("删除成功"); + } + + /** + * 删除申购单 + * + * @param ids 主键串 + */ + @DeleteMapping("/purchase/apply/{ids}") + public BaseResponse remove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + List idArray = Arrays.asList(ids); + if (CollUtil.isNotEmpty(idArray)) { + purApplyService.deleteByIds(idArray); + for (Long id : idArray) { + purApplyDetailService.deleteByOrderId(id + ""); + } + } + + + return ResultVOUtils.success("删除成功"); + } + + + /** + * 查询申购单列表 + */ + @GetMapping("/purchase/apply/list/detail") + public BaseResponse detailList(PurApplyDetailRequest purApplyDetailRequest) { + + List purApplyDetailEntities = purApplyDetailService.joinQueryList(purApplyDetailRequest); + PageInfo pageInfo; + pageInfo = new PageInfo<>(purApplyDetailEntities); + PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); + pageSimpleResponse.setTotal(pageInfo.getTotal()); + pageSimpleResponse.setList(purApplyDetailEntities); + return ResultVOUtils.success(pageSimpleResponse); + + } + + /** + * 新增申购单 + */ + @RepeatSubmit() + @PostMapping("/purchase/apply/detail") + public BaseResponse detailAdd(@RequestBody PurApplyDetailEntity purApplyDetailEntity) { + + purApplyDetailService.insert(purApplyDetailEntity); + return ResultVOUtils.success("新增成功"); + } + + /** + * 修改申购单 + */ + @RepeatSubmit() + @PostMapping("/purchase/apply/updateDetail") + public BaseResponse detailEdit(@RequestBody PurApplyDetailEntity purApplyDetailRequest) { + purApplyDetailService.update(purApplyDetailRequest); + return ResultVOUtils.success("修改成功"); + } + + /** + * 删除申购单 + * + * @param ids 主键串 + */ + @DeleteMapping("/purchase/apply/detail/{ids}") + public BaseResponse detailRemove(@NotEmpty(message = "主键不能为空") + @PathVariable Long[] ids) { + + purApplyDetailService.deleteByIds(Arrays.asList(ids)); + return ResultVOUtils.success("删除成功"); + } + + /*** 插入申购单详情 */ + /** + * 新增申购单 + */ + @RepeatSubmit() + @PostMapping("/purchase/apply/addDetail") + public BaseResponse addDetail(@RequestBody PurApplyDetailEntity purApplyDetailEntity) { + + purApplyDetailService.insert(purApplyDetailEntity); + return ResultVOUtils.success(purApplyDetailEntity.getOrderIdFk()); + } + /** + * 新增申购单 + */ + @AuthRuleAnnotation("") + @PostMapping("/purchase/apply/add") + public BaseResponse add() { + + Long userId = customerService.getUserId(); + PurApplyEntity purApplyEntity = new PurApplyEntity(); + purApplyEntity.setCreateUser(userId + ""); + purApplyEntity.setCreateTime(new Date()); + purApplyEntity.setUpdateTime(new Date()); + purApplyEntity.setUpdateUser(userId + ""); + purApplyService.insert(purApplyEntity); + Long id=purApplyEntity.getId(); + return ResultVOUtils.success(id); + } + + +} diff --git a/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java b/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java new file mode 100644 index 000000000..5cf8a1898 --- /dev/null +++ b/src/main/java/com/glxp/api/controller/purchase/PurPlanController.java @@ -0,0 +1,337 @@ +package com.glxp.api.controller.purchase; + +import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.util.StrUtil; +import com.github.pagehelper.PageInfo; +import com.glxp.api.annotation.AuthRuleAnnotation; +import com.glxp.api.annotation.RepeatSubmit; +import com.glxp.api.common.res.BaseResponse; +import com.glxp.api.common.util.ResultVOUtils; +import com.glxp.api.constant.Constant; +import com.glxp.api.constant.ConstantStatus; +import com.glxp.api.entity.basic.BasicCorpEntity; +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.entity.purchase.PurPlanEntity; +import com.glxp.api.req.purchase.PostPurPlanRequest; +import com.glxp.api.req.purchase.PurPlanDetailRequest; +import com.glxp.api.req.purchase.PurPlanRequest; +import com.glxp.api.res.PageSimpleResponse; +import com.glxp.api.res.basic.UdiRelevanceResponse; +import com.glxp.api.res.purchase.PurPlanResponse; +import com.glxp.api.service.auth.CustomerService; +import com.glxp.api.service.basic.BasicCorpService; +import com.glxp.api.service.basic.UdiRelevanceService; +import com.glxp.api.service.purchase.PurPlanDetailService; +import com.glxp.api.service.purchase.PurPlanService; +import com.glxp.api.util.GennerOrderUtils; +import com.glxp.api.util.OrderNoTypeBean; +import lombok.RequiredArgsConstructor; +import org.springframework.beans.BeanUtils; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import javax.annotation.Resource; +import javax.validation.constraints.NotEmpty; +import java.util.*; + + +/** + * pur + * + * @author anthony.ywj + * @date 2022-10-12 + */ +@Validated +@RequiredArgsConstructor +@RestController +public class PurPlanController { + +// +// @Resource +// PurPlanService purPlanService; +// @Resource +// PurPlanDetailService purPlanDetailService; +// +// @Resource +// CustomerService customerService; +// @Resource +// GennerOrderUtils gennerOrderUtils; +// @Resource +// BasicCorpService basicCorpService; +// @Resource +// UdiRelevanceService udiRelevanceService; +// @Resource +// StockOrderDetailService stockOrderDetailService; +// +// @Resource +// StockOrderService stockOrderService; +// +// /** +// * 新增采购计划 +// */ +// @RepeatSubmit() +// @AuthRuleAnnotation("") +// @PostMapping("/purchase/plan/postOrder") +// public BaseResponse postOrder(@RequestBody PostPurPlanRequest postPurPlanRequest) { +// +// Long userId = customerService.getUserId(); +// PurPlanEntity purApplyEntity = postPurPlanRequest.getPurPlanEntity(); +// +// purApplyEntity.setCreateUser(userId + ""); +// purApplyEntity.setCreateTime(new Date()); +// purApplyEntity.setUpdateTime(new Date()); +// purApplyEntity.setStatus(postPurPlanRequest.getEditStatus()); //草稿状态 +// if (purApplyEntity.getId() == null) { +// String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.JH_ORDER, "yyyyMMdd")); +// purApplyEntity.setBillNo(billNo); +// purPlanService.insert(purApplyEntity); +// } else { +// purPlanService.update(purApplyEntity); +// if (CollUtil.isNotEmpty(postPurPlanRequest.getSubErpOrders())) { +// purPlanDetailService.deleteByOrderId(purApplyEntity.getId() + ""); +// } +// } +// List purPlanDetailEntities = new ArrayList<>(); +// if (CollUtil.isNotEmpty(postPurPlanRequest.getSubErpOrders())) { +// for (StockOrderDetailEntity stockOrderDetailEntity : postPurPlanRequest.getSubErpOrders()) { +// PurPlanDetailEntity purApplyDetailEntity = new PurPlanDetailEntity(); +// BeanUtils.copyProperties(stockOrderDetailEntity, purApplyDetailEntity); +// purApplyDetailEntity.setOrderIdFk(purApplyEntity.getId() + ""); +// purApplyDetailEntity.setCount(Integer.valueOf(stockOrderDetailEntity.getCount())); +// purPlanDetailService.insert(purApplyDetailEntity); +// purPlanDetailEntities.add(purApplyDetailEntity); +// } +// } +// +// +// return ResultVOUtils.success("提交成功!"); +// } +// +// +// /** +// * 查询采购计划列表 +// */ +// @GetMapping("/purchase/plan/list") +// public BaseResponse list(PurPlanRequest purApplyRequest) { +// +// if (purApplyRequest.getStatus() == null) { +// purApplyRequest.setStatus(11); //查询未审核和草稿状态 +// } +// +// List purApplyEntities = purPlanService.queryPageList(purApplyRequest); +// PageInfo pageInfo; +// pageInfo = new PageInfo<>(purApplyEntities); +// PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); +// pageSimpleResponse.setTotal(pageInfo.getTotal()); +// pageSimpleResponse.setList(purApplyEntities); +// return ResultVOUtils.success(pageSimpleResponse); +// +// } +// +// +// /** +// * 查询采购计划列表 +// */ +// @GetMapping("/purchase/plan/auditList") +// public BaseResponse auditList(PurPlanRequest purApplyRequest) { +// +// if (purApplyRequest.getStatus() == null) { +// purApplyRequest.setStatus(10); //查询未审核和已审核状态 +// } +// List purApplyEntities = purPlanService.queryPageList(purApplyRequest); +// PageInfo pageInfo; +// pageInfo = new PageInfo<>(purApplyEntities); +// PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); +// pageSimpleResponse.setTotal(pageInfo.getTotal()); +// pageSimpleResponse.setList(purApplyEntities); +// return ResultVOUtils.success(pageSimpleResponse); +// +// } +// +// +// /** +// * 审核采购计划 +// */ +// @RepeatSubmit() +// @PostMapping("/purchase/plan/auditOrder") +// public BaseResponse auditOrder(@RequestBody PostPurPlanRequest postPurPlanRequest) { +// Long userId = customerService.getUserId(); +// PurPlanEntity purApplyEntity = postPurPlanRequest.getPurPlanEntity(); +// purApplyEntity.setUpdateTime(new Date()); +// purApplyEntity.setAuditUser(userId + ""); +// purApplyEntity.setStatus(postPurPlanRequest.getEditStatus()); +// purPlanService.update(purApplyEntity); +// +// List purPlanDetailEntities = purPlanDetailService.findByOrderId(purApplyEntity.getId() + ""); +// +//// BasicBusTypeChangeEntity basicBusTypeChangeEntity = basicBusTypeChangeService.findByAction(purApplyEntity.getBillType()); +// //转换成业务单据 +// if (postPurPlanRequest.getEditStatus() == ConstantStatus.APPLY_AUDIT_ED +// && StrUtil.isNotEmpty(purApplyEntity.getTargetSubInv()) && StrUtil.isNotEmpty(purApplyEntity.getTargetBillAction())) { +// +// if (CollUtil.isNotEmpty(purPlanDetailEntities)) { +// //1.根据供应商分组 +// Map> filterSupMaps = new HashMap<>(); +// for (PurPlanDetailEntity purPlanDetailEntity : purPlanDetailEntities) { +// if (StrUtil.isNotEmpty(purPlanDetailEntity.getSupId())) { +// if (filterSupMaps.get(purPlanDetailEntity.getSupId()) == null) { +// List temps = new ArrayList<>(); +// temps.add(purPlanDetailEntity); +// filterSupMaps.put(purPlanDetailEntity.getSupId(), temps); +// } else { +// filterSupMaps.get(purPlanDetailEntity.getSupId()).add(purPlanDetailEntity); +// } +// } +// } +// //2.生成业务单据 +// String stockOrderNo = ";"; +// for (String supId : filterSupMaps.keySet()) { +// //2.构建业务单据 +// StockOrderEntity stockOrderEntity = new StockOrderEntity(); +// String billNo = gennerOrderUtils.createStOrderNo(new OrderNoTypeBean(Constant.BUS_ORDER, "yyyyMMdd")); +// stockOrderNo = stockOrderNo + billNo; +// stockOrderEntity.setBillNo(billNo); +// stockOrderEntity.setSourceType(ConstantStatus.ST_APPLY_ADD); +// stockOrderEntity.setCorpId(supId); +// stockOrderEntity.setUnitIdFk(supId); +// BasicCorpEntity basicCorpEntity = basicCorpService.selectByErpId(supId); +// stockOrderEntity.setCorpName(basicCorpEntity.getName()); +// stockOrderEntity.setBilldate(DateUtil.formatDateTime(new Date())); +// stockOrderEntity.setStatus(ConstantStatus.SORDER_ALLOC); +// stockOrderEntity.setBillType(purApplyEntity.getTargetBillAction()); +// stockOrderEntity.setInvWarehouseCode(purApplyEntity.getTargetSubInv()); +// stockOrderEntity.setLocStorageCode(purApplyEntity.getTargetInv()); +// stockOrderEntity.setCreateUser(userId); +//// stockOrderEntity.setDept(purApplyEntity.getDeptCode()); +// stockOrderService.insertStockOrder(stockOrderEntity); +// //3.构建单据详情 +// List temps = filterSupMaps.get(supId); +// if (CollUtil.isNotEmpty(temps)) { +// List stockOrderDetailEntities = new ArrayList<>(); +// for (PurPlanDetailEntity purPlanDetailEntity : temps) { +// StockOrderDetailEntity stockOrderDetailEntity = new StockOrderDetailEntity(); +// UdiRelevanceResponse udiRelevanceEntity = udiRelevanceService.selectGroupById(purPlanDetailEntity.getProductId()); +// stockOrderDetailEntity.setProductName(udiRelevanceEntity.getCpmctymc()); +// stockOrderDetailEntity.setRelId(udiRelevanceEntity.getId() + ""); +// stockOrderDetailEntity.setProductId(udiRelevanceEntity.getId() + ""); +// stockOrderDetailEntity.setSpec(udiRelevanceEntity.getGgxh()); +// stockOrderDetailEntity.setCount(purPlanDetailEntity.getCount()); +// stockOrderDetailEntity.setReCount(purPlanDetailEntity.getCount()); +// stockOrderDetailEntity.setManufactory(udiRelevanceEntity.getManufactory()); +// stockOrderDetailEntity.setYlqxzcrbarmc(udiRelevanceEntity.getYlqxzcrbarmc()); +// stockOrderDetailEntity.setZczbhhzbapzbh(udiRelevanceEntity.getZczbhhzbapzbh()); +// stockOrderDetailEntity.setMeasname(udiRelevanceEntity.getMeasname()); +// stockOrderDetailEntity.setOrderIdFk(stockOrderEntity.getId()); +// stockOrderDetailEntities.add(stockOrderDetailEntity); +// } +// if (CollUtil.isNotEmpty(stockOrderDetailEntities)) { +// stockOrderDetailService.insertStockOrderDetails(stockOrderDetailEntities); +// } +// } +// } +// +// purApplyEntity.setStockOrderNo(stockOrderNo.substring(1)); +// purPlanService.update(purApplyEntity); +// } +// } +// return ResultVOUtils.success("更新成功!"); +// } +// +// +// /** +// * 新增采购计划 +// */ +// @RepeatSubmit() +// @PostMapping("/purchase/plan") +// public BaseResponse add(@RequestBody PurPlanEntity purApplyRequest) { +// +// purPlanService.insert(purApplyRequest); +// return ResultVOUtils.success("新增成功!"); +// } +// +// /** +// * 修改采购计划 +// */ +// @RepeatSubmit() +// @PutMapping("/purchase/plan") +// public BaseResponse edit(@RequestBody PurPlanEntity purApplyRequest) { +// purPlanService.update(purApplyRequest); +// return ResultVOUtils.success("删除成功"); +// } +// +// +//// /** +//// * 查询采购计划列表 +//// */ +//// @GetMapping("/purchase/plan/list/detail") +//// public BaseResponse detailList(PurPlanDetailRequest purApplyDetailRequest) { +//// +//// List purApplyDetailEntities = purPlanDetailService.joinQueryList(purApplyDetailRequest); +//// PageInfo pageInfo; +//// pageInfo = new PageInfo<>(purApplyDetailEntities); +//// PageSimpleResponse pageSimpleResponse = new PageSimpleResponse<>(); +//// pageSimpleResponse.setTotal(pageInfo.getTotal()); +//// pageSimpleResponse.setList(purApplyDetailEntities); +//// return ResultVOUtils.success(pageSimpleResponse); +//// +//// } +// +// +// /** +// * 删除采购计划 +// * +// * @param ids 主键串 +// */ +// @DeleteMapping("/purchase/plan/{ids}") +// public BaseResponse remove(@NotEmpty(message = "主键不能为空") +// @PathVariable Integer[] ids) { +// +// +// List idArray = Arrays.asList(ids); +// if (CollUtil.isNotEmpty(idArray)) { +// purPlanService.deleteByIds(idArray); +// for (Integer id : idArray) { +// purPlanDetailService.deleteByOrderId(id + ""); +// } +// } +// return ResultVOUtils.success("删除成功"); +// +// } +// +// +// /** +// * 新增采购计划 +// */ +// @RepeatSubmit() +// @PostMapping("/purchase/plan/detail") +// public BaseResponse detailAdd(@RequestBody PurPlanDetailEntity purPlanDetailRequest) { +// +// purPlanDetailService.insert(purPlanDetailRequest); +// return ResultVOUtils.success("新增成功"); +// } +// +// /** +// * 修改采购计划 +// */ +// @RepeatSubmit() +// @PutMapping("/purchase/plan/detail") +// public BaseResponse detailEdit(@RequestBody PurPlanDetailEntity purPlanDetailRequest) { +// purPlanDetailService.update(purPlanDetailRequest); +// return ResultVOUtils.success("修改成功"); +// } +// +// /** +// * 删除采购计划 +// * +// * @param ids 主键串 +// */ +// @DeleteMapping("/purchase/plan/detail/{ids}") +// public BaseResponse detailRemove(@NotEmpty(message = "主键不能为空") +// @PathVariable Long[] ids) { +// +// purPlanDetailService.deleteByIds(Arrays.asList(ids)); +// return ResultVOUtils.success("删除成功"); +// } + + +} diff --git a/src/main/java/com/glxp/api/dao/purchase/PurApplyDao.java b/src/main/java/com/glxp/api/dao/purchase/PurApplyDao.java new file mode 100644 index 000000000..177c07cc5 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/purchase/PurApplyDao.java @@ -0,0 +1,23 @@ +package com.glxp.api.dao.purchase; + + +import com.glxp.api.entity.purchase.PurApplyEntity; +import com.glxp.api.req.purchase.PurApplyRequest; +import com.glxp.api.res.purchase.PurApplyResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface PurApplyDao { + + List queryPageList(PurApplyRequest purApplyRequest); + + Integer insert(PurApplyEntity purApplyRequest); + + Boolean update(PurApplyEntity purApplyRequest); + + Boolean deleteByIds(@Param("ids") List ids); + +} diff --git a/src/main/java/com/glxp/api/dao/purchase/PurApplyDetailDao.java b/src/main/java/com/glxp/api/dao/purchase/PurApplyDetailDao.java new file mode 100644 index 000000000..782c0f900 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/purchase/PurApplyDetailDao.java @@ -0,0 +1,28 @@ +package com.glxp.api.dao.purchase; + + + +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.req.purchase.PurApplyDetailRequest; +import com.glxp.api.res.purchase.PurOrderDetailResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface PurApplyDetailDao { + + List queryPageList(PurApplyDetailRequest purApplyRequest); + + List joinQueryList(PurApplyDetailRequest purApplyRequest); + + Boolean insert(PurApplyDetailEntity purApplyDetailEntity); + + Boolean update(PurApplyDetailEntity purApplyRequest); + + Boolean deleteByIds(@Param("ids") List ids); + + Boolean deleteByOrderId(@Param("orderIdFk") String orderIdFk); + +} diff --git a/src/main/java/com/glxp/api/dao/purchase/PurPlanDao.java b/src/main/java/com/glxp/api/dao/purchase/PurPlanDao.java new file mode 100644 index 000000000..9f9eefd3f --- /dev/null +++ b/src/main/java/com/glxp/api/dao/purchase/PurPlanDao.java @@ -0,0 +1,23 @@ +package com.glxp.api.dao.purchase; + + +import com.glxp.api.entity.purchase.PurPlanEntity; +import com.glxp.api.req.purchase.PurPlanRequest; +import com.glxp.api.res.purchase.PurPlanResponse; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface PurPlanDao { + + List queryPageList(PurPlanRequest purPlanRequest); + + Boolean insert(PurPlanEntity purPlanRequest); + + Boolean update(PurPlanEntity purPlanRequest); + + Boolean deleteByIds(@Param("ids") List ids); + +} diff --git a/src/main/java/com/glxp/api/dao/purchase/PurPlanDetailDao.java b/src/main/java/com/glxp/api/dao/purchase/PurPlanDetailDao.java new file mode 100644 index 000000000..a65d230d0 --- /dev/null +++ b/src/main/java/com/glxp/api/dao/purchase/PurPlanDetailDao.java @@ -0,0 +1,25 @@ +package com.glxp.api.dao.purchase; + + +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.req.purchase.PurPlanDetailRequest; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +import java.util.List; + +@Mapper +public interface PurPlanDetailDao { + List queryPageList(PurPlanDetailRequest purApplyRequest); + +// List joinQueryList(PurPlanDetailRequest purPlanDetailRequest); + + Boolean insert(PurPlanDetailEntity purPlanDetailRequest); + + Boolean update(PurPlanDetailEntity purPlanDetailRequest); + + Boolean deleteByIds(@Param("ids")List ids); + + Boolean deleteByOrderId(@Param("orderIdFk") String orderIdFk); + +} diff --git a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java index 6e141960a..bbb26e72c 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurApplyEntity.java @@ -29,13 +29,13 @@ public class PurApplyEntity { * 状态(1.草稿,2.未审核,3.已审核,4.已拒绝) */ @TableField(value = "`status`") - private Byte status; + private Integer status; /** * 申购类型 */ @TableField(value = "billType") - private Byte billType; + private Integer billType; /** * 申购说明 @@ -119,7 +119,7 @@ public class PurApplyEntity { * 是否已生成采购计划 */ @TableField(value = "generatePlan") - private Byte generatePlan; + private boolean generatePlan; public static final String COL_ID = "id"; diff --git a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java index 705d57e50..9a811448b 100644 --- a/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java +++ b/src/main/java/com/glxp/api/entity/purchase/PurPlanEntity.java @@ -29,7 +29,7 @@ public class PurPlanEntity { * 状态(1.草稿,2.未审核,3.已审核) */ @TableField(value = "`status`") - private Byte status; + private Integer status; /** * 申购类型 diff --git a/src/main/java/com/glxp/api/req/purchase/PostPurApplyRequest.java b/src/main/java/com/glxp/api/req/purchase/PostPurApplyRequest.java new file mode 100644 index 000000000..a2b1d7926 --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PostPurApplyRequest.java @@ -0,0 +1,19 @@ +package com.glxp.api.req.purchase; + + +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.entity.purchase.PurApplyEntity; +import lombok.Data; + +import java.util.List; + +@Data +public class PostPurApplyRequest { + + Integer type; + int editStatus; + PurApplyEntity purApplyEntity; + List purApplyDetailEntities; +// List subErpOrders; + +} diff --git a/src/main/java/com/glxp/api/req/purchase/PostPurPlanRequest.java b/src/main/java/com/glxp/api/req/purchase/PostPurPlanRequest.java new file mode 100644 index 000000000..1e527e050 --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PostPurPlanRequest.java @@ -0,0 +1,18 @@ +package com.glxp.api.req.purchase; + + +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.entity.purchase.PurPlanEntity; +import lombok.Data; + +import java.util.List; + +@Data +public class PostPurPlanRequest { + + int editStatus; + PurPlanEntity purPlanEntity; + List purPlanDetailEntities; +// List subErpOrders; + +} diff --git a/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java new file mode 100644 index 000000000..69bdb7691 --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PurApplyDetailRequest.java @@ -0,0 +1,35 @@ +package com.glxp.api.req.purchase; + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +/** + * @author anthony.ywj + * @date 2022-10-12 + */ +@Data +public class PurApplyDetailRequest extends ListPageRequest { + + + private Long id; + + + private String orderIdFk; + + + private Long productId; + + + private String productName; + + + private Long count; + + + private String supId; + + +} diff --git a/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java b/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java new file mode 100644 index 000000000..6d99b1e1d --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PurApplyRequest.java @@ -0,0 +1,107 @@ +package com.glxp.api.req.purchase; + + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * pur业务对象 pur_apply + * + * @author anthony.ywj + * @date 2022-10-12 + */ +@Data +public class PurApplyRequest extends ListPageRequest { + + + + /** + * + */ + @NotNull(message = "不能为空") + private Integer id; + + /** + * 单据号 + */ + @NotBlank(message = "单据号不能为空") + private String billNo; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空") + private Date billDate; + + /** + * 状态(1.草稿,2.未审核,3.已审核) + */ + @NotNull(message = "状态(1.草稿,2.未审核,3.已审核)不能为空") + private Integer status; + + /** + * 申购类型 + */ + @NotNull(message = "申购类型不能为空") + private String billType; + + /** + * 申购说明 + */ + @NotBlank(message = "申购说明不能为空") + private String remark; + + + /** + * 当前分库 + */ + @NotBlank(message = "当前仓不能为空") + private String invCode; + + /** + * 所属部门 + */ + @NotBlank(message = "所属部门不能为空") + private String deptCode; + + /** + * 审核人 + */ + @NotBlank(message = "审核人不能为空") + private String auditUser; + + /** + * 审核时间 + */ + @NotNull(message = "审核时间不能为空") + private Date auditTime; + + + private Date updateTime; + + private String createUser; + + /** + * 创建时间 + */ + private Date createTime; + + private String auditRemark; + + + private String targetInvCode; + private String targetDeptCode; + private String targetBillType; + + private String startDate; + private String endDate; + private Integer generatePlan; + private boolean audtoPlan; + + private Integer applyType; + +} diff --git a/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java b/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java new file mode 100644 index 000000000..ca293d611 --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PurPlanDetailRequest.java @@ -0,0 +1,50 @@ +package com.glxp.api.req.purchase; + + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; + +@Data +public class PurPlanDetailRequest extends ListPageRequest { + + /** + * + */ + @NotNull(message = "不能为空") + private Long id; + + /** + * 订单外键 + */ + @NotBlank(message = "订单外键不能为空") + private String orderIdFk; + + /** + * 产品ID + */ + @NotNull(message = "产品ID不能为空") + private Long productId; + + /** + * 产品名称 + */ + @NotBlank(message = "产品名称不能为空") + private String productName; + + /** + * 数量 + */ + @NotNull(message = "数量不能为空") + private Long count; + + /** + * 供应商ID + */ + @NotBlank(message = "供应商ID不能为空") + private String supId; + + +} diff --git a/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java b/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java new file mode 100644 index 000000000..ac6b386fc --- /dev/null +++ b/src/main/java/com/glxp/api/req/purchase/PurPlanRequest.java @@ -0,0 +1,94 @@ +package com.glxp.api.req.purchase; + + +import com.glxp.api.util.page.ListPageRequest; +import lombok.Data; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.NotNull; +import java.util.Date; + +/** + * pur业务对象 pur_plan + * + * @author anthony.ywj + * @date 2022-10-12 + */ + + +@Data +public class PurPlanRequest extends ListPageRequest { + + + /** + * + */ + @NotNull(message = "不能为空") + private Long id; + + /** + * 单据号 + */ + @NotBlank(message = "单据号不能为空") + private String billNo; + + /** + * 单据日期 + */ + @NotNull(message = "单据日期不能为空") + private Date billDate; + + /** + * 状态(1.草稿,2.未审核,3.已审核) + */ + @NotNull(message = "状态(1.草稿,2.未审核,3.已审核)不能为空") + private Integer status; + + /** + * 申购类型 + */ + @NotNull(message = "申购类型不能为空") + private Long billType; + + /** + * 申购说明 + */ + @NotBlank(message = "申购说明不能为空") + private String remark; + + /** + * 当前仓库 + */ + @NotBlank(message = "当前仓库不能为空") + private String invCode; + + /** + * 所属部门 + */ + @NotBlank(message = "所属部门不能为空") + private String deptCode; + + /** + * 审核人 + */ + @NotBlank(message = "审核人不能为空") + private String auditUser; + + /** + * 审核时间 + */ + @NotNull(message = "审核时间不能为空") + private Date auditTime; + + private String createUser; + + /** + * 创建时间 + */ + private Date createTime; + + private String startDate; + private String endDate; + + +} diff --git a/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java b/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java index 628b47d15..354a25d65 100644 --- a/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java +++ b/src/main/java/com/glxp/api/res/purchase/PurApplyResponse.java @@ -12,7 +12,7 @@ public class PurApplyResponse { /** * */ - private Integer id; + private Long id; /** * 单据号 */ @@ -33,14 +33,11 @@ public class PurApplyResponse { * 申购说明 */ private String remark; - /** - * 当前仓库 - */ - private String locStorageCode; + /** * 当前分库 */ - private String invWarehouseCode; + private String invCode; /** * 所属部门 */ @@ -48,13 +45,13 @@ public class PurApplyResponse { /** * 审核人 */ - private String auditBy; + private String auditUser; /** * 审核时间 */ private Date auditTime; - private String createBy; + private String createUser; /** * 创建时间 @@ -63,22 +60,23 @@ public class PurApplyResponse { private Date updateTime; + private String updateUser; private String createByName; private String auditByName; private String invName; - private String subInvName; + private String deptName; private String auditRemark; - private String targetInv; - private String targetSubInv; - private String targetBillType; + private String targetInvCode; + private String targetDeptCode; + private String targetInvName; + private String targetDeptName; + private String planBillNo; //生成采购计划单据号 private boolean generatePlan; private boolean audtoPlan; /// - private String createUser; - private String updateUser; } diff --git a/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java b/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java new file mode 100644 index 000000000..1e2714c0f --- /dev/null +++ b/src/main/java/com/glxp/api/res/purchase/PurOrderDetailResponse.java @@ -0,0 +1,50 @@ +package com.glxp.api.res.purchase; + +import lombok.Data; + +import java.math.BigDecimal; + +@Data +public class PurOrderDetailResponse { + + private String id; + private String orderIdFk; + private String productId; + private String productName; + private String spec; + private String batchNo; + private String expireDate; + private String productDate; + private Integer count; + private Integer reCount; + private Integer sweepCount; + private String ylqxzcrbarmc; + private String zczbhhzbapzbh; + private BigDecimal price; + private String relId; + + //销售清单号(第二票) + private String secSalesListNo; + + //销售发票号(第一票) + private String firstSalesInvNo; + + //销售发票号(第二票) + private String secSalesInvNo; + + //开票日期 + private String invoiceDate; + private String manufactory; + private boolean allowNoBatch; + + private String code; + private String serialNo; + + private Integer codeId; + + private int acceptCount; + private String measname; + private String supId; + + private String supName; +} diff --git a/src/main/java/com/glxp/api/service/purchase/PurApplyDetailService.java b/src/main/java/com/glxp/api/service/purchase/PurApplyDetailService.java new file mode 100644 index 000000000..57b005158 --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/PurApplyDetailService.java @@ -0,0 +1,28 @@ +package com.glxp.api.service.purchase; + + + +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.req.purchase.PurApplyDetailRequest; +import com.glxp.api.res.purchase.PurOrderDetailResponse; + +import java.util.List; + +public interface PurApplyDetailService { + + List queryPageList(PurApplyDetailRequest purApplyRequest); + + public List findByOrderId(String orderId); + + List joinQueryList(PurApplyDetailRequest purApplyRequest); + + + Boolean insert(PurApplyDetailEntity purApplyRequest); + + Boolean update(PurApplyDetailEntity purApplyRequest); + + Boolean deleteByIds(List ids); + + Boolean deleteByOrderId(String orderIdfK); + +} diff --git a/src/main/java/com/glxp/api/service/purchase/PurApplyService.java b/src/main/java/com/glxp/api/service/purchase/PurApplyService.java new file mode 100644 index 000000000..762abdcb1 --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/PurApplyService.java @@ -0,0 +1,20 @@ +package com.glxp.api.service.purchase; + + + +import com.glxp.api.entity.purchase.PurApplyEntity; +import com.glxp.api.req.purchase.PurApplyRequest; +import com.glxp.api.res.purchase.PurApplyResponse; + +import java.util.List; + +public interface PurApplyService { + + List queryPageList(PurApplyRequest purApplyRequest); + + Integer insert(PurApplyEntity purApplyEntity); + + Boolean update(PurApplyEntity purApplyRequest); + + Boolean deleteByIds(List ids); +} diff --git a/src/main/java/com/glxp/api/service/purchase/PurPlanDetailService.java b/src/main/java/com/glxp/api/service/purchase/PurPlanDetailService.java new file mode 100644 index 000000000..e374ee96d --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/PurPlanDetailService.java @@ -0,0 +1,26 @@ +package com.glxp.api.service.purchase; + + + +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.req.purchase.PurPlanDetailRequest; + +import java.util.List; + +public interface PurPlanDetailService { + +// List joinQueryList(PurPlanDetailRequest purApplyRequest); + + + List findByOrderId(String orderId); + + List queryPageList(PurPlanDetailRequest purPlanDetailRequest); + + Boolean insert(PurPlanDetailEntity purPlanDetailRequest); + + Boolean update(PurPlanDetailEntity purPlanDetailRequest); + + Boolean deleteByIds(List ids); + + Boolean deleteByOrderId(String orderIdfK); +} diff --git a/src/main/java/com/glxp/api/service/purchase/PurPlanService.java b/src/main/java/com/glxp/api/service/purchase/PurPlanService.java new file mode 100644 index 000000000..503862453 --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/PurPlanService.java @@ -0,0 +1,22 @@ +package com.glxp.api.service.purchase; + + + +import com.glxp.api.entity.purchase.PurPlanEntity; +import com.glxp.api.req.purchase.PurPlanRequest; +import com.glxp.api.res.purchase.PurPlanResponse; + +import java.util.List; + +public interface PurPlanService { + + List queryPageList(PurPlanRequest purPlanRequest); + + Boolean insert(PurPlanEntity purPlanRequest); + + Boolean update(PurPlanEntity purPlanRequest); + + Boolean deleteByIds(List ids); + + +} diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurApplyDetailImplService.java b/src/main/java/com/glxp/api/service/purchase/impl/PurApplyDetailImplService.java new file mode 100644 index 000000000..ad7b9ab02 --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurApplyDetailImplService.java @@ -0,0 +1,79 @@ +package com.glxp.api.service.purchase.impl; + +import com.github.pagehelper.PageHelper; + +import com.glxp.api.dao.purchase.PurApplyDetailDao; +import com.glxp.api.entity.purchase.PurApplyDetailEntity; +import com.glxp.api.req.purchase.PurApplyDetailRequest; +import com.glxp.api.res.purchase.PurOrderDetailResponse; +import com.glxp.api.service.purchase.PurApplyDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class PurApplyDetailImplService implements PurApplyDetailService { + + + @Resource + PurApplyDetailDao purApplyDetailDao; + + @Override + public List queryPageList(PurApplyDetailRequest purApplyRequest) { + if (purApplyRequest == null) { + return Collections.emptyList(); + } + if (purApplyRequest.getPage() != null) { + int offset = (purApplyRequest.getPage() - 1) * purApplyRequest.getLimit(); + PageHelper.offsetPage(offset, purApplyRequest.getLimit()); + } + List data = purApplyDetailDao.queryPageList(purApplyRequest); + return data; + } + + @Override + public List findByOrderId(String orderId) { + if (orderId == null) { + return null; + } + PurApplyDetailRequest purApplyDetailRequest = new PurApplyDetailRequest(); + purApplyDetailRequest.setOrderIdFk(orderId); + List data = purApplyDetailDao.queryPageList(purApplyDetailRequest); + return data; + } + + @Override + public List joinQueryList(PurApplyDetailRequest purApplyRequest) { + if (purApplyRequest == null) { + return Collections.emptyList(); + } + if (purApplyRequest.getPage() != null) { + int offset = (purApplyRequest.getPage() - 1) * purApplyRequest.getLimit(); + PageHelper.offsetPage(offset, purApplyRequest.getLimit()); + } + List data = purApplyDetailDao.joinQueryList(purApplyRequest); + return data; + } + + @Override + public Boolean insert(PurApplyDetailEntity purApplyRequest) { + return purApplyDetailDao.insert(purApplyRequest); + } + + @Override + public Boolean update(PurApplyDetailEntity purApplyRequest) { + return purApplyDetailDao.update(purApplyRequest); + } + + @Override + public Boolean deleteByIds(List ids) { + return purApplyDetailDao.deleteByIds(ids); + } + + @Override + public Boolean deleteByOrderId(String orderIdfK) { + return purApplyDetailDao.deleteByOrderId(orderIdfK); + } +} diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurApplyServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/PurApplyServiceImpl.java new file mode 100644 index 000000000..6dacfd265 --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurApplyServiceImpl.java @@ -0,0 +1,48 @@ +package com.glxp.api.service.purchase.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.purchase.PurApplyDao; +import com.glxp.api.entity.purchase.PurApplyEntity; +import com.glxp.api.req.purchase.PurApplyRequest; +import com.glxp.api.res.purchase.PurApplyResponse; +import com.glxp.api.service.purchase.PurApplyService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class PurApplyServiceImpl implements PurApplyService { + + @Resource + PurApplyDao purApplyDao; + + @Override + public List queryPageList(PurApplyRequest purApplyRequest) { + if (purApplyRequest == null) { + return Collections.emptyList(); + } + if (purApplyRequest.getPage() != null) { + int offset = (purApplyRequest.getPage() - 1) * purApplyRequest.getLimit(); + PageHelper.offsetPage(offset, purApplyRequest.getLimit()); + } + List data = purApplyDao.queryPageList(purApplyRequest); + return data; + } + + @Override + public Integer insert(PurApplyEntity purApplyEntity) { + return purApplyDao.insert(purApplyEntity); + } + + @Override + public Boolean update(PurApplyEntity purApplyRequest) { + return purApplyDao.update(purApplyRequest); + } + + @Override + public Boolean deleteByIds(List ids) { + return purApplyDao.deleteByIds(ids); + } +} diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurPlanDetailServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/PurPlanDetailServiceImpl.java new file mode 100644 index 000000000..0194b836e --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurPlanDetailServiceImpl.java @@ -0,0 +1,74 @@ +package com.glxp.api.service.purchase.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.purchase.PurPlanDetailDao; +import com.glxp.api.entity.purchase.PurPlanDetailEntity; +import com.glxp.api.req.purchase.PurPlanDetailRequest; +import com.glxp.api.service.purchase.PurPlanDetailService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class PurPlanDetailServiceImpl implements PurPlanDetailService { + + @Resource + PurPlanDetailDao purPlanDetailDao; + +// @Override +// public List joinQueryList(PurPlanDetailRequest purApplyRequest) { +// if (purApplyRequest == null) { +// return Collections.emptyList(); +// } +// if (purApplyRequest.getPage() != null) { +// int offset = (purApplyRequest.getPage() - 1) * purApplyRequest.getLimit(); +// PageHelper.offsetPage(offset, purApplyRequest.getLimit()); +// } +// List data = purPlanDetailDao.joinQueryList(purApplyRequest); +// return data; +// } + + @Override + public List findByOrderId(String orderId) { + PurPlanDetailRequest purPlanDetailRequest = new PurPlanDetailRequest(); + purPlanDetailRequest.setOrderIdFk(orderId); + List data = purPlanDetailDao.queryPageList(purPlanDetailRequest); + return data; + } + + @Override + public List queryPageList(PurPlanDetailRequest purPlanDetailRequest) { + if (purPlanDetailRequest == null) { + return Collections.emptyList(); + } + if (purPlanDetailRequest.getPage() != null) { + int offset = (purPlanDetailRequest.getPage() - 1) * purPlanDetailRequest.getLimit(); + PageHelper.offsetPage(offset, purPlanDetailRequest.getLimit()); + } + List data = purPlanDetailDao.queryPageList(purPlanDetailRequest); + return data; + } + + @Override + public Boolean insert(PurPlanDetailEntity purPlanDetailRequest) { + return purPlanDetailDao.insert(purPlanDetailRequest); + } + + @Override + public Boolean update(PurPlanDetailEntity purPlanDetailRequest) { + return purPlanDetailDao.update(purPlanDetailRequest); + } + + @Override + public Boolean deleteByIds(List ids) { + return purPlanDetailDao.deleteByIds(ids); + } + + @Override + public Boolean deleteByOrderId(String orderIdfK) { + return purPlanDetailDao.deleteByOrderId(orderIdfK); + + } +} diff --git a/src/main/java/com/glxp/api/service/purchase/impl/PurPlanServiceImpl.java b/src/main/java/com/glxp/api/service/purchase/impl/PurPlanServiceImpl.java new file mode 100644 index 000000000..7331bec4d --- /dev/null +++ b/src/main/java/com/glxp/api/service/purchase/impl/PurPlanServiceImpl.java @@ -0,0 +1,48 @@ +package com.glxp.api.service.purchase.impl; + +import com.github.pagehelper.PageHelper; +import com.glxp.api.dao.purchase.PurPlanDao; +import com.glxp.api.entity.purchase.PurPlanEntity; +import com.glxp.api.req.purchase.PurPlanRequest; +import com.glxp.api.res.purchase.PurPlanResponse; +import com.glxp.api.service.purchase.PurPlanService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class PurPlanServiceImpl implements PurPlanService { + + @Resource + PurPlanDao purPlanDao; + + @Override + public List queryPageList(PurPlanRequest purPlanRequest) { + if (purPlanRequest == null) { + return Collections.emptyList(); + } + if (purPlanRequest.getPage() != null) { + int offset = (purPlanRequest.getPage() - 1) * purPlanRequest.getLimit(); + PageHelper.offsetPage(offset, purPlanRequest.getLimit()); + } + List data = purPlanDao.queryPageList(purPlanRequest); + return data; + } + + @Override + public Boolean insert(PurPlanEntity purPlanRequest) { + return purPlanDao.insert(purPlanRequest); + } + + @Override + public Boolean update(PurPlanEntity purPlanRequest) { + return purPlanDao.update(purPlanRequest); + } + + @Override + public Boolean deleteByIds(List ids) { + return purPlanDao.deleteByIds(ids); + } +} diff --git a/src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml b/src/main/resources/mybatis/mapper/auth/PurPlanService.xml similarity index 100% rename from src/main/resources/mybatis/mapper/auth/InvSubWarehouseDao.xml rename to src/main/resources/mybatis/mapper/auth/PurPlanService.xml diff --git a/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml b/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml new file mode 100644 index 000000000..2a9850722 --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurApplyDao.xml @@ -0,0 +1,124 @@ + + + + + + + + + replace + INTO pur_apply + ( + billNo,billDate,status,billType,remark,invCode, + deptCode,createUser,createTime,auditUser,auditTime,updateTime,updateUser ,auditRemark,targetInvCode,targetDeptCode,planBillNo,generatePlan + ) + values ( + #{billNo}, + #{billDate}, + #{status}, + #{billType}, + #{remark}, + #{invCode}, + #{deptCode}, + #{createUser}, + #{createTime}, + #{auditUser}, + #{auditTime}, + #{updateTime}, + #{updateUser}, + #{auditRemark}, + #{targetInvCode}, + #{targetDeptCode}, + #{planBillNo},#{generatePlan} + ) + + + + + DELETE FROM pur_apply WHERE id in + + #{item} + + + + + + + + UPDATE pur_apply + + billNo=#{billNo}, + billDate=#{billDate}, + status=#{status}, + billType=#{billType}, + remark=#{remark}, + invCode=#{invCode}, + deptCode=#{deptCode}, + auditUser=#{auditUser}, + auditTime=#{auditTime}, + createUser=#{createUser}, + createTime=#{createTime}, + updateTime=#{updateTime}, + updateUser=#{updateUser}, + auditRemark=#{auditRemark}, + targetInvCode=#{targetInvCode}, + targetDeptCode=#{targetDeptCode}, + planBillNo=#{planBillNo}, + generatePlan=#{generatePlan}, + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml b/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml new file mode 100644 index 000000000..28b284b9b --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurApplyDetailDao.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + replace + INTO pur_apply_detail + ( + orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh + ) + values ( + #{orderIdFk}, + #{productId}, + #{productName}, + #{count}, + #{supId},#{zczbhhzbapzbh} + ) + + + + + DELETE FROM pur_apply_detail WHERE id in + + #{item} + + + + + + + + DELETE + FROM pur_apply_detail + WHERE orderIdFk = #{orderIdFk} + + + + + UPDATE pur_apply_detail + + orderIdFk=#{orderIdFk}, + productId=#{productId}, + productName=#{productName}, + `count`=#{count}, + supId=#{supId}, + zczbhhzbapzbh=#{zczbhhzbapzbh}, + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml new file mode 100644 index 000000000..227215284 --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDao.xml @@ -0,0 +1,121 @@ + + + + + + + + + replace + INTO pur_plan + ( + billNo,billDate,status,billType,remark,locStorageCode,invWarehouseCode, + deptCode,createUser,createTime,auditUser,auditTime,updateTime,auditRemark +,applyCreateUser,applyAuditUser,applyRemark,applyBillNo,stockOrderNo + ) + values ( + #{billNo}, + #{billDate}, + #{status}, + #{billType}, + #{remark}, + #{locStorageCode}, + #{invWarehouseCode}, + #{deptCode}, + #{createUser}, + #{createTime}, + #{auditUser}, + #{auditTime}, + #{updateTime}, + #{auditRemark}, + #{applyCreateUser}, + #{applyAuditUser}, + #{applyRemark}, + #{applyBillNo}, + #{stockOrderNo} + ) + + + + + DELETE FROM pur_plan WHERE id in + + #{item} + + + + + + + + UPDATE pur_plan + + billNo=#{billNo}, + billDate=#{billDate}, + status=#{status}, + billType=#{billType}, + remark=#{remark}, + locStorageCode=#{locStorageCode}, + invWarehouseCode=#{invWarehouseCode}, + deptCode=#{deptCode}, + auditUser=#{auditUser}, + auditTime=#{auditTime}, + createUser=#{createUser}, + createTime=#{createTime}, + updateTime=#{updateTime}, + auditRemark=#{auditRemark}, + applyCreateUser=#{applyCreateUser}, + applyAuditUser=#{applyAuditUser}, + applyRemark=#{applyRemark}, + applyBillNo=#{applyBillNo}, + stockOrderNo=#{stockOrderNo}, + + WHERE id = #{id} + + + \ No newline at end of file diff --git a/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml b/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml new file mode 100644 index 000000000..49099a09e --- /dev/null +++ b/src/main/resources/mybatis/mapper/purchase/PurPlanDetailDao.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + replace + INTO pur_plan_detail + ( + orderIdFk,productId,productName,`count`,supId,zczbhhzbapzbh + ) + values ( + #{orderIdFk}, + #{productId}, + #{productName}, + #{count}, + #{supId},#{zczbhhzbapzbh} + ) + + + + + DELETE FROM pur_plan_detail WHERE id in + + #{item} + + + + + + + + DELETE + FROM pur_plan_detail + WHERE orderIdFk = #{orderIdFk} + + + + UPDATE pur_plan_detail + + orderIdFk=#{orderIdFk}, + productId=#{productId}, + productName=#{productName}, + `count`=#{count}, + supId=#{supId}, + zczbhhzbapzbh=#{zczbhhzbapzbh}, + + WHERE id = #{id} + + + \ No newline at end of file