Merge remote-tracking branch 'origin/release' into release

release
zhenghaiyang@ele-cloud.com 2 years ago
commit 286ea979fc
  1. 2
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/buyer/model/BuyerEntityDetail.java
  2. 4
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/controller/CommodityController.java
  3. 2
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/model/dto/QueryModifyLogResultDTO.java
  4. 19
      order-management-base-service/src/main/java/com/dxhy/order/baseservice/module/commodity/service/impl/CommodityCodeModifyLogServiceImpl.java
  5. 1
      order-management-base-service/src/main/resources/mybatis/mapper/CommodityCodeModifyLogDao.xml
  6. 16
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/controller/OrderInfoController.java
  7. 2
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/OrderInfoService.java
  8. 24
      order-management-consumer/src/main/java/com/dxhy/order/consumer/modules/order/service/impl/OrderInfoServiceImpl.java
  9. 2
      order-management-consumer/src/main/resources/mybatis/mapper/GroupCommodityCodeMapper.xml
  10. 3
      order-management-invoice/src/main/resources/mybatis/mapper/OrderItemInfoMapper.xml

@ -52,4 +52,6 @@ public class BuyerEntityDetail {
* 更新时间 * 更新时间
*/ */
private Date updateTime; private Date updateTime;
private Boolean isEdit = false;
} }

@ -678,8 +678,8 @@ public class CommodityController {
public R modifyLog(@RequestBody QueryModifyLogDTO dto) { public R modifyLog(@RequestBody QueryModifyLogDTO dto) {
try { try {
QueryModifyLogResultDTO resp = commodityCodeModifyLogService.queryPage(dto); QueryModifyLogResultDTO resp = commodityCodeModifyLogService.queryPage(dto);
PageUtils pageUtil = resp.getPageUtils(); JSONObject respJson = new JSONObject();
JSONObject respJson = JSONObject.parseObject(JSONObject.toJSONString(pageUtil)); respJson.put("data",resp.getList());
respJson.put("modifyUserName",resp.getModifyUserName()); respJson.put("modifyUserName",resp.getModifyUserName());
respJson.put("modifyTime",resp.getModifyDate()); respJson.put("modifyTime",resp.getModifyDate());
return R.ok().put("page", respJson); return R.ok().put("page", respJson);

@ -4,6 +4,7 @@ import com.dxhy.order.model.PageUtils;
import lombok.Data; import lombok.Data;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
* @Description * @Description
@ -13,6 +14,7 @@ import java.util.Date;
@Data @Data
public class QueryModifyLogResultDTO { public class QueryModifyLogResultDTO {
private PageUtils pageUtils; private PageUtils pageUtils;
private List list;
private String modifyUserName; private String modifyUserName;
private Date modifyDate; private Date modifyDate;
} }

@ -32,6 +32,8 @@ import org.springframework.web.context.request.ServletRequestAttributes;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.lang.reflect.Field; import java.lang.reflect.Field;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@ -56,6 +58,8 @@ public class CommodityCodeModifyLogServiceImpl implements CommodityCodeModifyLog
@Resource @Resource
private UserCenterConfig userCenterConfig; 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 @Override
@SneakyThrows @SneakyThrows
public QueryModifyLogResultDTO queryPage(QueryModifyLogDTO dto) { public QueryModifyLogResultDTO queryPage(QueryModifyLogDTO dto) {
int pageSize = dto.getPageSize();
int currPage = dto.getCurrPage();
PageHelper.startPage(currPage, pageSize);
CommodityCodeModifyLog query = new CommodityCodeModifyLog(); CommodityCodeModifyLog query = new CommodityCodeModifyLog();
query.setCommodityCodeId(dto.getCommodityId()); query.setCommodityCodeId(dto.getCommodityId());
List<CommodityCodeModifyLog> commodityCodeModifyLogs = commodityCodeModifyLogDao.queryAll(query); List<CommodityCodeModifyLog> commodityCodeModifyLogs = commodityCodeModifyLogDao.queryAll(query);
@ -148,14 +150,21 @@ public class CommodityCodeModifyLogServiceImpl implements CommodityCodeModifyLog
// 处理keyName // 处理keyName
i.setKeyName(CommodityModifiyLogKeyNameEnum.getKeyNameByKey(i.getKey())); 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; Date modifyDate = commodityCodeModifyLogs.size() > 0 ? commodityCodeModifyLogs.get(commodityCodeModifyLogs.size() - 1).getModifyTime() : null;
String modifyUserName = commodityCodeModifyLogs.size() > 0 ? commodityCodeModifyLogs.get(commodityCodeModifyLogs.size() - 1).getModifyUserName() : null; String modifyUserName = commodityCodeModifyLogs.size() > 0 ? commodityCodeModifyLogs.get(commodityCodeModifyLogs.size() - 1).getModifyUserName() : null;
PageInfo<CommodityCodeModifyLog> pageInfo = new PageInfo<>(commodityCodeModifyLogs); // PageInfo<CommodityCodeModifyLog> pageInfo = new PageInfo<>(commodityCodeModifyLogs);
QueryModifyLogResultDTO resultDTO = new QueryModifyLogResultDTO(); 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.setModifyDate(modifyDate);
resultDTO.setModifyUserName(modifyUserName); resultDTO.setModifyUserName(modifyUserName);
return resultDTO; return resultDTO;

@ -56,6 +56,7 @@
and modify_time = #{modifyTime} and modify_time = #{modifyTime}
</if> </if>
</where> </where>
order by modify_time asc limit 1
</select> </select>
<insert id="insert" keyProperty="id" useGeneratedKeys="true"> <insert id="insert" keyProperty="id" useGeneratedKeys="true">

@ -412,16 +412,22 @@ public class OrderInfoController {
return R.ok().put(OrderManagementConstant.DATA, pageSlkjlyYxqRsp); return R.ok().put(OrderManagementConstant.DATA, pageSlkjlyYxqRsp);
} }
@ApiOperation(value = "结算单换算", notes = "订单信息管理-结算单换算")
@PostMapping("/conversionNumByRatio") @PostMapping("/conversionNumByRatio")
@SysLog(operation = "根据比率转换数量", operationDesc = "根据比率转换数量", key = "结算单处理") @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); log.info("结算单转换请求参数,勾选订单id:{},转换比率:{},转换税号:{},原单位:{},新单位:{}", JSONObject.toJSONString(orderInfoIds),rate,xhfNsrsbh,originUnit,newUnit);
if(StringUtils.isBlank(orderInfoIds)||StringUtils.isBlank(rate)||StringUtils.isBlank(xhfNsrsbh)){ if(StringUtils.isBlank(orderInfoIds)||StringUtils.isBlank(rate)||StringUtils.isBlank(xhfNsrsbh)||StringUtils.isBlank(originUnit)||StringUtils.isBlank(newUnit)){
return R.error("请求参数有误"); return R.error("请求参数有误");
} }
orderInfoService.ratioConversion(Arrays.asList(orderInfoIds.split(",")),rate,xhfNsrsbh); try {
return R.ok(); return orderInfoService.ratioConversion(Arrays.asList(orderInfoIds.split(",")), rate, xhfNsrsbh, originUnit, newUnit);
} catch (Exception e) {
return R.error("系统异常,请联系管理员");
}
} }
} }

@ -198,5 +198,5 @@ public interface OrderInfoService {
R fillRedMessage(Map<String,String> param); R fillRedMessage(Map<String,String> param);
R ratioConversion(List<String> orderInfoIds,String ratio,String xhfNsrsbh); R ratioConversion(List<String> orderInfoIds,String ratio,String xhfNsrsbh,String originUnit,String newUnit);
} }

@ -50,6 +50,7 @@ import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestParam;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal; import java.math.BigDecimal;
@ -1612,23 +1613,32 @@ public class OrderInfoServiceImpl implements OrderInfoService {
} }
@Override @Override
public R ratioConversion(List<String> orderInfoIds,String ratio,String xhfNsrsbh){ public R ratioConversion(List<String> orderInfoIds,String ratio,String xhfNsrsbh,String originUnit,String newUnit){
//校验是否为同一税号 校验开票情况 //校验是否为同一税号 校验开票情况
//根据税号+ orderinfoid查询明细信息 //根据税号+ orderinfoid查询明细信息
List<OrderProcessInfo> orderProcessInfos = orderProcessInfoMapper.selectByOrderIds(orderInfoIds, Arrays.asList(xhfNsrsbh)); List<OrderProcessInfo> orderProcessInfos = orderProcessInfoMapper.selectByOrderIds(orderInfoIds, Arrays.asList(xhfNsrsbh));
List<String> collect = orderProcessInfos.stream().filter(t -> "0,1,2,3".contains(t.getDdzt())).map(t -> t.getDdh()).collect(Collectors.toList()); List<String> collect = orderProcessInfos.stream().filter(t -> "0,1,2,3".contains(t.getDdzt())).map(t -> t.getOrderInfoId()).collect(Collectors.toList());
if(collect == null){
List<OrderItemInfo> orderItemInfos = orderItemInfoMapper.selectAllByOrderId(orderInfoIds, Arrays.asList(xhfNsrsbh)); return R.error("订单状态有误,请检查后重试");
}
List<OrderItemInfo> orderItemInfos = orderItemInfoMapper.selectAllByOrderId(collect, Arrays.asList(xhfNsrsbh));
if(orderItemInfos == null ||orderItemInfos.isEmpty()){ if(orderItemInfos == null ||orderItemInfos.isEmpty()){
return R.error("当前明细为空不允许进行单位换算"); 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.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.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); orderItemInfoMapper.updateOrderItemId(orderItemInfos);
return R.ok(); return R.ok();
} }

@ -530,7 +530,7 @@
bmb_bbh, jdc, wlflbm, wlflmc,invoice_name,ent_id bmb_bbh, jdc, wlflbm, wlflmc,invoice_name,ent_id
) )
select select
CONCAT(#{to.entId,jdbcType=VARCHAR},'-',id) CONCAT(#{to.entId,jdbcType=VARCHAR},'-',id),
commodity_id, commodity_id,
sort_id, sort_id,
#{to.xhfNsrsbh,jdbcType=VARCHAR}, #{to.xhfNsrsbh,jdbcType=VARCHAR},

@ -280,6 +280,9 @@
<if test="item.xmdj != null "> <if test="item.xmdj != null ">
xmdj = #{item.xmdj,jdbcType=VARCHAR}, xmdj = #{item.xmdj,jdbcType=VARCHAR},
</if> </if>
<if test="item.xmdw != null ">
xmdw = #{item.xmdw,jdbcType=VARCHAR},
</if>
</set> </set>
<where> <where>
id = #{item.id,jdbcType=VARCHAR} id = #{item.id,jdbcType=VARCHAR}

Loading…
Cancel
Save