diff --git a/src/main/java/com/bellmann/common/enums/DummyFlagEnum.java b/src/main/java/com/bellmann/common/enums/DummyFlagEnum.java new file mode 100644 index 0000000..2eb3904 --- /dev/null +++ b/src/main/java/com/bellmann/common/enums/DummyFlagEnum.java @@ -0,0 +1,22 @@ +package com.bellmann.common.enums; + +import com.bellmann.common.base.IBaseEnum; +import lombok.Getter; + +public enum DummyFlagEnum implements IBaseEnum { + + DUMMY("0","虚拟"), + NON_VIRTUAL("1","非虚拟"), + ; + + @Getter + private String value; + + @Getter + private String label; + + DummyFlagEnum(String value, String label){ + this.label = label; + this.value = value; + } +} diff --git a/src/main/java/com/bellmann/common/enums/OrderDoneFlagEnum.java b/src/main/java/com/bellmann/common/enums/OrderDoneFlagEnum.java new file mode 100644 index 0000000..6eafa3c --- /dev/null +++ b/src/main/java/com/bellmann/common/enums/OrderDoneFlagEnum.java @@ -0,0 +1,22 @@ +package com.bellmann.common.enums; + +import com.bellmann.common.base.IBaseEnum; +import lombok.Getter; + +public enum OrderDoneFlagEnum implements IBaseEnum { + + RECEIPTS_HAVE_BEEN_RETURNED("0","已回单"), + THE_ORDER_HAS_NOT_BEEN_RETURNED("1","未回单"), + ; + + @Getter + private String value; + + @Getter + private String label; + + OrderDoneFlagEnum(String value, String label){ + this.label = label; + this.value = value; + } +} diff --git a/src/main/java/com/bellmann/common/enums/ServiceFlagEnum.java b/src/main/java/com/bellmann/common/enums/ServiceFlagEnum.java new file mode 100644 index 0000000..60cb1bb --- /dev/null +++ b/src/main/java/com/bellmann/common/enums/ServiceFlagEnum.java @@ -0,0 +1,25 @@ +package com.bellmann.common.enums; + +import com.bellmann.common.base.IBaseEnum; +import lombok.Getter; + +public enum ServiceFlagEnum implements IBaseEnum { + + ACTIVATE_THE_SERVICE("A","开通业务"), + CANCEL_THE_BUSINESS("D","取消业务"), + CHANGE_OF_BUSINESS("M","变更业务"), + KEEP_THE_BUSINESS_GOING("K","保持业务"), + RESET_THE_BUSINESS("R","重置业务"), + ; + + @Getter + private String value; + + @Getter + private String label; + + ServiceFlagEnum(String value, String label){ + this.label = label; + this.value = value; + } +} diff --git a/src/main/java/com/bellmann/common/result/ResultCode.java b/src/main/java/com/bellmann/common/result/ResultCode.java index 5915272..9749520 100644 --- a/src/main/java/com/bellmann/common/result/ResultCode.java +++ b/src/main/java/com/bellmann/common/result/ResultCode.java @@ -102,7 +102,10 @@ public enum ResultCode implements IResultCode, Serializable { DEV_DOMAIN_MAP_NOT_FOUNT("F0011", "传入的设备软件版本和系统管理域映射不存在"), EXIST_USER_DEV("F0012","存在该用户的设备"), DEV_ALREADY_CUSTOM("F0013","设备已经绑定客户"), - ; + BAN_UPDATE_ORDER_STATUS_MANUAL_INTERVENTION("F0014", "禁止修改工单状态为手工干预"), + NOT_OPERATE_ORDER("F0015","无法操作此类工单" ), + NOT_GET_DEVICE("F0016","未获取到设备" ), + NBI_ERROR("F0017","调用NBI接口报错"); @Override public String getCode() { return code; diff --git a/src/main/java/com/bellmann/controller/OrderInfoController.java b/src/main/java/com/bellmann/controller/OrderInfoController.java index 30ad9b4..4e5a73d 100644 --- a/src/main/java/com/bellmann/controller/OrderInfoController.java +++ b/src/main/java/com/bellmann/controller/OrderInfoController.java @@ -3,16 +3,17 @@ package com.bellmann.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bellmann.common.result.PageResult; +import com.bellmann.common.result.Result; +import com.bellmann.model.form.ModifyOrderForm; import com.bellmann.model.query.SelectQuery; import com.bellmann.model.vo.OrderInfoTableVO; +import com.bellmann.model.vo.OrderInfoVO; import com.bellmann.service.OrderInfoService; +import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.RequiredArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; - -import org.springframework.web.bind.annotation.RestController; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; /** *

@@ -30,11 +31,40 @@ public class OrderInfoController { private final OrderInfoService orderInfoService; @PostMapping("page") + @Operation(summary = "工单管理表格分页") public PageResult page(@RequestBody SelectQuery query){ Page page = orderInfoService.tablePage(query); return PageResult.success(page); } + @GetMapping("info/{orderId}") + @Operation(summary = "工单管理获取工单详细信息") + public Result getOrderById(@PathVariable Long orderId){ + return orderInfoService.getOrderById(orderId); + } + @PutMapping("update-order-status/{orderId}/{orderStatus}") + @Operation(summary = "修改工单状态") + public Result updateOrderStatus(@PathVariable Long orderId, @PathVariable String orderStatus){ + return orderInfoService.updateOrderStatus(orderId,orderStatus); + } + @PutMapping("execute-order/{orderId}") + @PreAuthorize("@ss.hasPerm('family:operate:order:execute')") + @Operation(summary = "手动执行工单") + public Result executeOrder(@PathVariable Long orderId){ + return orderInfoService.executeOrder(orderId); + } + @GetMapping("modify-form/{orderId}") + @Operation(summary = "获取修改工单表单") + public Result modifyForm(@PathVariable Long orderId){ + return orderInfoService.modifyForm(orderId); + } + + @PostMapping("update-form") + @Operation(summary = "修改工单表单") + public Result updateForm(@RequestBody ModifyOrderForm form){ + return orderInfoService.updateForm(form); + } + } diff --git a/src/main/java/com/bellmann/controller/OrderServiceController.java b/src/main/java/com/bellmann/controller/OrderServiceController.java new file mode 100644 index 0000000..fc03657 --- /dev/null +++ b/src/main/java/com/bellmann/controller/OrderServiceController.java @@ -0,0 +1,35 @@ +package com.bellmann.controller; + + +import com.bellmann.common.base.BasePageQuery; +import com.bellmann.common.result.PageResult; +import com.bellmann.model.vo.OrderInfoBusinessVO; +import com.bellmann.service.OrderServiceService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + *

+ * 前端控制器 + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +@Tag(name = "21.工单业务管理") +@RestController +@RequiredArgsConstructor +@RequestMapping("/api/order-service/v1") +public class OrderServiceController { + + private final OrderServiceService orderServiceService; + + @PostMapping("/order-info-service/{orderId}") + @Operation(summary = "工单业务列表") + public PageResult orderInfoBusinessPage(@RequestBody BasePageQuery query, @PathVariable Long orderId){ + return orderServiceService.orderInfoBusinessPage(query,orderId); + } +} + diff --git a/src/main/java/com/bellmann/converter/OrderInfoConverter.java b/src/main/java/com/bellmann/converter/OrderInfoConverter.java new file mode 100644 index 0000000..cdb39c1 --- /dev/null +++ b/src/main/java/com/bellmann/converter/OrderInfoConverter.java @@ -0,0 +1,14 @@ +package com.bellmann.converter; + +import com.bellmann.model.entity.OrderInfo; +import com.bellmann.model.form.ModifyOrderForm; +import org.mapstruct.Mapper; + + +@Mapper(componentModel = "spring") +public interface OrderInfoConverter { + + + ModifyOrderForm entity2ModifyForm(OrderInfo orderInfo); + +} diff --git a/src/main/java/com/bellmann/converter/OrderServiceConverter.java b/src/main/java/com/bellmann/converter/OrderServiceConverter.java new file mode 100644 index 0000000..d25deb0 --- /dev/null +++ b/src/main/java/com/bellmann/converter/OrderServiceConverter.java @@ -0,0 +1,27 @@ +package com.bellmann.converter; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bellmann.model.entity.OrderService; +import com.bellmann.model.vo.OrderInfoBusinessVO; +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.Mappings; + +/** + * 用户对象转换器 + * + * + * @since 2022/6/8 + */ +@Mapper(componentModel = "spring") +public interface OrderServiceConverter { + + @Mappings({ + @Mapping(target = "serviceFlag", expression = "java(com.bellmann.common.base.IBaseEnum.getLabelByValue(entity.getServiceFlag(), com.bellmann.common.enums.ServiceFlagEnum.class))"), + }) + OrderInfoBusinessVO entity2PageVo(OrderService entity); + + Page entity2PageVo(Page entity); + + +} diff --git a/src/main/java/com/bellmann/mapper/DeviceStaticMapper.java b/src/main/java/com/bellmann/mapper/DeviceStaticMapper.java index 52d1cf6..b2973d5 100644 --- a/src/main/java/com/bellmann/mapper/DeviceStaticMapper.java +++ b/src/main/java/com/bellmann/mapper/DeviceStaticMapper.java @@ -2,6 +2,7 @@ package com.bellmann.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bellmann.model.bo.DeviceDetailBO; import com.bellmann.model.bo.EquipmentBO; import com.bellmann.model.entity.DeviceStatic; import com.bellmann.model.vo.EquipmentDetailVO; @@ -15,4 +16,8 @@ public interface DeviceStaticMapper extends BaseMapper { EquipmentDetailVO detailInfo(@Param("devId") Long devId); Long countJoinDevVerDomain(@Param("devId") Long devId, @Param("regionAreaId") Long regionAreaId); + + DeviceDetailBO orderByDevSnoOui(@Param("sno") String sno, @Param("oui") String oui,@Param("devRemark4") String devRemark4); + + DeviceDetailBO orderByPppoeAccount(@Param("status") String status, @Param("pppoeAccount") String pppoeAccount); } diff --git a/src/main/java/com/bellmann/mapper/DeviceTypeVerDetailMapper.java b/src/main/java/com/bellmann/mapper/DeviceTypeVerDetailMapper.java index 5a0a22a..0bf371d 100644 --- a/src/main/java/com/bellmann/mapper/DeviceTypeVerDetailMapper.java +++ b/src/main/java/com/bellmann/mapper/DeviceTypeVerDetailMapper.java @@ -2,11 +2,11 @@ package com.bellmann.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.bellmann.model.entity.DeviceTypeVerDetail; -import lombok.RequiredArgsConstructor; import org.apache.ibatis.annotations.Mapper; -import org.springframework.stereotype.Service; +import org.apache.ibatis.annotations.Param; @Mapper public interface DeviceTypeVerDetailMapper extends BaseMapper { + String findDevAccessType(@Param("adNo") String adNo); } diff --git a/src/main/java/com/bellmann/mapper/OrderInfoMapper.java b/src/main/java/com/bellmann/mapper/OrderInfoMapper.java index 72bcc66..028a5fc 100644 --- a/src/main/java/com/bellmann/mapper/OrderInfoMapper.java +++ b/src/main/java/com/bellmann/mapper/OrderInfoMapper.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bellmann.model.entity.OrderInfo; import com.bellmann.model.vo.OrderInfoTableVO; +import com.bellmann.model.vo.OrderInfoVO; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -21,4 +22,8 @@ import java.util.List; public interface OrderInfoMapper extends BaseMapper { List tablePage(Page page, @Param("column") String column, @Param("value") Object value, @Param("domain") Long domain); + + OrderInfoVO getOrderById(Long orderId); + + OrderInfo orderSnoOuiPppoeUnique(@Param("orderId") Long orderId); } diff --git a/src/main/java/com/bellmann/mapper/OrderServiceMapper.java b/src/main/java/com/bellmann/mapper/OrderServiceMapper.java new file mode 100644 index 0000000..2c735be --- /dev/null +++ b/src/main/java/com/bellmann/mapper/OrderServiceMapper.java @@ -0,0 +1,21 @@ +package com.bellmann.mapper; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bellmann.model.entity.OrderService; +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; + +/** + *

+ * Mapper 接口 + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +@Mapper +public interface OrderServiceMapper extends BaseMapper { + + Page orderInfoBusinessPage(Page page, @Param("orderId") Long orderId); +} diff --git a/src/main/java/com/bellmann/model/bo/DeviceDetailBO.java b/src/main/java/com/bellmann/model/bo/DeviceDetailBO.java new file mode 100644 index 0000000..818b416 --- /dev/null +++ b/src/main/java/com/bellmann/model/bo/DeviceDetailBO.java @@ -0,0 +1,78 @@ +package com.bellmann.model.bo; + +import lombok.Data; + +import java.time.LocalDateTime; +import java.util.Date; + +@Data +public class DeviceDetailBO { + + //dynamic + private Long devId; + + private String connectReqUrl; + + private String devIp; + + private String devOnline; + + private LocalDateTime devOnlineTime; + + //detail + private String userSnNo; + + private String iptvAccess; + + private String bandAccess; + + private String devRegStatus; + + private String devOwnerClass; + + private String remark1; + + private String remark2; + + private String remark3; + + private String remark4; + + + //device_static + private Long typeAndVerId; + + private Long custId; + + private Long regionAreaId; + + private Long corpAreaId; + + private String devSno; + + private String devMac; + + private String devPppoe; + + private String devAdNo; + + private String devStatus; + + private Date devCreateTime; + + private Date devModifyTime; + + private String devSoapFlag; + + private String devInformFlag; + + private String devRemark1; + + private String devRemark2; + + private String devRemark3; + + private String devRemark4; + + private String devRemark5; +} diff --git a/src/main/java/com/bellmann/model/entity/OrderService.java b/src/main/java/com/bellmann/model/entity/OrderService.java new file mode 100644 index 0000000..3c93a9c --- /dev/null +++ b/src/main/java/com/bellmann/model/entity/OrderService.java @@ -0,0 +1,42 @@ +package com.bellmann.model.entity; + +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.Data; +import lombok.EqualsAndHashCode; + +import java.io.Serializable; + +/** + *

+ * + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +@Data +@EqualsAndHashCode(callSuper = false) +@TableName("itms_order_service") +public class OrderService implements Serializable { + + private static final long serialVersionUID = 1L; + + @TableId(value = "order_id", type = IdType.AUTO) + private Long orderId; + + private String service; + + private Long serviceId; + + private String serviceFlag; + + private String argsName; + + private String argsValueNew; + + private String argsValueOld; + + +} diff --git a/src/main/java/com/bellmann/model/form/ModifyOrderForm.java b/src/main/java/com/bellmann/model/form/ModifyOrderForm.java new file mode 100644 index 0000000..0b0e158 --- /dev/null +++ b/src/main/java/com/bellmann/model/form/ModifyOrderForm.java @@ -0,0 +1,26 @@ +package com.bellmann.model.form; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@Schema(description = "修改工单表单") +public class ModifyOrderForm { + + private Long orderId; + + private String orderServiceType; + + private String orderCustomerKind; + + private String receivedOrderId; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") + private LocalDateTime orderDate; + + private String pppoeAccount; + + private String adNo; +} diff --git a/src/main/java/com/bellmann/model/vo/OrderInfoBusinessVO.java b/src/main/java/com/bellmann/model/vo/OrderInfoBusinessVO.java new file mode 100644 index 0000000..bcf6e47 --- /dev/null +++ b/src/main/java/com/bellmann/model/vo/OrderInfoBusinessVO.java @@ -0,0 +1,24 @@ +package com.bellmann.model.vo; + +import lombok.Data; +import lombok.EqualsAndHashCode; + +/** + *

+ * + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +@Data +@EqualsAndHashCode(callSuper = false) +public class OrderInfoBusinessVO { + + private Long orderId; + + private String service; + + private String serviceFlag; + +} diff --git a/src/main/java/com/bellmann/model/vo/OrderInfoVO.java b/src/main/java/com/bellmann/model/vo/OrderInfoVO.java new file mode 100644 index 0000000..0d79417 --- /dev/null +++ b/src/main/java/com/bellmann/model/vo/OrderInfoVO.java @@ -0,0 +1,68 @@ +package com.bellmann.model.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.time.LocalDateTime; + +@Data +@Schema(description = "设备信息详细信息视图") +public class OrderInfoVO { + + private Long orderId; + + private String receivedOrderId; + + private String receivedOrderLhs; + + private String orderRemark; + + private String orderServiceType; + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime orderDate; + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime receiveDate; + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime orderDealDate; + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime orderDeadline; + + private String adNo; + + private String orderStatus; + + private String pppoeAccount; + + private String bandAccess; + + private String iptvAccess; + + private String userSnNo; + + private String remark; + + private String devOnlineStatus; + + private String userSnKey; + + private String devAccessType; + + @JsonIgnore + private String devSnoOui; + + @JsonIgnore + private Long systemDomain; + + private String domain; + + private String orderCustomerKind; + + private String orderDoneFlag; + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime orderDoneDate; + + private String dummyFlag; + +} diff --git a/src/main/java/com/bellmann/service/OrderInfoService.java b/src/main/java/com/bellmann/service/OrderInfoService.java index 45ce859..40afa31 100644 --- a/src/main/java/com/bellmann/service/OrderInfoService.java +++ b/src/main/java/com/bellmann/service/OrderInfoService.java @@ -1,8 +1,11 @@ package com.bellmann.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bellmann.common.result.Result; +import com.bellmann.model.form.ModifyOrderForm; import com.bellmann.model.query.SelectQuery; import com.bellmann.model.vo.OrderInfoTableVO; +import com.bellmann.model.vo.OrderInfoVO; /** *

@@ -15,4 +18,14 @@ import com.bellmann.model.vo.OrderInfoTableVO; public interface OrderInfoService { Page tablePage(SelectQuery query); + + Result getOrderById(Long orderId); + + Result updateOrderStatus(Long orderId, String orderStatus); + + Result executeOrder(Long orderId); + + Result modifyForm(Long orderId); + + Result updateForm(ModifyOrderForm form); } diff --git a/src/main/java/com/bellmann/service/OrderServiceService.java b/src/main/java/com/bellmann/service/OrderServiceService.java new file mode 100644 index 0000000..9561a36 --- /dev/null +++ b/src/main/java/com/bellmann/service/OrderServiceService.java @@ -0,0 +1,18 @@ +package com.bellmann.service; + +import com.bellmann.common.base.BasePageQuery; +import com.bellmann.common.result.PageResult; +import com.bellmann.model.vo.OrderInfoBusinessVO; + +/** + *

+ * 服务类 + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +public interface OrderServiceService { + + PageResult orderInfoBusinessPage(BasePageQuery query, Long orderId); +} diff --git a/src/main/java/com/bellmann/service/impl/OrderInfoServiceImpl.java b/src/main/java/com/bellmann/service/impl/OrderInfoServiceImpl.java index 7c39698..051362a 100644 --- a/src/main/java/com/bellmann/service/impl/OrderInfoServiceImpl.java +++ b/src/main/java/com/bellmann/service/impl/OrderInfoServiceImpl.java @@ -1,16 +1,30 @@ package com.bellmann.service.impl; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.bellmann.common.base.IBaseEnum; import com.bellmann.common.constant.SecurityConstants; -import com.bellmann.common.enums.OrderOperateEnum; -import com.bellmann.common.enums.OrderServiceTypeEnum; -import com.bellmann.common.enums.OrderStatusEnum; +import com.bellmann.common.enums.*; +import com.bellmann.common.exception.BusinessException; +import com.bellmann.common.result.Result; +import com.bellmann.common.result.ResultCode; +import com.bellmann.converter.OrderInfoConverter; +import com.bellmann.mapper.DeviceStaticMapper; +import com.bellmann.mapper.DeviceTypeVerDetailMapper; import com.bellmann.mapper.OrderInfoMapper; +import com.bellmann.mapper.OrderServiceMapper; +import com.bellmann.model.bo.DeviceDetailBO; +import com.bellmann.model.entity.OrderInfo; +import com.bellmann.model.entity.OrderService; +import com.bellmann.model.form.ModifyOrderForm; import com.bellmann.model.query.SelectQuery; import com.bellmann.model.vo.OrderInfoTableVO; +import com.bellmann.model.vo.OrderInfoVO; import com.bellmann.security.util.SecurityUtils; import com.bellmann.service.OrderInfoService; +import com.zznode.itms.api.NBIManager; +import com.zznode.itms.idl.resourcedefinition.*; import lombok.RequiredArgsConstructor; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stereotype.Service; @@ -32,6 +46,14 @@ public class OrderInfoServiceImpl implements OrderInfoService { private final OrderInfoMapper orderInfoMapper; private final RedisTemplate redisTemplate; + + private final DeviceTypeVerDetailMapper deviceTypeVerDetailMapper; + + private final OrderServiceMapper orderServiceMapper; + + private final DeviceStaticMapper deviceStaticMapper; + + private final OrderInfoConverter orderInfoConverter; @Override public Page tablePage(SelectQuery query) { int pageNum = query.getPageNum(); @@ -70,10 +92,227 @@ public class OrderInfoServiceImpl implements OrderInfoService { } private String devOnlineStatus(String devSnoOui,String pppoe){ + String devOui=""; + String devSno=""; String status = "无设备上线记录"; if (devSnoOui==null || devSnoOui.isEmpty()){ return status; } return null; } + + @Override + public Result getOrderById(Long orderId) { + OrderInfoVO orderInfoVO = orderInfoMapper.getOrderById(orderId); + orderInfoVO.setOrderCustomerKind( + IBaseEnum.getLabelByValue( + orderInfoVO.getOrderCustomerKind(), CustomTypeEnum.class)); + orderInfoVO.setOrderServiceType( + IBaseEnum.getLabelByValue( + orderInfoVO.getOrderServiceType(), OrderServiceTypeEnum.class)); + orderInfoVO.setOrderRemark( + IBaseEnum.getLabelByValue( + orderInfoVO.getOrderRemark(), OrderOperateEnum.class)); + orderInfoVO.setDummyFlag( + IBaseEnum.getLabelByValue( + orderInfoVO.getDummyFlag(), DummyFlagEnum.class)); + orderInfoVO.setOrderDoneFlag( + IBaseEnum.getLabelByValue( + orderInfoVO.getOrderDoneFlag(),OrderDoneFlagEnum.class)); + orderInfoVO.setDomain( + (String) redisTemplate + .opsForHash() + .get(SecurityConstants.DOMAIN_PREFIX, + orderInfoVO.getSystemDomain().toString())); + orderInfoVO.setDevOnlineStatus(devOnlineStatus(orderInfoVO.getDevSnoOui(),orderInfoVO.getPppoeAccount())); + if (orderInfoVO.getAdNo()!=null) { + String devAccessType = deviceTypeVerDetailMapper.findDevAccessType(orderInfoVO.getAdNo()); + if (devAccessType!=null){ + orderInfoVO.setDevAccessType(IBaseEnum.getLabelByValue( + devAccessType, DevAccessTypeEnum.class)); + } + } + return Result.success(orderInfoVO); + } + + @Override + public Result updateOrderStatus(Long orderId, String orderStatus) { + if (OrderStatusEnum.MANUAL_INTERVENTION.getValue().equals(orderStatus)){ + throw new BusinessException(ResultCode.BAN_UPDATE_ORDER_STATUS_MANUAL_INTERVENTION); + } + OrderInfo orderInfo = orderInfoMapper.selectOne(new QueryWrapper() + .select("order_status") + .eq("order_id", orderId) + ); + if (OrderStatusEnum.MANUAL_INTERVENTION.getValue().equals(orderInfo.getOrderStatus())){ + throw new BusinessException(ResultCode.BAN_UPDATE_ORDER_STATUS_MANUAL_INTERVENTION); + } + orderInfoMapper.update(null,new LambdaUpdateWrapper() + .eq(OrderInfo::getOrderId,orderId) + .set(OrderInfo::getOrderStatus,orderStatus) + ); + if (OrderStatusEnum.NOT_PROCESSED.getValue().equals(orderStatus)){ + orderServiceMapper.update(null,new LambdaUpdateWrapper() + .eq(OrderService::getOrderId,orderId) + .set(OrderService::getServiceId,-999) + ); + } + return Result.success(); + } + + @Override + public Result executeOrder(Long orderId) { + OrderInfo orderInfo = orderInfoMapper.selectOne(new QueryWrapper() + .select("order_status","pppoe_account","dev_sno_oui","unique_user_id","order_service_type") + .eq("order_id", orderId) + ); + if(!OrderStatusEnum.NOT_PROCESSED.getValue().equals(orderInfo.getOrderStatus())){ + throw new BusinessException(ResultCode.NOT_OPERATE_ORDER); + } + orderInfoMapper.update(null,new LambdaUpdateWrapper() + .eq(OrderInfo::getOrderId,orderId) + .set(OrderInfo::getOrderStatus,OrderStatusEnum.NOT_PROCESSED.getValue()) + .set(OrderInfo::getOrderDoneFlag,OrderDoneFlagEnum.THE_ORDER_HAS_NOT_BEEN_RETURNED.getValue()) + ); + boolean ouiFlag = false; + boolean pppoeFlag = false; + boolean uniqueUserIdFlag = false; + DeviceDetailBO bo = null; + OrderInfo obj = orderInfoMapper.orderSnoOuiPppoeUnique(orderId); + String devSnoOui = obj.getDevSnoOui(); + if (devSnoOui!=null&& !devSnoOui.trim().isEmpty()) { + if (devSnoOui.startsWith("12$")) { + devSnoOui = orderInfo.getDevSnoOui(); + if (devSnoOui.isEmpty()) { + throw new BusinessException(ResultCode.NOT_GET_DEVICE); + } + } + String sno = ""; + String oui = ""; + if (devSnoOui.contains("-")) { + String[] split = devSnoOui.split("-"); + sno = split[0]; + oui = split[1]; + } + bo = deviceStaticMapper.orderByDevSnoOui(sno, oui,null); + if (bo == null) { + throw new BusinessException(ResultCode.NOT_GET_DEVICE); + }else { + ouiFlag = true; + } + } + String uniqueUserId = obj.getUniqueUserId(); + if ( + uniqueUserId!=null&& + !uniqueUserId.isEmpty()&& + !ouiFlag&& + !OrderServiceTypeEnum.EQUIPMENT_REPLACEMENT.getValue().equals(orderInfo.getOrderServiceType()) + ){ + bo = deviceStaticMapper.orderByDevSnoOui(null,null,uniqueUserId); + if (bo!=null){ + uniqueUserIdFlag = true; + } + } + String pppoeAccount = obj.getPppoeAccount(); + if (pppoeAccount!=null&&!pppoeAccount.isEmpty()&&!ouiFlag&&uniqueUserIdFlag){ + bo = deviceStaticMapper.orderByPppoeAccount(DevStatusEnum.NORMAL.getValue(),pppoeAccount); + if (bo==null){ + throw new BusinessException(ResultCode.NOT_GET_DEVICE); + } + pppoeFlag = true; + } + if (!pppoeFlag&&!ouiFlag&&!uniqueUserIdFlag){ + throw new BusinessException(ResultCode.NOT_GET_DEVICE); + } + RDeviceDetailStruct struct = conversionStruct(bo); + int res = NBIManager.informConfigure(struct, orderId, true); + if (res!=0){ + throw new BusinessException(ResultCode.NBI_ERROR); + } + return Result.success(); + } + + private RDeviceDetailStruct conversionStruct(DeviceDetailBO bo){ + RDeviceDetailStruct struct = new RDeviceDetailStruct(); + RDeviceDynamicStruct devDynamic = struct.devDynamic; + RDeviceStaticStruct devStatic = struct.devStatic; + RDeviceStaticDetailStruct devStaticDetail = struct.devStaticDetail; + + devStatic.devId = bo.getDevId(); + devStatic.typeAndVerId = bo.getTypeAndVerId(); + devStatic.custId = bo.getCustId(); + devStatic.regionAreaId = bo.getRegionAreaId(); + devStatic.corpAreaId = bo.getCorpAreaId(); + devStatic.devSNo = bo.getDevSno(); + devStatic.devMac = bo.getDevMac(); + devStatic.devPPPoE = bo.getDevPppoe(); + devStatic.devADNo = bo.getDevAdNo(); + devStatic.devStatus = RDevStatus.from_int(Integer.parseInt(bo.getDevStatus())); + devStatic.devCreateTime = bo.getDevCreateTime().getTime(); + devStatic.devModifyTime = bo.getDevModifyTime().getTime(); + devStatic.devSoapFlag = Boolean.parseBoolean(bo.getDevSoapFlag()); + devStatic.devInformFlag = Boolean.parseBoolean(bo.getDevInformFlag()); + devStatic.devRemark1 = bo.getDevRemark1(); + devStatic.devRemark2 = bo.getDevRemark2(); + devStatic.devRemark3 = bo.getDevRemark3(); + devStatic.devRemark4 = bo.getDevRemark4(); + devStatic.devRemark5 = bo.getDevRemark5(); + + devDynamic.devId = bo.getDevId(); + devDynamic.connetReqURL = ""; + devDynamic.devIp = ""; + devDynamic.devOnline = false; + devDynamic.devOnlineTime = -999; + + + String devRegStatus = bo.getDevRegStatus(); + if(devRegStatus == null || devRegStatus.isEmpty()){ + devRegStatus = "0"; + } + String devOwnerClass = bo.getDevOwnerClass(); + if(devOwnerClass == null || devOwnerClass.isEmpty()){ + devOwnerClass = "0"; + } + devStaticDetail.devRegStatus =RDevRegStatus.from_int(Integer.parseInt(devRegStatus)); + devStaticDetail.devOwnerClass =RDevOwnerClass.from_int(Integer.parseInt(devOwnerClass)); + devStaticDetail.remark1 = bo.getRemark1(); + devStaticDetail.remark2 = bo.getRemark2(); + devStaticDetail.remark3 = bo.getRemark3(); + devStaticDetail.remark4 = bo.getRemark4(); + devStaticDetail.userSnNo = bo.getUserSnNo(); + devStaticDetail.iptvAccess = bo.getIptvAccess(); + devStaticDetail.bandAccess = bo.getBandAccess(); + return struct; + } + + @Override + public Result modifyForm(Long orderId) { + OrderInfo orderInfo = orderInfoMapper.selectOne(new QueryWrapper() + .select("order_id", + "order_service_type", + "order_customer_kind", + "received_order_id", + "order_date", + "pppoe_account", + "ad_no" + ) + .eq("order_id", orderId) + ); + ModifyOrderForm form = orderInfoConverter.entity2ModifyForm(orderInfo); + return Result.success(form); + } + + @Override + public Result updateForm(ModifyOrderForm form) { + orderInfoMapper.update(null, new LambdaUpdateWrapper() + .eq(OrderInfo::getOrderId, form.getOrderId()) + .set(OrderInfo::getOrderServiceType, form.getOrderServiceType()) + .set(OrderInfo::getOrderDate, form.getOrderDate()) + .set(OrderInfo::getAdNo, form.getAdNo()) + .set(OrderInfo::getPppoeAccount, form.getPppoeAccount()) + .set(OrderInfo::getOrderCustomerKind, form.getOrderCustomerKind()) + .set(OrderInfo::getReceivedOrderId, form.getReceivedOrderId()) + ); + return Result.success(); + } } diff --git a/src/main/java/com/bellmann/service/impl/OrderServiceServiceImpl.java b/src/main/java/com/bellmann/service/impl/OrderServiceServiceImpl.java new file mode 100644 index 0000000..72b2571 --- /dev/null +++ b/src/main/java/com/bellmann/service/impl/OrderServiceServiceImpl.java @@ -0,0 +1,37 @@ +package com.bellmann.service.impl; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.bellmann.common.base.BasePageQuery; +import com.bellmann.common.result.PageResult; +import com.bellmann.converter.OrderServiceConverter; +import com.bellmann.mapper.OrderServiceMapper; +import com.bellmann.model.entity.OrderService; +import com.bellmann.model.vo.OrderInfoBusinessVO; +import com.bellmann.service.OrderServiceService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +/** + *

+ * 服务实现类 + *

+ * + * @author 李小林 + * @since 2024-06-17 + */ +@Service +@RequiredArgsConstructor +public class OrderServiceServiceImpl implements OrderServiceService { + + private final OrderServiceMapper orderServiceMapper; + + private final OrderServiceConverter orderServiceConverter; + @Override + public PageResult orderInfoBusinessPage(BasePageQuery query, Long orderId) { + int pageNum = query.getPageNum(); + int pageSize = query.getPageSize(); + Page page = new Page<>(pageNum,pageSize); + Page dataPage = orderServiceMapper.orderInfoBusinessPage(page,orderId); + return PageResult.success(orderServiceConverter.entity2PageVo(dataPage)); + } +} diff --git a/src/main/resources/lib/CloudApi.jar b/src/main/resources/lib/CloudApi.jar new file mode 100644 index 0000000..2e85c5c Binary files /dev/null and b/src/main/resources/lib/CloudApi.jar differ diff --git a/src/main/resources/lib/E2Eapi2.jar b/src/main/resources/lib/E2Eapi2.jar new file mode 100644 index 0000000..d07f8d4 Binary files /dev/null and b/src/main/resources/lib/E2Eapi2.jar differ diff --git a/src/main/resources/lib/OB.jar b/src/main/resources/lib/OB.jar new file mode 100644 index 0000000..1ed9897 Binary files /dev/null and b/src/main/resources/lib/OB.jar differ diff --git a/src/main/resources/lib/OBEvent.jar b/src/main/resources/lib/OBEvent.jar new file mode 100644 index 0000000..2b863c1 Binary files /dev/null and b/src/main/resources/lib/OBEvent.jar differ diff --git a/src/main/resources/lib/OBNaming.jar b/src/main/resources/lib/OBNaming.jar new file mode 100644 index 0000000..dad4ce6 Binary files /dev/null and b/src/main/resources/lib/OBNaming.jar differ diff --git a/src/main/resources/lib/OBNotify.jar b/src/main/resources/lib/OBNotify.jar new file mode 100644 index 0000000..af90778 Binary files /dev/null and b/src/main/resources/lib/OBNotify.jar differ diff --git a/src/main/resources/lib/OBTime.jar b/src/main/resources/lib/OBTime.jar new file mode 100644 index 0000000..7ba0eab Binary files /dev/null and b/src/main/resources/lib/OBTime.jar differ diff --git a/src/main/resources/lib/acsapi.jar b/src/main/resources/lib/acsapi.jar new file mode 100644 index 0000000..40f8dcc Binary files /dev/null and b/src/main/resources/lib/acsapi.jar differ diff --git a/src/main/resources/lib/capapi.jar b/src/main/resources/lib/capapi.jar new file mode 100644 index 0000000..cf767b8 Binary files /dev/null and b/src/main/resources/lib/capapi.jar differ diff --git a/src/main/resources/lib/commons-beanutils.jar b/src/main/resources/lib/commons-beanutils.jar new file mode 100644 index 0000000..b1b89c9 Binary files /dev/null and b/src/main/resources/lib/commons-beanutils.jar differ diff --git a/src/main/resources/lib/commons-collections-3.2.1.jar b/src/main/resources/lib/commons-collections-3.2.1.jar new file mode 100644 index 0000000..c35fa1f Binary files /dev/null and b/src/main/resources/lib/commons-collections-3.2.1.jar differ diff --git a/src/main/resources/lib/commons-collections.jar b/src/main/resources/lib/commons-collections.jar new file mode 100644 index 0000000..41e230f Binary files /dev/null and b/src/main/resources/lib/commons-collections.jar differ diff --git a/src/main/resources/lib/commons-lang-2.0.jar b/src/main/resources/lib/commons-lang-2.0.jar new file mode 100644 index 0000000..c8a2870 Binary files /dev/null and b/src/main/resources/lib/commons-lang-2.0.jar differ diff --git a/src/main/resources/lib/commons-logging-1.0.4.jar b/src/main/resources/lib/commons-logging-1.0.4.jar new file mode 100644 index 0000000..b73a80f Binary files /dev/null and b/src/main/resources/lib/commons-logging-1.0.4.jar differ diff --git a/src/main/resources/lib/ezmorph-1.0.3.jar b/src/main/resources/lib/ezmorph-1.0.3.jar new file mode 100644 index 0000000..179b8d6 Binary files /dev/null and b/src/main/resources/lib/ezmorph-1.0.3.jar differ diff --git a/src/main/resources/lib/install.bat b/src/main/resources/lib/install.bat new file mode 100644 index 0000000..8cd8a44 --- /dev/null +++ b/src/main/resources/lib/install.bat @@ -0,0 +1,15 @@ +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\OB.jar -DgroupId=com.corba -DartifactId=OB -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\OBEvent.jar -DgroupId=com.corba -DartifactId=OBEvent -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\OBNaming.jar -DgroupId=com.corba -DartifactId=OBNaming -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\OBNotify.jar -DgroupId=com.corba -DartifactId=OBNotify -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\OBTime.jar -DgroupId=com.corba -DartifactId=OBTime -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\capapi.jar -DgroupId=com.bellmann -DartifactId=capapi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\server.jar -DgroupId=com.bellmann -DartifactId=server -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\acsapi.jar -DgroupId=com.bellmann -DartifactId=acsapi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\orderapi.jar -DgroupId=com.bellmann -DartifactId=orderapi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\CloudApi.jar -DgroupId=com.bellmann -DartifactId=CloudApi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\resourceapi.jar -DgroupId=com.bellmann -DartifactId=resourceapi -Dversion=1.0 -Dpackaging=jar +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\postgresql-9.3-1103-jdbc3.jar -DgroupId=org.postgresql -DartifactId=postgresql -Dversion=9.3-1103-jdbc3 -Dpackaging=jar +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\postgresql-42.2.5.jar -DgroupId=org.postgresql -DartifactId=postgresql -Dversion=42.2.5 -Dpackaging=jar +call mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\postgresql-42.2.27.jar -DgroupId=org.postgresql -DartifactId=org.postgresql -Dversion=42.2.27 -Dpackaging=jar +mvn install:install-file -Dfile=D:\zj\itms_zj\itms_pg\lib\orderapi.jar -DgroupId=com.bellmann -DartifactId=orderapi -Dversion=1.0 -Dpackaging=jar \ No newline at end of file diff --git a/src/main/resources/lib/install.local.bat b/src/main/resources/lib/install.local.bat new file mode 100644 index 0000000..0fe2734 --- /dev/null +++ b/src/main/resources/lib/install.local.bat @@ -0,0 +1,11 @@ +call mvn install:install-file -Dfile=OB.jar -DgroupId=com.corba -DartifactId=OB -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=OBEvent.jar -DgroupId=com.corba -DartifactId=OBEvent -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=OBNaming.jar -DgroupId=com.corba -DartifactId=OBNaming -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=OBNotify.jar -DgroupId=com.corba -DartifactId=OBNotify -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=OBTime.jar -DgroupId=com.corba -DartifactId=OBTime -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=capapi.jar -DgroupId=com.bellmann -DartifactId=capapi -Dversion=2.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=server.jar -DgroupId=com.bellmann -DartifactId=server -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=acsapi.jar -DgroupId=com.bellmann -DartifactId=acsapi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=orderapi.jar -DgroupId=com.bellmann -DartifactId=orderapi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=CloudApi.jar -DgroupId=com.bellmann -DartifactId=CloudApi -Dversion=1.0 -Dpackaging=jar & +call mvn install:install-file -Dfile=resourceapi.jar -DgroupId=com.bellmann -DartifactId=resourceapi -Dversion=1.0 -Dpackaging=jar diff --git a/src/main/resources/lib/jsch-0.1.54.jar b/src/main/resources/lib/jsch-0.1.54.jar new file mode 100644 index 0000000..1372c8e Binary files /dev/null and b/src/main/resources/lib/jsch-0.1.54.jar differ diff --git a/src/main/resources/lib/json-lib-2.2.2-jdk15.jar b/src/main/resources/lib/json-lib-2.2.2-jdk15.jar new file mode 100644 index 0000000..27e7c7c Binary files /dev/null and b/src/main/resources/lib/json-lib-2.2.2-jdk15.jar differ diff --git a/src/main/resources/lib/ojdbc14.jar b/src/main/resources/lib/ojdbc14.jar new file mode 100644 index 0000000..be9b8a4 Binary files /dev/null and b/src/main/resources/lib/ojdbc14.jar differ diff --git a/src/main/resources/lib/ojdbc6-11.2.0.4.jar b/src/main/resources/lib/ojdbc6-11.2.0.4.jar new file mode 100644 index 0000000..767eba7 Binary files /dev/null and b/src/main/resources/lib/ojdbc6-11.2.0.4.jar differ diff --git a/src/main/resources/lib/orderapi.jar b/src/main/resources/lib/orderapi.jar new file mode 100644 index 0000000..5a9cbc1 Binary files /dev/null and b/src/main/resources/lib/orderapi.jar differ diff --git a/src/main/resources/lib/pon112.jar b/src/main/resources/lib/pon112.jar new file mode 100644 index 0000000..8afafc9 Binary files /dev/null and b/src/main/resources/lib/pon112.jar differ diff --git a/src/main/resources/lib/postgresql-42.2.27.jar b/src/main/resources/lib/postgresql-42.2.27.jar new file mode 100644 index 0000000..077dcdc Binary files /dev/null and b/src/main/resources/lib/postgresql-42.2.27.jar differ diff --git a/src/main/resources/lib/postgresql-42.2.5.jar b/src/main/resources/lib/postgresql-42.2.5.jar new file mode 100644 index 0000000..d89d433 Binary files /dev/null and b/src/main/resources/lib/postgresql-42.2.5.jar differ diff --git a/src/main/resources/lib/postgresql-9.3-1103-jdbc3.jar b/src/main/resources/lib/postgresql-9.3-1103-jdbc3.jar new file mode 100644 index 0000000..0f3b45e Binary files /dev/null and b/src/main/resources/lib/postgresql-9.3-1103-jdbc3.jar differ diff --git a/src/main/resources/lib/resourceapi.jar b/src/main/resources/lib/resourceapi.jar new file mode 100644 index 0000000..62a395a Binary files /dev/null and b/src/main/resources/lib/resourceapi.jar differ diff --git a/src/main/resources/lib/server.jar b/src/main/resources/lib/server.jar new file mode 100644 index 0000000..c5ef9e2 Binary files /dev/null and b/src/main/resources/lib/server.jar differ diff --git a/src/main/resources/mapper/DeviceStaticMapper.xml b/src/main/resources/mapper/DeviceStaticMapper.xml index 638b5d4..a24741b 100644 --- a/src/main/resources/mapper/DeviceStaticMapper.xml +++ b/src/main/resources/mapper/DeviceStaticMapper.xml @@ -91,4 +91,106 @@ AND ITMS_DEVICE_STATIC.DEV_ID = #{devId} AND ITMS_DEVTYPEVER_SYSDOMAIN_MAP.SYS_DOMAIN_ID = #{regionAreaId} + + + diff --git a/src/main/resources/mapper/DeviceTypeVerDetailMapper.xml b/src/main/resources/mapper/DeviceTypeVerDetailMapper.xml new file mode 100644 index 0000000..4a15916 --- /dev/null +++ b/src/main/resources/mapper/DeviceTypeVerDetailMapper.xml @@ -0,0 +1,20 @@ + + + + + + diff --git a/src/main/resources/mapper/OrderInfoMapper.xml b/src/main/resources/mapper/OrderInfoMapper.xml index b7604f3..d1f801e 100644 --- a/src/main/resources/mapper/OrderInfoMapper.xml +++ b/src/main/resources/mapper/OrderInfoMapper.xml @@ -84,4 +84,45 @@ and aa.pppoe_account = #{value} + + + + diff --git a/src/main/resources/mapper/OrderServiceMapper.xml b/src/main/resources/mapper/OrderServiceMapper.xml new file mode 100644 index 0000000..28d68d0 --- /dev/null +++ b/src/main/resources/mapper/OrderServiceMapper.xml @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + order_id, service, service_id, service_flag, args_name, args_value_new, args_value_old + + + +