备份route聚合自定义字段
This commit is contained in:
parent
13b248c9a3
commit
00c81d4023
|
@ -1,6 +1,7 @@
|
||||||
package com.chint.application.commands;
|
package com.chint.application.commands;
|
||||||
|
|
||||||
import com.chint.domain.value_object.ApprovalSimpleData;
|
import com.chint.domain.value_object.ApprovalSimpleData;
|
||||||
|
import com.chint.domain.value_object.ApproveRouteData;
|
||||||
import com.chint.infrastructure.echo_framework.command.Command;
|
import com.chint.infrastructure.echo_framework.command.Command;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
@ -10,7 +11,7 @@ import static com.chint.infrastructure.constant.LegConstant.LEG_EVENT_REJECT;
|
||||||
public class LegRejectCommand extends Command {
|
public class LegRejectCommand extends Command {
|
||||||
private final Integer legEventType = LEG_EVENT_REJECT;
|
private final Integer legEventType = LEG_EVENT_REJECT;
|
||||||
private Long routeId;
|
private Long routeId;
|
||||||
private ApprovalSimpleData data;
|
private ApproveRouteData data;
|
||||||
private String sysCode;
|
private String sysCode;
|
||||||
private String actualOrderNo;
|
private String actualOrderNo;
|
||||||
|
|
||||||
|
@ -19,7 +20,7 @@ public class LegRejectCommand extends Command {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public LegRejectCommand data(ApprovalSimpleData data) {
|
public LegRejectCommand data(ApproveRouteData data) {
|
||||||
this.data = data;
|
this.data = data;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
|
@ -10,9 +10,9 @@ import static com.chint.infrastructure.constant.LegConstant.LEG_EVENT_APPROVAL;
|
||||||
@Data
|
@Data
|
||||||
public class OrderApprovalRecoverCommand extends Command {
|
public class OrderApprovalRecoverCommand extends Command {
|
||||||
private Integer LegEventType = LEG_EVENT_APPROVAL;
|
private Integer LegEventType = LEG_EVENT_APPROVAL;
|
||||||
private ApprovalSimpleData data;
|
private ApproveRouteData data;
|
||||||
|
|
||||||
public OrderApprovalRecoverCommand data(ApprovalSimpleData data) {
|
public OrderApprovalRecoverCommand data(ApproveRouteData data) {
|
||||||
this.data = data;
|
this.data = data;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package com.chint.application.commands;
|
package com.chint.application.commands;
|
||||||
|
|
||||||
import com.chint.domain.value_object.ApprovalSimpleData;
|
import com.chint.domain.value_object.ApprovalSimpleData;
|
||||||
|
import com.chint.domain.value_object.ApproveRouteData;
|
||||||
import com.chint.infrastructure.echo_framework.command.Command;
|
import com.chint.infrastructure.echo_framework.command.Command;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
@ -10,7 +11,7 @@ import static com.chint.infrastructure.constant.RouteConstant.APPROVAL_EVENT_SUC
|
||||||
public class OrderApprovalSuccessCommand extends Command {
|
public class OrderApprovalSuccessCommand extends Command {
|
||||||
private String actualNo;
|
private String actualNo;
|
||||||
private String sysCode;
|
private String sysCode;
|
||||||
private ApprovalSimpleData data;
|
private ApproveRouteData data;
|
||||||
private Integer type = APPROVAL_EVENT_SUCCESS;
|
private Integer type = APPROVAL_EVENT_SUCCESS;
|
||||||
|
|
||||||
public OrderApprovalSuccessCommand actualNo(String actualNo) {
|
public OrderApprovalSuccessCommand actualNo(String actualNo) {
|
||||||
|
@ -23,7 +24,7 @@ public class OrderApprovalSuccessCommand extends Command {
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public OrderApprovalSuccessCommand data(ApprovalSimpleData data) {
|
public OrderApprovalSuccessCommand data(ApproveRouteData data) {
|
||||||
this.data = data;
|
this.data = data;
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
|
@ -51,15 +51,15 @@ public class OrderPublicController {
|
||||||
@Transactional
|
@Transactional
|
||||||
@ApiOperation("审批拒绝行程规划单")
|
@ApiOperation("审批拒绝行程规划单")
|
||||||
@PostMapping("/reject")
|
@PostMapping("/reject")
|
||||||
public Result<String> rejectOrder(@RequestBody ApprovalSimpleData approvalLegData) {
|
public Result<String> rejectOrder(@RequestBody ApproveRouteData approveRouteData) {
|
||||||
orderApplicationService.reject(approvalLegData);
|
orderApplicationService.reject(approveRouteData);
|
||||||
return Result.Success(SUCCESS);
|
return Result.Success(SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
@ApiOperation("回复未同步行程规划单")
|
@ApiOperation("回复未同步行程规划单")
|
||||||
@PostMapping("/recover")
|
@PostMapping("/recover")
|
||||||
public Result<String> recoverOrder(@RequestBody ApprovalSimpleData approvalLegData) {
|
public Result<String> recoverOrder(@RequestBody ApproveRouteData approvalLegData) {
|
||||||
orderApplicationService.recover(approvalLegData);
|
orderApplicationService.recover(approvalLegData);
|
||||||
return Result.Success(SUCCESS);
|
return Result.Success(SUCCESS);
|
||||||
}
|
}
|
||||||
|
@ -67,7 +67,7 @@ public class OrderPublicController {
|
||||||
@Transactional
|
@Transactional
|
||||||
@ApiOperation("审批通过行程规划单")
|
@ApiOperation("审批通过行程规划单")
|
||||||
@PostMapping("/success")
|
@PostMapping("/success")
|
||||||
public Result<String> approvalOrder(@RequestBody ApprovalSimpleData approvalLegData) {
|
public Result<String> approvalOrder(@RequestBody ApproveRouteData approvalLegData) {
|
||||||
orderApplicationService.approvalSuccess(approvalLegData);
|
orderApplicationService.approvalSuccess(approvalLegData);
|
||||||
return Result.Success(SUCCESS);
|
return Result.Success(SUCCESS);
|
||||||
}
|
}
|
||||||
|
|
|
@ -254,12 +254,12 @@ public class OrderApplicationService {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void reject(ApprovalSimpleData data) {
|
public void reject(ApproveRouteData data) {
|
||||||
Command.of(LegRejectCommand.class).data(data).sendToQueue();
|
Command.of(LegRejectCommand.class).data(data).sendToQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void approvalSuccess(ApprovalSimpleData data) {
|
public void approvalSuccess(ApproveRouteData data) {
|
||||||
Command.of(OrderApprovalSuccessCommand.class).data(data).sendToQueue();
|
Command.of(OrderApprovalSuccessCommand.class).data(data).sendToQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -278,7 +278,7 @@ public class OrderApplicationService {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Transactional
|
@Transactional
|
||||||
public void recover(ApprovalSimpleData data) {
|
public void recover(ApproveRouteData data) {
|
||||||
Command.of(OrderApprovalRecoverCommand.class).data(data).sendToQueue();
|
Command.of(OrderApprovalRecoverCommand.class).data(data).sendToQueue();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,23 @@
|
||||||
|
package com.chint.domain.aggregates.order;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.data.annotation.Id;
|
||||||
|
import org.springframework.data.relational.core.mapping.Column;
|
||||||
|
import org.springframework.data.relational.core.mapping.Table;
|
||||||
|
|
||||||
|
import java.io.Serial;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@Table("route_custom_extension_field")
|
||||||
|
public class RouteCustomExtensionField implements Serializable {
|
||||||
|
@Serial
|
||||||
|
private static final long serialVersionUID = 9027294639272719570L;
|
||||||
|
@Id
|
||||||
|
private Long id;
|
||||||
|
@Column("route_id")
|
||||||
|
private Long routeId;
|
||||||
|
private Long routeOrderKey;
|
||||||
|
private String fieldName;
|
||||||
|
private String fieldValue;
|
||||||
|
}
|
|
@ -6,11 +6,11 @@ import com.chint.domain.factoriy.leg.LegFactory;
|
||||||
import com.chint.domain.service.OrderDomainService;
|
import com.chint.domain.service.OrderDomainService;
|
||||||
import com.chint.domain.service.amount_estimate.EstimateAdapter;
|
import com.chint.domain.service.amount_estimate.EstimateAdapter;
|
||||||
import com.chint.domain.service.supplier.SupplierConstantUtil;
|
import com.chint.domain.service.supplier.SupplierConstantUtil;
|
||||||
|
import com.chint.domain.value_object.ApproveRouteData;
|
||||||
import com.chint.domain.value_object.LegData;
|
import com.chint.domain.value_object.LegData;
|
||||||
import com.chint.domain.value_object.OrderSaveData;
|
import com.chint.domain.value_object.OrderSaveData;
|
||||||
import com.chint.infrastructure.constant.LegConstant;
|
import com.chint.infrastructure.constant.LegConstant;
|
||||||
import com.chint.infrastructure.constant.RouteConstant;
|
import com.chint.infrastructure.constant.RouteConstant;
|
||||||
import com.chint.infrastructure.constant.SupplierNameConstant;
|
|
||||||
import com.chint.infrastructure.echo_framework.command.Command;
|
import com.chint.infrastructure.echo_framework.command.Command;
|
||||||
import com.chint.infrastructure.echo_framework.dispatch.Properties;
|
import com.chint.infrastructure.echo_framework.dispatch.Properties;
|
||||||
import com.chint.infrastructure.echo_framework.dispatch.ResultContainer;
|
import com.chint.infrastructure.echo_framework.dispatch.ResultContainer;
|
||||||
|
@ -27,6 +27,7 @@ import org.springframework.data.relational.core.mapping.Table;
|
||||||
import java.io.Serial;
|
import java.io.Serial;
|
||||||
import java.io.Serializable;
|
import java.io.Serializable;
|
||||||
import java.time.Duration;
|
import java.time.Duration;
|
||||||
|
import java.time.LocalDate;
|
||||||
import java.time.LocalDateTime;
|
import java.time.LocalDateTime;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
@ -36,6 +37,7 @@ import static com.chint.infrastructure.constant.LegConstant.LEG_TYPE_TRAIN;
|
||||||
import static com.chint.infrastructure.constant.RouteConstant.*;
|
import static com.chint.infrastructure.constant.RouteConstant.*;
|
||||||
import static com.chint.infrastructure.constant.UtilConstant.KEEP_TWO_DECIMAL_ZERO;
|
import static com.chint.infrastructure.constant.UtilConstant.KEEP_TWO_DECIMAL_ZERO;
|
||||||
import static com.chint.infrastructure.constant.UtilConstant.RESULT_ORDER_DETAIL;
|
import static com.chint.infrastructure.constant.UtilConstant.RESULT_ORDER_DETAIL;
|
||||||
|
import static com.chint.infrastructure.util.DateTimeUtil.formatterDate;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
@Table("route_order")
|
@Table("route_order")
|
||||||
|
@ -79,9 +81,14 @@ public class RouteOrder implements Serializable {
|
||||||
@Transient
|
@Transient
|
||||||
private String supplierCNName;
|
private String supplierCNName;
|
||||||
|
|
||||||
|
//共有的扩展字段
|
||||||
@MappedCollection(idColumn = "route_id")
|
@MappedCollection(idColumn = "route_id")
|
||||||
private RouterOrderExtensionField routerOrderExtensionField;
|
private RouterOrderExtensionField routerOrderExtensionField;
|
||||||
|
|
||||||
|
//自定义的扩展字段, 用于适配个个产业公司的自定义字段
|
||||||
|
@MappedCollection(idColumn = "route_id", keyColumn = "route_order_key")
|
||||||
|
private List<RouteCustomExtensionField> routeCustomExtensionFieldList;
|
||||||
|
|
||||||
@MappedCollection(idColumn = "route_id", keyColumn = "route_order_key")
|
@MappedCollection(idColumn = "route_id", keyColumn = "route_order_key")
|
||||||
private List<Leg> legItems;
|
private List<Leg> legItems;
|
||||||
|
|
||||||
|
@ -118,22 +125,58 @@ public class RouteOrder implements Serializable {
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
public LocalDateTime updateTime;
|
public LocalDateTime updateTime;
|
||||||
|
|
||||||
// public void addItemAtPosition(Leg newItem) {
|
|
||||||
// Integer position = newItem.getSequence();
|
public RouteOrder updateApprovalData(ApproveRouteData data) {
|
||||||
// if (position == null) {
|
//保存提交审批所提供的资料
|
||||||
// position = this.legItems.size() + 1;
|
ApproveOrderNo approveOrderNo = this.getApproveOrderNo();
|
||||||
// newItem.setSequence(position);
|
if (data.getActualOrderNo() != null) {
|
||||||
// }
|
approveOrderNo.setActualOrderNo(data.getActualOrderNo());
|
||||||
// if (position < 0 || position > this.legItems.size() + 1) {
|
}
|
||||||
// throw new IllegalArgumentException(PARAM_ERROR);
|
if (data.getInstructions() != null) {
|
||||||
// }
|
approveOrderNo.setInstructions(data.getInstructions());
|
||||||
// Integer streamPosition = position;
|
}
|
||||||
// this.legItems.stream()
|
if (data.getCreator() != null) {
|
||||||
// .filter(item -> item.getSequence() >= streamPosition)
|
approveOrderNo.setCreator(data.getCreator());
|
||||||
// .forEach(item -> item.setSequence(item.getSequence() + 1));
|
}
|
||||||
// newItem.setRouteId(this.getRouteId());
|
if (data.getAccountCompany() != null) {
|
||||||
// newItem.reloadStatus();
|
approveOrderNo.setAccountCompanyName(data.getAccountCompany());
|
||||||
// }
|
}
|
||||||
|
if (data.getAccountCompanyCode() != null) {
|
||||||
|
approveOrderNo.setAccountCompanyCode(data.getAccountCompanyCode());
|
||||||
|
}
|
||||||
|
if (data.getProjectName() != null) {
|
||||||
|
approveOrderNo.setProjectName(data.getProjectName());
|
||||||
|
}
|
||||||
|
if (data.getCostCenter() != null) {
|
||||||
|
approveOrderNo.setCostCenter(data.getCostCenter());
|
||||||
|
}
|
||||||
|
|
||||||
|
RouterOrderExtensionField orderExtensionField = this.getRouterOrderExtensionField();
|
||||||
|
if (orderExtensionField == null) {
|
||||||
|
orderExtensionField = new RouterOrderExtensionField();
|
||||||
|
}
|
||||||
|
if (data.getBelongDeptCode() != null) {
|
||||||
|
orderExtensionField.setBelongDeptCode(data.getBelongDeptCode());
|
||||||
|
}
|
||||||
|
|
||||||
|
parseAndSetTime(data.getStartTime(), true);
|
||||||
|
parseAndSetTime(data.getEndTime(), false);
|
||||||
|
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void parseAndSetTime(String timeString, boolean isStartTime) {
|
||||||
|
if (timeString != null) {
|
||||||
|
LocalDate date = timeString.contains("T") ?
|
||||||
|
LocalDate.parse(timeString.substring(0, 10), formatterDate) :
|
||||||
|
LocalDate.parse(timeString, formatterDate);
|
||||||
|
if (isStartTime) {
|
||||||
|
this.setStartTime(date.atStartOfDay());
|
||||||
|
} else {
|
||||||
|
this.setEndTime(date.atStartOfDay().plusHours(23).plusMinutes(59).plusSeconds(59));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public List<Leg> legOrdered() {
|
public List<Leg> legOrdered() {
|
||||||
return this.legItems.stream()
|
return this.legItems.stream()
|
||||||
|
|
|
@ -184,7 +184,7 @@ public class OrderDomainService {
|
||||||
|
|
||||||
@ListenTo(command = "OrderApprovalSuccessCommand", order = 0)
|
@ListenTo(command = "OrderApprovalSuccessCommand", order = 0)
|
||||||
public void approvalOrder(OrderApprovalSuccessCommand command) {
|
public void approvalOrder(OrderApprovalSuccessCommand command) {
|
||||||
ApprovalSimpleData data = command.getData();
|
ApproveRouteData data = command.getData();
|
||||||
Optional.ofNullable(routeRepository.findByActualOrderNoAndSysCode(data.getActualOrderNo(), data.getSysCode()))
|
Optional.ofNullable(routeRepository.findByActualOrderNoAndSysCode(data.getActualOrderNo(), data.getSysCode()))
|
||||||
.ifPresent(route -> {
|
.ifPresent(route -> {
|
||||||
ApprovalEvent approvalEvent = routeOrderFactory.createApprovalEvent(command.getType());
|
ApprovalEvent approvalEvent = routeOrderFactory.createApprovalEvent(command.getType());
|
||||||
|
@ -195,18 +195,11 @@ public class OrderDomainService {
|
||||||
|
|
||||||
@ListenTo(command = "OrderApprovalRecoverCommand", order = 0)
|
@ListenTo(command = "OrderApprovalRecoverCommand", order = 0)
|
||||||
public void routeRecover(OrderApprovalRecoverCommand command) {
|
public void routeRecover(OrderApprovalRecoverCommand command) {
|
||||||
ApprovalSimpleData data = command.getData();
|
ApproveRouteData data = command.getData();
|
||||||
Optional.ofNullable(routeRepository.findByActualOrderNoAndSysCode(data.getActualOrderNo(), data.getSysCode()))
|
Optional.ofNullable(routeRepository.findByActualOrderNoAndSysCode(data.getActualOrderNo(), data.getSysCode()))
|
||||||
.ifPresentOrElse(route -> {
|
.ifPresentOrElse(route -> {
|
||||||
//保存提交审批所提供的资料
|
//保存提交审批所提供的资料
|
||||||
ApproveOrderNo approveOrderNo = route.getApproveOrderNo();
|
route.updateApprovalData(data);
|
||||||
approveOrderNo.setActualOrderNo(data.getActualOrderNo());
|
|
||||||
approveOrderNo.setInstructions(data.getInstructions());
|
|
||||||
approveOrderNo.setCreator(data.getCreator());
|
|
||||||
approveOrderNo.setAccountCompanyName(data.getAccountCompany());
|
|
||||||
approveOrderNo.setAccountCompanyCode(data.getAccountCompanyCode());
|
|
||||||
approveOrderNo.setProjectName(data.getProjectName());
|
|
||||||
approveOrderNo.setCostCenter(data.getCostCenter());
|
|
||||||
|
|
||||||
LegEvent legEvent = legEventFactory.creatLegEvent(command.getLegEventType());
|
LegEvent legEvent = legEventFactory.creatLegEvent(command.getLegEventType());
|
||||||
route.getLegItems().forEach(leg -> leg.addEvent(legEvent));
|
route.getLegItems().forEach(leg -> leg.addEvent(legEvent));
|
||||||
|
@ -215,8 +208,8 @@ public class OrderDomainService {
|
||||||
this.saveOrder(route);
|
this.saveOrder(route);
|
||||||
}, () -> {
|
}, () -> {
|
||||||
//如果没有找到该订单,说明该订单可能是未提交的状态 , 这里执行和审批提交一样的操作
|
//如果没有找到该订单,说明该订单可能是未提交的状态 , 这里执行和审批提交一样的操作
|
||||||
ApprovalSimpleData approvalSimpleData = command.getData();
|
ApproveRouteData approveRouteData = command.getData();
|
||||||
Command.of(OrderApprovalStartCommand.class).data(BeanUtil.copyProperties(approvalSimpleData, ApproveRouteData.class)).sendToQueue();
|
Command.of(OrderApprovalStartCommand.class).data(BeanUtil.copyProperties(approveRouteData, ApproveRouteData.class)).sendToQueue();
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -118,14 +118,8 @@ public class LegEventHandler implements LegEventService {
|
||||||
throw new OrderException(CommonMessageConstant.LEG_ERROR);
|
throw new OrderException(CommonMessageConstant.LEG_ERROR);
|
||||||
}
|
}
|
||||||
//保存提交审批所提供的资料
|
//保存提交审批所提供的资料
|
||||||
ApproveOrderNo approveOrderNo = routeOrder.getApproveOrderNo();
|
routeOrder.updateApprovalData(data);
|
||||||
approveOrderNo.setActualOrderNo(data.getActualOrderNo());
|
|
||||||
approveOrderNo.setInstructions(data.getInstructions());
|
|
||||||
approveOrderNo.setCreator(data.getCreator());
|
|
||||||
approveOrderNo.setAccountCompanyName(data.getAccountCompany());
|
|
||||||
approveOrderNo.setAccountCompanyCode(data.getAccountCompanyCode());
|
|
||||||
approveOrderNo.setProjectName(data.getProjectName());
|
|
||||||
approveOrderNo.setCostCenter(data.getCostCenter());
|
|
||||||
//这里order所有的leg触发approve事件
|
//这里order所有的leg触发approve事件
|
||||||
routeOrder.getLegItems().forEach(leg -> leg.getEventList().add(
|
routeOrder.getLegItems().forEach(leg -> leg.getEventList().add(
|
||||||
legEventFactory.creatLegEvent(command.getLegEventType())
|
legEventFactory.creatLegEvent(command.getLegEventType())
|
||||||
|
@ -135,10 +129,6 @@ public class LegEventHandler implements LegEventService {
|
||||||
ApprovalEvent approvalEvent = routeOrderFactory.createApprovalEvent(RouteConstant.APPROVAL_EVENT_ING);
|
ApprovalEvent approvalEvent = routeOrderFactory.createApprovalEvent(RouteConstant.APPROVAL_EVENT_ING);
|
||||||
routeOrder.addApprovalEvent(approvalEvent);
|
routeOrder.addApprovalEvent(approvalEvent);
|
||||||
|
|
||||||
//根据项目需求,当传入的时间 , 使用该时间保存到订单当中
|
|
||||||
String startTime = data.getStartTime();
|
|
||||||
String endTime = data.getEndTime();
|
|
||||||
|
|
||||||
//当sysCode为H3BPM的时候 ,实用单号更新行程规划单的单号
|
//当sysCode为H3BPM的时候 ,实用单号更新行程规划单的单号
|
||||||
if (data.getSysCode().equals(H3_BPM)) {
|
if (data.getSysCode().equals(H3_BPM)) {
|
||||||
String generate = OrderNo.generate(H3_BPM, data.getActualOrderNo());
|
String generate = OrderNo.generate(H3_BPM, data.getActualOrderNo());
|
||||||
|
@ -149,16 +139,6 @@ public class LegEventHandler implements LegEventService {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (startTime != null && endTime != null) {
|
|
||||||
if (startTime.contains("T") && endTime.contains("T")) {
|
|
||||||
//如果包含T,就截取时间信息前10位
|
|
||||||
routeOrder.setStartTime(LocalDate.parse(startTime.substring(0, 10), formatter).atStartOfDay());
|
|
||||||
routeOrder.setEndTime(LocalDate.parse(endTime.substring(0, 10), formatter).atStartOfDay().plusHours(23).plusMinutes(59).plusSeconds(59));
|
|
||||||
} else {
|
|
||||||
routeOrder.setStartTime(LocalDate.parse(startTime, formatter).atStartOfDay());
|
|
||||||
routeOrder.setEndTime(LocalDate.parse(endTime, formatter).atStartOfDay().plusHours(23).plusMinutes(59).plusSeconds(59));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//保存routeOrder的状态
|
//保存routeOrder的状态
|
||||||
RouteOrder save = routeRepository.save(routeOrder);
|
RouteOrder save = routeRepository.save(routeOrder);
|
||||||
command.order(save);
|
command.order(save);
|
||||||
|
|
|
@ -182,7 +182,6 @@ public class CTripOrderSyncAdapter implements SupplierOrderSync {
|
||||||
private List<TrainEndorsementDetail> generateTrainList(List<Leg> legs, String employeeNo) {
|
private List<TrainEndorsementDetail> generateTrainList(List<Leg> legs, String employeeNo) {
|
||||||
List<TrainEndorsementDetail> trainList = new ArrayList<>();
|
List<TrainEndorsementDetail> trainList = new ArrayList<>();
|
||||||
legs.forEach(leg -> {
|
legs.forEach(leg -> {
|
||||||
|
|
||||||
trainList.add(
|
trainList.add(
|
||||||
TrainEndorsementDetail.of(List.of(
|
TrainEndorsementDetail.of(List.of(
|
||||||
getCityId(locationDomainService.queryCityLocation(leg.getOriginLocation())).getCityId().toString()
|
getCityId(locationDomainService.queryCityLocation(leg.getOriginLocation())).getCityId().toString()
|
||||||
|
|
|
@ -5,6 +5,8 @@ import lombok.Data;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ApprovalSimpleData {
|
public class ApprovalSimpleData {
|
||||||
|
@ApiModelProperty("费用归属部门")
|
||||||
|
private String belongDeptCode;
|
||||||
@ApiModelProperty("实际财务共享订单号")
|
@ApiModelProperty("实际财务共享订单号")
|
||||||
private String actualOrderNo;
|
private String actualOrderNo;
|
||||||
@ApiModelProperty("临时财务共享订单号")
|
@ApiModelProperty("临时财务共享订单号")
|
||||||
|
@ -28,3 +30,5 @@ public class ApprovalSimpleData {
|
||||||
@ApiModelProperty("结束时间")
|
@ApiModelProperty("结束时间")
|
||||||
private String endTime;
|
private String endTime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -3,8 +3,12 @@ package com.chint.domain.value_object;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
@Data
|
@Data
|
||||||
public class ApproveRouteData {
|
public class ApproveRouteData {
|
||||||
|
@ApiModelProperty("费用归属部门")
|
||||||
|
private String belongDeptCode;
|
||||||
@ApiModelProperty("实际财务共享订单号")
|
@ApiModelProperty("实际财务共享订单号")
|
||||||
private String actualOrderNo;
|
private String actualOrderNo;
|
||||||
@ApiModelProperty("临时财务共享订单号")
|
@ApiModelProperty("临时财务共享订单号")
|
||||||
|
@ -27,4 +31,13 @@ public class ApproveRouteData {
|
||||||
private String startTime;
|
private String startTime;
|
||||||
@ApiModelProperty("结束时间")
|
@ApiModelProperty("结束时间")
|
||||||
private String endTime;
|
private String endTime;
|
||||||
|
@ApiModelProperty("结束时间")
|
||||||
|
private List<ApproveCustomField> approveCustomFieldList;
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
private static class ApproveCustomField{
|
||||||
|
private String fieldName;
|
||||||
|
private String fieldValue;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -9,12 +9,11 @@ import java.time.format.DateTimeFormatter;
|
||||||
public class DateTimeUtil {
|
public class DateTimeUtil {
|
||||||
|
|
||||||
|
|
||||||
private final static DateTimeFormatter formatterMM = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
|
public final static DateTimeFormatter formatterMM = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.SSS");
|
||||||
private final static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
public final static DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||||
private final static DateTimeFormatter formatterDate = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
public final static DateTimeFormatter formatterDate = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||||
private final static DateTimeFormatter formatterDateYYYYMM = DateTimeFormatter.ofPattern("yyyyMM");
|
public final static DateTimeFormatter formatterDateYYYYMM = DateTimeFormatter.ofPattern("yyyyMM");
|
||||||
private final static DateTimeFormatter formatterDateYYYYMMDD = DateTimeFormatter.ofPattern("yyyyMMdd");
|
public final static DateTimeFormatter formatterDateYYYYMMDD = DateTimeFormatter.ofPattern("yyyyMMdd");
|
||||||
|
|
||||||
|
|
||||||
public static String timeFromInstant(Long instant) {
|
public static String timeFromInstant(Long instant) {
|
||||||
LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(instant), ZoneId.systemDefault());
|
LocalDateTime localDateTime = LocalDateTime.ofInstant(Instant.ofEpochMilli(instant), ZoneId.systemDefault());
|
||||||
|
|
Loading…
Reference in New Issue