중간저장.

강석 최 2022-09-07 18:25:17 +09:00
parent d7d8b717c5
commit 199697a3c5
5 changed files with 45 additions and 39 deletions

View File

@ -1,26 +0,0 @@
package com.dbnt.faisp.config;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.Column;
import javax.persistence.Transient;
import java.time.LocalDateTime;
import java.util.List;
@Getter
@Setter
@NoArgsConstructor
public class BaseBoard extends BaseModel {
@Column(name = "wrt_organ")
private String wrtOrgan;
@Column(name = "wrt_nm")
private String wrtNm;
@Column(name = "wrt_dt")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime wrtDt;
}

View File

@ -48,6 +48,6 @@ public class FpiMgtController { // 외사경찰견문관리
public Integer savePlan(BoardPlan boardPlan, public Integer savePlan(BoardPlan boardPlan,
@RequestParam(value = "planInfos", required = false) List<String> planInfos, @RequestParam(value = "planInfos", required = false) List<String> planInfos,
@RequestParam(value = "detailPlanInfos", required = false)List<String> detailPlanInfos){ @RequestParam(value = "detailPlanInfos", required = false)List<String> detailPlanInfos){
return 0; return monthPlanService.saveBoardPlan(boardPlan, planInfos, detailPlanInfos);
} }
} }

View File

@ -3,23 +3,48 @@ package com.dbnt.faisp.fpiMgt.monthPlan;
import com.dbnt.faisp.fpiMgt.monthPlan.model.BoardPlan; import com.dbnt.faisp.fpiMgt.monthPlan.model.BoardPlan;
import com.dbnt.faisp.fpiMgt.monthPlan.model.PlanFile; import com.dbnt.faisp.fpiMgt.monthPlan.model.PlanFile;
import com.dbnt.faisp.fpiMgt.monthPlan.model.PlanMainInfo;
import com.dbnt.faisp.fpiMgt.monthPlan.repository.BoardPlanRepository; import com.dbnt.faisp.fpiMgt.monthPlan.repository.BoardPlanRepository;
import com.dbnt.faisp.fpiMgt.monthPlan.repository.PlanFileRepository; import com.dbnt.faisp.fpiMgt.monthPlan.repository.PlanFileRepository;
import com.dbnt.faisp.fpiMgt.monthPlan.repository.PlanMainInfoRepository; import com.dbnt.faisp.fpiMgt.monthPlan.repository.PlanMainInfoRepository;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.persistence.Transient;
import java.util.List;
@Service @Service
@RequiredArgsConstructor @RequiredArgsConstructor
public class MonthPlanService { public class MonthPlanService {
private final BoardPlanRepository boardPlanRepository; private final BoardPlanRepository boardPlanRepository;
private final PlanFileRepository planFileRepository; private final PlanFileRepository planFileRepository;
private final PlanMainInfoRepository planMainInfoRepository; private final PlanMainInfoRepository planMainInfoRepository;
public BoardPlan selectBoardPlan(Integer planKey) { public BoardPlan selectBoardPlan(Integer planKey) {
BoardPlan savedPlan = boardPlanRepository.findById(planKey).orElse(null); BoardPlan savedPlan = boardPlanRepository.findById(planKey).orElse(null);
savedPlan.setFileList(planFileRepository.findByPlanKey(planKey)); savedPlan.setFileList(planFileRepository.findByPlanKey(planKey));
savedPlan.setMainInfoList(planMainInfoRepository.findByPlanKey(planKey)); savedPlan.setMainInfoList(planMainInfoRepository.findByPlanKey(planKey));
return savedPlan; return savedPlan;
}
@Transactional
public Integer saveBoardPlan(BoardPlan boardPlan, List<String> planInfos, List<String> detailPlanInfos) {
Integer planKey = boardPlanRepository.save(boardPlan).getPlanKey();
Integer infoSeq = savePlanMainInfos(planKey,0, "S", planInfos);//요약 summery
savePlanMainInfos(planKey, infoSeq, "D", detailPlanInfos);//상세 detail
return planKey;
}
private Integer savePlanMainInfos(Integer planKey, Integer planSeq, String infoType, List<String> infoList){
for(String info: infoList){
PlanMainInfo planMainInfo = new PlanMainInfo();
planMainInfo.setPlanKey(planKey);
planMainInfo.setPlanSeq(++planSeq);
planMainInfo.setPlanType(infoType);
planMainInfo.setPlanInfo(info);
planMainInfoRepository.save(planMainInfo);
} }
return planSeq;
}
} }

View File

@ -1,7 +1,6 @@
package com.dbnt.faisp.fpiMgt.monthPlan.model; package com.dbnt.faisp.fpiMgt.monthPlan.model;
import com.dbnt.faisp.config.BaseBoard; import com.dbnt.faisp.config.BaseModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter; import lombok.Getter;
import lombok.NoArgsConstructor; import lombok.NoArgsConstructor;
import lombok.Setter; import lombok.Setter;
@ -11,6 +10,7 @@ import org.springframework.format.annotation.DateTimeFormat;
import javax.persistence.*; import javax.persistence.*;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List; import java.util.List;
@Getter @Getter
@ -20,7 +20,7 @@ import java.util.List;
@DynamicInsert @DynamicInsert
@DynamicUpdate @DynamicUpdate
@Table(name = "board_plan") @Table(name = "board_plan")
public class BoardPlan extends BaseBoard { public class BoardPlan extends BaseModel {
@Id @Id
@GeneratedValue(strategy = GenerationType.IDENTITY) @GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "plan_key") @Column(name = "plan_key")
@ -44,6 +44,13 @@ public class BoardPlan extends BaseBoard {
private String headApprv; private String headApprv;
@Column(name = "head_etc") @Column(name = "head_etc")
private String headEtc; private String headEtc;
@Column(name = "wrt_organ")
private String wrtOrgan;
@Column(name = "wrt_nm")
private String wrtNm;
@Column(name = "wrt_dt")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private LocalDateTime wrtDt;
@Transient @Transient
private List<PlanMainInfo> mainInfoList; private List<PlanMainInfo> mainInfoList;

View File

@ -13,7 +13,7 @@ import java.io.Serializable;
@NoArgsConstructor @NoArgsConstructor
@DynamicInsert @DynamicInsert
@DynamicUpdate @DynamicUpdate
@Table(name = "board_plan") @Table(name = "plan_main_info")
@IdClass(PlanMainInfo.PlanMainInfoId.class) @IdClass(PlanMainInfo.PlanMainInfoId.class)
public class PlanMainInfo { public class PlanMainInfo {
@Id @Id