Procházet zdrojové kódy

定金设置优化,分销商列表查询权限控制

lishiqiang před 1 týdnem
rodič
revize
636f9cdbdc

+ 1 - 0
ship-module-ota/ship-module-ota-biz/src/main/java/com/yc/ship/module/ota/dal/mysql/distributor/DistributorMapper.java

@@ -65,6 +65,7 @@ public interface DistributorMapper extends BaseMapperX<DistributorDO> {
     List<Map> getOtcSimpleList(@Param("params") DistributorSaveReqVO params);
 
     List<DistributorRespVO> getOtcDistributor(@Param("type") Integer type);
+    List<DistributorRespVO> getOtcDistributorByOtaId(@Param("type") Integer type,@Param("distributorId") Long distributorId);
 
     List<DistributorRespVO> getOtcDistributorWithId(@Param("type") Integer type,@Param("productId") Long productId);
 

+ 11 - 1
ship-module-ota/ship-module-ota-biz/src/main/java/com/yc/ship/module/ota/service/distributor/DistributorServiceImpl.java

@@ -34,6 +34,7 @@ import com.yc.ship.module.ota.dal.mysql.otaDistributorRegion.OtaDistributorRegio
 import com.yc.ship.module.ota.enums.DistributorTypeEnum;
 import com.yc.ship.module.ota.service.distributorauditlog.DistributorAuditLogService;
 import com.yc.ship.module.ota.service.distributortype.DistributorTypeService;
+import com.yc.ship.module.ota.util.OtaAuthUtils;
 import com.yc.ship.module.system.api.dept.DeptApi;
 import com.yc.ship.module.system.api.dept.dto.DeptReqDTO;
 import com.yc.ship.module.system.api.permission.PermissionApi;
@@ -89,6 +90,9 @@ public class DistributorServiceImpl implements DistributorService {
     @Resource
     private PermissionApi permissionApi;
 
+    @Resource
+    private OtaAuthUtils otaAuthUtils;
+
 
     @Resource
     private DistributorTypeService distributorTypeService;
@@ -461,7 +465,13 @@ public class DistributorServiceImpl implements DistributorService {
 
     @Override
     public List<DistributorRespVO> getOtcDistributor(Integer type) {
-        return distributorMapper.getOtcDistributor(type);
+        LoginUser loginUser = otaAuthUtils.getAgencyLoginUser();
+        Long distributorId = loginUser.getDistributorId();
+        if(distributorId == null){
+            return distributorMapper.getOtcDistributor(type);
+        }else{
+            return distributorMapper.getOtcDistributorByOtaId(type,distributorId);
+        }
     }
 
     @Override

+ 3 - 0
ship-module-ota/ship-module-ota-biz/src/main/resources/mapper/distributor/DistributorMapper.xml

@@ -26,6 +26,9 @@
           and type = #{type}
         </if>
     </select>
+    <select id="getOtcDistributorByOtaId" resultType="com.yc.ship.module.ota.controller.admin.distributor.vo.DistributorRespVO">
+        select * from ota_distributor where deleted = 0 and id = #{distributorId}
+    </select>
     <select id="selectDistributorStore" resultType="com.yc.ship.module.trade.api.dto.StoreRespVO">
         select * from otc_agency_store where is_use = 1 and deleted=0
         and agency_id = #{agencyId}

+ 1 - 0
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/dal/dataobject/order/TradeOrderDO.java

@@ -333,6 +333,7 @@ public class TradeOrderDO extends TenantBaseDO {
     /**
      * 定金
      */
+    @ForUpdate(fieldName = "定金")
     private BigDecimal deposi;
 
     /**

+ 16 - 3
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/service/otc/impl/OtcTradeOrderServiceImpl.java

@@ -1440,7 +1440,8 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
                     TradeVistorReqVO tradeVistorReqVO = createVO.getTourist().stream().filter(v -> v.getId().equals(touristId)).findFirst().orElseGet(TradeVistorReqVO::new);
                     ShipTradeOrderCreateReqVO.Visitor visitor = getVisitor1(tradeVistorReqVO);
                     visitorList1.add(visitor);
-                    spuMoney = spuMoney.add(tradeSpuReqVO.getPrice());
+                    BigDecimal price = tradeSpuReqVO.getPrice()==null?BigDecimal.ZERO:tradeSpuReqVO.getPrice();
+                    spuMoney = spuMoney.add(price);
                 }
                 orderDetail1.setVisitorList(visitorList1);
                 orderDetail1.setProductId(tradeSpuReqVO.getProductId() + "");
@@ -1588,6 +1589,15 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
                 tradeOrderBindDO.setCustom("");
                 tradeOrderBindDO.setRemark("modify订单金额修改,订单金额:" + orderMoney + ",订单修改后实际金额:" + realAmount);
                 shipTradeOrderCreateReqVO.setTradeOrderBindDO(tradeOrderBindDO);
+            } else if ( createVO.getSummary().getDeposi() != null &&  !Objects.equals(shipTradeOrderCreateReqVO.getDeposi(), tradeOrderDO.getDeposi())) {
+                shipTradeOrderCreateReqVO.setConfirmType(1);
+                TradeOrderBindDO tradeOrderBindDO = new TradeOrderBindDO();
+                tradeOrderBindDO.setId(IdWorker.getId());
+                tradeOrderBindDO.setType(1);
+                tradeOrderBindDO.setBindId(orderId);
+                tradeOrderBindDO.setCustom("");
+                tradeOrderBindDO.setRemark("modify定金金额修改,订单原定金:" + tradeOrderDO.getDeposi() + ",订单修改后定金金额:" + shipTradeOrderCreateReqVO.getDeposi());
+                shipTradeOrderCreateReqVO.setTradeOrderBindDO(tradeOrderBindDO);
             } else {
                 shipTradeOrderCreateReqVO.setConfirmType(0);
             }
@@ -1653,7 +1663,8 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
                     TradeVistorReqVO tradeVistorReqVO = createVO.getTourist().stream().filter(v -> v.getId().equals(touristId)).findFirst().orElseGet(TradeVistorReqVO::new);
                     ShipTradeOrderCreateReqVO.Visitor visitor = getVisitor1(tradeVistorReqVO);
                     visitorList1.add(visitor);
-                    spuMoney = spuMoney.add(tradeSpuReqVO.getPrice());
+                    BigDecimal price = tradeSpuReqVO.getPrice()==null?BigDecimal.ZERO:tradeSpuReqVO.getPrice();
+                    spuMoney = spuMoney.add(price);
                 }
                 orderDetail1.setVisitorList(visitorList1);
                 orderDetail1.setProductId(tradeSpuReqVO.getProductId() + "");
@@ -1703,7 +1714,6 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
             }
 
 
-
             String changedFields1 = com.yc.ship.module.trade.utils.BeanUtils.getChangedFields(oldTradeOrderTotal, tradeOrderTotalDO);
             System.err.println("changedFields1=" + changedFields1);
 
@@ -1741,6 +1751,9 @@ public class OtcTradeOrderServiceImpl implements OtcTradeOrderService {
             if (!Objects.equals(shipTradeOrderCreateReqVO.getAmount(), tradeOrderDO.getAmount()) && loginUser.getDistributorId() == null) {
                 auditType = 3;
             }
+            if (!Objects.equals(shipTradeOrderCreateReqVO.getDeposi(), tradeOrderDO.getDeposi()) ) {
+                auditType = 3;
+            }
             String msg = "";
             if (auditType > 0 && createVO.getIsYd() != 1) {
                 AuditUserDO auditUserDO = auditUserMapper.selectOne(new LambdaQueryWrapperX<AuditUserDO>().eq(AuditUserDO::getType, auditType).eq(AuditUserDO::getDeleted, 0).orderByDesc(AuditUserDO::getCreateTime).last("limit 1"));

+ 2 - 2
ship-module-trade/ship-module-trade-biz/src/main/java/com/yc/ship/module/trade/utils/BeanUtils.java

@@ -42,9 +42,9 @@ public class BeanUtils {
                         //获取字段名称
                         builder.append(field.getAnnotation(ForUpdate.class).fieldName());
                         builder.append(": 【更改前:");
-                        builder.append(newValue);
+                        builder.append(newValue==null?"空":newValue);
                         builder.append(", 更改后:");
-                        builder.append(oldValue);
+                        builder.append(oldValue==null?"空":oldValue);
                         builder.append("】\n");
                     }
                 } catch (Exception e) {