diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/apiadmin/pms/PmsPurchaseBillRest.java b/yxt-pms-biz/src/main/java/com/yxt/pms/apiadmin/pms/PmsPurchaseBillRest.java index 31307cb7ff..78781a3dd8 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/apiadmin/pms/PmsPurchaseBillRest.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/apiadmin/pms/PmsPurchaseBillRest.java @@ -55,7 +55,7 @@ import java.util.List; */ @Api(tags = "采购单") @RestController -@RequestMapping("/apiadmin/pms/pmspurchasebill") +@RequestMapping("v1/pmspurchasebill") public class PmsPurchaseBillRest { @Autowired @@ -71,14 +71,6 @@ public class PmsPurchaseBillRest { return rb.success().setData(pv); } - @ApiOperation("选择原单") - @PostMapping("/choiceBillListPage") - public ResultBean> choiceBillListPage(@RequestBody PagerQuery pq){ - ResultBean rb = ResultBean.fireFail(); - PagerVo pv = pmsPurchaseBillService.listPageVo(pq); - return rb.success().setData(pv); - } - @ApiOperation("新增或修改") @PostMapping("/save") public ResultBean save(@RequestBody PmsPurchaseBillDto dto){ @@ -87,14 +79,6 @@ public class PmsPurchaseBillRest { return rb.success().setData(sid); } - @ApiOperation("反结算") - @PostMapping("/noSettle") - public ResultBean noSettle(@RequestParam("sid") String sid){ - ResultBean rb = ResultBean.fireFail(); - pmsPurchaseBillService.updateSettleState(sid); - return rb.success(); - } - @ApiOperation("根据sid批量删除") @DeleteMapping("/delBySids") public ResultBean delBySids(@RequestBody String[] sids){ @@ -110,20 +94,4 @@ public class PmsPurchaseBillRest { PmsPurchaseBillDetailsVo vo = pmsPurchaseBillService.fetchDetailsVoBySid(sid); return rb.success().setData(vo); } - - @ApiOperation("导出") - @PostMapping("/exportExcel") - public void exportExcel(PmsPurchaseBillQuery query) { - //得到所有要导出的数据 - List exportVoList = pmsPurchaseBillService.listExcel(query); - //定义导出的excel名字 - String excelName = "采购单列表"; - String fileNameURL = ""; - try { - fileNameURL = URLEncoder.encode(excelName, "UTF-8"); - } catch (UnsupportedEncodingException e) { - e.printStackTrace(); - } - ExportExcelUtils.export(fileNameURL, exportVoList, PmsPurchaseBillExportVo.class, response); - } } diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillDetailsVo.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillDetailsVo.java index 5e711f11e6..a811b34201 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillDetailsVo.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillDetailsVo.java @@ -33,6 +33,7 @@ import com.yxt.pms.biz.pms.pmspurchasebilldetail.PmsPurchaseBillDetailDetailsVo; import com.yxt.pms.biz.pms.pmspurchasebilldetail.PmsPurchaseBillDetailDto; import com.yxt.pms.biz.pms.pmspurchasebillextend.PmsPurchaseBillExtendDetailsVo; import com.yxt.pms.biz.pms.pmspurchasebillextend.PmsPurchaseBillExtendDto; +import com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceDetailsVo; import com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceDto; import com.yxt.pms.biz.pms.pmspurchasepay.PmsPurchasePayDetailsVo; import com.yxt.pms.biz.pms.pmspurchasepay.PmsPurchasePayDto; @@ -144,7 +145,7 @@ public class PmsPurchaseBillDetailsVo implements Vo { @ApiModelProperty("付款信息") private PmsPurchasePayDetailsVo purchasePay; @ApiModelProperty("发票信息") - private PmsPurchaseBillInvoiceDto purchaseBillInvoice; + private PmsPurchaseBillInvoiceDetailsVo purchaseBillInvoice; @ApiModelProperty("采购单商品明细") private List pmsPurchaseBillDetailList; } \ No newline at end of file diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.java index db1a455be6..e516e18cb1 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.java @@ -54,14 +54,6 @@ import java.util.List; public interface PmsPurchaseBillMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); - - List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw); - - @Select("select * from pms_purchase_bill") - List selectListVo(); - @Update("update pms_purchase_bill set settleState = '0' where sid = #{sid}") - void updateSettleState(String sid); - - List exportList(@Param(Constants.WRAPPER) QueryWrapper qw); + String selectNum(String billNo); } \ No newline at end of file diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.xml b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.xml index 49881c9999..5b521ea682 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.xml +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillMapper.xml @@ -26,26 +26,12 @@ ON ppbd.`billSid` = ppb.`sid` ${ew.sqlSegment} - - - + \ No newline at end of file diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java index 56d3452564..ca31a3a204 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java @@ -26,6 +26,7 @@ package com.yxt.pms.biz.pms.pmspurchasebill; import cn.hutool.core.bean.BeanUtil; +import cn.hutool.core.date.DateUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.common.core.result.ResultBean; @@ -35,10 +36,15 @@ import com.yxt.pms.biz.pms.pmspurchasebilldetail.PmsPurchaseBillDetailService; import com.yxt.pms.biz.pms.pmspurchasebillextend.PmsPurchaseBillExtendDetailsVo; import com.yxt.pms.biz.pms.pmspurchasebillextend.PmsPurchaseBillExtendDto; import com.yxt.pms.biz.pms.pmspurchasebillextend.PmsPurchaseBillExtendService; +import com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceDetailsVo; import com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceDto; import com.yxt.pms.biz.pms.pmspurchasebillinvoice.PmsPurchaseBillInvoiceService; +import com.yxt.pms.biz.pms.pmspurchasepay.PmsPurchasePayDetailsVo; import com.yxt.pms.biz.pms.pmspurchasepay.PmsPurchasePayDto; import com.yxt.pms.biz.pms.pmspurchasepay.PmsPurchasePayService; +import com.yxt.pms.feign.base.Rule; +import com.yxt.pms.feign.portal.sysorganization.SysOrganizationFeign; +import com.yxt.pms.feign.portal.sysorganization.SysOrganizationVo; import org.apache.commons.lang3.StringUtils; import com.yxt.common.base.service.MybatisBaseService; import com.yxt.common.base.utils.PagerUtil; @@ -74,6 +80,8 @@ public class PmsPurchaseBillService extends MybatisBaseService listPageVo(PagerQuery pq) { PmsPurchaseBillQuery query = pq.getParams(); @@ -127,6 +135,18 @@ public class PmsPurchaseBillService extends MybatisBaseService pmsPurchaseBillDetailList = dto.getPmsPurchaseBillDetailList(); if (StringUtils.isBlank(dtoSid)) { + //生成单据编号 + String billNo = ""; + SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(dto.getUseOrgSid()).getData(); + String date = DateUtil.format(DateUtil.date(), "yyyyMM"); + billNo = "CGD" + sysOrganizationVo.getOrgCode() + date; + String i = baseMapper.selectNum(billNo); + if (StringUtils.isNotBlank(i)) { + billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue()); + } else { + billNo = Rule.getBillNo(billNo, 0); + } + dto.setBillNo(billNo); String sid = this.insertByDto(dto); purchasePay.setBillSid(sid); pmsPurchasePayService.saveOrUpdateDto(purchasePay); @@ -176,6 +196,10 @@ public class PmsPurchaseBillService extends MybatisBaseService pmsPurchaseBillDetailDetailsVos = pmsPurchaseBillDetailService.selByMainSid(sid); vo.setPmsPurchaseBillDetailList(pmsPurchaseBillDetailDetailsVos); + PmsPurchasePayDetailsVo pmsPurchasePayDetailsVo = pmsPurchasePayService.selByMainSid(sid); + vo.setPurchasePay(pmsPurchasePayDetailsVo); + PmsPurchaseBillInvoiceDetailsVo pmsPurchaseBillInvoiceDetailsVo = pmsPurchaseBillInvoiceService.selByMainSid(sid); + vo.setPurchaseBillInvoice(pmsPurchaseBillInvoiceDetailsVo); return vo; } @@ -183,56 +207,8 @@ public class PmsPurchaseBillService extends MybatisBaseService listExcel(PmsPurchaseBillQuery query) { - QueryWrapper qw = new QueryWrapper<>(); - if (query != null) { - if (StringUtils.isNotBlank(query.getCreateOrgName())){ - qw.like("ppb.createOrgSid",query.getCreateOrgName()); - } - if (StringUtils.isNotBlank(query.getDeptName())){ - qw.like("ppb.deptName",query.getDeptName()); - } - if (StringUtils.isNotBlank(query.getCreateByName())){ - qw.like("ppb.createByName",query.getCreateByName()); - } - if (StringUtils.isNotBlank(query.getBillNo())){ - qw.like("ppb.billNo",query.getBillNo()); - } - if (StringUtils.isNotBlank(query.getPurchaseTypeValue())){ - qw.like("ppb.purchaseTypeValue",query.getPurchaseTypeValue()); - } - if (StringUtils.isNotBlank(query.getPurchaseReasonValue())){ - qw.like("ppb.purchaseReasonValue",query.getPurchaseReasonValue()); - } - if (StringUtils.isNotBlank(query.getPayTypeValue())){ - qw.like("ppb.payTypeValue",query.getPayTypeValue()); - } - if (StringUtils.isNotBlank(query.getSupplierName())){ - qw.like("ppb.supplierName",query.getSupplierName()); - } - if (StringUtils.isNotBlank(query.getIsInvoicing())){ - qw.eq("ppbi.isInvoicing",query.getIsInvoicing()); - } - String createStartTime = query.getCreateStartTime(); - String createEndTime = query.getCreateEndTime(); - qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (ppb.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). - apply(StringUtils.isNotEmpty(createEndTime), "date_format (ppb.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" - ); - String finishStartTime = query.getFinishStartTime(); - String finishEndTime = query.getFinishEndTime(); - qw.apply(StringUtils.isNotEmpty(finishStartTime), "date_format (ppb.finishTime,'%Y-%m-%d') >= date_format('" + finishStartTime + "','%Y-%m-%d')"). - apply(StringUtils.isNotEmpty(finishEndTime), "date_format (ppb.finishTime,'%Y-%m-%d') <= date_format('" + finishEndTime + "','%Y-%m-%d')" - ); - } - List exportVoList = baseMapper.exportList(qw); - exportVoList.removeAll(Collections.singleton(null)); - return exportVoList; - } } diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetail.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetail.java index cfb597bee0..1a74482bd4 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetail.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetail.java @@ -68,20 +68,14 @@ public class PmsPurchaseBillDetail extends BaseEntity { private String goodsSkuCode; // 商品编码(图号) @ApiModelProperty("规格型号") private String goodsSkuOwnSpec; // 规格型号 - @ApiModelProperty("采购前库存数量") - private BigDecimal currentCount; // 采购前库存数量 - @ApiModelProperty("仓库sid") + + @ApiModelProperty("单位") + private String unit; + + @ApiModelProperty("仓库sid") private String warehouseSid; // 仓库sid @ApiModelProperty("仓库名称") private String warehouseName; // 仓库名称 - @ApiModelProperty("库区/货位sid") - private String warehouseAreaSid; // 库区/货位sid - @ApiModelProperty("库区名称") - private String warehouseAreaName; // 库区名称 - @ApiModelProperty("货架sid") - private String warehouseRackSid; // 货架sid - @ApiModelProperty("货架名称") - private String warehouseRackName; // 货架名称 @ApiModelProperty("单位成本(进货价)") private BigDecimal cost; // 单位成本(进货价) @ApiModelProperty("采购数量") diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java index 914ac0e1c3..3b6e9c6f3b 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDetailsVo.java @@ -67,20 +67,14 @@ public class PmsPurchaseBillDetailDetailsVo implements Vo { private String goodsSkuCode; // 商品编码(图号) @ApiModelProperty("规格型号") private String goodsSkuOwnSpec; // 规格型号 - @ApiModelProperty("采购前库存数量") - private BigDecimal currentCount; // 采购前库存数量 + + @ApiModelProperty("单位") + private String unit; + @ApiModelProperty("仓库sid") private String warehouseSid; // 仓库sid @ApiModelProperty("仓库名称") private String warehouseName; // 仓库名称 - @ApiModelProperty("库区/货位sid") - private String warehouseAreaSid; // 库区/货位sid - @ApiModelProperty("库区名称") - private String warehouseAreaName; // 库区名称 - @ApiModelProperty("货架sid") - private String warehouseRackSid; // 货架sid - @ApiModelProperty("货架名称") - private String warehouseRackName; // 货架名称 @ApiModelProperty("单位成本(进货价)") private BigDecimal cost; // 单位成本(进货价) @ApiModelProperty("采购数量") diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDto.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDto.java index 41edebe01f..fd804bf1fb 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDto.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebilldetail/PmsPurchaseBillDetailDto.java @@ -67,20 +67,14 @@ public class PmsPurchaseBillDetailDto implements Dto { private String goodsSkuCode; // 商品编码(图号) @ApiModelProperty("规格型号") private String goodsSkuOwnSpec; // 规格型号 - @ApiModelProperty("采购前库存数量") - private BigDecimal currentCount; // 采购前库存数量 + + @ApiModelProperty("单位") + private String unit; + @ApiModelProperty("仓库sid") private String warehouseSid; // 仓库sid @ApiModelProperty("仓库名称") private String warehouseName; // 仓库名称 - @ApiModelProperty("库区/货位sid") - private String warehouseAreaSid; // 库区/货位sid - @ApiModelProperty("库区名称") - private String warehouseAreaName; // 库区名称 - @ApiModelProperty("货架sid") - private String warehouseRackSid; // 货架sid - @ApiModelProperty("货架名称") - private String warehouseRackName; // 货架名称 @ApiModelProperty("单位成本(进货价)") private BigDecimal cost; // 单位成本(进货价) @ApiModelProperty("采购数量") diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebillinvoice/PmsPurchaseBillInvoiceMapper.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebillinvoice/PmsPurchaseBillInvoiceMapper.java index 4c1c1e2bb5..b25f90c1c2 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebillinvoice/PmsPurchaseBillInvoiceMapper.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebillinvoice/PmsPurchaseBillInvoiceMapper.java @@ -61,4 +61,7 @@ public interface PmsPurchaseBillInvoiceMapper extends BaseMapper { @Delete("delete from pms_purchase_pay where billSid = #{dtoSid}") void delByMainSid(String dtoSid); + + @Select("select * from pms_purchase_pay where billSid = #{sid}") + PmsPurchasePayDetailsVo selByMainSid(String sid); } \ No newline at end of file diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasepay/PmsPurchasePayService.java b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasepay/PmsPurchasePayService.java index 98df90f458..0da69eaa9e 100644 --- a/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasepay/PmsPurchasePayService.java +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasepay/PmsPurchasePayService.java @@ -38,6 +38,7 @@ import com.yxt.common.core.vo.PagerVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.util.ArrayList; import java.util.List; /** @@ -124,4 +125,18 @@ public class PmsPurchasePayService extends MybatisBaseService urlPahts = new ArrayList<>(); + for (String path : filePaths) { + String url = fileUploadComponent.getUrlPrefix() + path; + urlPahts.add(url); + } + pmsPurchasePayDetailsVo.setFilePaths(urlPahts); + return pmsPurchasePayDetailsVo; + } } \ No newline at end of file diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/BillNo.java b/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/BillNo.java new file mode 100644 index 0000000000..ee37acf102 --- /dev/null +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/BillNo.java @@ -0,0 +1,24 @@ +package com.yxt.pms.feign.base; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.io.Serializable; + +/** + * @Author dimengzhe + * @Date 2022/7/1 9:46 + * @Description + */ +@Data +public class BillNo implements Serializable { + private static final long serialVersionUID = 1598887042562656350L; + +// @ApiModelProperty(value = "品牌编码") +// private String brandCode; + @ApiModelProperty(value = "单据名称首字母") + private String billType; + @ApiModelProperty(value = "分公司编码") + private String orgCode; + +} diff --git a/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/Rule.java b/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/Rule.java new file mode 100644 index 0000000000..e70c254eb8 --- /dev/null +++ b/yxt-pms-biz/src/main/java/com/yxt/pms/feign/base/Rule.java @@ -0,0 +1,44 @@ +package com.yxt.pms.feign.base; + +import cn.hutool.core.date.DateUtil; +import org.springframework.util.StringUtils; + +/** + * @Author dimengzhe + * @Date 2022/7/1 9:44 + * @Description 规则 + */ +public class Rule { + + /** + * 单据编号规则:单据名称大写首字母+分公司编码+年份+月份+4位顺序号 + * 单据名称大写首字母+分公司编码+年份+月份 + * 注意:品牌编码暂不用 + * + * @return + */ + public static String getBill(BillNo b) { + String billType = b.getBillType(); + String orgCode = b.getOrgCode(); + String date = DateUtil.format(DateUtil.date(), "yyyyMM"); + String bill = billType; + if (!StringUtils.isEmpty(orgCode)) { + bill = bill + orgCode; + } + bill = bill + date; + return bill; + } + + /** + * 生成单据编号规则 + * + * @param bill 单据名称大写首字母+分公司编码+年份+月份 + * @param i 根据单据编号包含单据名称大写首字母+分公司编码+年份+月份查询出来的单据的个数 + * @return + */ + public static String getBillNo(String bill, int i) { + String num = String.format("%04d", i + 1); // 不足4位补0 + String billNo = bill + num; + return billNo; + } +}