From 657f62558c48175ce6cf661a9fed3c8e958f72fd Mon Sep 17 00:00:00 2001 From: ligaode Date: Sat, 8 Feb 2025 16:58:04 +0800 Subject: [PATCH 1/5] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../yxt/base/apiadmin/base/GoodsExcelVo.java | 6 +- .../base/basegoodssku/BaseGoodsSkuMapper.xml | 1 + .../apiadmin/inventroy/WmsInitialRest.java | 169 ++++++++++++------ .../wmsinitial/WmsInitialExcelInfo.java | 2 + .../wmsinitialdetail/WmsInitialDetail.java | 4 +- 5 files changed, 124 insertions(+), 58 deletions(-) diff --git a/yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/GoodsExcelVo.java b/yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/GoodsExcelVo.java index 602f8daabf..299914832f 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/GoodsExcelVo.java +++ b/yxt-base-biz/src/main/java/com/yxt/base/apiadmin/base/GoodsExcelVo.java @@ -1,8 +1,8 @@ package com.yxt.base.apiadmin.base; import com.yxt.common.core.utils.ExportEntityMap; +import io.swagger.annotations.ApiModelProperty; import lombok.Data; -import java.math.BigDecimal; @Data public class GoodsExcelVo { @@ -18,7 +18,7 @@ public class GoodsExcelVo { @ExportEntityMap(CnName = "单位*", EnName = "unit") private String unit; @ExportEntityMap(CnName = "数量*", EnName = "num") - private BigDecimal num; + private String num; @ExportEntityMap(CnName = "品牌*", EnName = "brandName") private String brandName; @ExportEntityMap(CnName = "厂家*", EnName = "manufacturerName") @@ -42,6 +42,8 @@ public class GoodsExcelVo { private String goodsSpuSid; @ExportEntityMap(CnName = "商品skuSid(禁止修改)", EnName = "goodsSkuSid") private String goodsSkuSid; + @ExportEntityMap(CnName = "商品sku名称(禁止修改)", EnName = "goodsSkuTitle") + private String goodsSkuTitle; @ExportEntityMap(CnName = "品牌sid(禁止修改)", EnName = "brandSid") private String brandSid; @ExportEntityMap(CnName = "厂家sid(禁止修改)", EnName = "manufacturerSid") diff --git a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml index 8a9de6dcd7..3b1d29fa97 100644 --- a/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml +++ b/yxt-base-biz/src/main/java/com/yxt/base/biz/base/basegoodssku/BaseGoodsSkuMapper.xml @@ -117,6 +117,7 @@ IF(t.isGoodsID = 0, '否', '是') AS isYwym, spu.sid AS goodsSpuSid, sku.sid AS goodsSkuSid, + sku.title AS goodsSkuTitle, spu.brandSid, spu.manufacturerSid, t.sid AS goodsTypeSid, diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java index 26cd9efd80..dc7c1076e3 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java @@ -118,11 +118,10 @@ public class WmsInitialRest { SysUserVo userVo = sysUserFeign.fetchBySid(userSid).getData(); wmsInitial.setCreateBySid(userSid); wmsInitial.setCreateByName(userVo.getName()); - wmsInitialService.save(wmsInitial); if (!fileName.matches("^.+\\.(?i)(xls)$") && !fileName.matches("^.+\\.(?i)(xlsx)$")) { return ResultBean.fireFail().setMsg("上传文件不正确"); } - int[] resultCell = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20}; + int[] resultCell = new int[]{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21}; List resultList = new ArrayList<>(); boolean isExcel2003 = true; if (fileName.matches("^.+\\.(?i)(xlsx)$")) { @@ -140,24 +139,76 @@ public class WmsInitialRest { if (StringUtils.isNotBlank(importReturn.getCheckInfo())) { return ResultBean.fireFail().setMsg(importReturn.getCheckInfo()); } + wmsInitialService.save(wmsInitial); resultList = importReturn.getInfos(); System.out.println("结果是--->" + resultList); try { for (WmsInitialExcelInfo wmsInitialExcelInfo : resultList) { if ("是".equals(wmsInitialExcelInfo.getIsYwym())) { - Integer num = Integer.parseInt(wmsInitialExcelInfo.getNum()); + int num = new BigDecimal(wmsInitialExcelInfo.getNum()).intValue(); for (int i = 0; i < num; i++) { WmsInitialDetail wmsInitialDetail = new WmsInitialDetail(); - BeanUtil.copyProperties(wmsInitialExcelInfo,wmsInitialDetail); wmsInitialDetail.setBillSid(wmsInitial.getSid()); + wmsInitialDetail.setGoodsSpuSid(wmsInitialExcelInfo.getGoodsSpuSid()); + wmsInitialDetail.setGoodsSpuName(wmsInitialExcelInfo.getGoodsSpuName()); + wmsInitialDetail.setGoodsSkuSid(wmsInitialExcelInfo.getGoodsSkuSid()); + wmsInitialDetail.setGoodsSkuTitle(wmsInitialExcelInfo.getGoodsSkuTitle()); + wmsInitialDetail.setGoodsSkuCode(wmsInitialExcelInfo.getGoodsSkuCode()); + wmsInitialDetail.setGoodsSkuOwnSpec(wmsInitialExcelInfo.getGoodsSkuOwnSpec()); + wmsInitialDetail.setUnit(wmsInitialExcelInfo.getUnit()); wmsInitialDetail.setNum(new BigDecimal("1")); + wmsInitialDetail.setBrandSid(wmsInitialExcelInfo.getBrandSid()); + wmsInitialDetail.setBrandName(wmsInitialExcelInfo.getBrandName()); + wmsInitialDetail.setManufacturerSid(wmsInitialExcelInfo.getManufacturerSid()); + wmsInitialDetail.setManufacturerName(wmsInitialExcelInfo.getManufacturerName()); + wmsInitialDetail.setSupplierName(wmsInitialExcelInfo.getSupplierName()); + wmsInitialDetail.setSaleGuidePrice(new BigDecimal(wmsInitialExcelInfo.getSaleGuidePrice())); + wmsInitialDetail.setInCost(new BigDecimal(wmsInitialExcelInfo.getInCost())); + wmsInitialDetail.setTaxRate(wmsInitialExcelInfo.getTaxRate()); + String firstInDate = ""; + if (isNumber(wmsInitialExcelInfo.getFirstInDate())) { + Date javaDate = new Date((long) ((Double.valueOf(wmsInitialExcelInfo.getFirstInDate()) - 25569) * 86400 * 1000)); + firstInDate = DateUtil.formatDate(javaDate); + } else { + firstInDate = wmsInitialExcelInfo.getFirstInDate(); + } + wmsInitialDetail.setFirstInDate(DateUtil.parseDate(firstInDate)); + wmsInitialDetail.setGoodsTypeSid(wmsInitialExcelInfo.getGoodsTypeSid()); + wmsInitialDetail.setGoodsTypeCode(wmsInitialExcelInfo.getGoodsTypeCode()); + wmsInitialDetail.setGoodsTypeName(wmsInitialExcelInfo.getGoodsTypeName()); wmsInitialDetail.setIsYwym(1); wmsInitialDetailService.save(wmsInitialDetail); } - }else { + } else { WmsInitialDetail wmsInitialDetail = new WmsInitialDetail(); - BeanUtil.copyProperties(wmsInitialExcelInfo,wmsInitialDetail); wmsInitialDetail.setBillSid(wmsInitial.getSid()); + wmsInitialDetail.setGoodsSpuSid(wmsInitialExcelInfo.getGoodsSpuSid()); + wmsInitialDetail.setGoodsSpuName(wmsInitialExcelInfo.getGoodsSpuName()); + wmsInitialDetail.setGoodsSkuSid(wmsInitialExcelInfo.getGoodsSkuSid()); + wmsInitialDetail.setGoodsSkuTitle(wmsInitialExcelInfo.getGoodsSkuTitle()); + wmsInitialDetail.setGoodsSkuCode(wmsInitialExcelInfo.getGoodsSkuCode()); + wmsInitialDetail.setGoodsSkuOwnSpec(wmsInitialExcelInfo.getGoodsSkuOwnSpec()); + wmsInitialDetail.setUnit(wmsInitialExcelInfo.getUnit()); + wmsInitialDetail.setNum(new BigDecimal(wmsInitialExcelInfo.getNum())); + wmsInitialDetail.setBrandSid(wmsInitialExcelInfo.getBrandSid()); + wmsInitialDetail.setBrandName(wmsInitialExcelInfo.getBrandName()); + wmsInitialDetail.setManufacturerSid(wmsInitialExcelInfo.getManufacturerSid()); + wmsInitialDetail.setManufacturerName(wmsInitialExcelInfo.getManufacturerName()); + wmsInitialDetail.setSupplierName(wmsInitialExcelInfo.getSupplierName()); + wmsInitialDetail.setSaleGuidePrice(new BigDecimal(wmsInitialExcelInfo.getSaleGuidePrice())); + wmsInitialDetail.setInCost(new BigDecimal(wmsInitialExcelInfo.getInCost())); + wmsInitialDetail.setTaxRate(wmsInitialExcelInfo.getTaxRate()); + String firstInDate = ""; + if (isNumber(wmsInitialExcelInfo.getFirstInDate())) { + Date javaDate = new Date((long) ((Double.valueOf(wmsInitialExcelInfo.getFirstInDate()) - 25569) * 86400 * 1000)); + firstInDate = DateUtil.formatDate(javaDate); + } else { + firstInDate = wmsInitialExcelInfo.getFirstInDate(); + } + wmsInitialDetail.setFirstInDate(DateUtil.parseDate(firstInDate)); + wmsInitialDetail.setGoodsTypeSid(wmsInitialExcelInfo.getGoodsTypeSid()); + wmsInitialDetail.setGoodsTypeCode(wmsInitialExcelInfo.getGoodsTypeCode()); + wmsInitialDetail.setGoodsTypeName(wmsInitialExcelInfo.getGoodsTypeName()); wmsInitialDetail.setIsYwym(0); wmsInitialDetailService.save(wmsInitialDetail); } @@ -180,8 +231,8 @@ public class WmsInitialRest { } WmsInitialExcelInfo importVo = new WmsInitialExcelInfo(); int physicalNumberOfCells = row.getPhysicalNumberOfCells(); - if (physicalNumberOfCells < 10) { - physicalNumberOfCells = 10; + if (physicalNumberOfCells < 22) { + physicalNumberOfCells = 22; } for (int i = 0; i < physicalNumberOfCells; i++) { String trim = new String(); @@ -194,64 +245,67 @@ public class WmsInitialRest { for (int j = 0; j < resultCell.length; j++) { if (i == resultCell[j]) { switch (i) { - case 0: + case 1: importVo.setGoodsSpuName(temp); break; - case 1: + case 2: importVo.setGoodsSkuCode(temp); break; - case 2: + case 3: importVo.setGoodsSkuOwnSpec(temp); break; - case 3: + case 4: importVo.setUnit(temp); break; - case 4: + case 5: importVo.setNum(temp); break; - case 5: + case 6: importVo.setBrandName(temp); break; - case 6: + case 7: importVo.setManufacturerName(temp); break; - case 7: + case 8: importVo.setSupplierName(temp); break; - case 8: + case 9: importVo.setSaleGuidePrice(temp); break; - case 9: + case 10: importVo.setInCost(temp); break; - case 10: + case 11: importVo.setTaxRate(temp); break; - case 11: + case 12: importVo.setFirstInDate(temp); break; - case 12: + case 13: importVo.setGoodsTypeName(temp); break; - case 13: + case 14: importVo.setIsYwym(temp); break; - case 14: + case 15: importVo.setGoodsSpuSid(temp); break; - case 15: + case 16: importVo.setGoodsSkuSid(temp); break; - case 16: + case 17: + importVo.setGoodsSkuTitle(temp); + break; + case 18: importVo.setBrandSid(temp); break; - case 17: + case 19: importVo.setManufacturerSid(temp); break; - case 18: + case 20: importVo.setGoodsTypeSid(temp); break; - case 19: + case 21: importVo.setGoodsTypeCode(temp); break; default: @@ -265,64 +319,67 @@ public class WmsInitialRest { if (StringUtils.isBlank(trim)) { String word = new String(); switch (i) { - case 0: + case 1: word = "商品spu名称"; break; - case 1: + case 2: word = "图号"; break; - case 2: + case 3: word = "规格型号"; break; - case 3: + case 4: word = "单位"; break; - case 4: + case 5: word = "数量"; break; - case 5: + case 6: word = "品牌"; break; - case 6: + case 7: word = "厂家"; break; - case 7: + case 8: word = "供应商"; break; - case 8: + case 9: word = "销售指导价"; break; - case 9: + case 10: word = "入库单价"; break; - case 10: + case 11: word = "税率"; break; - case 11: + case 12: word = "首次入库日期"; break; - case 12: + case 13: word = "商品类别"; break; - case 13: + case 14: word = "是否为一物一码"; break; - case 14: + case 15: word = "商品spuSid"; break; - case 15: + case 16: word = "商品skuSid"; break; - case 16: + case 17: + word = "商品sku名称"; + break; + case 18: word = "品牌sid"; break; - case 17: + case 19: word = "厂家sid"; break; - case 18: + case 20: word = "商品类别sid"; break; - case 19: + case 21: word = "商品类别编码"; break; default: @@ -409,13 +466,19 @@ public class WmsInitialRest { break; } if (StringUtils.isNotBlank(excelInfo.getFirstInDate())) { - String firstInDate = excelInfo.getFirstInDate(); + String firstInDate = ""; + if (isNumber(excelInfo.getFirstInDate())) { + Date javaDate = new Date((long) ((Double.valueOf(excelInfo.getFirstInDate()) - 25569) * 86400 * 1000)); + firstInDate = DateUtil.formatDate(javaDate); + } else { + firstInDate = excelInfo.getFirstInDate(); + } String[] split = firstInDate.split("-"); - if (split.length != 2) { - checkWord.add("图号" + excelInfo.getGoodsSkuCode() + "导入的首次入库日期填写不正确,格式yyyy-MM"); + if (split.length != 3) { + checkWord.add("图号" + excelInfo.getGoodsSkuCode() + "导入的首次入库日期填写不正确"); break; - } else if (!isFourDigitNumber(split[0]) || !isTwoDigitNumber(split[1])) { - checkWord.add("图号" + excelInfo.getGoodsSkuCode() + "导入的首次入库日期填写不正确,格式yyyy-MM"); + } else if (!isFourDigitNumber(split[0]) || !isTwoDigitNumber(split[1]) || !isTwoDigitNumber(split[2])) { + checkWord.add("图号" + excelInfo.getGoodsSkuCode() + "导入的首次入库日期填写不正确"); break; } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitial/WmsInitialExcelInfo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitial/WmsInitialExcelInfo.java index 592c0385df..4ab5877e13 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitial/WmsInitialExcelInfo.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitial/WmsInitialExcelInfo.java @@ -39,6 +39,8 @@ public class WmsInitialExcelInfo { private String goodsSpuSid; @ApiModelProperty("商品skuSid") private String goodsSkuSid; + @ApiModelProperty("商品sku名称") + private String goodsSkuTitle; @ApiModelProperty("品牌sid") private String brandSid; @ApiModelProperty("厂家sid") diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java index 920d0d62f6..82d3891d87 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java @@ -48,7 +48,7 @@ public class WmsInitialDetail extends BaseEntity { private String goodsSpuName; // 商品spu名称 @ApiModelProperty("商品skuSid") private String goodsSkuSid; // 商品skuSid - @ApiModelProperty("商品Sku名称") + @ApiModelProperty("商品sku名称") private String goodsSkuTitle; // 商品Sku名称 @ApiModelProperty("图号") private String goodsSkuCode; // 图号 @@ -66,8 +66,6 @@ public class WmsInitialDetail extends BaseEntity { private String manufacturerSid; // 厂家sid @ApiModelProperty("厂家名称") private String manufacturerName; // 厂家名称 - @ApiModelProperty("供应商sid") - private String supplierSid; // 供应商sid @ApiModelProperty("供应商名称") private String supplierName; // 供应商名称 @ApiModelProperty("销售指导价") From 5aa346dac2b04364ab10714d783baf2edb31ecd6 Mon Sep 17 00:00:00 2001 From: ligaode Date: Sat, 8 Feb 2025 17:48:10 +0800 Subject: [PATCH 2/5] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../apiadmin/inventroy/WmsInitialRest.java | 11 ++++++ .../wmsinitialdetail/WmsInitialDetail.java | 2 ++ .../WmsInitialDetailMapper.java | 2 ++ .../WmsInitialDetailMapper.xml | 8 +++++ .../WmsInitialDetailService.java | 35 +++++++++++++++++-- 5 files changed, 56 insertions(+), 2 deletions(-) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java index dc7c1076e3..7267049ed0 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInitialRest.java @@ -148,7 +148,9 @@ public class WmsInitialRest { int num = new BigDecimal(wmsInitialExcelInfo.getNum()).intValue(); for (int i = 0; i < num; i++) { WmsInitialDetail wmsInitialDetail = new WmsInitialDetail(); + wmsInitialDetail.setCreateBySid(userSid); wmsInitialDetail.setBillSid(wmsInitial.getSid()); + wmsInitialDetail.setGoodsID(getGoodsId(wmsInitialExcelInfo.getGoodsSkuSid())); wmsInitialDetail.setGoodsSpuSid(wmsInitialExcelInfo.getGoodsSpuSid()); wmsInitialDetail.setGoodsSpuName(wmsInitialExcelInfo.getGoodsSpuName()); wmsInitialDetail.setGoodsSkuSid(wmsInitialExcelInfo.getGoodsSkuSid()); @@ -181,7 +183,9 @@ public class WmsInitialRest { } } else { WmsInitialDetail wmsInitialDetail = new WmsInitialDetail(); + wmsInitialDetail.setCreateBySid(userSid); wmsInitialDetail.setBillSid(wmsInitial.getSid()); + wmsInitialDetail.setGoodsID(getGoodsId(wmsInitialExcelInfo.getGoodsSkuSid())); wmsInitialDetail.setGoodsSpuSid(wmsInitialExcelInfo.getGoodsSpuSid()); wmsInitialDetail.setGoodsSpuName(wmsInitialExcelInfo.getGoodsSpuName()); wmsInitialDetail.setGoodsSkuSid(wmsInitialExcelInfo.getGoodsSkuSid()); @@ -220,6 +224,13 @@ public class WmsInitialRest { } } + @PostMapping("/generateGoodsTag") + @ResponseBody + @ApiOperation(value = "生成商品标签") + public ResultBean generateGoodsTag(@RequestBody String[] sids){ + return wmsInitialDetailService.generateGoodsTag(sids); + } + private ReturnExcelInfo getSheetVal(Sheet sheet, int[] resultCell, String deptSid) { ReturnExcelInfo importReturn = new ReturnExcelInfo(); List importVoList = new ArrayList<>(); diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java index 82d3891d87..3287d6c322 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetail.java @@ -42,6 +42,8 @@ public class WmsInitialDetail extends BaseEntity { @ApiModelProperty("单据sid") private String billSid; // 单据sid + @ApiModelProperty("商品ID") + private String goodsID; @ApiModelProperty("商品spuSid") private String goodsSpuSid; // 商品spuSid @ApiModelProperty("商品spu名称") diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java index b7b5fbb7a1..f8967d6dcf 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java @@ -36,4 +36,6 @@ import org.apache.ibatis.annotations.Param; public interface WmsInitialDetailMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); + + String selectNum(String goodsId); } \ No newline at end of file diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.xml index 3ebaaa0562..f3f3833e2a 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.xml @@ -16,4 +16,12 @@ ${ew.sqlSegment} + + \ No newline at end of file diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java index 259aad2e25..a591d0a0cb 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java @@ -25,6 +25,7 @@ *********************************************************/ package com.yxt.wms.biz.inventory.wmsinitialdetail; +import cn.hutool.core.bean.BeanUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.yxt.common.base.service.MybatisBaseService; @@ -32,18 +33,24 @@ import com.yxt.common.base.utils.PagerUtil; import com.yxt.common.core.query.PagerQuery; import com.yxt.common.core.result.ResultBean; import com.yxt.common.core.vo.PagerVo; +import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTag; +import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTagService; import com.yxt.wms.feign.portal.privilege.PrivilegeQuery; import com.yxt.wms.feign.portal.sysuser.SysUserFeign; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; +import java.math.BigDecimal; + @Service public class WmsInitialDetailService extends MybatisBaseService { @Autowired private SysUserFeign sysUserFeign; - + @Autowired + private WmsGoodsTagService wmsGoodsTagService; + public PagerVo listPageVo(PagerQuery pq) { WmsInitialDetailQuery query = pq.getParams(); QueryWrapper qw = new QueryWrapper<>(); @@ -103,6 +110,30 @@ public class WmsInitialDetailService extends MybatisBaseService Date: Sat, 8 Feb 2025 17:57:02 +0800 Subject: [PATCH 3/5] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=9C=9F=E5=88=9D?= =?UTF-8?q?=E4=B8=8A=E6=9E=B6=E7=AE=A1=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- yxt-as-ui/src/api/storage/initialRelease.js | 34 ++ yxt-as-ui/src/router/index.js | 9 + .../storage/initialRelease/initialRelease.vue | 368 ++++++++++++++++++ 3 files changed, 411 insertions(+) create mode 100644 yxt-as-ui/src/api/storage/initialRelease.js create mode 100644 yxt-as-ui/src/views/storage/initialRelease/initialRelease.vue diff --git a/yxt-as-ui/src/api/storage/initialRelease.js b/yxt-as-ui/src/api/storage/initialRelease.js new file mode 100644 index 0000000000..1e33e809c9 --- /dev/null +++ b/yxt-as-ui/src/api/storage/initialRelease.js @@ -0,0 +1,34 @@ +import request from '@/utils/request' + +export default { + // 查询分页列表 + listPage: function(params) { + return request({ + url: '/wms/v1/wmsinitialdetail/listPage', + method: 'post', + data: params, + headers: { 'Content-Type': 'application/json' } + }) + }, + generateGoodsTag: function(data) { + return request({ + url: '/wms/v1/wmsinitial/generateGoodsTag', + method: 'post', + data: data, + headers: { + 'Content-Type': 'application/json' + } + }) + }, + excelList: function(data) { + return request({ + url: '/yxtbase/apiadmin/base/basegoodssku/excelList', + method: 'post', + params: data, + responseType: 'blob', // 表明返回服务器返回的数据类型 + headers: { + 'Content-Type': 'application/json' + } + }) + } +} diff --git a/yxt-as-ui/src/router/index.js b/yxt-as-ui/src/router/index.js index 5617e6aacc..b1c20882ea 100644 --- a/yxt-as-ui/src/router/index.js +++ b/yxt-as-ui/src/router/index.js @@ -449,6 +449,15 @@ export const constantRoutes = [{ noCache: true } }, + { + path: '/storage/initialRelease', + component: () => import('@/views/storage/initialRelease/initialRelease'), + name: 'InitialRelease', + meta: { + title: '期初上架管理', + noCache: true + } + }, { path: '/inventory/inventory', component: () => import('@/views/storage/inventory/inventory.vue'), diff --git a/yxt-as-ui/src/views/storage/initialRelease/initialRelease.vue b/yxt-as-ui/src/views/storage/initialRelease/initialRelease.vue new file mode 100644 index 0000000000..5dee6d17ed --- /dev/null +++ b/yxt-as-ui/src/views/storage/initialRelease/initialRelease.vue @@ -0,0 +1,368 @@ + + + + + From b8bcaca9b5d161fe9fd451b970400b39399c19ee Mon Sep 17 00:00:00 2001 From: ligaode Date: Sat, 8 Feb 2025 17:57:34 +0800 Subject: [PATCH 4/5] =?UTF-8?q?=E6=9B=B4=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../inventory/wmsinitialdetail/WmsInitialDetailMapper.java | 4 ++++ .../inventory/wmsinitialdetail/WmsInitialDetailService.java | 1 + 2 files changed, 5 insertions(+) diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java index f8967d6dcf..fd86a554cc 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailMapper.java @@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.toolkit.Constants; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; +import org.apache.ibatis.annotations.Update; @Mapper public interface WmsInitialDetailMapper extends BaseMapper { @@ -38,4 +39,7 @@ public interface WmsInitialDetailMapper extends BaseMapper { IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw); String selectNum(String goodsId); + + @Update("update wms_initial_detail set isScbq = 1 where sid = #{sid}") + void updateIsScbq(String sid); } \ No newline at end of file diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java index a591d0a0cb..1ae1ad0ea5 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinitialdetail/WmsInitialDetailService.java @@ -133,6 +133,7 @@ public class WmsInitialDetailService extends MybatisBaseService Date: Mon, 10 Feb 2025 09:30:09 +0800 Subject: [PATCH 5/5] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=9C=88=E8=BF=98?= =?UTF-8?q?=E8=AE=A1=E6=8F=90=E7=94=B3=E8=AF=B7=20--=20=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E9=87=8D=E6=8E=A8=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../api/monthlyallowance/monthlyallowance.js | 7 ++++ .../monthlyallowance/monthlyallowance.vue | 39 +++++++++++++++++++ 2 files changed, 46 insertions(+) diff --git a/anrui-riskcenter-ui/src/api/monthlyallowance/monthlyallowance.js b/anrui-riskcenter-ui/src/api/monthlyallowance/monthlyallowance.js index 95738888fe..2c77109fd2 100644 --- a/anrui-riskcenter-ui/src/api/monthlyallowance/monthlyallowance.js +++ b/anrui-riskcenter-ui/src/api/monthlyallowance/monthlyallowance.js @@ -25,6 +25,13 @@ export default { headers: { 'Content-Type': 'application/json' } }) }, + rePushVoucher: function(data) { + return request({ + url: '/riskcenter/v1/loanmonthlyaccrualapply/rePushVoucher', + method: 'post', + params: data + }) + }, deleteBySids: function(data) { return request({ url: '/riskcenter/v1/loanmonthlyaccrualapply/deleteBySids', diff --git a/anrui-riskcenter-ui/src/views/monthlyallowance/monthlyallowance.vue b/anrui-riskcenter-ui/src/views/monthlyallowance/monthlyallowance.vue index 549bfaf8ce..4c834a46ae 100644 --- a/anrui-riskcenter-ui/src/views/monthlyallowance/monthlyallowance.vue +++ b/anrui-riskcenter-ui/src/views/monthlyallowance/monthlyallowance.vue @@ -146,6 +146,13 @@ export default { btnKey: 'toAdd', btnLabel: '新增' }, + { + type: 'primary', + size: 'small', + icon: '', + btnKey: 'toPush', + btnLabel: '重推' + }, { type: 'danger', size: 'small', @@ -167,6 +174,7 @@ export default { tableKey: 0, list: [], sids: [], // 用于导出的时候保存已选择的SIDs + multipleSelection: [], FormLoading: false, listLoading: false, // 翻页 @@ -242,6 +250,9 @@ export default { case 'toAdd': this.toAdd() break + case 'toPush': + this.toPush() + break case 'doDel': this.doDel() break @@ -255,6 +266,7 @@ export default { // 信息条数 获取点击时当前的sid handleSelectionChange(row) { const aa = [] + this.multipleSelection = row row.forEach(element => { aa.push(element.sid) }) @@ -317,6 +329,33 @@ export default { } }) }, + toPush() { + if (this.sids.length === 1) { + if (this.multipleSelection[0].nodeState !== '已办结') { + this.$message({ showClose: true, type: 'error', message: '请选择状态为已办结的记录进行重推操作' }) + return + } + const loading = this.$loading({ + lock: true, + text: '数据推送中', + spinner: 'el-icon-loading', + background: 'rgba(0, 0, 0, 0.7)' + }) + req.rePushVoucher({ sid: this.sids[0] }).then((resp) => { + if (resp.success) { + loading.close() + this.$message({ showClose: true, type: 'success', message: '重推成功' }) + this.getList() + } else { + loading.close() + } + }).catch(() => { + loading.close() + }) + } else { + this.$message({ showClose: true, type: 'error', message: '请选择一条记录进行重推操作' }) + } + }, toEdit(row) { this.viewState = 3 this.$refs['divAdd'].showEdit(row)