提交 c3348393 authored 作者: 杨启发's avatar 杨启发

订单通知配置

上级 1b7219e7
......@@ -71,4 +71,22 @@ public enum VehicleWarnConfigEnum {
}
}
@Getter
@AllArgsConstructor
public enum OrderWarnType {
PENDING_QUOTATION(1, "订单待报价"),
ACCEPTED(2, "订单已承接"),
COMPLETED(3, "订单完成"),
FINISHED(4, "订单完结"),
CANCELED(5, "订单取消");
private final Integer code;
private final String msg;
public static Optional<OrderWarnType> getByCode(int code) {
return Arrays.stream(values()).filter(e -> e.code == code).findFirst();
}
public static String getMsgByCode(int code) {
return getByCode(code).map(OrderWarnType::getMsg).orElse(null);
}
}
}
......@@ -17,6 +17,8 @@ public class VehicleWarnUserConfigUpdateParam {
@ApiModelProperty(value = "id", example = "1")
@NotNull(message = "id不能为空")
private Integer id;
@ApiModelProperty(value = "订单预警类型列表")
private List<VehicleWarnUserVO.WarnTypeItem> orderWarnTypeList;
@ApiModelProperty(value = "运单预警类型列表")
private List<VehicleWarnUserVO.WarnTypeItem> warnTypeList;
@ApiModelProperty(value = "线路预警类型列表")
......
......@@ -45,6 +45,23 @@ public class VehicleWarnUserVO {
@ApiModelProperty(value = "修改时间", example = "")
private String modifiedTime;
@ApiModelProperty(value = "订单通知配置列表")
private List<WarnTypeItem> orderWarnTypeItemList;
public List<WarnTypeItem> getOrderWarnTypeItemList() {
List<Integer> warnTypeList = JSON.parseArray(orderWarnTypeJson, Integer.class);
List<WarnTypeItem> list = new ArrayList<>();
for (VehicleWarnConfigEnum.OrderWarnType item : VehicleWarnConfigEnum.OrderWarnType.values()) {
if (warnTypeList.contains(item.getCode())){
list.add(new WarnTypeItem(item.getCode(), item.getMsg(), 1));
}
else {
list.add(new WarnTypeItem(item.getCode(), item.getMsg(), 0));
}
}
return list;
}
@ApiModelProperty(value = "运单通知配置列表")
private List<WarnTypeItem> warnTypeItemList;
public List<WarnTypeItem> getWarnTypeItemList() {
......@@ -79,6 +96,9 @@ public class VehicleWarnUserVO {
return list;
}
@JsonIgnore
@ApiModelProperty(value = "订单通知配置", example = "", hidden = true)
private String orderWarnTypeJson;
@JsonIgnore
@ApiModelProperty(value = "预警配置", example = "", hidden = true)
private String warnTypeJson;
......
......@@ -49,6 +49,7 @@ public class VehicleWarnUserController {
@ApiOperation(value = "更新通知配置", notes = "<br>By:艾庆国")
@PostMapping("/updateConfig")
public Result<Void> updateConfig(@RequestBody @Validated VehicleWarnUserConfigUpdateParam param) {
if (param.getOrderWarnTypeList() == null) {param.setOrderWarnTypeList(new ArrayList<>());}
if (param.getWarnTypeList() == null) {param.setWarnTypeList(new ArrayList<>());}
if (param.getLineWarnTypeList() == null) {param.setLineWarnTypeList(new ArrayList<>());}
vehicleWarnUserService.updateConfig(param);
......
......@@ -37,6 +37,7 @@ public class VehicleWarnUserDaoImpl extends BaseDaoImpl<VehicleWarnUserMapper, V
public boolean updateWarnType(VehicleWarnUser item) {
return update(lUdWrapper()
.eq(VehicleWarnUser::getId, item.getId())
.set(VehicleWarnUser::getOrderWarnTypeJson, item.getOrderWarnTypeJson())
.set(VehicleWarnUser::getWarnTypeJson, item.getWarnTypeJson())
.set(VehicleWarnUser::getLineWarnTypeJson, item.getLineWarnTypeJson())
);
......
......@@ -28,6 +28,7 @@ public class VehicleWarnUser implements HasKey<Integer> {
private Integer id; //id
private String name; //姓名
private String mobile; //手机
private String orderWarnTypeJson; //订单通知配置
private String warnTypeJson; //预警配置
private String lineWarnTypeJson; //线路预警配置
private Integer deleteStatus; //删除状态: 0-否;1-是
......
......@@ -83,14 +83,19 @@ public class VehicleWarnUserServiceImpl implements VehicleWarnUserService {
VehicleWarnUser vehicleWarnUser = vehicleWarnUserDao
.findById(param.getId()).orElseThrow(ResultEnum.DATA_NOT_FIND);
List<Integer> orderWarnTypeList = param.getOrderWarnTypeList().stream()
.filter(item -> Objects.equals(item.getEnable(), 1))
.map(VehicleWarnUserVO.WarnTypeItem::getWarnType).collect(Collectors.toList());
List<Integer> warnTypeList = param.getWarnTypeList().stream()
.filter(item -> Objects.equals(item.getEnable(), 1))
.map(item->item.getWarnType()).collect(Collectors.toList());
.map(VehicleWarnUserVO.WarnTypeItem::getWarnType).collect(Collectors.toList());
List<Integer> lineWarnTypeList = param.getLineWarnTypeList().stream()
.filter(item -> Objects.equals(item.getEnable(), 1))
.map(item->item.getWarnType()).collect(Collectors.toList());
.map(VehicleWarnUserVO.WarnTypeItem::getWarnType).collect(Collectors.toList());
vehicleWarnUser.setOrderWarnTypeJson(JSON.toJSONString(orderWarnTypeList));
vehicleWarnUser.setWarnTypeJson(JSON.toJSONString(warnTypeList));
vehicleWarnUser.setLineWarnTypeJson(JSON.toJSONString(lineWarnTypeList));
vehicleWarnUserDao.updateWarnType(vehicleWarnUser);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论