提交 26a12d5e authored 作者: zjm's avatar zjm

添加托管业务以及应急业务代码12-05-zjm

上级 fcc5c9ae
package com.tykj.dev.device.emergency.controller; package com.tykj.dev.device.emergency.controller;
import com.tykj.dev.config.cache.ConfigCache;
import com.tykj.dev.config.swagger.AutoDocument; import com.tykj.dev.config.swagger.AutoDocument;
import com.tykj.dev.device.emergency.entity.EmergencyBill; import com.tykj.dev.device.emergency.entity.EmergencyBill;
import com.tykj.dev.device.emergency.entity.EmergencyLibrary; import com.tykj.dev.device.emergency.entity.EmergencyLibrary;
import com.tykj.dev.device.emergency.entity.vo.EmergencyLibrarySelectVo;
import com.tykj.dev.device.emergency.entity.vo.EmergencySelectVo; import com.tykj.dev.device.emergency.entity.vo.EmergencySelectVo;
import com.tykj.dev.device.emergency.entity.vo.RecycleVo;
import com.tykj.dev.device.emergency.entity.vo.UserWorkload; import com.tykj.dev.device.emergency.entity.vo.UserWorkload;
import com.tykj.dev.device.emergency.service.EmergencyBillService; import com.tykj.dev.device.emergency.service.EmergencyBillService;
import com.tykj.dev.device.library.service.DeviceLibraryService;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import com.tykj.dev.device.library.subject.vo.*;
import com.tykj.dev.device.user.cache.StoreCache;
import com.tykj.dev.device.user.subject.entity.SecurityUser; import com.tykj.dev.device.user.subject.entity.SecurityUser;
import com.tykj.dev.misc.utils.DeviceModelSort;
import com.tykj.dev.misc.utils.GetTreeUtils;
import com.tykj.dev.misc.utils.PageUtil;
import com.tykj.dev.misc.utils.ResultUtil;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -17,7 +28,8 @@ import org.springframework.web.bind.annotation.*; ...@@ -17,7 +28,8 @@ import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore; import springfox.documentation.annotations.ApiIgnore;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.*;
import java.util.stream.Collectors;
/** /**
...@@ -30,9 +42,16 @@ import java.util.List; ...@@ -30,9 +42,16 @@ import java.util.List;
public class EmergencyController { public class EmergencyController {
@Resource @Resource
EmergencyBillService emergencyBillService; private EmergencyBillService emergencyBillService;
@Resource
private ConfigCache configCache;
@Resource
private DeviceLibraryService deviceLibraryService;
@Resource
private StoreCache storeCache;
@ApiOperation(value = "转换装备生命周期 在库-》应急中", notes = "转换装备生命周期") @ApiOperation(value = "转换装备生命周期 在库-》应急中", notes = "转换装备生命周期")
@PostMapping(value ="/convertLibrary/{userId}") @PostMapping(value ="/convertLibrary/{userId}")
...@@ -58,13 +77,23 @@ public class EmergencyController { ...@@ -58,13 +77,23 @@ public class EmergencyController {
} }
@ApiOperation(value = "应急保障 -回收配发出库业务(id 业务id)", notes = "转换装备生命周期") @ApiOperation(value = "根据业务id查询详情", notes = "转换装备生命周期")
@PostMapping(value ="/recycleEmergencyBill/{id}") @PostMapping(value ="/queryById/{id}")
public ResponseEntity<EmergencyBill> recycleEmergencyBill(@ApiIgnore @AuthenticationPrincipal SecurityUser securityUser, @PathVariable Integer id){ public ResponseEntity<EmergencyBill> queryById(@PathVariable Integer id){
return ResponseEntity.ok(emergencyBillService.queryById(id));
}
return ResponseEntity.ok(emergencyBillService.recycleEmergencyBill(id,securityUser)); @ApiOperation(value = "应急保障 -回收配发出库业务", notes = "转换装备生命周期")
@PostMapping(value ="/recycleEmergencyBill")
public ResponseEntity<EmergencyBill> recycleEmergencyBill(@ApiIgnore @AuthenticationPrincipal SecurityUser securityUser, @RequestBody RecycleVo recycleVo){
return ResponseEntity.ok(emergencyBillService.recycleEmergencyBill(recycleVo,securityUser));
} }
@ApiOperation(value = "应急保障 -分页查询业务列表(传分页相关字段)", notes = "转换装备生命周期") @ApiOperation(value = "应急保障 -分页查询业务列表(传分页相关字段)", notes = "转换装备生命周期")
@PostMapping(value ="/selectPage") @PostMapping(value ="/selectPage")
public ResponseEntity<Page<EmergencyBill>> recycleEmergencyBill(@RequestBody EmergencySelectVo emergencySelectVo){ public ResponseEntity<Page<EmergencyBill>> recycleEmergencyBill(@RequestBody EmergencySelectVo emergencySelectVo){
...@@ -73,10 +102,19 @@ public class EmergencyController { ...@@ -73,10 +102,19 @@ public class EmergencyController {
} }
@ApiOperation(value = "应急保障 -根据时间查询相关工作量统计数据(传开始时间和结束时间)", notes = "转换装备生命周期") @ApiOperation(value = "应急保障 -根据时间查询相关工作量统计数据(传开始时间和结束时间)", notes = "转换装备生命周期")
@PostMapping(value ="/selectPage") @PostMapping(value ="/queryTimeUserWorkload")
public ResponseEntity<List<UserWorkload>> queryTimeUserWorkload(@RequestBody EmergencySelectVo emergencySelectVo){ public ResponseEntity<List<UserWorkload>> queryTimeUserWorkload(@RequestBody EmergencySelectVo emergencySelectVo){
return ResponseEntity.ok(emergencyBillService.queryTimeUserWorkload(emergencySelectVo.getStartTime(),emergencySelectVo.getEndTime())); return ResponseEntity.ok(emergencyBillService.queryTimeUserWorkload(emergencySelectVo.getStartTime(),emergencySelectVo.getEndTime()));
} }
@ApiOperation(value = "应急设备查询", notes = "可以通过这个接口查询装备列表,本级")
@PostMapping("/queryEmergencyLibrarySelectVo")
public ResponseEntity<Page<EmergencyDeviceVo>> queryEmergencyLibrarySelectVo(@RequestBody EmergencyLibrarySelectVo emergencyLibrarySelectVo){
return ResponseEntity.ok(emergencyBillService.queryEmergencyLibrarySelectVo(emergencyLibrarySelectVo));
}
} }
...@@ -18,4 +18,6 @@ public interface EmergencyLibraryDao extends JpaRepository<EmergencyLibrary, Int ...@@ -18,4 +18,6 @@ public interface EmergencyLibraryDao extends JpaRepository<EmergencyLibrary, Int
Boolean existsAllByLibraryIdInAndStatus(List<Integer> ids,Integer status); Boolean existsAllByLibraryIdInAndStatus(List<Integer> ids,Integer status);
void deleteAllByLibraryIdIn(List<Integer> ids);
} }
package com.tykj.dev.device.emergency.entity; package com.tykj.dev.device.emergency.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.tykj.dev.device.emergency.entity.vo.EmergencyLibraryVo; import com.tykj.dev.device.emergency.entity.vo.EmergencyLibraryVo;
import com.tykj.dev.device.file.entity.FileRet; import com.tykj.dev.device.file.entity.FileRet;
import com.tykj.dev.device.library.subject.vo.ScriptSaveVo; import com.tykj.dev.device.library.subject.vo.ScriptSaveVo;
...@@ -10,6 +11,7 @@ import io.swagger.annotations.ApiModelProperty; ...@@ -10,6 +11,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.annotations.Where; import org.hibernate.annotations.Where;
import org.springframework.data.jpa.domain.support.AuditingEntityListener; import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.*; import javax.persistence.*;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -39,7 +41,6 @@ public class EmergencyBill extends BaseEntity { ...@@ -39,7 +41,6 @@ public class EmergencyBill extends BaseEntity {
/** /**
* 任务地点 * 任务地点
*/ */
...@@ -56,11 +57,15 @@ public class EmergencyBill extends BaseEntity { ...@@ -56,11 +57,15 @@ public class EmergencyBill extends BaseEntity {
* 开始时间 * 开始时间
*/ */
@ApiModelProperty(value = "开始时间") @ApiModelProperty(value = "开始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime initiateTime; private LocalDateTime initiateTime;
/** /**
* 结束时间 * 结束时间
*/ */
@ApiModelProperty(value = "结束时间") @ApiModelProperty(value = "结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endTime; private LocalDateTime endTime;
...@@ -68,7 +73,7 @@ public class EmergencyBill extends BaseEntity { ...@@ -68,7 +73,7 @@ public class EmergencyBill extends BaseEntity {
* 状态 1.执行中 2已回收 * 状态 1.执行中 2已回收
*/ */
@ApiModelProperty(value = "状态 1.执行中 2已回收") @ApiModelProperty(value = "状态 1.执行中 2已回收")
private Integer status; private Integer status = 1;
@ApiModelProperty(value = "保障天数") @ApiModelProperty(value = "保障天数")
...@@ -94,7 +99,7 @@ public class EmergencyBill extends BaseEntity { ...@@ -94,7 +99,7 @@ public class EmergencyBill extends BaseEntity {
* 签发人和发件经办人(A岗位) * 签发人和发件经办人(A岗位)
*/ */
@ApiModelProperty(value = "发件经办人(A岗位)") @ApiModelProperty(value = "发件经办人(A岗位)")
private Integer sendUserAName; private String sendUserAName;
/** /**
...@@ -107,17 +112,59 @@ public class EmergencyBill extends BaseEntity { ...@@ -107,17 +112,59 @@ public class EmergencyBill extends BaseEntity {
* 签发人和发件经办人(A岗位) * 签发人和发件经办人(A岗位)
*/ */
@ApiModelProperty(value = "发件经办人(A岗位)") @ApiModelProperty(value = "发件经办人(A岗位)")
private Integer sendUserBName; private String sendUserBName;
/**
* 签发人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private Integer recoverUserAId;
/**
* 签发人和发件经办人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private String recoverUserAName;
/**
* 签发人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private Integer recoverUserBId;
/**
收回 - 百度翻译
recover
* 签发人和发件经办人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private String recoverUserBName;
@ApiModelProperty(value = "单据数据") @ApiModelProperty(value = "单据数据")
@Column(name = "mergency_library_vo_json",columnDefinition = "TEXT") @Column(name = "mergency_library_vo_json",columnDefinition = "TEXT")
private String mergencyLibraryVoJson; private String mergencyLibraryVoJson;
/**
* 收回文件
*
*/
@ApiModelProperty(value = "收回文件db")
@Column(name = "files_recover",columnDefinition = "TEXT")
private String filesRecover;
@Transient @Transient
@ApiModelProperty(value = "文件对象集合(添加时查询使用)") @ApiModelProperty(value = "文件对象集合(添加时查询使用)")
private List<FileRet> fileRets; private List<FileRet> fileRets;
@Transient
@ApiModelProperty(value = "收回文件对象集合(添加时查询使用)")
private List<FileRet> fileRecoverRets;
@Transient @Transient
@ApiModelProperty(value = "单据数据集合(添加时查询使用)") @ApiModelProperty(value = "单据数据集合(添加时查询使用)")
......
package com.tykj.dev.device.emergency.entity; package com.tykj.dev.device.emergency.entity;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.hibernate.annotations.Where; import org.hibernate.annotations.Where;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.data.jpa.domain.support.AuditingEntityListener; import org.springframework.data.jpa.domain.support.AuditingEntityListener;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.*; import javax.persistence.*;
import java.time.LocalDateTime;
@Data @Data
@Entity @Entity
@EntityListeners(AuditingEntityListener.class) @EntityListeners(AuditingEntityListener.class)
@Where(clause = "delete_tag = 0")
@ApiModel("应急保障设备状态表") @ApiModel("应急保障设备状态表")
@Table(name = "zb_emergency_library") @Table(name = "zb_emergency_library")
public class EmergencyLibrary { public class EmergencyLibrary {
...@@ -19,12 +22,23 @@ public class EmergencyLibrary { ...@@ -19,12 +22,23 @@ public class EmergencyLibrary {
/** /**
* 主键id * 主键id
*/ */
@ApiModelProperty(value = "发起人id") @ApiModelProperty(value = "装备id")
@Id @Id
private Integer libraryId; private Integer libraryId;
@ApiModelProperty(value = "应急库时的状态 1.待出库 2.任务中") @ApiModelProperty(value = "应急库时的状态 1.待出库 2.任务中")
private Integer status = 1; private Integer status = 1;
/**
* 报出时间
*/
@ApiModelProperty(value = "报出时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime time = LocalDateTime.now();
} }
package com.tykj.dev.device.emergency.entity.vo;
import com.tykj.dev.misc.base.CustomPage;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
@Data
@ApiModel("应急装备列表条件查询vo")
public class EmergencyLibrarySelectVo extends CustomPage {
public EmergencyLibrarySelectVo() {
}
}
...@@ -32,6 +32,9 @@ public class EmergencyLibraryVo { ...@@ -32,6 +32,9 @@ public class EmergencyLibraryVo {
@ApiModelProperty(value = "可见范围") @ApiModelProperty(value = "可见范围")
private String invisibleRange; private String invisibleRange;
@ApiModelProperty(value = "备注")
private String des;
@ApiModelProperty(value = "配发类型") @ApiModelProperty(value = "配发类型")
private String allotType; private String allotType;
} }
...@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty; ...@@ -7,6 +7,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.Data; import lombok.Data;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime; import java.time.LocalDateTime;
...@@ -26,10 +27,14 @@ public class EmergencySelectVo extends CustomPage { ...@@ -26,10 +27,14 @@ public class EmergencySelectVo extends CustomPage {
* 开始时间 * 开始时间
*/ */
@ApiModelProperty(value = "开始时间") @ApiModelProperty(value = "开始时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime startTime; private LocalDateTime startTime;
/** /**
* 结束时间 * 结束时间
*/ */
@ApiModelProperty(value = "结束时间") @ApiModelProperty(value = "结束时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime endTime; private LocalDateTime endTime;
} }
package com.tykj.dev.device.emergency.entity.vo;
import com.tykj.dev.device.file.entity.FileRet;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import javax.persistence.Transient;
import java.util.List;
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
@ApiModel("回收业务提交vo")
public class RecycleVo {
/**
* 数据id
*/
@ApiModelProperty(value = "数据id")
private Integer id;
/**
* 签发人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private Integer recoverUserAId;
/**
* 签发人和发件经办人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private String recoverUserAName;
/**
* 签发人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private Integer recoverUserBId;
/**
收回 - 百度翻译
recover
* 签发人和发件经办人(A岗位)
*/
@ApiModelProperty(value = "发件经办人(A岗位)")
private String recoverUserBName;
@Transient
@ApiModelProperty(value = "文件对象集合(添加时查询使用)")
private List<FileRet> fileRecoverRets;
}
...@@ -2,8 +2,11 @@ package com.tykj.dev.device.emergency.service; ...@@ -2,8 +2,11 @@ package com.tykj.dev.device.emergency.service;
import com.tykj.dev.device.emergency.entity.EmergencyBill; import com.tykj.dev.device.emergency.entity.EmergencyBill;
import com.tykj.dev.device.emergency.entity.EmergencyLibrary; import com.tykj.dev.device.emergency.entity.EmergencyLibrary;
import com.tykj.dev.device.emergency.entity.vo.EmergencyLibrarySelectVo;
import com.tykj.dev.device.emergency.entity.vo.EmergencySelectVo; import com.tykj.dev.device.emergency.entity.vo.EmergencySelectVo;
import com.tykj.dev.device.emergency.entity.vo.RecycleVo;
import com.tykj.dev.device.emergency.entity.vo.UserWorkload; import com.tykj.dev.device.emergency.entity.vo.UserWorkload;
import com.tykj.dev.device.library.subject.vo.EmergencyDeviceVo;
import com.tykj.dev.device.user.subject.entity.SecurityUser; import com.tykj.dev.device.user.subject.entity.SecurityUser;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
...@@ -43,7 +46,7 @@ public interface EmergencyBillService { ...@@ -43,7 +46,7 @@ public interface EmergencyBillService {
* 应急保障 -回收配发出库业务 * 应急保障 -回收配发出库业务
* @return 业务实体 * @return 业务实体
*/ */
EmergencyBill recycleEmergencyBill(Integer id,SecurityUser securityUser); EmergencyBill recycleEmergencyBill(RecycleVo recycleVo, SecurityUser securityUser);
/** /**
* 分页查询业务列表 * 分页查询业务列表
...@@ -57,4 +60,9 @@ public interface EmergencyBillService { ...@@ -57,4 +60,9 @@ public interface EmergencyBillService {
*/ */
List<UserWorkload> queryTimeUserWorkload(LocalDateTime sTime,LocalDateTime eTime); List<UserWorkload> queryTimeUserWorkload(LocalDateTime sTime,LocalDateTime eTime);
/**
* 根据相关条件查询装备信息
*/
Page<EmergencyDeviceVo> queryEmergencyLibrarySelectVo(EmergencyLibrarySelectVo emergencyLibrarySelectVo);
} }
...@@ -8,18 +8,19 @@ import com.tykj.dev.device.emergency.dao.EmergencyBillDao; ...@@ -8,18 +8,19 @@ import com.tykj.dev.device.emergency.dao.EmergencyBillDao;
import com.tykj.dev.device.emergency.dao.EmergencyLibraryDao; import com.tykj.dev.device.emergency.dao.EmergencyLibraryDao;
import com.tykj.dev.device.emergency.entity.EmergencyBill; import com.tykj.dev.device.emergency.entity.EmergencyBill;
import com.tykj.dev.device.emergency.entity.EmergencyLibrary; import com.tykj.dev.device.emergency.entity.EmergencyLibrary;
import com.tykj.dev.device.emergency.entity.vo.EmergencyLibraryVo; import com.tykj.dev.device.emergency.entity.vo.*;
import com.tykj.dev.device.emergency.entity.vo.EmergencySelectVo;
import com.tykj.dev.device.emergency.entity.vo.UserWorkload;
import com.tykj.dev.device.file.service.FilesUtil; import com.tykj.dev.device.file.service.FilesUtil;
import com.tykj.dev.device.library.service.DeviceLibraryService; import com.tykj.dev.device.library.service.DeviceLibraryService;
import com.tykj.dev.device.library.service.DeviceLogService; import com.tykj.dev.device.library.service.DeviceLogService;
import com.tykj.dev.device.library.subject.Dto.DeviceLogDto; import com.tykj.dev.device.library.subject.Dto.DeviceLogDto;
import com.tykj.dev.device.library.subject.domin.DeviceLibrary;
import com.tykj.dev.device.library.subject.domin.DeviceLog; import com.tykj.dev.device.library.subject.domin.DeviceLog;
import com.tykj.dev.device.library.subject.vo.EmergencyDeviceVo;
import com.tykj.dev.device.library.subject.vo.ScriptSaveVo; import com.tykj.dev.device.library.subject.vo.ScriptSaveVo;
import com.tykj.dev.device.user.subject.entity.SecurityUser; import com.tykj.dev.device.user.subject.entity.SecurityUser;
import com.tykj.dev.misc.base.StatusEnum; import com.tykj.dev.misc.base.StatusEnum;
import com.tykj.dev.misc.exception.ApiException; import com.tykj.dev.misc.exception.ApiException;
import com.tykj.dev.misc.utils.PageUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.data.domain.Page; import org.springframework.data.domain.Page;
import org.springframework.data.jpa.domain.Specification; import org.springframework.data.jpa.domain.Specification;
...@@ -30,6 +31,7 @@ import java.time.Duration; ...@@ -30,6 +31,7 @@ import java.time.Duration;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.util.*; import java.util.*;
import java.util.concurrent.CompletableFuture; import java.util.concurrent.CompletableFuture;
import java.util.function.Function;
import java.util.stream.Collectors; import java.util.stream.Collectors;
@Service @Service
...@@ -62,6 +64,10 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -62,6 +64,10 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
public void rollOut(List<EmergencyLibrary> emergencyLibraryList, Integer userId) { public void rollOut(List<EmergencyLibrary> emergencyLibraryList, Integer userId) {
List<Integer> ids = emergencyLibraryList.stream().map(EmergencyLibrary::getLibraryId).collect(Collectors.toList()); List<Integer> ids = emergencyLibraryList.stream().map(EmergencyLibrary::getLibraryId).collect(Collectors.toList());
deviceLibraryService.upDateLeftStatus(DeviceLifeStatus.IN_LIBRARY.id,ids); deviceLibraryService.upDateLeftStatus(DeviceLifeStatus.IN_LIBRARY.id,ids);
ids.forEach(id-> {
emergencyLibraryDao.deleteById(id);
}
);
devLogAdd(ids,"装备转出应急保障库",userId); devLogAdd(ids,"装备转出应急保障库",userId);
} }
...@@ -70,6 +76,14 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -70,6 +76,14 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
public EmergencyBill queryById(Integer Id) { public EmergencyBill queryById(Integer Id) {
Optional<EmergencyBill> byId = emergencyBillDao.findById(Id); Optional<EmergencyBill> byId = emergencyBillDao.findById(Id);
if (byId.isPresent()){ if (byId.isPresent()){
EmergencyBill emergencyBill = byId.get();
if (emergencyBill.getFiles()!=null) {
emergencyBill.setFileRets(FilesUtil.stringFileToList(emergencyBill.getFiles()));
}
if (emergencyBill.getFilesRecover()!=null){
emergencyBill.setFileRecoverRets(FilesUtil.stringFileToList(emergencyBill.getFilesRecover()));
}
emergencyBill.setEmergencyLibraryList(JSON.parseArray(emergencyBill.getMergencyLibraryVoJson(),EmergencyLibraryVo.class));
return byId.get(); return byId.get();
}else { }else {
throw new ApiException("[应急保障] 根据业务id查询失败 :"+Id); throw new ApiException("[应急保障] 根据业务id查询失败 :"+Id);
...@@ -94,10 +108,10 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -94,10 +108,10 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
} }
@Override @Override
public EmergencyBill recycleEmergencyBill(Integer id, SecurityUser securityUser) { public EmergencyBill recycleEmergencyBill(RecycleVo recycleVo, SecurityUser securityUser) {
EmergencyBill emergencyBill = queryById(id); EmergencyBill emergencyBill = queryById(recycleVo.getId());
emergencyBill.setStatus(2); emergencyBill.setStatus(2);
emergencyBill.setEndTime(LocalDateTime.now());
Duration duration = Duration.between(emergencyBill Duration duration = Duration.between(emergencyBill
.getInitiateTime() .getInitiateTime()
.withHour(0) .withHour(0)
...@@ -107,7 +121,11 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -107,7 +121,11 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
.withMinute(0) .withMinute(0)
.withSecond(0) .withSecond(0)
.withNano(0)); .withNano(0));
emergencyBill.setRecoverUserAId(recycleVo.getRecoverUserAId());
emergencyBill.setRecoverUserBId(recycleVo.getRecoverUserBId());
emergencyBill.setRecoverUserAName(recycleVo.getRecoverUserAName());
emergencyBill.setRecoverUserBName(recycleVo.getRecoverUserBName());
emergencyBill.setFilesRecover(FilesUtil.stringFileToList(recycleVo.getFileRecoverRets()));
List<EmergencyLibraryVo> emergencyLibraryVos = JSON.parseArray(emergencyBill.getMergencyLibraryVoJson(), EmergencyLibraryVo.class); List<EmergencyLibraryVo> emergencyLibraryVos = JSON.parseArray(emergencyBill.getMergencyLibraryVoJson(), EmergencyLibraryVo.class);
List<Integer> collect = emergencyLibraryVos.stream().map(EmergencyLibraryVo::getId).collect(Collectors.toList()); List<Integer> collect = emergencyLibraryVos.stream().map(EmergencyLibraryVo::getId).collect(Collectors.toList());
emergencyBill.setEmergencyDay(Math.toIntExact(duration.toDays())); emergencyBill.setEmergencyDay(Math.toIntExact(duration.toDays()));
...@@ -122,7 +140,12 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -122,7 +140,12 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
Page<EmergencyBill> all = emergencyBillDao.findAll(getEmergencyBillSpecification(emergencySelectVo),emergencySelectVo.getPageable()); Page<EmergencyBill> all = emergencyBillDao.findAll(getEmergencyBillSpecification(emergencySelectVo),emergencySelectVo.getPageable());
all.forEach( all.forEach(
emergencyBill -> { emergencyBill -> {
emergencyBill.setFileRets(FilesUtil.stringFileToList(emergencyBill.getFiles())); if (emergencyBill.getFiles()!=null) {
emergencyBill.setFileRets(FilesUtil.stringFileToList(emergencyBill.getFiles()));
}
if (emergencyBill.getFilesRecover()!=null){
emergencyBill.setFileRecoverRets(FilesUtil.stringFileToList(emergencyBill.getFilesRecover()));
}
emergencyBill.setEmergencyLibraryList(JSON.parseArray(emergencyBill.getMergencyLibraryVoJson(),EmergencyLibraryVo.class)); emergencyBill.setEmergencyLibraryList(JSON.parseArray(emergencyBill.getMergencyLibraryVoJson(),EmergencyLibraryVo.class));
} }
); );
...@@ -159,6 +182,32 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{ ...@@ -159,6 +182,32 @@ public class EmergencyBillServiceImpl implements EmergencyBillService{
return userWorkloadList; return userWorkloadList;
} }
@Override
public Page<EmergencyDeviceVo> queryEmergencyLibrarySelectVo(EmergencyLibrarySelectVo emergencyLibrarySelectVo) {
List<EmergencyLibrary> all = emergencyLibraryDao.findAll();
Map<Integer, EmergencyLibrary> emergencyLibraryMap = all.stream().collect(Collectors.toMap(EmergencyLibrary::getLibraryId, Function.identity()));
List<EmergencyDeviceVo> collect = deviceLibraryService
.findAllByIds(all.stream().map(EmergencyLibrary::getLibraryId).collect(Collectors.toList()))
.stream()
.map(DeviceLibrary::toEmergencyDeviceVo)
.collect(Collectors.toList());
collect.forEach(emergencyDeviceVo -> {
if (emergencyLibraryMap.containsKey(emergencyDeviceVo.getId())){
EmergencyLibrary emergencyLibrary = emergencyLibraryMap.get(emergencyDeviceVo.getId());
emergencyDeviceVo.setTime(emergencyLibrary.getTime());
emergencyDeviceVo.setStatus(emergencyLibrary.getStatus());
}
});
Page<EmergencyDeviceVo> perPage = PageUtil.getPerPage(emergencyLibrarySelectVo.getPage(), emergencyLibrarySelectVo.getSize(), collect, emergencyLibrarySelectVo.getPageable());
return perPage;
}
/** /**
* 异步添加装备日志 * 异步添加装备日志
......
...@@ -2,10 +2,7 @@ package com.tykj.dev.device.library.subject.domin; ...@@ -2,10 +2,7 @@ package com.tykj.dev.device.library.subject.domin;
import com.fasterxml.jackson.annotation.JsonFormat; import com.fasterxml.jackson.annotation.JsonFormat;
import com.tykj.dev.config.cache.ConfigCache; import com.tykj.dev.config.cache.ConfigCache;
import com.tykj.dev.device.library.subject.vo.DeviceExcel; import com.tykj.dev.device.library.subject.vo.*;
import com.tykj.dev.device.library.subject.vo.DeviceExcelVo;
import com.tykj.dev.device.library.subject.vo.DeviceVo;
import com.tykj.dev.device.library.subject.vo.WorkUseVo;
import com.tykj.dev.device.user.cache.StoreCache; import com.tykj.dev.device.user.cache.StoreCache;
import com.tykj.dev.misc.base.BeanHelper; import com.tykj.dev.misc.base.BeanHelper;
import com.tykj.dev.misc.utils.SpringUtils; import com.tykj.dev.misc.utils.SpringUtils;
...@@ -332,6 +329,13 @@ public class DeviceLibrary implements Serializable { ...@@ -332,6 +329,13 @@ public class DeviceLibrary implements Serializable {
return mapper.map(this, DeviceExcelVo.class); return mapper.map(this, DeviceExcelVo.class);
} }
public EmergencyDeviceVo toEmergencyDeviceVo(){
setConfigName();
//modelMap复制
ModelMapper mapper = BeanHelper.getUserMapper();
return mapper.map(this, EmergencyDeviceVo.class);
}
public DeviceExcel parseExcel(){ public DeviceExcel parseExcel(){
setConfigName(); setConfigName();
//modelMap复制 //modelMap复制
......
package com.tykj.dev.device.library.subject.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.CreatedDate;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Transient;
import java.time.LocalDateTime;
@Data
@AllArgsConstructor
@NoArgsConstructor
@ApiModel("应急装备列表id")
public class EmergencyDeviceVo {
private Integer id;
/**
* 型号
*/
@ApiModelProperty(value = "型号")
private String model;
/**
* 装备名称
*/
@ApiModelProperty(value = "装备名称")
private String name;
@ApiModelProperty(value = "形态")
private String typeName;
/**
* 装备序列号
*/
@ApiModelProperty(value = "装备序列号")
private String seqNumber;
@ApiModelProperty(value = "所在单位")
private String locationUnit;
/**
* 所属单位
*/
@ApiModelProperty(value = "所属单位")
private String ownUnit;
@ApiModelProperty(value = "状态")
private Integer status;
@ApiModelProperty(value = "备注")
private String record;
/**
* 报出时间
*/
@ApiModelProperty(value = "报出时间")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(shape = JsonFormat.Shape.STRING,pattern = "yyyy-MM-dd HH:mm:ss")
private LocalDateTime time;
/**
* 是不是配件(0:不是,1:是)
*/
@ApiModelProperty(value = "是不是配件(0:不是,1:是)")
private Integer isPart;
@ApiModelProperty(value = "密级")
private String secretLevelName;
@ApiModelProperty(value = "可见范围")
private String invisibleRangeName;
}
...@@ -94,7 +94,7 @@ public class TrusteeshipBillController { ...@@ -94,7 +94,7 @@ public class TrusteeshipBillController {
ImportParams importParams = new ImportParams(); ImportParams importParams = new ImportParams();
importParams.setHeadRows(1); importParams.setHeadRows(1);
importParams.setTitleRows(0); importParams.setTitleRows(0);
List<TrusteeshipEquip> excelRegs = ExcelImportUtil.importExcel(inputStream, ExternalUnitEquip.class, importParams); List<TrusteeshipEquip> excelRegs = ExcelImportUtil.importExcel(inputStream, TrusteeshipEquip.class, importParams);
excelRegs.forEach( excelRegs.forEach(
trusteeshipEquip -> { trusteeshipEquip -> {
if (collect.containsKey(trusteeshipEquip.getNum())){ if (collect.containsKey(trusteeshipEquip.getNum())){
......
...@@ -46,18 +46,18 @@ public class AccessSchedulerTask { ...@@ -46,18 +46,18 @@ public class AccessSchedulerTask {
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void run() { public void run() {
if (inputOutputDeviceDao!=null){ // if (inputOutputDeviceDao!=null){
List<InputOutputDevice> inputOutputDevices = inputOutputDeviceDao.findAllByIsRead(1); // List<InputOutputDevice> inputOutputDevices = inputOutputDeviceDao.findAllByIsRead(1);
if (inputOutputDevices.size()>0){ // if (inputOutputDevices.size()>0){
inputOutputDevices.forEach(inputOutputDevice -> { // inputOutputDevices.forEach(inputOutputDevice -> {
long time = System.currentTimeMillis()-inputOutputDevice.getUpdateTime().getTime(); // long time = System.currentTimeMillis()-inputOutputDevice.getUpdateTime().getTime();
if (time>overTime){ // if (time>overTime){
inputOutputDeviceDao.deleteById(inputOutputDevice.getId()); // inputOutputDeviceDao.deleteById(inputOutputDevice.getId());
log.info("[门禁模块]:删除了id为"+inputOutputDevice.getDeviceId()+"装备的白名单"); // log.info("[门禁模块]:删除了id为"+inputOutputDevice.getDeviceId()+"装备的白名单");
} // }
}); // });
} // }
} // }
} }
} }
} }
...@@ -152,6 +152,20 @@ ...@@ -152,6 +152,20 @@
</exclusions> </exclusions>
</dependency> </dependency>
<dependency>
<groupId>com.tykj</groupId>
<artifactId>dev-emergency</artifactId>
<version>1.0-SNAPSHOT</version>
<exclusions>
<exclusion>
<groupId>com.tykj.dev</groupId>
<artifactId>union</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency> <dependency>
<groupId>com.tykj</groupId> <groupId>com.tykj</groupId>
<artifactId>dev-finalcheck</artifactId> <artifactId>dev-finalcheck</artifactId>
......
server.port=8090 server.port=8090
spring.application.name=device-dev spring.application.name=device-dev
spring.datasource.url=jdbc:mysql://192.168.100.232:3307/device_master?serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false spring.datasource.url=jdbc:mysql://localhost:3306/device?serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
spring.datasource.username=root spring.datasource.username=root
spring.datasource.password=tykj@2022 spring.datasource.password=root
spring.jpa.hibernate.ddl-auto=update spring.jpa.hibernate.ddl-auto=update
#spring.datasource.url=jdbc:mysql://localhost:3306/device_master?serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false #spring.datasource.url=jdbc:mysql://localhost:3306/device_master?serverTimezone=Asia/Shanghai&characterEncoding=UTF-8&zeroDateTimeBehavior=convertToNull&useSSL=false
#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论