日期修改
This commit is contained in:
parent
abf5911ff4
commit
eb2bca2023
|
@ -11,8 +11,6 @@ import org.springframework.format.annotation.DateTimeFormat;
|
|||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
|
@ -75,7 +73,7 @@ public class GardsDetectors implements Serializable {
|
|||
@TableField(value = "DATE_BEGIN")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime dateBegin;
|
||||
private Date dateBegin;
|
||||
|
||||
/**
|
||||
* 结束运行日期
|
||||
|
@ -83,7 +81,7 @@ public class GardsDetectors implements Serializable {
|
|||
@TableField(value = "DATE_END")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime dateEnd;
|
||||
private Date dateEnd;
|
||||
|
||||
/**
|
||||
* Y:在运行,状态良好;N:停止
|
||||
|
@ -103,7 +101,7 @@ public class GardsDetectors implements Serializable {
|
|||
@TableField(value = "MODDATE")
|
||||
@NotNull(message = "不能为空", groups = {InsertGroup.class, UpdateGroup.class})
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime moddate;
|
||||
private Date moddate;
|
||||
|
||||
/**
|
||||
* 台站id
|
||||
|
|
|
@ -11,7 +11,7 @@ import org.springframework.format.annotation.DateTimeFormat;
|
|||
import javax.validation.constraints.NotBlank;
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
@TableName("GARDS_NUCLEARFACILITY")
|
||||
|
@ -67,7 +67,7 @@ public class GardsNuclearfacility implements Serializable {
|
|||
@TableField(value = "BUILDDATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime buildDate;
|
||||
private Date buildDate;
|
||||
|
||||
/**
|
||||
* 临界时间
|
||||
|
@ -75,7 +75,7 @@ public class GardsNuclearfacility implements Serializable {
|
|||
@TableField(value = "CRITICALITYDATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime criticalityDate;
|
||||
private Date criticalityDate;
|
||||
|
||||
/**
|
||||
* 退休时间
|
||||
|
@ -83,7 +83,7 @@ public class GardsNuclearfacility implements Serializable {
|
|||
@TableField(value = "RETIREDATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime retireDate;
|
||||
private Date retireDate;
|
||||
|
||||
/**
|
||||
* 网格工程日期
|
||||
|
@ -91,7 +91,7 @@ public class GardsNuclearfacility implements Serializable {
|
|||
@TableField(value = "GRIDCONEETIONDATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime gridconeetionDate;
|
||||
private Date gridconeetionDate;
|
||||
|
||||
/**
|
||||
* 销售公司
|
||||
|
|
|
@ -14,8 +14,6 @@ import javax.validation.constraints.NotNull;
|
|||
import javax.validation.constraints.Null;
|
||||
import java.io.Serializable;
|
||||
import java.sql.Timestamp;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
|
@ -78,7 +76,7 @@ public class GardsStations implements Serializable {
|
|||
@TableField(value = "DATE_BEGIN")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate dateBegin;
|
||||
private Date dateBegin;
|
||||
|
||||
/**
|
||||
* 运行终止日期
|
||||
|
@ -86,7 +84,7 @@ public class GardsStations implements Serializable {
|
|||
@TableField(value = "DATE_END")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate dateEnd;
|
||||
private Date dateEnd;
|
||||
|
||||
/**
|
||||
* 运行状态
|
||||
|
@ -99,6 +97,7 @@ public class GardsStations implements Serializable {
|
|||
*/
|
||||
@TableField(value = "MODDATE")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime moddate;
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private Date moddate;
|
||||
|
||||
}
|
||||
|
|
|
@ -12,8 +12,7 @@ import org.springframework.format.annotation.DateTimeFormat;
|
|||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
|
@ -31,7 +30,7 @@ public class SysTask implements Serializable {
|
|||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
@NotBlank(message = "不能为空", groups = {InsertGroup.class, UpdateGroup.class})
|
||||
private LocalDate schedulingDate;
|
||||
private Date schedulingDate;
|
||||
|
||||
@TableField(value = "create_by")
|
||||
private String createBy;
|
||||
|
@ -42,12 +41,12 @@ public class SysTask implements Serializable {
|
|||
@TableField(value = "create_time")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
private Date createTime;
|
||||
|
||||
@TableField(value = "update_time")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime updateTime;
|
||||
private Date updateTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String userName;
|
||||
|
|
|
@ -12,7 +12,6 @@ import org.springframework.format.annotation.DateTimeFormat;
|
|||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.Serializable;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
|
||||
@Data
|
||||
|
@ -36,12 +35,12 @@ public class SysTaskStation implements Serializable {
|
|||
@TableField(value = "create_time")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime createTime;
|
||||
private Date createTime;
|
||||
|
||||
@TableField(value = "update_time")
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||
private LocalDateTime updateTime;
|
||||
private Date updateTime;
|
||||
|
||||
@TableField(exist = false)
|
||||
private String stationName;
|
||||
|
|
|
@ -4,7 +4,6 @@ import com.fasterxml.jackson.annotation.JsonFormat;
|
|||
import lombok.Data;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -19,6 +18,6 @@ public class SysTaskChangeVo {
|
|||
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate day;
|
||||
private Date day;
|
||||
|
||||
}
|
||||
|
|
|
@ -4,7 +4,6 @@ import lombok.Data;
|
|||
import org.jeecg.modules.system.entity.SysTaskStation;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -16,7 +15,7 @@ public class SysTaskVo {
|
|||
private String userId;
|
||||
|
||||
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||
private LocalDate schedulingDate;
|
||||
private Date schedulingDate;
|
||||
|
||||
private String username;
|
||||
|
||||
|
|
|
@ -86,7 +86,7 @@ public class GardsDetectorsServiceImpl extends ServiceImpl<GardsDetectorsMapper,
|
|||
return result;
|
||||
}
|
||||
}
|
||||
gardsDetectors.setModdate(LocalDateTime.now());
|
||||
gardsDetectors.setModdate(new Date());
|
||||
this.baseMapper.insert(gardsDetectors);
|
||||
result.success("新增成功");
|
||||
this.findDetectors();
|
||||
|
|
|
@ -20,10 +20,7 @@ import org.springframework.transaction.annotation.Propagation;
|
|||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Service("gardsStationsService")
|
||||
|
@ -101,7 +98,7 @@ public class GardsStationsServiceImpl extends ServiceImpl<GardsStationsMapper, G
|
|||
return result;
|
||||
}
|
||||
}
|
||||
gardsStations.setModdate(LocalDateTime.now());
|
||||
gardsStations.setModdate(new Date());
|
||||
this.baseMapper.insert(gardsStations);
|
||||
result.setSuccess(true);
|
||||
result.success("新增成功");
|
||||
|
|
|
@ -39,9 +39,6 @@ import java.io.IOException;
|
|||
import java.lang.reflect.Field;
|
||||
import java.text.ParseException;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
import java.util.*;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
|
@ -118,7 +115,7 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
}
|
||||
}
|
||||
for (String day:allDay) {
|
||||
List<SysTaskVo> taskVos = sysTaskVos.stream().filter(item -> item.getSchedulingDate().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")).equals(day)).collect(Collectors.toList());
|
||||
List<SysTaskVo> taskVos = sysTaskVos.stream().filter(item -> DateUtils.formatDate(item.getSchedulingDate(), "yyyy-MM-dd").equals(day)).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(taskVos)){
|
||||
map.put(day, taskVos);
|
||||
}else {
|
||||
|
@ -200,7 +197,7 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
//id
|
||||
sysTask.setId(String.valueOf(IdWorker.getId()));
|
||||
//创建时间
|
||||
sysTask.setCreateTime(LocalDateTime.now());
|
||||
sysTask.setCreateTime(new Date());
|
||||
this.baseMapper.insert(sysTask);
|
||||
//如果排班任务中台站信息不为空
|
||||
if (CollectionUtils.isNotEmpty(sysTask.getStationList())){
|
||||
|
@ -237,7 +234,7 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
//id
|
||||
sysTask.setId(String.valueOf(IdWorker.getId()));
|
||||
//创建时间
|
||||
sysTask.setCreateTime(LocalDateTime.now());
|
||||
sysTask.setCreateTime(new Date());
|
||||
this.baseMapper.insert(sysTask);
|
||||
//如果排班任务中台站信息不为空
|
||||
if (CollectionUtils.isNotEmpty(sysTask.getStationList())){
|
||||
|
@ -254,19 +251,23 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
* 根据排班任务日期删除历史任务信息
|
||||
* @param schedulingDate
|
||||
*/
|
||||
private void deleteByDate(LocalDate schedulingDate){
|
||||
//根据排班日期查询对应的任务信息
|
||||
LambdaQueryWrapper<SysTask> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SysTask::getSchedulingDate, schedulingDate.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
||||
List<SysTask> sysTasks = this.baseMapper.selectList(queryWrapper);
|
||||
//获取任务信息的id
|
||||
List<String> taskIds = sysTasks.stream().map(SysTask::getId).collect(Collectors.toList());
|
||||
//根据任务id删除关联的台站信息
|
||||
LambdaQueryWrapper<SysTaskStation> taskStationQueryWrapper = new LambdaQueryWrapper<>();
|
||||
taskStationQueryWrapper.in(SysTaskStation::getTaskId, taskIds);
|
||||
sysTaskStationMapper.delete(taskStationQueryWrapper);
|
||||
//根据任务id删除任务信息
|
||||
this.baseMapper.deleteBatchIds(taskIds);
|
||||
private void deleteByDate(Date schedulingDate){
|
||||
try {
|
||||
//根据排班日期查询对应的任务信息
|
||||
LambdaQueryWrapper<SysTask> queryWrapper = new LambdaQueryWrapper<>();
|
||||
queryWrapper.eq(SysTask::getSchedulingDate, DateUtils.parseDate(DateUtils.formatDate(schedulingDate, "yyyy-MM-dd"), "yyyy-MM-dd"));
|
||||
List<SysTask> sysTasks = this.baseMapper.selectList(queryWrapper);
|
||||
//获取任务信息的id
|
||||
List<String> taskIds = sysTasks.stream().map(SysTask::getId).collect(Collectors.toList());
|
||||
//根据任务id删除关联的台站信息
|
||||
LambdaQueryWrapper<SysTaskStation> taskStationQueryWrapper = new LambdaQueryWrapper<>();
|
||||
taskStationQueryWrapper.in(SysTaskStation::getTaskId, taskIds);
|
||||
sysTaskStationMapper.delete(taskStationQueryWrapper);
|
||||
//根据任务id删除任务信息
|
||||
this.baseMapper.deleteBatchIds(taskIds);
|
||||
} catch (ParseException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -287,40 +288,44 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
@Transactional
|
||||
public Result changeScheduling(SysTaskChangeVo sysTaskChangeVo) {
|
||||
Result result = new Result();
|
||||
//来源用户相关信息查询
|
||||
//查询出当前来源用户在排版日期的任务信息
|
||||
LambdaQueryWrapper<SysTask> fromQueryWrapper = new LambdaQueryWrapper<>();
|
||||
fromQueryWrapper.eq(SysTask::getUserId, sysTaskChangeVo.getFromUserId());
|
||||
fromQueryWrapper.eq(SysTask::getSchedulingDate, sysTaskChangeVo.getDay().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
||||
SysTask fromSysTask = this.baseMapper.selectOne(fromQueryWrapper);
|
||||
//根据来源用户的任务以及台站信息查询出对应的任务及台站信息
|
||||
LambdaQueryWrapper<SysTaskStation> fromTaskQueryWrapper = new LambdaQueryWrapper<>();
|
||||
fromTaskQueryWrapper.eq(SysTaskStation::getTaskId, fromSysTask.getId());
|
||||
fromTaskQueryWrapper.in(SysTaskStation::getStationId, sysTaskChangeVo.getStationIds());
|
||||
List<SysTaskStation> sysTaskStations = sysTaskStationMapper.selectList(fromTaskQueryWrapper);
|
||||
//转移到用户相关信息查询
|
||||
//查询出当前转移到用户在排班日期的任务信息
|
||||
LambdaQueryWrapper<SysTask> toQueryWrapper = new LambdaQueryWrapper<>();
|
||||
toQueryWrapper.eq(SysTask::getUserId, sysTaskChangeVo.getToUserId());
|
||||
toQueryWrapper.eq(SysTask::getSchedulingDate, sysTaskChangeVo.getDay().format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
|
||||
SysTask toSysTask = this.baseMapper.selectOne(toQueryWrapper);
|
||||
//台站信息不为空
|
||||
if (CollectionUtils.isNotEmpty(sysTaskStations)){
|
||||
//遍历当前要进行修改的台站信息
|
||||
for (SysTaskStation taskStation:sysTaskStations) {
|
||||
taskStation.setTaskId(toSysTask.getId());
|
||||
sysTaskStationMapper.updateById(taskStation);
|
||||
try {
|
||||
//来源用户相关信息查询
|
||||
//查询出当前来源用户在排版日期的任务信息
|
||||
LambdaQueryWrapper<SysTask> fromQueryWrapper = new LambdaQueryWrapper<>();
|
||||
fromQueryWrapper.eq(SysTask::getUserId, sysTaskChangeVo.getFromUserId());
|
||||
fromQueryWrapper.eq(SysTask::getSchedulingDate, DateUtils.parseDate(DateUtils.formatDate(sysTaskChangeVo.getDay(), "yyyy-MM-dd"), "yyyy-MM-dd"));
|
||||
SysTask fromSysTask = this.baseMapper.selectOne(fromQueryWrapper);
|
||||
//根据来源用户的任务以及台站信息查询出对应的任务及台站信息
|
||||
LambdaQueryWrapper<SysTaskStation> fromTaskQueryWrapper = new LambdaQueryWrapper<>();
|
||||
fromTaskQueryWrapper.eq(SysTaskStation::getTaskId, fromSysTask.getId());
|
||||
fromTaskQueryWrapper.in(SysTaskStation::getStationId, sysTaskChangeVo.getStationIds());
|
||||
List<SysTaskStation> sysTaskStations = sysTaskStationMapper.selectList(fromTaskQueryWrapper);
|
||||
//转移到用户相关信息查询
|
||||
//查询出当前转移到用户在排班日期的任务信息
|
||||
LambdaQueryWrapper<SysTask> toQueryWrapper = new LambdaQueryWrapper<>();
|
||||
toQueryWrapper.eq(SysTask::getUserId, sysTaskChangeVo.getToUserId());
|
||||
toQueryWrapper.eq(SysTask::getSchedulingDate, DateUtils.parseDate(DateUtils.formatDate(sysTaskChangeVo.getDay(), "yyyy-MM-dd"), "yyyy-MM-dd"));
|
||||
SysTask toSysTask = this.baseMapper.selectOne(toQueryWrapper);
|
||||
//台站信息不为空
|
||||
if (CollectionUtils.isNotEmpty(sysTaskStations)){
|
||||
//遍历当前要进行修改的台站信息
|
||||
for (SysTaskStation taskStation:sysTaskStations) {
|
||||
taskStation.setTaskId(toSysTask.getId());
|
||||
sysTaskStationMapper.updateById(taskStation);
|
||||
}
|
||||
}
|
||||
//判断 如果当前来源用户及日期下的排班任务对应的台站信息为空,排班任务信息删除
|
||||
LambdaQueryWrapper<SysTaskStation> sysTaskStationQueryWrapper = new LambdaQueryWrapper<>();
|
||||
sysTaskStationQueryWrapper.eq(SysTaskStation::getTaskId, fromSysTask.getId());
|
||||
List<SysTaskStation> stations = sysTaskStationMapper.selectList(sysTaskStationQueryWrapper);
|
||||
if (CollectionUtils.isEmpty(stations)){
|
||||
this.baseMapper.deleteById(fromSysTask);
|
||||
}
|
||||
result.setSuccess(true);
|
||||
result.success("交接完成");
|
||||
} catch (ParseException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
//判断 如果当前来源用户及日期下的排班任务对应的台站信息为空,排班任务信息删除
|
||||
LambdaQueryWrapper<SysTaskStation> sysTaskStationQueryWrapper = new LambdaQueryWrapper<>();
|
||||
sysTaskStationQueryWrapper.eq(SysTaskStation::getTaskId, fromSysTask.getId());
|
||||
List<SysTaskStation> stations = sysTaskStationMapper.selectList(sysTaskStationQueryWrapper);
|
||||
if (CollectionUtils.isEmpty(stations)){
|
||||
this.baseMapper.deleteById(fromSysTask);
|
||||
}
|
||||
result.setSuccess(true);
|
||||
result.success("交接完成");
|
||||
return result;
|
||||
}
|
||||
|
||||
|
@ -336,7 +341,7 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
List<SysTaskVo> sysTaskVos = entry.getValue();
|
||||
if (CollectionUtils.isNotEmpty(sysTaskVos)){
|
||||
for (SysTaskVo sysTaskVo:sysTaskVos) {
|
||||
String schedulingDate = sysTaskVo.getSchedulingDate().format(DateTimeFormatter.ofPattern("yyyy-MM-dd"));
|
||||
String schedulingDate = DateUtils.formatDate(sysTaskVo.getSchedulingDate(), "yyyy-MM-dd");
|
||||
String username = sysTaskVo.getUsername();
|
||||
String stationNames = "";
|
||||
for (SysTaskStation sysTaskStation:sysTaskVo.getStationList()) {
|
||||
|
@ -410,113 +415,117 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
List<ImportFailureVo> failureList = new ArrayList<>();
|
||||
int successNum = 0;
|
||||
int failureNum = 0;
|
||||
//第一步 读取导入数据中的全部排班任务相关信息进行新增
|
||||
if (CollectionUtils.isNotEmpty(dataList)){
|
||||
//遍历导入数据内容
|
||||
for (SysTaskExportVo sysTaskExportVo:dataList) {
|
||||
boolean failFlag = false;
|
||||
//排班任务相关台站信息集合
|
||||
List<SysTaskStation> sysTaskStationList = new ArrayList<>();
|
||||
SysTask sysTask = new SysTask();
|
||||
headRow++;
|
||||
//排班日期
|
||||
String schedulingDate = sysTaskExportVo.getSchedulingDate();
|
||||
//用户名称
|
||||
String userName = sysTaskExportVo.getUserName();
|
||||
//台站名称
|
||||
String stationName = sysTaskExportVo.getStationName();
|
||||
//存放切割后的台站名称
|
||||
List<String> stations = new ArrayList<>();
|
||||
//判断排版日期,用户名称,台站名称是否为空
|
||||
if (StringUtils.isAnyEmpty(schedulingDate,userName,stationName)){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "必填信息不全"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
//判断台站名称是否为空
|
||||
if (StringUtils.isNotBlank(stationName)){
|
||||
if (stationName.indexOf(",")>0){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "台站信息内容错误,台站编码间用英文逗号隔开"));
|
||||
try {
|
||||
//第一步 读取导入数据中的全部排班任务相关信息进行新增
|
||||
if (CollectionUtils.isNotEmpty(dataList)){
|
||||
//遍历导入数据内容
|
||||
for (SysTaskExportVo sysTaskExportVo:dataList) {
|
||||
boolean failFlag = false;
|
||||
//排班任务相关台站信息集合
|
||||
List<SysTaskStation> sysTaskStationList = new ArrayList<>();
|
||||
SysTask sysTask = new SysTask();
|
||||
headRow++;
|
||||
//排班日期
|
||||
String schedulingDate = sysTaskExportVo.getSchedulingDate();
|
||||
//用户名称
|
||||
String userName = sysTaskExportVo.getUserName();
|
||||
//台站名称
|
||||
String stationName = sysTaskExportVo.getStationName();
|
||||
//存放切割后的台站名称
|
||||
List<String> stations = new ArrayList<>();
|
||||
//判断排版日期,用户名称,台站名称是否为空
|
||||
if (StringUtils.isAnyEmpty(schedulingDate,userName,stationName)){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "必填信息不全"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}else {
|
||||
stations = Arrays.asList(stationName.split(StringPool.COMMA));
|
||||
}
|
||||
}
|
||||
sysTask.setSchedulingDate(LocalDate.parse(schedulingDate));
|
||||
//根据用户名称过滤出对应的用户信息
|
||||
List<SysUser> sysUserList = userList.stream().filter(item -> item.getUsername().equals(userName)).collect(Collectors.toList());
|
||||
//如果用户存在,将用户id传入排班任务
|
||||
if (CollectionUtils.isNotEmpty(sysUserList)){
|
||||
SysUser sysUser = sysUserList.get(0);
|
||||
sysTask.setUserId(sysUser.getId());
|
||||
}else {
|
||||
failureList.add(new ImportFailureVo(headRow+1, "用户信息不存在"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
//判断内容是否重复
|
||||
if (CollectionUtils.isNotEmpty(taskList)){
|
||||
//与本次录入的数据进行比较
|
||||
for (SysTask task:taskList) {
|
||||
if (task.getUserId().equals(sysTask.getUserId()) && task.getSchedulingDate().equals(sysTask.getSchedulingDate()) ){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "排班任务信息已存在,重复录入"));
|
||||
//判断台站名称是否为空
|
||||
if (StringUtils.isNotBlank(stationName)){
|
||||
if (stationName.indexOf(",")>0){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "台站信息内容错误,台站编码间用英文逗号隔开"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
}
|
||||
}
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(stations)){
|
||||
for (GardsStations station:stationsList) {
|
||||
for (String sName:stations) {
|
||||
if (station.getStationCode().equals(sName)){
|
||||
SysTaskStation taskStation = new SysTaskStation();
|
||||
taskStation.setStationId(String.valueOf(station.getStationId()));
|
||||
taskStation.setStationName(sName);
|
||||
sysTaskStationList.add(taskStation);
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}else {
|
||||
stations = Arrays.asList(stationName.split(StringPool.COMMA));
|
||||
}
|
||||
}
|
||||
//判断 台站名称集合长度与排班任务对应台站信息长度不一致 丢失台站信息
|
||||
if (stations.size()!=sysTaskStationList.size()){
|
||||
String code = "";
|
||||
List<String> sysTaskStationNames = sysTaskStationList.stream().map(SysTaskStation::getStationName).collect(Collectors.toList());
|
||||
for (String name:stations) {
|
||||
if (sysTaskStationNames.indexOf(name)<0){
|
||||
code+=name+",";
|
||||
}
|
||||
}
|
||||
code = code.substring(0,code.length()-1);
|
||||
failureList.add(new ImportFailureVo(headRow+1, "台站信息"+code+"不存在!"));
|
||||
sysTask.setSchedulingDate(DateUtils.parseDate(schedulingDate, "yyyy-MM-dd"));
|
||||
//根据用户名称过滤出对应的用户信息
|
||||
List<SysUser> sysUserList = userList.stream().filter(item -> item.getUsername().equals(userName)).collect(Collectors.toList());
|
||||
//如果用户存在,将用户id传入排班任务
|
||||
if (CollectionUtils.isNotEmpty(sysUserList)){
|
||||
SysUser sysUser = sysUserList.get(0);
|
||||
sysTask.setUserId(sysUser.getId());
|
||||
}else {
|
||||
failureList.add(new ImportFailureVo(headRow+1, "用户信息不存在"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
sysTask.setStationList(sysTaskStationList);
|
||||
|
||||
//判断内容是否重复
|
||||
if (CollectionUtils.isNotEmpty(taskList)){
|
||||
//与本次录入的数据进行比较
|
||||
for (SysTask task:taskList) {
|
||||
if (task.getUserId().equals(sysTask.getUserId()) && task.getSchedulingDate().equals(sysTask.getSchedulingDate()) ){
|
||||
failureList.add(new ImportFailureVo(headRow+1, "排班任务信息已存在,重复录入"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
}
|
||||
}
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
|
||||
if (CollectionUtils.isNotEmpty(stations)){
|
||||
for (GardsStations station:stationsList) {
|
||||
for (String sName:stations) {
|
||||
if (station.getStationCode().equals(sName)){
|
||||
SysTaskStation taskStation = new SysTaskStation();
|
||||
taskStation.setStationId(String.valueOf(station.getStationId()));
|
||||
taskStation.setStationName(sName);
|
||||
sysTaskStationList.add(taskStation);
|
||||
}
|
||||
}
|
||||
}
|
||||
//判断 台站名称集合长度与排班任务对应台站信息长度不一致 丢失台站信息
|
||||
if (stations.size()!=sysTaskStationList.size()){
|
||||
String code = "";
|
||||
List<String> sysTaskStationNames = sysTaskStationList.stream().map(SysTaskStation::getStationName).collect(Collectors.toList());
|
||||
for (String name:stations) {
|
||||
if (sysTaskStationNames.indexOf(name)<0){
|
||||
code+=name+",";
|
||||
}
|
||||
}
|
||||
code = code.substring(0,code.length()-1);
|
||||
failureList.add(new ImportFailureVo(headRow+1, "台站信息"+code+"不存在!"));
|
||||
failureNum++;
|
||||
failFlag = true;
|
||||
if (failFlag){
|
||||
continue;
|
||||
}
|
||||
}
|
||||
sysTask.setStationList(sysTaskStationList);
|
||||
}
|
||||
successNum++;
|
||||
taskList.add(sysTask);
|
||||
}
|
||||
//判断当前数据库中的排班任务信息是否为空
|
||||
if (CollectionUtils.isNotEmpty(taskList)){
|
||||
this.addOrUpdate(sysTaskList,taskList);
|
||||
}
|
||||
successNum++;
|
||||
taskList.add(sysTask);
|
||||
}
|
||||
//判断当前数据库中的排班任务信息是否为空
|
||||
if (CollectionUtils.isNotEmpty(taskList)){
|
||||
this.addOrUpdate(sysTaskList,taskList);
|
||||
}
|
||||
} catch (ParseException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
importViewVo.setDetailList(failureList);
|
||||
importViewVo.setSuccess(successNum);
|
||||
|
@ -549,7 +558,7 @@ public class SysTaskServiceImpl extends ServiceImpl<SysTaskMapper, SysTask> impl
|
|||
//id
|
||||
sysTask.setId(String.valueOf(IdWorker.getId()));
|
||||
//创建时间
|
||||
sysTask.setCreateTime(LocalDateTime.now());
|
||||
sysTask.setCreateTime(new Date());
|
||||
this.baseMapper.insert(sysTask);
|
||||
//如果排班任务中台站信息不为空
|
||||
if (CollectionUtils.isNotEmpty(sysTask.getStationList())){
|
||||
|
|
|
@ -10,7 +10,6 @@ import org.jeecg.modules.system.service.ISysTaskStationService;
|
|||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
|
@ -27,7 +26,7 @@ public class SysTaskStationServiceImpl extends ServiceImpl<SysTaskStationMapper,
|
|||
sysTaskStation.setOperateIp(ipAddr);
|
||||
sysTaskStation.setId(String.valueOf(IdWorker.getId()));
|
||||
sysTaskStation.setTaskId(taskId);
|
||||
sysTaskStation.setCreateTime(LocalDateTime.now());
|
||||
sysTaskStation.setCreateTime(new Date());
|
||||
this.baseMapper.insert(sysTaskStation);
|
||||
}
|
||||
}
|
||||
|
@ -45,7 +44,7 @@ public class SysTaskStationServiceImpl extends ServiceImpl<SysTaskStationMapper,
|
|||
sysTaskStation.setOperateIp(ipAddr);
|
||||
sysTaskStation.setId(String.valueOf(IdWorker.getId()));
|
||||
sysTaskStation.setTaskId(taskId);
|
||||
sysTaskStation.setCreateTime(LocalDateTime.now());
|
||||
sysTaskStation.setCreateTime(new Date());
|
||||
this.baseMapper.insert(sysTaskStation);
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue
Block a user