parent
45f2c92840
commit
db0813f740
|
|
@ -7,6 +7,7 @@ import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.Fishi
|
|||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoatVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.processResult.ProcessResult;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.service.FishingBoatService;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.service.UnlawfulFishingService;
|
||||
import com.dbnt.faisp.main.userInfo.model.UserInfo;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.security.core.annotation.AuthenticationPrincipal;
|
||||
|
|
@ -24,6 +25,7 @@ public class FishingBoatController {
|
|||
|
||||
private final AuthMgtService authMgtService;
|
||||
private final FishingBoatService fishingBoatService;
|
||||
private final UnlawfulFishingService ufService;
|
||||
private final CodeMgtService codeMgtService;
|
||||
|
||||
@RequestMapping("/fishingBoat")
|
||||
|
|
@ -97,7 +99,9 @@ public class FishingBoatController {
|
|||
public Integer saveFishingBoat(@AuthenticationPrincipal UserInfo loginUser,
|
||||
CrackdownStatus crackdownStatus,
|
||||
MultipartHttpServletRequest request){
|
||||
return fishingBoatService.saveCrackdownStatus(crackdownStatus, request.getMultiFileMap().get("uploadFiles"));
|
||||
// return fishingBoatService.saveCrackdownStatus(crackdownStatus, request.getMultiFileMap().get("uploadFiles"));
|
||||
crackdownStatus.setSailorFileList(request.getMultiFileMap().get("uploadFiles"));
|
||||
return ufService.saveUnlawfulFishing(crackdownStatus);
|
||||
}
|
||||
|
||||
@GetMapping("/checkCaseNum")
|
||||
|
|
|
|||
|
|
@ -14,9 +14,9 @@ import java.io.Serializable;
|
|||
@NoArgsConstructor
|
||||
@DynamicInsert
|
||||
@DynamicUpdate
|
||||
@IdClass(CaptinPhotoFile.CaptinPhotoFileId.class)
|
||||
@Table(name = "captin_photo_file")
|
||||
public class CaptinPhotoFile extends FileInfo {
|
||||
@IdClass(SailorFile.SailorFileId.class)
|
||||
@Table(name = "sailor_file")
|
||||
public class SailorFile extends FileInfo {
|
||||
@Id
|
||||
@Column(name = "sailor_key")
|
||||
private Integer sailorKey;
|
||||
|
|
@ -45,7 +45,7 @@ public class CaptinPhotoFile extends FileInfo {
|
|||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public static class CaptinPhotoFileId implements Serializable {
|
||||
public static class SailorFileId implements Serializable {
|
||||
private Integer sailorKey;
|
||||
private Integer fileSeq;
|
||||
}
|
||||
|
|
@ -14,9 +14,9 @@ import java.io.Serializable;
|
|||
@NoArgsConstructor
|
||||
@DynamicInsert
|
||||
@DynamicUpdate
|
||||
@IdClass(CaptinPhotoVersion.CaptinPhotoVersionId.class)
|
||||
@Table(name = "captin_photo_version")
|
||||
public class CaptinPhotoVersion extends FileInfo {
|
||||
@IdClass(SailorFileVersion.SailorFileVersionId.class)
|
||||
@Table(name = "sailor_file_version")
|
||||
public class SailorFileVersion extends FileInfo {
|
||||
@Id
|
||||
@Column(name = "sailor_key")
|
||||
private Integer sailorKey;
|
||||
|
|
@ -49,7 +49,7 @@ public class CaptinPhotoVersion extends FileInfo {
|
|||
@Data
|
||||
@NoArgsConstructor
|
||||
@AllArgsConstructor
|
||||
public static class CaptinPhotoVersionId implements Serializable {
|
||||
public static class SailorFileVersionId implements Serializable {
|
||||
private Integer sailorKey;
|
||||
private Integer fileSeq;
|
||||
private Integer versionNo;
|
||||
|
|
@ -11,6 +11,7 @@ import lombok.Setter;
|
|||
import org.hibernate.annotations.DynamicInsert;
|
||||
import org.hibernate.annotations.DynamicUpdate;
|
||||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.LocalDate;
|
||||
|
|
@ -44,6 +45,8 @@ public class CrackdownStatus extends CrackdownStatusBaseEntity {
|
|||
private ProcessResult processResult;
|
||||
@Transient
|
||||
private List<Sailor> sailorList;
|
||||
@Transient
|
||||
private List<MultipartFile> sailorFileList;
|
||||
|
||||
@Transient
|
||||
private String crackdownPoliceEtc;
|
||||
|
|
|
|||
|
|
@ -5,8 +5,10 @@ import lombok.NoArgsConstructor;
|
|||
import lombok.Setter;
|
||||
import org.hibernate.annotations.DynamicInsert;
|
||||
import org.hibernate.annotations.DynamicUpdate;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.util.List;
|
||||
|
||||
@Getter
|
||||
@Setter
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.sailor;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.Violation;
|
||||
|
|
@ -12,7 +12,6 @@ import org.hibernate.annotations.DynamicUpdate;
|
|||
import org.springframework.format.annotation.DateTimeFormat;
|
||||
|
||||
import javax.persistence.*;
|
||||
import java.time.LocalDate;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -62,5 +61,5 @@ public class Sailor extends SailorBaseEntity {
|
|||
private LocalDateTime napoDt;
|
||||
|
||||
@Transient
|
||||
private List<CaptinPhotoFile> fileList;
|
||||
private List<SailorFile> fileList;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.sailor;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFileVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
import lombok.*;
|
||||
|
|
@ -54,5 +54,5 @@ public class SailorVersion extends SailorBaseEntity {
|
|||
private FishingBoat fishingBoat;
|
||||
|
||||
@Transient
|
||||
private List<CaptinPhotoVersion> fileList;
|
||||
private List<SailorFileVersion> fileList;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoFile;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface CaptionPhotoFileRepository extends JpaRepository<CaptinPhotoFile, CaptinPhotoFile.CaptinPhotoFileId> {
|
||||
|
||||
List<CaptinPhotoFile> findBySailorKeyOrderByFileSeqAsc(Integer sailorKey);
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoVersion;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
public interface CaptionPhotoVersionRepository extends JpaRepository<CaptinPhotoVersion, CaptinPhotoVersion.CaptinPhotoVersionId> {
|
||||
|
||||
}
|
||||
|
|
@ -0,0 +1,11 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFile;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public interface SailorFileRepository extends JpaRepository<SailorFile, SailorFile.SailorFileId> {
|
||||
|
||||
List<SailorFile> findBySailorKeyOrderByFileSeqAsc(Integer sailorKey);
|
||||
}
|
||||
|
|
@ -0,0 +1,8 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.repository;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFileVersion;
|
||||
import org.springframework.data.jpa.repository.JpaRepository;
|
||||
|
||||
public interface SailorFileVersionRepository extends JpaRepository<SailorFileVersion, SailorFileVersion.SailorFileVersionId> {
|
||||
|
||||
}
|
||||
|
|
@ -20,118 +20,130 @@ import java.util.List;
|
|||
@RequiredArgsConstructor
|
||||
public class CrackdownStatusService extends BaseService {
|
||||
|
||||
private final CrackdownStatusMapper crackdownStatusMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final CrackdownStatusVersionRepository crackdownStatusVersionRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final ProcessResultRepository processResultRepository;
|
||||
private final SailorRepository sailorRepository;
|
||||
private final CrackdownStatusMapper crackdownStatusMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final CrackdownStatusVersionRepository crackdownStatusVersionRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final ProcessResultRepository processResultRepository;
|
||||
private final SailorRepository sailorRepository;
|
||||
|
||||
public List<CrackdownStatus> selectCrackdownStatusList(CrackdownStatus crackdownStatus) {
|
||||
return crackdownStatusMapper.selectCrackdownStatusList(crackdownStatus);
|
||||
};
|
||||
public List<CrackdownStatus> selectCrackdownStatusList(CrackdownStatus crackdownStatus) {
|
||||
return crackdownStatusMapper.selectCrackdownStatusList(crackdownStatus);
|
||||
};
|
||||
|
||||
public Integer selectCrackdownStatusListCnt(CrackdownStatus crackdownStatus) {
|
||||
return crackdownStatusMapper.selectCrackdownStatusListCnt(crackdownStatus);
|
||||
public Integer selectCrackdownStatusListCnt(CrackdownStatus crackdownStatus) {
|
||||
return crackdownStatusMapper.selectCrackdownStatusListCnt(crackdownStatus);
|
||||
}
|
||||
|
||||
public CrackdownStatus selectCrackdownStatus(Integer cdsKey) {
|
||||
CrackdownStatus savedCrackdownStatus = crackdownStatusRepository.findById(cdsKey).orElse(null);
|
||||
if (savedCrackdownStatus != null) {
|
||||
|
||||
}
|
||||
return savedCrackdownStatus;
|
||||
}
|
||||
|
||||
public List<CrackdownStatusVersion> selectCrackdownStatusVersionList(Integer cdsKey) {
|
||||
return crackdownStatusVersionRepository.findByCdsKey(cdsKey);
|
||||
}
|
||||
|
||||
public CrackdownStatusVersion selectCrackdownStatusVersion(Integer versionNo, Integer cdsKey) {
|
||||
return crackdownStatusVersionRepository.findByVersionNoAndCdsKey(versionNo, cdsKey);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Integer saveCrackdownStatus(CrackdownStatus crackdownStatus) {
|
||||
if (crackdownStatus.getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(crackdownStatus.getViolationDeleteKeyList());
|
||||
}
|
||||
if (crackdownStatus.getSailorDeleteKeyList() != null) {
|
||||
sailorRepository.deleteAllByIdInQuery(crackdownStatus.getSailorDeleteKeyList());
|
||||
}
|
||||
|
||||
public CrackdownStatus selectCrackdownStatus(Integer cdsKey) {
|
||||
CrackdownStatus savedCrackdownStatus = crackdownStatusRepository.findById(cdsKey).orElse(null);
|
||||
if (savedCrackdownStatus != null) {
|
||||
|
||||
}
|
||||
return savedCrackdownStatus;
|
||||
if (crackdownStatus.getCrackdownBoatEtc() != null) {
|
||||
crackdownStatus.setCrackdownBoat(crackdownStatus.getCrackdownBoatEtc());
|
||||
}
|
||||
if (crackdownStatus.getCrackdownPoliceEtc() != null) {
|
||||
crackdownStatus.setCrackdownPolice(crackdownStatus.getCrackdownPoliceEtc());
|
||||
}
|
||||
|
||||
public List<CrackdownStatusVersion> selectCrackdownStatusVersionList(Integer cdsKey) {
|
||||
return crackdownStatusVersionRepository.findByCdsKey(cdsKey);
|
||||
Integer cdsKey = crackdownStatusRepository.save(crackdownStatus).getCdsKey();
|
||||
saveCrackdownStatusVersion(crackdownStatus);
|
||||
|
||||
if (crackdownStatus.getFishingBoat() != null) {
|
||||
if (crackdownStatus.getFishingBoat().getBoatMaterialEtc() != null) {
|
||||
crackdownStatus.getFishingBoat().setBoatMaterial(crackdownStatus.getFishingBoat().getBoatMaterialEtc());
|
||||
}
|
||||
if (crackdownStatus.getFishingBoat().getFisheryTypeEtc() != null) {
|
||||
crackdownStatus.getFishingBoat().setFisheryType(crackdownStatus.getFishingBoat().getFisheryTypeEtc());
|
||||
}
|
||||
|
||||
crackdownStatus.getFishingBoat().setCdsKey(cdsKey);
|
||||
Integer fbKey = fishingBoatRepository.save(crackdownStatus.getFishingBoat()).getFbKey();
|
||||
crackdownStatus.getFishingBoat().setFbKey(fbKey);
|
||||
}
|
||||
|
||||
public CrackdownStatusVersion selectCrackdownStatusVersion(Integer versionNo, Integer cdsKey) {
|
||||
return crackdownStatusVersionRepository.findByVersionNoAndCdsKey(versionNo, cdsKey);
|
||||
if (crackdownStatus.getProcessResult() != null) {
|
||||
if (crackdownStatus.getProcessResult().getProcessStatusEtc() != null) {
|
||||
crackdownStatus.getProcessResult().setProcessStatus(crackdownStatus.getProcessResult().getProcessStatusEtc());
|
||||
}
|
||||
crackdownStatus.getProcessResult().setCdsKey(cdsKey);
|
||||
Integer prKey = processResultRepository.save(crackdownStatus.getProcessResult()).getPrKey();
|
||||
crackdownStatus.getProcessResult().setPrKey(prKey);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Integer saveCrackdownStatus(CrackdownStatus crackdownStatus) {
|
||||
if (crackdownStatus.getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(crackdownStatus.getViolationDeleteKeyList());
|
||||
}
|
||||
if (crackdownStatus.getSailorDeleteKeyList() != null) {
|
||||
sailorRepository.deleteAllByIdInQuery(crackdownStatus.getSailorDeleteKeyList());
|
||||
}
|
||||
|
||||
if (crackdownStatus.getCrackdownBoatEtc() != null) {
|
||||
crackdownStatus.setCrackdownBoat(crackdownStatus.getCrackdownBoatEtc());
|
||||
}
|
||||
if (crackdownStatus.getCrackdownPoliceEtc() != null) {
|
||||
crackdownStatus.setCrackdownPolice(crackdownStatus.getCrackdownPoliceEtc());
|
||||
}
|
||||
|
||||
Integer cdsKey = crackdownStatusRepository.save(crackdownStatus).getCdsKey();
|
||||
saveCrackdownStatusVersion(crackdownStatus);
|
||||
|
||||
if (crackdownStatus.getFishingBoat() != null) {
|
||||
if (crackdownStatus.getFishingBoat().getBoatMaterialEtc() != null) {
|
||||
crackdownStatus.getFishingBoat().setBoatMaterial(crackdownStatus.getFishingBoat().getBoatMaterialEtc());
|
||||
}
|
||||
if (crackdownStatus.getFishingBoat().getFisheryTypeEtc() != null) {
|
||||
crackdownStatus.getFishingBoat().setFisheryType(crackdownStatus.getFishingBoat().getFisheryTypeEtc());
|
||||
}
|
||||
|
||||
crackdownStatus.getFishingBoat().setCdsKey(cdsKey);
|
||||
Integer fbKey = fishingBoatRepository.save(crackdownStatus.getFishingBoat()).getFbKey();
|
||||
crackdownStatus.getFishingBoat().setFbKey(fbKey);
|
||||
}
|
||||
|
||||
if (crackdownStatus.getProcessResult() != null) {
|
||||
if (crackdownStatus.getProcessResult().getProcessStatusEtc() != null) {
|
||||
crackdownStatus.getProcessResult().setProcessStatus(crackdownStatus.getProcessResult().getProcessStatusEtc());
|
||||
}
|
||||
crackdownStatus.getProcessResult().setCdsKey(cdsKey);
|
||||
Integer prKey = processResultRepository.save(crackdownStatus.getProcessResult()).getPrKey();
|
||||
crackdownStatus.getProcessResult().setPrKey(prKey);
|
||||
}
|
||||
|
||||
/*if (internationalCrimeArrest.getDeleteSpiKeyList() != null) {
|
||||
suspectPersonInfoRepository.deleteAllByIdInQuery(internationalCrimeArrest.getDeleteSpiKeyList());
|
||||
}*/
|
||||
|
||||
if (crackdownStatus.getSailorList() != null) {
|
||||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
sailor.setFbKey(crackdownStatus.getFishingBoat().getFbKey());
|
||||
}
|
||||
sailorRepository.saveAll(crackdownStatus.getSailorList());
|
||||
}
|
||||
|
||||
if (crackdownStatus.getViolationList().get(0).getViolation() != null) {
|
||||
Violation lastViolation = violationRepository.findTopByFbKeyOrderByViolationKeyDesc(crackdownStatus.getFbKey()).orElse(null);
|
||||
int violationKey = lastViolation==null?1:(lastViolation.getViolationKey()+1);
|
||||
|
||||
for(Violation violation: crackdownStatus.getViolationList()){
|
||||
if (violation.getViolationEtc() != null) {
|
||||
violation.setViolation(violation.getViolationEtc());
|
||||
}
|
||||
violation.setFbKey(crackdownStatus.getFishingBoat().getFbKey());
|
||||
if (violation.getViolationKey() == null) {
|
||||
violation.setViolationKey(violationKey);
|
||||
violationKey++;
|
||||
}
|
||||
}
|
||||
violationRepository.saveAll(crackdownStatus.getViolationList());
|
||||
}
|
||||
|
||||
return cdsKey;
|
||||
if (crackdownStatus.getSailorList() != null) {
|
||||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
sailor.setFbKey(crackdownStatus.getFishingBoat().getFbKey());
|
||||
}
|
||||
sailorRepository.saveAll(crackdownStatus.getSailorList());
|
||||
}
|
||||
|
||||
public void saveCrackdownStatusVersion(CrackdownStatus crackdownStatus) {
|
||||
CrackdownStatusVersion lastVersion = crackdownStatusVersionRepository.findTopByCdsKeyOrderByVersionNoDesc(crackdownStatus.getCdsKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
if (crackdownStatus.getViolationList().get(0).getViolation() != null) {
|
||||
Violation lastViolation = violationRepository.findTopByFbKeyOrderByViolationKeyDesc(crackdownStatus.getFbKey()).orElse(null);
|
||||
int violationKey = lastViolation==null?1:(lastViolation.getViolationKey()+1);
|
||||
|
||||
CrackdownStatusVersion crackdownStatusVersion = new CrackdownStatusVersion();
|
||||
BeanUtils.copyProperties(crackdownStatus, crackdownStatusVersion);
|
||||
crackdownStatusVersion.setVersionNo(versionNo);
|
||||
|
||||
crackdownStatusVersionRepository.save(crackdownStatusVersion);
|
||||
for(Violation violation: crackdownStatus.getViolationList()){
|
||||
if (violation.getViolationEtc() != null) {
|
||||
violation.setViolation(violation.getViolationEtc());
|
||||
}
|
||||
violation.setFbKey(crackdownStatus.getFishingBoat().getFbKey());
|
||||
if (violation.getViolationKey() == null) {
|
||||
violation.setViolationKey(violationKey);
|
||||
violationKey++;
|
||||
}
|
||||
}
|
||||
violationRepository.saveAll(crackdownStatus.getViolationList());
|
||||
}
|
||||
|
||||
return cdsKey;
|
||||
}
|
||||
|
||||
public void saveCrackdownStatusVersion(CrackdownStatus crackdownStatus) {
|
||||
CrackdownStatusVersion lastVersion = crackdownStatusVersionRepository.findTopByCdsKeyOrderByVersionNoDesc(crackdownStatus.getCdsKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
|
||||
CrackdownStatusVersion crackdownStatusVersion = new CrackdownStatusVersion();
|
||||
BeanUtils.copyProperties(crackdownStatus, crackdownStatusVersion);
|
||||
crackdownStatusVersion.setVersionNo(versionNo);
|
||||
|
||||
crackdownStatusVersionRepository.save(crackdownStatusVersion);
|
||||
}
|
||||
|
||||
public int saveCrackdownStatusOnly(CrackdownStatus crackdownStatus) {
|
||||
int cdsKey = crackdownStatusRepository.save(crackdownStatus).getCdsKey();
|
||||
if(!crackdownStatus.getStatus().equals("DST001")){
|
||||
CrackdownStatusVersion lastVersion = crackdownStatusVersionRepository.findTopByCdsKeyOrderByVersionNoDesc(cdsKey).orElse(null);
|
||||
CrackdownStatusVersion crackdownStatusVersion = new CrackdownStatusVersion();
|
||||
BeanUtils.copyProperties(crackdownStatus, crackdownStatusVersion);
|
||||
crackdownStatusVersion.setVersionNo(lastVersion==null?1:(lastVersion.getVersionNo()+1));
|
||||
crackdownStatusVersionRepository.save(crackdownStatusVersion);
|
||||
}
|
||||
return cdsKey;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus.service;
|
|||
import com.dbnt.faisp.config.BaseService;
|
||||
import com.dbnt.faisp.config.FileInfo;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.CrackdownStatusMapper;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.CaptinPhotoVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFileVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatusVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
|
|
@ -45,8 +45,8 @@ public class FishingBoatService extends BaseService {
|
|||
private final ProcessResultVersionRepository processResultVersionRepository;
|
||||
private final SailorRepository sailorRepository;
|
||||
private final SailorVersionRepository sailorVersionRepository;
|
||||
private final CaptionPhotoFileRepository captionPhotoFileRepository;
|
||||
private final CaptionPhotoVersionRepository captionPhotoVersionRepository;
|
||||
private final SailorFileRepository sailorFileRepository;
|
||||
private final SailorFileVersionRepository sailorFileVersionRepository;
|
||||
|
||||
public List<CrackdownStatus> selectFishingBoatList(CrackdownStatus crackdownStatus){
|
||||
return crackdownStatusMapper.selectFishingBoatList(crackdownStatus);
|
||||
|
|
@ -65,7 +65,7 @@ public class FishingBoatService extends BaseService {
|
|||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
if(sailor.getPosition().equals("POS001")){
|
||||
// 선장의 첨부파일 첨부
|
||||
sailor.setFileList(captionPhotoFileRepository.findBySailorKeyOrderByFileSeqAsc(sailor.getSailorKey()));
|
||||
sailor.setFileList(sailorFileRepository.findBySailorKeyOrderByFileSeqAsc(sailor.getSailorKey()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -75,51 +75,31 @@ public class FishingBoatService extends BaseService {
|
|||
@Transactional
|
||||
public Integer saveCrackdownStatus(CrackdownStatus crackdownStatus, List<MultipartFile> sailorFiles) {
|
||||
Integer cdsKey, fbKey;
|
||||
FishingBoat fishingBoat = crackdownStatus.getFishingBoat();
|
||||
List<Violation> violationList = crackdownStatus.getViolationList();
|
||||
ProcessResult processResult = crackdownStatus.getProcessResult();
|
||||
List<Sailor> sailorList = crackdownStatus.getSailorList();
|
||||
if (crackdownStatus.getCdsKey()==null || crackdownStatus.getCdsKey().equals(0)){
|
||||
// 최초 등록시 단속현황, 처리현황, 선원정보를 같이 등록.
|
||||
// 단속현황, 단속현황버전 저장.
|
||||
crackdownStatus = setWriteInfo(crackdownStatus);
|
||||
// crackdownStatus = setWriteInfo(crackdownStatus);
|
||||
cdsKey = crackdownStatusRepository.save(crackdownStatus).getCdsKey();
|
||||
CrackdownStatusVersion crackdownStatusVersion = new CrackdownStatusVersion();
|
||||
BeanUtils.copyProperties(crackdownStatus, crackdownStatusVersion);
|
||||
crackdownStatusVersion.setVersionNo(1);
|
||||
crackdownStatusVersionRepository.save(crackdownStatusVersion);
|
||||
// 어선정보, 어선정보버전 저장.
|
||||
FishingBoat fishingBoat = crackdownStatus.getFishingBoat();
|
||||
fishingBoat.setCdsKey(cdsKey);
|
||||
fbKey = fishingBoatRepository.save(fishingBoat).getFbKey();
|
||||
FishingBoatVersion fishingBoatVersion = new FishingBoatVersion();
|
||||
BeanUtils.copyProperties(fishingBoat, fishingBoatVersion);
|
||||
fishingBoatVersion.setVersionNo(1);
|
||||
fishingBoatVersionRepository.save(fishingBoatVersion);
|
||||
// 위반사항, 위반사항버전 저장.
|
||||
List<Violation> violationList = crackdownStatus.getViolationList();
|
||||
List<ViolationVersion> violationVersionList = new ArrayList<>();
|
||||
int i = 1;
|
||||
if(violationList!=null){
|
||||
for(Violation violation: violationList){
|
||||
violation.setViolationKey(i++);
|
||||
violation.setFbKey(fbKey);
|
||||
|
||||
ViolationVersion violationVersion = new ViolationVersion();
|
||||
BeanUtils.copyProperties(violation, violationVersion);
|
||||
violationVersion.setVersionNo(1);
|
||||
violationVersionList.add(violationVersion);
|
||||
}
|
||||
violationRepository.saveAll(violationList);
|
||||
violationVersionRepository.saveAll(violationVersionList);
|
||||
}
|
||||
// 처리현황, 처리현황버전 저장.
|
||||
ProcessResult processResult = crackdownStatus.getProcessResult();
|
||||
ProcessResultVersion processResultVersion = new ProcessResultVersion();
|
||||
processResult.setCdsKey(cdsKey);
|
||||
BeanUtils.copyProperties(processResult, processResultVersion);
|
||||
processResultVersion.setVersionNo(1);
|
||||
Integer prKey = processResultRepository.save(processResult).getPrKey();
|
||||
processResultVersion.setPrKey(prKey);
|
||||
processResultVersionRepository.save(processResultVersion);
|
||||
processResultRepository.save(processResult);
|
||||
// 선원정보, 선원정보버전 저장.
|
||||
List<Sailor> sailorList = crackdownStatus.getSailorList();
|
||||
if(sailorList != null){
|
||||
for(Sailor sailor: sailorList){
|
||||
sailor.setFbKey(fbKey);
|
||||
|
|
@ -140,11 +120,10 @@ public class FishingBoatService extends BaseService {
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
}else{
|
||||
// 업데이트시에는 어선정보만 수정.
|
||||
cdsKey = crackdownStatus.getCdsKey();
|
||||
FishingBoat fishingBoat = crackdownStatus.getFishingBoat();
|
||||
fbKey = fishingBoat.getFbKey();
|
||||
FishingBoatVersion newInfo = new FishingBoatVersion();
|
||||
fishingBoat.setCdsKey(cdsKey);
|
||||
fishingBoat.setWrtDt(LocalDateTime.now());
|
||||
|
|
@ -154,22 +133,61 @@ public class FishingBoatService extends BaseService {
|
|||
fishingBoatRepository.save(fishingBoat);
|
||||
fishingBoatVersionRepository.save(newInfo);
|
||||
// 위반사항
|
||||
List<Violation> violationList = crackdownStatus.getViolationList();
|
||||
if(violationList != null){
|
||||
List<ViolationVersion> violationVersionList = new ArrayList<>();
|
||||
int i=1;
|
||||
ViolationVersion lastViolationVersion = violationVersionRepository.findTop1ByFbKeyOrderByVersionNoDesc(fishingBoat.getFbKey()).orElse(null);
|
||||
for(Violation violation: violationList){
|
||||
violation.setFbKey(fishingBoat.getFbKey());
|
||||
violation.setViolationKey(i++);
|
||||
}
|
||||
violationRepository.saveAll(violationList);
|
||||
}
|
||||
}
|
||||
|
||||
if(!crackdownStatus.getStatus().equals("DST001")) {
|
||||
CrackdownStatusVersion crackdownStatusVersion = new CrackdownStatusVersion();
|
||||
BeanUtils.copyProperties(crackdownStatus, crackdownStatusVersion);
|
||||
crackdownStatusVersion.setVersionNo(1);
|
||||
crackdownStatusVersionRepository.save(crackdownStatusVersion);
|
||||
FishingBoatVersion fishingBoatVersion = new FishingBoatVersion();
|
||||
BeanUtils.copyProperties(fishingBoat, fishingBoatVersion);
|
||||
fishingBoatVersion.setVersionNo(1);
|
||||
fishingBoatVersionRepository.save(fishingBoatVersion);
|
||||
|
||||
List<ViolationVersion> violationVersionList = new ArrayList<>();
|
||||
ViolationVersion lastViolationVersion = violationVersionRepository.findTop1ByFbKeyOrderByVersionNoDesc(fishingBoat.getFbKey()).orElse(null);
|
||||
if(violationList!=null){
|
||||
for(Violation violation: violationList){
|
||||
ViolationVersion violationVersion = new ViolationVersion();
|
||||
BeanUtils.copyProperties(violation, violationVersion);
|
||||
violationVersion.setVersionNo(lastViolationVersion.getVersionNo()+1);
|
||||
violationVersionList.add(violationVersion);
|
||||
}
|
||||
violationRepository.saveAll(violationList);
|
||||
violationVersionRepository.saveAll(violationVersionList);
|
||||
}
|
||||
ProcessResultVersion processResultVersion = new ProcessResultVersion();
|
||||
BeanUtils.copyProperties(processResult, processResultVersion);
|
||||
processResultVersion.setVersionNo(1);
|
||||
processResultVersionRepository.save(processResultVersion);
|
||||
if(sailorList != null){
|
||||
for(Sailor sailor: sailorList){
|
||||
sailor.setFbKey(fbKey);
|
||||
|
||||
SailorVersion sailorVersion = new SailorVersion();
|
||||
|
||||
Integer sailorKey = sailorRepository.save(sailor).getSailorKey();
|
||||
|
||||
BeanUtils.copyProperties(sailor, sailorVersion);
|
||||
sailorVersion.setVersionNo(1);
|
||||
sailorVersion.setSailorKey(sailorKey);
|
||||
Integer versionNo = sailorVersionRepository.save(sailorVersion).getVersionNo();
|
||||
if(sailor.getPosition().equals("POS001")){
|
||||
//선장은 사진이 같이 업로드 됨.
|
||||
if(sailorFiles!= null && sailorFiles.size()>0) {
|
||||
saveCaptainPhoto(sailorKey, versionNo, sailorFiles);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
return cdsKey;
|
||||
}
|
||||
|
|
@ -185,37 +203,7 @@ public class FishingBoatService extends BaseService {
|
|||
}
|
||||
|
||||
public FileInfo selectSailorFile(Integer sailorKey, Integer fileSeq) {
|
||||
return captionPhotoFileRepository.findById(new CaptinPhotoFile.CaptinPhotoFileId(sailorKey, fileSeq)).orElse(null);
|
||||
}
|
||||
|
||||
private CrackdownStatus setWriteInfo(CrackdownStatus crackdownStatus){
|
||||
FishingBoat fishingBoat = crackdownStatus.getFishingBoat();
|
||||
fishingBoat.setWrtDt(LocalDateTime.now());
|
||||
|
||||
crackdownStatus.setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
crackdownStatus.setWrtPart(fishingBoat.getWrtPart());
|
||||
crackdownStatus.setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
crackdownStatus.setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
crackdownStatus.setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
crackdownStatus.setWrtDt(LocalDateTime.now());
|
||||
|
||||
crackdownStatus.getProcessResult().setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
crackdownStatus.getProcessResult().setWrtPart(fishingBoat.getWrtPart());
|
||||
crackdownStatus.getProcessResult().setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
crackdownStatus.getProcessResult().setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
crackdownStatus.getProcessResult().setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
crackdownStatus.getProcessResult().setWrtDt(LocalDateTime.now());
|
||||
if(crackdownStatus.getSailorList()!=null){
|
||||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
sailor.setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
sailor.setWrtPart(fishingBoat.getWrtPart());
|
||||
sailor.setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
sailor.setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
sailor.setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
sailor.setWrtDt(LocalDateTime.now());
|
||||
}
|
||||
}
|
||||
return crackdownStatus;
|
||||
return sailorFileRepository.findById(new SailorFile.SailorFileId(sailorKey, fileSeq)).orElse(null);
|
||||
}
|
||||
|
||||
private void saveCaptainPhoto(Integer sailorKey, Integer versionNo, List<MultipartFile> fileList){
|
||||
|
|
@ -227,7 +215,7 @@ public class FishingBoatService extends BaseService {
|
|||
|
||||
String originalFilename = file.getOriginalFilename();
|
||||
int extnIdx = originalFilename.lastIndexOf(".");
|
||||
CaptinPhotoFile fileInfo = new CaptinPhotoFile();
|
||||
SailorFile fileInfo = new SailorFile();
|
||||
fileInfo.setSailorKey(sailorKey);
|
||||
fileInfo.setFileSeq(fileSeq++);
|
||||
fileInfo.setOrigNm(originalFilename.substring(0, extnIdx));
|
||||
|
|
@ -235,11 +223,24 @@ public class FishingBoatService extends BaseService {
|
|||
fileInfo.setConvNm(saveName);
|
||||
fileInfo.setFileSize(calculationSize(file.getSize()));
|
||||
fileInfo.setSavePath(path);
|
||||
CaptinPhotoVersion versionInfo = new CaptinPhotoVersion();
|
||||
SailorFileVersion versionInfo = new SailorFileVersion();
|
||||
BeanUtils.copyProperties(fileInfo, versionInfo);
|
||||
versionInfo.setVersionNo(versionNo);
|
||||
captionPhotoFileRepository.save(fileInfo);
|
||||
captionPhotoVersionRepository.save(versionInfo);
|
||||
sailorFileRepository.save(fileInfo);
|
||||
sailorFileVersionRepository.save(versionInfo);
|
||||
}
|
||||
}
|
||||
|
||||
public int saveFishingBoatOnly(int cdsKey, FishingBoat fishingBoat) {
|
||||
fishingBoat.setCdsKey(cdsKey);
|
||||
int fbKey = fishingBoatRepository.save(fishingBoat).getFbKey();
|
||||
if(!fishingBoat.getStatus().equals("DST001")){
|
||||
FishingBoatVersion lastVersion = fishingBoatVersionRepository.findTop1ByFbKeyOrderByVersionNoDesc(fbKey).orElse(null);
|
||||
FishingBoatVersion fishingBoatVersion = new FishingBoatVersion();
|
||||
BeanUtils.copyProperties(fishingBoat, fishingBoatVersion);
|
||||
fishingBoatVersion.setVersionNo(lastVersion==null?1:(lastVersion.getVersionNo()+1));
|
||||
fishingBoatVersionRepository.save(fishingBoatVersion);
|
||||
}
|
||||
return fbKey;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -22,58 +22,58 @@ import java.util.List;
|
|||
@RequiredArgsConstructor
|
||||
public class ProcessResultService extends BaseService {
|
||||
|
||||
private final ProcessResultMapper processResultMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final ProcessResultRepository processResultRepository;
|
||||
private final ProcessResultVersionRepository processResultVersionRepository;
|
||||
private final ProcessResultMapper processResultMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final ProcessResultRepository processResultRepository;
|
||||
private final ProcessResultVersionRepository processResultVersionRepository;
|
||||
|
||||
public List<ProcessResult> selectProcessResultList(ProcessResult processResult) {
|
||||
return processResultMapper.selectProcessResultList(processResult);
|
||||
public List<ProcessResult> selectProcessResultList(ProcessResult processResult) {
|
||||
return processResultMapper.selectProcessResultList(processResult);
|
||||
}
|
||||
|
||||
public Integer selectProcessResultListCnt(ProcessResult processResult) {
|
||||
return processResultMapper.selectProcessResultListCnt(processResult);
|
||||
}
|
||||
|
||||
public ProcessResult selectProcessResult(Integer prKey) {
|
||||
return processResultRepository.findById(prKey).orElse(null);
|
||||
}
|
||||
|
||||
public List<ProcessResultVersion> selectProcessResultVersionList(Integer prKey) {
|
||||
return processResultVersionRepository.findByPrKey(prKey);
|
||||
}
|
||||
|
||||
public ProcessResultVersion selectProcessResultVersion(Integer versionNo, Integer prKey) {
|
||||
return processResultVersionRepository.findByVersionNoAndPrKey(versionNo, prKey);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Integer saveProcessResult(ProcessResult processResult) {
|
||||
if (processResult.getCrackdownStatus().getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(processResult.getCrackdownStatus().getViolationDeleteKeyList());
|
||||
}
|
||||
|
||||
public Integer selectProcessResultListCnt(ProcessResult processResult) {
|
||||
return processResultMapper.selectProcessResultListCnt(processResult);
|
||||
if (processResult.getExecutionDetailEtc() != null) {
|
||||
processResult.setExecutionDetail(processResult.getExecutionDetailEtc());
|
||||
}
|
||||
|
||||
public ProcessResult selectProcessResult(Integer prKey) {
|
||||
return processResultRepository.findById(prKey).orElse(null);
|
||||
Integer prKey = 0;
|
||||
ProcessResult existingProcessResult = processResultRepository.findByPrKey(processResult.getPrKey()).orElse(null);
|
||||
|
||||
if (existingProcessResult != null) {
|
||||
Utils.copyNonNullProperties(processResult, existingProcessResult);
|
||||
existingProcessResult.setCrackdownStatus(null);
|
||||
existingProcessResult.setFishingBoat(null);
|
||||
existingProcessResult.setViolationList(null);
|
||||
prKey = processResultRepository.save(existingProcessResult).getPrKey();
|
||||
saveProcessResultVersion(existingProcessResult);
|
||||
} else {
|
||||
prKey = processResultRepository.save(processResult).getPrKey();
|
||||
saveProcessResultVersion(processResult);
|
||||
}
|
||||
|
||||
public List<ProcessResultVersion> selectProcessResultVersionList(Integer prKey) {
|
||||
return processResultVersionRepository.findByPrKey(prKey);
|
||||
}
|
||||
|
||||
public ProcessResultVersion selectProcessResultVersion(Integer versionNo, Integer prKey) {
|
||||
return processResultVersionRepository.findByVersionNoAndPrKey(versionNo, prKey);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Integer saveProcessResult(ProcessResult processResult) {
|
||||
if (processResult.getCrackdownStatus().getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(processResult.getCrackdownStatus().getViolationDeleteKeyList());
|
||||
}
|
||||
|
||||
if (processResult.getExecutionDetailEtc() != null) {
|
||||
processResult.setExecutionDetail(processResult.getExecutionDetailEtc());
|
||||
}
|
||||
|
||||
Integer prKey = 0;
|
||||
ProcessResult existingProcessResult = processResultRepository.findByPrKey(processResult.getPrKey()).orElse(null);
|
||||
|
||||
if (existingProcessResult != null) {
|
||||
Utils.copyNonNullProperties(processResult, existingProcessResult);
|
||||
existingProcessResult.setCrackdownStatus(null);
|
||||
existingProcessResult.setFishingBoat(null);
|
||||
existingProcessResult.setViolationList(null);
|
||||
prKey = processResultRepository.save(existingProcessResult).getPrKey();
|
||||
saveProcessResultVersion(existingProcessResult);
|
||||
} else {
|
||||
prKey = processResultRepository.save(processResult).getPrKey();
|
||||
saveProcessResultVersion(processResult);
|
||||
}
|
||||
|
||||
/*if (processResult.getCrackdownStatus() != null) {
|
||||
if (processResult.getCrackdownStatus().getCrackdownPoliceEtc() != null) {
|
||||
processResult.getCrackdownStatus().setCrackdownPolice(processResult.getCrackdownStatus().getCrackdownPoliceEtc());
|
||||
|
|
@ -107,17 +107,29 @@ public class ProcessResultService extends BaseService {
|
|||
violationRepository.saveAll(processResult.getViolationList());
|
||||
}*/
|
||||
|
||||
return prKey;
|
||||
}
|
||||
|
||||
public void saveProcessResultVersion(ProcessResult processResult) {
|
||||
ProcessResultVersion lastVersion = processResultVersionRepository.findTopByPrKeyOrderByVersionNoDesc(processResult.getPrKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
|
||||
ProcessResultVersion processResultVersion = new ProcessResultVersion();
|
||||
BeanUtils.copyProperties(processResult, processResultVersion);
|
||||
processResultVersion.setVersionNo(versionNo);
|
||||
|
||||
processResultVersionRepository.save(processResultVersion);
|
||||
return prKey;
|
||||
}
|
||||
|
||||
public void saveProcessResultVersion(ProcessResult processResult) {
|
||||
ProcessResultVersion lastVersion = processResultVersionRepository.findTopByPrKeyOrderByVersionNoDesc(processResult.getPrKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
|
||||
ProcessResultVersion processResultVersion = new ProcessResultVersion();
|
||||
BeanUtils.copyProperties(processResult, processResultVersion);
|
||||
processResultVersion.setVersionNo(versionNo);
|
||||
|
||||
processResultVersionRepository.save(processResultVersion);
|
||||
}
|
||||
|
||||
public void saveProcessResultOnly(int cdsKey, ProcessResult processResult) {
|
||||
processResult.setCdsKey(cdsKey);
|
||||
int prKey = processResultRepository.save(processResult).getPrKey();
|
||||
if(!processResult.getStatus().equals("DST001")){
|
||||
ProcessResultVersion lastVersion = processResultVersionRepository.findTopByPrKeyOrderByVersionNoDesc(prKey).orElse(null);
|
||||
ProcessResultVersion processResultVersion = new ProcessResultVersion();
|
||||
BeanUtils.copyProperties(processResult, processResultVersion);
|
||||
processResultVersion.setVersionNo(lastVersion==null?1:(lastVersion.getVersionNo()+1));
|
||||
processResultVersionRepository.save(processResultVersion);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -3,6 +3,8 @@ package com.dbnt.faisp.main.faStatistics.crackdownsStatus.service;
|
|||
|
||||
import com.dbnt.faisp.config.BaseService;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.mapper.SailorMapper;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFile;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.SailorFileVersion;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.Violation;
|
||||
|
|
@ -14,99 +16,145 @@ import lombok.RequiredArgsConstructor;
|
|||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.List;
|
||||
import java.util.UUID;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class SailorService extends BaseService {
|
||||
|
||||
private final SailorMapper sailorMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final ProcessResultRepository processResultRepository;
|
||||
private final SailorRepository sailorRepository;
|
||||
private final SailorVersionRepository sailorVersionRepository;
|
||||
private final SailorMapper sailorMapper;
|
||||
private final CrackdownStatusRepository crackdownStatusRepository;
|
||||
private final FishingBoatRepository fishingBoatRepository;
|
||||
private final ViolationRepository violationRepository;
|
||||
private final SailorRepository sailorRepository;
|
||||
private final SailorVersionRepository sailorVersionRepository;
|
||||
private final SailorFileRepository sailorFileRepository;
|
||||
private final SailorFileVersionRepository sailorFileVersionRepository;
|
||||
|
||||
public List<Sailor> selectSailorList(Sailor sailor) {
|
||||
return sailorMapper.selectSailorList(sailor);
|
||||
public List<Sailor> selectSailorList(Sailor sailor) {
|
||||
return sailorMapper.selectSailorList(sailor);
|
||||
}
|
||||
|
||||
public Sailor selectSailor(Integer sailorKey) {
|
||||
return sailorRepository.findById(sailorKey).orElse(null);
|
||||
}
|
||||
|
||||
public List<SailorVersion> selectSailorVersionList(Integer sailorKey) {
|
||||
return sailorVersionRepository.findBySailorKey(sailorKey);
|
||||
}
|
||||
|
||||
public SailorVersion selectSailorVersion(Integer versionNo, Integer sailorKey) {
|
||||
return sailorVersionRepository.findByVersionNoAndSailorKey(versionNo, sailorKey);
|
||||
}
|
||||
|
||||
@Transactional
|
||||
public Integer saveSailor(Sailor sailor) {
|
||||
if (sailor.getCrackdownStatus().getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(sailor.getCrackdownStatus().getViolationDeleteKeyList());
|
||||
}
|
||||
Integer sailorKey = 0;
|
||||
Sailor existingSailor = sailorRepository.findBySailorKey(sailor.getSailorKey());
|
||||
|
||||
if (existingSailor != null) {
|
||||
Utils.copyNonNullProperties(sailor, existingSailor);
|
||||
existingSailor.setViolationList(null);
|
||||
sailorKey = sailorRepository.save(existingSailor).getSailorKey();
|
||||
saveSailorVersion(existingSailor);
|
||||
} else {
|
||||
sailorKey = sailorRepository.save(sailor).getSailorKey();
|
||||
saveSailorVersion(sailor);
|
||||
}
|
||||
|
||||
public Sailor selectSailor(Integer sailorKey) {
|
||||
return sailorRepository.findById(sailorKey).orElse(null);
|
||||
if (sailor.getCrackdownStatus() != null) {
|
||||
if (sailor.getCrackdownStatus().getCrackdownPoliceEtc() != null) {
|
||||
sailor.getCrackdownStatus().setCrackdownPolice(sailor.getCrackdownStatus().getCrackdownPoliceEtc());
|
||||
}
|
||||
|
||||
CrackdownStatus existingCrackdownStatus = crackdownStatusRepository.findByCdsKey(sailor.getCrackdownStatus().getCdsKey()).orElse(null);
|
||||
Utils.copyNonNullProperties(sailor, existingCrackdownStatus);
|
||||
sailor.setCrackdownStatus(crackdownStatusRepository.save(existingCrackdownStatus));
|
||||
}
|
||||
|
||||
public List<SailorVersion> selectSailorVersionList(Integer sailorKey) {
|
||||
return sailorVersionRepository.findBySailorKey(sailorKey);
|
||||
if (sailor.getFishingBoat() != null) {
|
||||
FishingBoat existingFishingBoat = fishingBoatRepository.findByCdsKey(sailor.getCrackdownStatus().getCdsKey()).orElse(null);
|
||||
Utils.copyNonNullProperties(sailor, existingFishingBoat);
|
||||
fishingBoatRepository.save(existingFishingBoat);
|
||||
}
|
||||
|
||||
public SailorVersion selectSailorVersion(Integer versionNo, Integer sailorKey) {
|
||||
return sailorVersionRepository.findByVersionNoAndSailorKey(versionNo, sailorKey);
|
||||
}
|
||||
if (sailor.getViolationList() != null && sailor.getViolationList().get(0).getViolation() != null) {
|
||||
Violation lastViolation = violationRepository.findTopByFbKeyOrderByViolationKeyDesc(sailor.getCrackdownStatus().getFbKey()).orElse(null);
|
||||
int violationKey = lastViolation==null?1:(lastViolation.getViolationKey()+1);
|
||||
|
||||
@Transactional
|
||||
public Integer saveSailor(Sailor sailor) {
|
||||
if (sailor.getCrackdownStatus().getViolationDeleteKeyList() != null) {
|
||||
violationRepository.deleteAllByIdInQuery(sailor.getCrackdownStatus().getViolationDeleteKeyList());
|
||||
for(Violation violation: sailor.getViolationList()){
|
||||
if (violation.getViolationEtc() != null) {
|
||||
violation.setViolation(violation.getViolationEtc());
|
||||
}
|
||||
Integer sailorKey = 0;
|
||||
Sailor existingSailor = sailorRepository.findBySailorKey(sailor.getSailorKey());
|
||||
|
||||
if (existingSailor != null) {
|
||||
Utils.copyNonNullProperties(sailor, existingSailor);
|
||||
existingSailor.setViolationList(null);
|
||||
sailorKey = sailorRepository.save(existingSailor).getSailorKey();
|
||||
saveSailorVersion(existingSailor);
|
||||
} else {
|
||||
sailorKey = sailorRepository.save(sailor).getSailorKey();
|
||||
saveSailorVersion(sailor);
|
||||
violation.setFbKey(sailor.getFishingBoat().getFbKey());
|
||||
if (violation.getViolationKey() == null) {
|
||||
violation.setViolationKey(violationKey);
|
||||
violationKey++;
|
||||
}
|
||||
|
||||
if (sailor.getCrackdownStatus() != null) {
|
||||
if (sailor.getCrackdownStatus().getCrackdownPoliceEtc() != null) {
|
||||
sailor.getCrackdownStatus().setCrackdownPolice(sailor.getCrackdownStatus().getCrackdownPoliceEtc());
|
||||
}
|
||||
|
||||
CrackdownStatus existingCrackdownStatus = crackdownStatusRepository.findByCdsKey(sailor.getCrackdownStatus().getCdsKey()).orElse(null);
|
||||
Utils.copyNonNullProperties(sailor, existingCrackdownStatus);
|
||||
sailor.setCrackdownStatus(crackdownStatusRepository.save(existingCrackdownStatus));
|
||||
}
|
||||
|
||||
if (sailor.getFishingBoat() != null) {
|
||||
FishingBoat existingFishingBoat = fishingBoatRepository.findByCdsKey(sailor.getCrackdownStatus().getCdsKey()).orElse(null);
|
||||
Utils.copyNonNullProperties(sailor, existingFishingBoat);
|
||||
fishingBoatRepository.save(existingFishingBoat);
|
||||
}
|
||||
|
||||
if (sailor.getViolationList() != null && sailor.getViolationList().get(0).getViolation() != null) {
|
||||
Violation lastViolation = violationRepository.findTopByFbKeyOrderByViolationKeyDesc(sailor.getCrackdownStatus().getFbKey()).orElse(null);
|
||||
int violationKey = lastViolation==null?1:(lastViolation.getViolationKey()+1);
|
||||
|
||||
for(Violation violation: sailor.getViolationList()){
|
||||
if (violation.getViolationEtc() != null) {
|
||||
violation.setViolation(violation.getViolationEtc());
|
||||
}
|
||||
violation.setFbKey(sailor.getFishingBoat().getFbKey());
|
||||
if (violation.getViolationKey() == null) {
|
||||
violation.setViolationKey(violationKey);
|
||||
violationKey++;
|
||||
}
|
||||
}
|
||||
violationRepository.saveAll(sailor.getViolationList());
|
||||
}
|
||||
|
||||
return sailorKey;
|
||||
}
|
||||
violationRepository.saveAll(sailor.getViolationList());
|
||||
}
|
||||
|
||||
public void saveSailorVersion(Sailor sailor) {
|
||||
SailorVersion lastVersion = sailorVersionRepository.findTopBySailorKeyOrderByVersionNoDesc(sailor.getSailorKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
return sailorKey;
|
||||
}
|
||||
|
||||
SailorVersion sailorVersion = new SailorVersion();
|
||||
BeanUtils.copyProperties(sailor, sailorVersion);
|
||||
sailorVersion.setVersionNo(versionNo);
|
||||
public void saveSailorVersion(Sailor sailor) {
|
||||
SailorVersion lastVersion = sailorVersionRepository.findTopBySailorKeyOrderByVersionNoDesc(sailor.getSailorKey()).orElse(null);
|
||||
int versionNo = lastVersion==null?1:(lastVersion.getVersionNo()+1);
|
||||
|
||||
sailorVersionRepository.save(sailorVersion);
|
||||
SailorVersion sailorVersion = new SailorVersion();
|
||||
BeanUtils.copyProperties(sailor, sailorVersion);
|
||||
sailorVersion.setVersionNo(versionNo);
|
||||
|
||||
sailorVersionRepository.save(sailorVersion);
|
||||
}
|
||||
|
||||
public void saveSailorOnly(int fbKey, Sailor sailor, List<MultipartFile> sailorFileList) {
|
||||
sailor.setFbKey(fbKey);
|
||||
int sailorKey = sailorRepository.save(sailor).getSailorKey();
|
||||
Integer versionNo = null;
|
||||
if(!sailor.getStatus().equals("DST001")){
|
||||
SailorVersion lastVersion = sailorVersionRepository.findTopBySailorKeyOrderByVersionNoDesc(sailorKey).orElse(null);
|
||||
SailorVersion sailorVersion = new SailorVersion();
|
||||
BeanUtils.copyProperties(sailor, sailorVersion);
|
||||
sailorVersion.setVersionNo(lastVersion==null?1:(lastVersion.getVersionNo()));
|
||||
versionNo = sailorVersionRepository.save(sailorVersion).getVersionNo();
|
||||
}
|
||||
if(sailorFileList!=null){
|
||||
saveSailorFile(sailorKey, versionNo, sailorFileList);
|
||||
}
|
||||
}
|
||||
private void saveSailorFile(Integer sailorKey, Integer versionNo, List<MultipartFile> fileList){
|
||||
int fileSeq = 1;
|
||||
for(MultipartFile file : fileList){
|
||||
String saveName = UUID.randomUUID().toString();
|
||||
String path = locationPath+ File.separator+sailorPath;
|
||||
saveFile(file, new File(path+File.separator+saveName));
|
||||
|
||||
String originalFilename = file.getOriginalFilename();
|
||||
int extnIdx = originalFilename.lastIndexOf(".");
|
||||
SailorFile fileInfo = new SailorFile();
|
||||
fileInfo.setSailorKey(sailorKey);
|
||||
fileInfo.setFileSeq(fileSeq++);
|
||||
fileInfo.setOrigNm(originalFilename.substring(0, extnIdx));
|
||||
fileInfo.setFileExtn(originalFilename.substring(extnIdx+1));
|
||||
fileInfo.setConvNm(saveName);
|
||||
fileInfo.setFileSize(calculationSize(file.getSize()));
|
||||
fileInfo.setSavePath(path);
|
||||
sailorFileRepository.save(fileInfo);
|
||||
if(versionNo!=null){
|
||||
SailorFileVersion versionInfo = new SailorFileVersion();
|
||||
BeanUtils.copyProperties(fileInfo, versionInfo);
|
||||
versionInfo.setVersionNo(versionNo);
|
||||
sailorFileVersionRepository.save(versionInfo);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,68 @@
|
|||
package com.dbnt.faisp.main.faStatistics.crackdownsStatus.service;
|
||||
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.crackdownStatus.CrackdownStatus;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.fishingBoat.FishingBoat;
|
||||
import com.dbnt.faisp.main.faStatistics.crackdownsStatus.model.sailor.Sailor;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class UnlawfulFishingService {
|
||||
private final CrackdownStatusService crackdownStatusService;
|
||||
private final FishingBoatService fishingBoatService;
|
||||
private final ProcessResultService processResultService;
|
||||
private final SailorService sailorService;
|
||||
|
||||
@Transactional
|
||||
public Integer saveUnlawfulFishing(CrackdownStatus crackdownStatus){
|
||||
crackdownStatus = setWriteInfo(crackdownStatus);
|
||||
int cdsKey = crackdownStatusService.saveCrackdownStatusOnly(crackdownStatus);
|
||||
int fbKey = fishingBoatService.saveFishingBoatOnly(cdsKey, crackdownStatus.getFishingBoat());
|
||||
processResultService.saveProcessResultOnly(cdsKey, crackdownStatus.getProcessResult());
|
||||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
if(sailor.getPosition().equals("POS001")){
|
||||
sailorService.saveSailorOnly(fbKey, sailor, crackdownStatus.getSailorFileList());
|
||||
}else{
|
||||
sailorService.saveSailorOnly(fbKey, sailor, null);
|
||||
}
|
||||
}
|
||||
return cdsKey;
|
||||
}
|
||||
|
||||
private CrackdownStatus setWriteInfo(CrackdownStatus crackdownStatus){
|
||||
FishingBoat fishingBoat = crackdownStatus.getFishingBoat();
|
||||
fishingBoat.setWrtDt(LocalDateTime.now());
|
||||
|
||||
crackdownStatus.setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
crackdownStatus.setWrtPart(fishingBoat.getWrtPart());
|
||||
crackdownStatus.setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
crackdownStatus.setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
crackdownStatus.setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
crackdownStatus.setWrtDt(LocalDateTime.now());
|
||||
crackdownStatus.setStatus(fishingBoat.getStatus());
|
||||
|
||||
crackdownStatus.getProcessResult().setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
crackdownStatus.getProcessResult().setWrtPart(fishingBoat.getWrtPart());
|
||||
crackdownStatus.getProcessResult().setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
crackdownStatus.getProcessResult().setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
crackdownStatus.getProcessResult().setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
crackdownStatus.getProcessResult().setWrtDt(LocalDateTime.now());
|
||||
crackdownStatus.getProcessResult().setStatus(fishingBoat.getStatus());
|
||||
if(crackdownStatus.getSailorList()!=null){
|
||||
for(Sailor sailor: crackdownStatus.getSailorList()){
|
||||
sailor.setWrtOrgan(fishingBoat.getWrtOrgan());
|
||||
sailor.setWrtPart(fishingBoat.getWrtPart());
|
||||
sailor.setWrtUserSeq(fishingBoat.getWrtUserSeq());
|
||||
sailor.setWrtUserNm(fishingBoat.getWrtUserNm());
|
||||
sailor.setWrtUserGrd(fishingBoat.getWrtUserGrd());
|
||||
sailor.setWrtDt(LocalDateTime.now());
|
||||
sailor.setStatus(fishingBoat.getStatus());
|
||||
}
|
||||
}
|
||||
return crackdownStatus;
|
||||
}
|
||||
}
|
||||
|
|
@ -61,7 +61,9 @@ $(document).on('click', '#affairModalBtn', function (){
|
|||
url: '/affairResult/affairListModal',
|
||||
data: {
|
||||
startDate: workStartDt,
|
||||
endDate: workEndDt
|
||||
endDate: workEndDt,
|
||||
affairCategory:"CAT215",
|
||||
affairStatus:"DST006"
|
||||
},
|
||||
type: 'GET',
|
||||
dataType:"html",
|
||||
|
|
|
|||
|
|
@ -42,12 +42,16 @@
|
|||
<th:block th:each="commonCode:${session.commonCode.get('DST')}">
|
||||
<td th:if="${affair.affairStatus eq commonCode.itemCd}" th:text="${commonCode.itemValue}"></td>
|
||||
</th:block>
|
||||
|
||||
<th:block th:if="${affair.affairStatus eq 'DST006'}">
|
||||
<th:block th:each="ratingCode:${session.commonCode.get('AAR')}">
|
||||
<td class="affairRate" th:if="${ratingCode.itemCd eq affair.affairRate}" th:text="${ratingCode.itemValue}"></td>
|
||||
</th:block>
|
||||
<td class="affairRate">
|
||||
<th:block th:each="ratingCode:${session.commonCode.get('AAR')}">
|
||||
<th:block th:if="${ratingCode.itemCd eq affair.affairRate}" th:text="${ratingCode.itemValue}"></th:block>
|
||||
</th:block>
|
||||
</td>
|
||||
<td class="organUp" th:text="${affair.organUp eq 'T'?'O':'X'}"></td>
|
||||
</th:block>
|
||||
|
||||
<th:block th:unless="${affair.affairStatus eq 'DST006'}">
|
||||
<td></td>
|
||||
<td></td>
|
||||
|
|
|
|||
Loading…
Reference in New Issue