From 865c5c427cad6142375ea9aa39e3d5f4524e5d19 Mon Sep 17 00:00:00 2001 From: gaorl Date: Fri, 14 Apr 2023 14:47:31 +0800 Subject: [PATCH 1/4] =?UTF-8?q?feature:=E4=BF=AE=E6=94=B9=E8=AE=B0?= =?UTF-8?q?=E5=BD=95bug=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/CommodityController.java | 4 ++-- .../model/dto/QueryModifyLogResultDTO.java | 2 ++ .../CommodityCodeModifyLogServiceImpl.java | 19 ++++++++++++++----- .../mapper/CommodityCodeModifyLogDao.xml | 1 + 4 files changed, 19 insertions(+), 7 deletions(-) diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java index f898a28b..88af2078 100644 --- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java +++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java @@ -680,8 +680,8 @@ public class CommodityController { public R modifyLog(@RequestBody QueryModifyLogDTO dto) { try { QueryModifyLogResultDTO resp = commodityCodeModifyLogService.queryPage(dto); - PageUtils pageUtil = resp.getPageUtils(); - JSONObject respJson = JSONObject.parseObject(JSONObject.toJSONString(pageUtil)); + JSONObject respJson = new JSONObject(); + respJson.put("data",resp.getList()); respJson.put("modifyUserName",resp.getModifyUserName()); respJson.put("modifyTime",resp.getModifyDate()); return R.ok().put("page", respJson); diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/model/dto/QueryModifyLogResultDTO.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/model/dto/QueryModifyLogResultDTO.java index 214b68ef..d3085c23 100644 --- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/model/dto/QueryModifyLogResultDTO.java +++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/model/dto/QueryModifyLogResultDTO.java @@ -4,6 +4,7 @@ import com.dxhy.order.model.PageUtils; import lombok.Data; import java.util.Date; +import java.util.List; /** * @Description @@ -13,6 +14,7 @@ import java.util.Date; @Data public class QueryModifyLogResultDTO { private PageUtils pageUtils; + private List list; private String modifyUserName; private Date modifyDate; } diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityCodeModifyLogServiceImpl.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityCodeModifyLogServiceImpl.java index 738aa694..6802c023 100644 --- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityCodeModifyLogServiceImpl.java +++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityCodeModifyLogServiceImpl.java @@ -32,6 +32,8 @@ import org.springframework.web.context.request.ServletRequestAttributes; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.lang.reflect.Field; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -56,6 +58,8 @@ public class CommodityCodeModifyLogServiceImpl implements CommodityCodeModifyLog @Resource private UserCenterConfig userCenterConfig; + private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + /** * 比较两个集团物料编码的区别并且保存历史记录 * @@ -102,9 +106,7 @@ public class CommodityCodeModifyLogServiceImpl implements CommodityCodeModifyLog @Override @SneakyThrows public QueryModifyLogResultDTO queryPage(QueryModifyLogDTO dto) { - int pageSize = dto.getPageSize(); - int currPage = dto.getCurrPage(); - PageHelper.startPage(currPage, pageSize); + CommodityCodeModifyLog query = new CommodityCodeModifyLog(); query.setCommodityCodeId(dto.getCommodityId()); List commodityCodeModifyLogs = commodityCodeModifyLogDao.queryAll(query); @@ -148,14 +150,21 @@ public class CommodityCodeModifyLogServiceImpl implements CommodityCodeModifyLog // 处理keyName i.setKeyName(CommodityModifiyLogKeyNameEnum.getKeyNameByKey(i.getKey())); + if(i.getNewValue() == null){i.setNewValue("");} + try { + i.setModifyTime(sdf.parse(sdf.format(i.getModifyTime()))); + } catch (ParseException e) { + e.printStackTrace(); + } }); } Date modifyDate = commodityCodeModifyLogs.size() > 0 ? commodityCodeModifyLogs.get(commodityCodeModifyLogs.size() - 1).getModifyTime() : null; String modifyUserName = commodityCodeModifyLogs.size() > 0 ? commodityCodeModifyLogs.get(commodityCodeModifyLogs.size() - 1).getModifyUserName() : null; - PageInfo pageInfo = new PageInfo<>(commodityCodeModifyLogs); +// PageInfo pageInfo = new PageInfo<>(commodityCodeModifyLogs); QueryModifyLogResultDTO resultDTO = new QueryModifyLogResultDTO(); - resultDTO.setPageUtils(new PageUtils(pageInfo.getList(), (int) pageInfo.getTotal(), pageInfo.getPageSize(), pageInfo.getPageNum())); + //resultDTO.setPageUtils(pageInfo.getList()); + resultDTO.setList(commodityCodeModifyLogs); resultDTO.setModifyDate(modifyDate); resultDTO.setModifyUserName(modifyUserName); return resultDTO; diff --git a/order-management-base-service/src/main/resources/mybatis/mapper/CommodityCodeModifyLogDao.xml b/order-management-base-service/src/main/resources/mybatis/mapper/CommodityCodeModifyLogDao.xml index 3fb458ab..b812b532 100644 --- a/order-management-base-service/src/main/resources/mybatis/mapper/CommodityCodeModifyLogDao.xml +++ b/order-management-base-service/src/main/resources/mybatis/mapper/CommodityCodeModifyLogDao.xml @@ -56,6 +56,7 @@ and modify_time = #{modifyTime} + order by modify_time asc limit 1 From 006612988f2c5f085bd3bed38620e6e4aca84b29 Mon Sep 17 00:00:00 2001 From: gaorl Date: Fri, 14 Apr 2023 15:47:53 +0800 Subject: [PATCH 2/4] =?UTF-8?q?feature:=E7=89=A9=E6=96=99=E5=85=8B?= =?UTF-8?q?=E9=9A=86=E4=B8=BB=E9=94=AEid=E3=80=81=E5=AE=A2=E6=88=B7?= =?UTF-8?q?=E4=BF=A1=E6=81=AF=E7=B3=BB=E6=B7=BB=E5=8A=A0isEdit,=E9=BB=98?= =?UTF-8?q?=E8=AE=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/baseservice/module/buyer/model/BuyerEntityDetail.java | 2 ++ .../main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntityDetail.java b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntityDetail.java index b56f061d..d52c6c4a 100644 --- a/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntityDetail.java +++ b/order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntityDetail.java @@ -52,4 +52,6 @@ public class BuyerEntityDetail { * 更新时间 */ private Date updateTime; + + private Boolean isEdit = false; } diff --git a/order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml b/order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml index 4aa594b0..2703814c 100644 --- a/order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml +++ b/order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml @@ -530,7 +530,7 @@ bmb_bbh, jdc, wlflbm, wlflmc,invoice_name,ent_id ) select - CONCAT(#{to.entId,jdbcType=VARCHAR},'-',id) + CONCAT(#{to.entId,jdbcType=VARCHAR},'-',id), commodity_id, sort_id, #{to.xhfNsrsbh,jdbcType=VARCHAR}, From 9718e17ea1a9bc0c797a09325c5fd0c9ecb17842 Mon Sep 17 00:00:00 2001 From: gaorl Date: Fri, 14 Apr 2023 17:16:06 +0800 Subject: [PATCH 3/4] =?UTF-8?q?feature:=E5=8D=95=E4=BD=8D=E6=8D=A2?= =?UTF-8?q?=E7=AE=97=E6=9B=B4=E6=94=B9=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../order/controller/OrderInfoController.java | 16 +++++++++---- .../order/service/OrderInfoService.java | 2 +- .../service/impl/OrderInfoServiceImpl.java | 24 +++++++++++++------ 3 files changed, 29 insertions(+), 13 deletions(-) diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java index 01232a17..17047e86 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java @@ -412,16 +412,22 @@ public class OrderInfoController { return R.ok().put(OrderManagementConstant.DATA, pageSlkjlyYxqRsp); } + @ApiOperation(value = "结算单换算", notes = "订单信息管理-结算单换算") @PostMapping("/conversionNumByRatio") @SysLog(operation = "根据比率转换数量", operationDesc = "根据比率转换数量", key = "结算单处理") - public R ratioConversion(@RequestParam("orderInfoIds")String orderInfoIds,@RequestParam("rate")String rate,@RequestParam("xhfNsrsbh")String xhfNsrsbh){ + public R ratioConversion(@RequestParam("orderInfoIds")String orderInfoIds, + @RequestParam("rate")String rate,@RequestParam("xhfNsrsbh")String xhfNsrsbh, + @RequestParam("originUnit")String originUnit,@RequestParam("newUnit")String newUnit){ //是否校验通税号 - log.info("结算单转换请求参数,勾选订单id:{},转换比率:{},转换税号:{}", JSONObject.toJSONString(orderInfoIds),rate,xhfNsrsbh); - if(StringUtils.isBlank(orderInfoIds)||StringUtils.isBlank(rate)||StringUtils.isBlank(xhfNsrsbh)){ + log.info("结算单转换请求参数,勾选订单id:{},转换比率:{},转换税号:{},原单位:{},新单位:{}", JSONObject.toJSONString(orderInfoIds),rate,xhfNsrsbh,originUnit,newUnit); + if(StringUtils.isBlank(orderInfoIds)||StringUtils.isBlank(rate)||StringUtils.isBlank(xhfNsrsbh)||StringUtils.isBlank(originUnit)||StringUtils.isBlank(newUnit)){ return R.error("请求参数有误"); } - orderInfoService.ratioConversion(Arrays.asList(orderInfoIds.split(",")),rate,xhfNsrsbh); - return R.ok(); + try { + return orderInfoService.ratioConversion(Arrays.asList(orderInfoIds.split(",")), rate, xhfNsrsbh, originUnit, newUnit); + } catch (Exception e) { + return R.error("系统异常,请联系管理员"); + } } } diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java index 3005b57b..ee4f6927 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java @@ -198,5 +198,5 @@ public interface OrderInfoService { R fillRedMessage(Map param); - R ratioConversion(List orderInfoIds,String ratio,String xhfNsrsbh); + R ratioConversion(List orderInfoIds,String ratio,String xhfNsrsbh,String originUnit,String newUnit); } diff --git a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java index 7f4b61af..da1eb457 100644 --- a/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java +++ b/order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java @@ -50,6 +50,7 @@ import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.RequestParam; import javax.annotation.Resource; import java.math.BigDecimal; @@ -1612,23 +1613,32 @@ public class OrderInfoServiceImpl implements OrderInfoService { } @Override - public R ratioConversion(List orderInfoIds,String ratio,String xhfNsrsbh){ + public R ratioConversion(List orderInfoIds,String ratio,String xhfNsrsbh,String originUnit,String newUnit){ //校验是否为同一税号 校验开票情况 //根据税号+ orderinfoid查询明细信息 List orderProcessInfos = orderProcessInfoMapper.selectByOrderIds(orderInfoIds, Arrays.asList(xhfNsrsbh)); - List collect = orderProcessInfos.stream().filter(t -> "0,1,2,3".contains(t.getDdzt())).map(t -> t.getDdh()).collect(Collectors.toList()); - - List orderItemInfos = orderItemInfoMapper.selectAllByOrderId(orderInfoIds, Arrays.asList(xhfNsrsbh)); + List collect = orderProcessInfos.stream().filter(t -> "0,1,2,3".contains(t.getDdzt())).map(t -> t.getOrderInfoId()).collect(Collectors.toList()); + if(collect == null){ + return R.error("订单状态有误,请检查后重试"); + } + List orderItemInfos = orderItemInfoMapper.selectAllByOrderId(collect, Arrays.asList(xhfNsrsbh)); if(orderItemInfos == null ||orderItemInfos.isEmpty()){ return R.error("当前明细为空不允许进行单位换算"); } - orderItemInfos.forEach(t->{ - if(StringUtils.isNotBlank(t.getXmsl())){ + + orderItemInfos = orderItemInfos.stream() + .filter(t->StringUtils.isNotBlank(t.getXmsl()) && originUnit.equals(t.getXmdw())) + .map(t->{ t.setXmsl(new BigDecimal(t.getXmsl()).multiply(new BigDecimal(ratio)).setScale(8, RoundingMode.HALF_UP).toString()); t.setXmdj(new BigDecimal(t.getXmje()).divide(new BigDecimal(t.getXmsl()),8,RoundingMode.HALF_UP).toString()); + t.setXmdw(newUnit); + return t; } - }); + ).collect(Collectors.toList()); //更新明细表 + if(orderItemInfos == null || orderItemInfos.isEmpty()){ + return R.error("未匹配到正确单位的数据或数量均为空"); + } orderItemInfoMapper.updateOrderItemId(orderItemInfos); return R.ok(); } From fc9f48fe670bf4a5243d3e032f168d2179abf8d3 Mon Sep 17 00:00:00 2001 From: gaorl Date: Fri, 14 Apr 2023 17:17:42 +0800 Subject: [PATCH 4/4] =?UTF-8?q?feature:=E5=8D=95=E4=BD=8D=E6=8D=A2?= =?UTF-8?q?=E7=AE=97=E6=9B=B4=E6=94=B9=E5=8D=95=E4=BD=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/order-management-invoice/src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml b/order-management-invoice/src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml index f65cb3a5..8a683178 100644 --- a/order-management-invoice/src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml +++ b/order-management-invoice/src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml @@ -280,6 +280,9 @@ xmdj = #{item.xmdj,jdbcType=VARCHAR}, + + xmdw = #{item.xmdw,jdbcType=VARCHAR}, + id = #{item.id,jdbcType=VARCHAR}