fix:订单明细用车拉取修复空开始时间的问题

This commit is contained in:
lulz1 2024-04-18 16:21:09 +08:00
parent 49e891c1ec
commit 242b09569d
5 changed files with 78 additions and 6 deletions

View File

@ -196,11 +196,11 @@ public class OrderDetailQuery {
return null; return null;
} }
if(carOrderDetail.getStartTime().contains("1900")){ if( carOrderDetail.getStartTime() != null && carOrderDetail.getStartTime().contains("1900")){
carOrderDetail.setStartTime(carOrderDetail.getCreateTime()); carOrderDetail.setStartTime(carOrderDetail.getCreateTime());
} }
if(carOrderDetail.getArriveTime().contains("1900")){ if(carOrderDetail.getArriveTime() != null && carOrderDetail.getArriveTime().contains("1900")){
carOrderDetail.setArriveTime(carOrderDetail.getCreateTime()); carOrderDetail.setArriveTime(carOrderDetail.getCreateTime());
} }

View File

@ -73,11 +73,27 @@ public class User implements Serializable {
this.employeeNo = employeeNo; this.employeeNo = employeeNo;
} }
public UserDepartmentInfo.Builder addDeptInfo() { public UserDepartmentInfo.Builder addDeptInfo() {
return new UserDepartmentInfo.Builder(this); return new UserDepartmentInfo.Builder(this);
} }
public UserDepartmentInfo getDepartmentInfo() {
if (userDepartmentInfoList != null && !userDepartmentInfoList.isEmpty()) {
return userDepartmentInfoList.get(0);
} else {
return null;
}
}
public String generateDeptInfo() {
if (userDepartmentInfoList != null && !userDepartmentInfoList.isEmpty()) {
UserDepartmentInfo userDepartmentInfo = userDepartmentInfoList.get(0);
return userDepartmentInfo.getDeptInfo();
} else {
return null;
}
}
public String lowestDeptCode() { public String lowestDeptCode() {
Optional<UserDepartmentInfo> first = this.userDepartmentInfoList Optional<UserDepartmentInfo> first = this.userDepartmentInfoList
.stream() .stream()

View File

@ -41,6 +41,13 @@ public class UserDepartmentInfo implements Serializable {
private String departmentNameSeven; private String departmentNameSeven;
private Integer ifPrimary; private Integer ifPrimary;
public String getDeptInfo(){
return departmentNameOne + "-" + departmentNameTwo +
"-" + departmentNameThree + "-" + departmentNameFour +
"-" + departmentNameFive + "-" + departmentNameSix + "-" + departmentNameSeven;
}
@Override @Override
public boolean equals(Object o) { public boolean equals(Object o) {
if (this == o) return true; if (this == o) return true;

View File

@ -1,13 +1,46 @@
package com.chint.infrastructure.export; package com.chint.infrastructure.export;
import com.chint.domain.aggregates.order.FlightOrderDetail;
import com.chint.domain.aggregates.user.User;
import com.chint.domain.aggregates.user.UserDepartmentInfo;
import com.chint.domain.repository.UserRepository;
import com.chint.infrastructure.util.SystemUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List; import java.util.List;
@Component @Component
public class OrderDetailExportFactory { public class OrderDetailExportFactory {
// public List<OrderDetailExport> createExportData(){ @Autowired
// private UserRepository userRepository;
// }
public List<OrderDetailExport> createExportData(List<FlightOrderDetail> orderDetails) {
return orderDetails.stream().map(it -> {
OrderDetailExport orderDetailExport = new OrderDetailExport();
orderDetailExport.setOrderAmount(it.getOrderAmount());
orderDetailExport.setOrderDate(it.getCreateTime());
orderDetailExport.setOrderTime(it.getCreateTime());
orderDetailExport.setAccountCompanyName(it.getAccountCompanyName());
orderDetailExport.setOrderNo(it.getOrderNo());
orderDetailExport.setOrderStatus(it.getOrderStatus());
orderDetailExport.setEmployeeNo(it.getUserCode());
orderDetailExport.setEmployeeName(it.getUserName());
orderDetailExport.setProjectCode(it.getProjectOrderNo());
User byUserEmployeeNo = userRepository.findByUserEmployeeNo(it.getUserCode());
if (byUserEmployeeNo != null) {
orderDetailExport.setEmployeeDepartment(byUserEmployeeNo.generateDeptInfo());
UserDepartmentInfo departmentInfo = byUserEmployeeNo.getDepartmentInfo();
orderDetailExport.setCompanyId(departmentInfo.getCompanyCode());
orderDetailExport.setCompanyName(departmentInfo.getCompanyName());
}
orderDetailExport.setSystemCode(SystemUtil.translateSysCode(it.getBelongSysType()));
orderDetailExport.setProductType("国内机票");
return orderDetailExport;
}).toList();
}
} }

View File

@ -0,0 +1,16 @@
package com.chint.infrastructure.util;
import static com.chint.infrastructure.constant.BelongSystemConstant.*;
public class SystemUtil {
public static String translateSysCode(String belongFk) {
return switch (belongFk) {
case BELONG_SYS_TYPE_FSSC -> BELONG_SYS_CODE_FSSC;
case BELONG_SYS_TYPE_H3BPM -> BELONG_SYS_CODE_H3BPM;
case BELONG_SYS_TYPE_XNFSSC -> BELONG_SYS_CODE_XNFSSC;
case BELONG_SYS_TYPE_ANFSSC -> BELONG_SYS_CODE_XNFSSC;
default -> BELONG_SYS_TYPE_NOT;
};
}
}