Ver código fonte

设备管理费用配置查询

tanbin 1 ano atrás
pai
commit
26d6ecd56e

+ 2 - 2
device-api-service/src/main/java/com/xy/entity/DeviceAdminActivate.java

@@ -12,7 +12,7 @@ import lombok.experimental.Accessors;
 
 
 /**
 /**
  * <p>
  * <p>
- * 管理员设备激活记录表
+ * 管理员设备激活记录表1
  * </p>
  * </p>
  *
  *
  * @author lijin
  * @author lijin
@@ -21,7 +21,7 @@ import lombok.experimental.Accessors;
 @Data
 @Data
 @EqualsAndHashCode(callSuper = false)
 @EqualsAndHashCode(callSuper = false)
 @Accessors(chain = true)
 @Accessors(chain = true)
-@ApiModel(value="DeviceAdminActivate对象", description="管理员设备激活记录表")
+@ApiModel(value = "DeviceAdminActivate对象", description = "管理员设备激活记录表")
 public class DeviceAdminActivate implements Serializable {
 public class DeviceAdminActivate implements Serializable {
 
 
     private static final long serialVersionUID = 1L;
     private static final long serialVersionUID = 1L;

+ 51 - 9
device-api-service/src/main/java/com/xy/service/DeviceChargingConfigServiceImpl.java

@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.github.yitter.idgen.YitIdHelper;
 import com.github.yitter.idgen.YitIdHelper;
 import com.xy.device.EnumDeviceCharging;
 import com.xy.device.EnumDeviceCharging;
+import com.xy.device.EnumDeviceChargingConfigType;
 import com.xy.dto.DeviceChargingConfigDto;
 import com.xy.dto.DeviceChargingConfigDto;
 import com.xy.dto.be.MercDto;
 import com.xy.dto.be.MercDto;
 import com.xy.entity.DeviceChargingConfig;
 import com.xy.entity.DeviceChargingConfig;
@@ -63,14 +64,27 @@ public class DeviceChargingConfigServiceImpl extends ServiceImpl<DeviceChargingC
         MercDto.Vo merc = mercService.obj(new MercDto.Vo().setId(dto.getMercId())).getData();
         MercDto.Vo merc = mercService.obj(new MercDto.Vo().setId(dto.getMercId())).getData();
         LambdaQueryWrapper<DeviceChargingConfig> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(dto, DeviceChargingConfig.class)
         LambdaQueryWrapper<DeviceChargingConfig> lambdaQueryWrapper = new MybatisPlusQuery().eqWrapper(dto, DeviceChargingConfig.class)
                 .in(DeviceChargingConfig::getDeviceType, dto.getDeviceTypes())
                 .in(DeviceChargingConfig::getDeviceType, dto.getDeviceTypes())
+                .eq(DeviceChargingConfig::getType, SysDictUtils.getValue(EnumDeviceChargingConfigType.Code.CODE.getCode(), EnumDeviceChargingConfigType.N_2.getCode(), Integer.class))
                 .eq(DeviceChargingConfig::getMercCode, merc.getMercCode())
                 .eq(DeviceChargingConfig::getMercCode, merc.getMercCode())
                 .build();
                 .build();
-        //默认配置
+        //默认配置 type 2预充 1赠送天数
         List<DeviceChargingConfig> list = list(lambdaQueryWrapper);
         List<DeviceChargingConfig> list = list(lambdaQueryWrapper);
         Map<Integer, DeviceChargingConfig> typeConfigMap = MapUtil.newHashMap();
         Map<Integer, DeviceChargingConfig> typeConfigMap = MapUtil.newHashMap();
         if (CollUtil.isNotEmpty(list)) {
         if (CollUtil.isNotEmpty(list)) {
             typeConfigMap = list.stream().collect(Collectors.toMap(DeviceChargingConfig::getDeviceType, c -> c));
             typeConfigMap = list.stream().collect(Collectors.toMap(DeviceChargingConfig::getDeviceType, c -> c));
         }
         }
+        //赠送天数
+        LambdaQueryWrapper<DeviceChargingConfig> lambdaQueryWrapper2 = new MybatisPlusQuery().eqWrapper(dto, DeviceChargingConfig.class)
+                .in(DeviceChargingConfig::getDeviceType, dto.getDeviceTypes())
+                .eq(DeviceChargingConfig::getType, SysDictUtils.getValue(EnumDeviceChargingConfigType.Code.CODE.getCode(), EnumDeviceChargingConfigType.N_1.getCode(), Integer.class))
+                .eq(DeviceChargingConfig::getMercCode, merc.getMercCode())
+                .build();
+        List<DeviceChargingConfig> list2 = list(lambdaQueryWrapper2);
+        Map<Integer, DeviceChargingConfig> typeConfigMap2 = MapUtil.newHashMap();
+        if (CollUtil.isNotEmpty(list2)) {
+            typeConfigMap2 = list2.stream().collect(Collectors.toMap(DeviceChargingConfig::getDeviceType, c -> c));
+        }
+
         List<DeviceChargingConfigDto.FeeConfigVO> voList = new ArrayList<>();
         List<DeviceChargingConfigDto.FeeConfigVO> voList = new ArrayList<>();
         List<Integer> deviceTypes = dto.getDeviceTypes();
         List<Integer> deviceTypes = dto.getDeviceTypes();
         for (Integer type : deviceTypes) {//默认年费,赠送天数
         for (Integer type : deviceTypes) {//默认年费,赠送天数
@@ -78,17 +92,45 @@ public class DeviceChargingConfigServiceImpl extends ServiceImpl<DeviceChargingC
             int defaultMoney = SysDictUtils.getValue(EnumDeviceCharging.Code.CODE.getCode(), String.valueOf(type), Integer.class);
             int defaultMoney = SysDictUtils.getValue(EnumDeviceCharging.Code.CODE.getCode(), String.valueOf(type), Integer.class);
             //默认赠送天数
             //默认赠送天数
             int giveDays = SysDictUtils.getValue(EnumDeviceCharging.Code.CODE.getCode(), EnumDeviceCharging.N_X.getCode(), Integer.class);
             int giveDays = SysDictUtils.getValue(EnumDeviceCharging.Code.CODE.getCode(), EnumDeviceCharging.N_X.getCode(), Integer.class);
-            if (CollUtil.isNotEmpty(typeConfigMap) && typeConfigMap.get(type) != null) {
-                //存在自定义配置
-                DeviceChargingConfig deviceChargingConfig = typeConfigMap.get(type);
-                BeanUtil.copyProperties(deviceChargingConfig, vo);
-                vo.setDefFee(defaultMoney);
-                vo.setDefGiveDay(giveDays);
-                voList.add(vo);
+            if ((CollUtil.isNotEmpty(typeConfigMap) && typeConfigMap.get(type) != null) || (CollUtil.isNotEmpty(typeConfigMap2) && typeConfigMap2.get(type) != null)) {
+                DeviceChargingConfig deviceChargingConfig = new DeviceChargingConfig();
+                //存在自定义配置 预充
+                if (CollUtil.isNotEmpty(typeConfigMap) && typeConfigMap.get(type) != null) {
+                    deviceChargingConfig = typeConfigMap.get(type);
+                    BeanUtil.copyProperties(deviceChargingConfig, vo);
+                    vo.setDefFee(defaultMoney);
+                    vo.setDefGiveDay(giveDays);
+                    vo.setFee(deviceChargingConfig.getConfigValue());
+                    vo.setGiveDay(giveDays);
+                }
+
+                //存在自定义配置 赠送天数
+                if (CollUtil.isNotEmpty(typeConfigMap2) && typeConfigMap2.get(type) != null) {
+                    if (deviceChargingConfig != null) {
+                        DeviceChargingConfig deviceChargingConfig2 = typeConfigMap2.get(type);
+                        vo.setDefFee(defaultMoney);
+                        vo.setDefGiveDay(giveDays);
+                        vo.setGiveDay(deviceChargingConfig2.getConfigValue());
+                        voList.add(vo);
+                    } else {
+                        //未设置预充
+                        deviceChargingConfig = typeConfigMap2.get(type);
+                        BeanUtil.copyProperties(deviceChargingConfig, vo);
+                        vo.setDefFee(defaultMoney);
+                        vo.setDefGiveDay(giveDays);
+                        vo.setFee(defaultMoney);
+                        vo.setGiveDay(deviceChargingConfig.getConfigValue());
+                        voList.add(vo);
+                    }
+
+                }
+
+
             } else {
             } else {
                 //不存在,则取字典默认值
                 //不存在,则取字典默认值
                 vo.setId(YitIdHelper.nextId());
                 vo.setId(YitIdHelper.nextId());
-                vo.setConfigValue(defaultMoney);
+                vo.setFee(defaultMoney);
+                vo.setGiveDay(giveDays);
                 vo.setDeviceType(type);
                 vo.setDeviceType(type);
                 vo.setMercCode(merc.getMercCode());
                 vo.setMercCode(merc.getMercCode());
                 vo.setDefFee(defaultMoney);
                 vo.setDefFee(defaultMoney);

+ 31 - 1
device-api/src/main/java/com/xy/dto/DeviceChargingConfigDto.java

@@ -118,7 +118,7 @@ public class DeviceChargingConfigDto {
 
 
     @Data
     @Data
     @Accessors(chain = true)
     @Accessors(chain = true)
-    public static class FeeConfigVO extends Vo {
+    public static class FeeConfigVO {
 
 
         @ApiModelProperty(value = "默认赠送年费")
         @ApiModelProperty(value = "默认赠送年费")
         private Integer defFee;
         private Integer defFee;
@@ -126,6 +126,36 @@ public class DeviceChargingConfigDto {
         private Integer defGiveDay;
         private Integer defGiveDay;
 
 
 
 
+        @ApiModelProperty(value = "id")
+        private Long id;
+
+        @ApiModelProperty(value = "商户编码")
+        private String mercCode;
+
+        @ApiModelProperty(value = "设备类型")
+        private Integer deviceType;
+
+        @ApiModelProperty(value = "自定义赠送天数")
+        private Integer giveDay;
+
+        @ApiModelProperty(value = "自定义年费")
+        private Integer fee;
+
+        @ApiModelProperty(value = "备注")
+        private String note;
+
+        @ApiModelProperty(value = "类型")
+        private Integer type;
+
+        @ApiModelProperty(value = "创建时间")
+        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+        private LocalDateTime createTime;
+
+        @ApiModelProperty(value = "更新时间")
+        @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+        private LocalDateTime updateTime;
+
+
     }
     }
 
 
 }
 }