치안수요 분석결과 오류 수정중.

master
강석 최 2023-04-18 12:01:06 +09:00
parent 341d7b60bb
commit 2fd4fb2d2e
21 changed files with 333 additions and 363 deletions

View File

@ -38,8 +38,8 @@ public class BaseService {
protected String sriPath;
@Value("${file.dir.ciw}")
protected String ciwPath;
@Value("${file.dir.cia.safty}")
protected String ciaSaftyPath;
@Value("${file.dir.cia.safety}")
protected String ciaSafetyPath;
@Value("${file.dir.cia.company}")
protected String ciaCompanyPath;
@Value("${file.dir.cia.foreigner}")

View File

@ -4,8 +4,6 @@ import com.dbnt.faisp.main.authMgt.service.AuthMgtService;
import com.dbnt.faisp.main.codeMgt.service.CodeMgtService;
import com.dbnt.faisp.main.counterIntelligence.model.*;
import com.dbnt.faisp.main.counterIntelligence.service.CounterIntelligenceService;
import com.dbnt.faisp.main.equip.model.Equip;
import com.dbnt.faisp.main.equip.model.EquipFile;
import com.dbnt.faisp.main.userInfo.model.UserInfo;
import lombok.RequiredArgsConstructor;
import org.springframework.security.core.annotation.AuthenticationPrincipal;
@ -13,6 +11,7 @@ import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import javax.servlet.http.HttpServletResponse;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileInputStream;
@ -20,8 +19,6 @@ import java.io.InputStream;
import java.time.LocalDateTime;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
@RestController
@RequiredArgsConstructor
@RequestMapping("/counterIntelligence")
@ -122,36 +119,7 @@ public class CounterIntelligenceController {
return mav;
}
@GetMapping("/ciaSaftyDemandList")
public ModelAndView ciaSaftyDemandList(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaSaftyDemandList");
String accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaSaftyDemandList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth);
cia.setDownOrganCdList(loginUser.getDownOrganCdList());
cia.setWrtUserSeq(loginUser.getUserSeq());
cia.setQueryInfo();
mav.addObject("sdiList", ciService.selectCiaSaftyDemandList(cia));
cia.setContentCnt(ciService.selectCiaSaftyDemandListCnt(cia));
cia.setPaginationInfo();
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("loginUserSeq", loginUser.getUserSeq());
mav.addObject("searchParams", cia);
return mav;
}
@GetMapping("/ciaSaftyDemandEditModal")
public ModelAndView ciaSaftyDemandEditModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaSaftyDemandEditModal");
if(cia.getCiKey() != null) {
cia = ciService.selectSaftyDemandInfo(cia);
}else{
cia.setSaftyDemandInfo(new SaftyDemandInfo());
}
mav.addObject("cia", cia);
return mav;
}
@PostMapping("/saveCiActivity")
public Integer saveCiActivity(CounterIntelligenceActivity cia,@AuthenticationPrincipal UserInfo loginUser,
@ -167,33 +135,28 @@ public class CounterIntelligenceController {
cia.setWrtDt(LocalDateTime.now());
}
Integer ciKey = ciService.saveCiActivity(cia, deleteFileSeq);
switch (cia.getCiType()) {
case "SDI": // 치안수요분석
ciService.saveSaftyDemand(cia);
break;
case "MCI": // 해양산업보호관리업체
ciService.saveManageCompany(cia);
break;
case "FI": // 외국인커뮤니티모니터링
ciService.saveForeigner(cia);
break;
case "EI": // 방첩교육실시
ciService.saveEdu(cia);
break;
}
return ciKey;
}
@GetMapping("/ciaSaftyDemandViewModal")
public ModelAndView ciaSaftyDemandViewModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaSaftyDemandViewModal");
@GetMapping("/ciaSafetyDemandList")
public ModelAndView ciaSafetyDemandList(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaSafetyDemandList");
String accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaSaftyDemandList").get(0).getAccessAuth();
(loginUser.getUserSeq(), "/counterIntelligence/ciaSafetyDemandList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth);
mav.addObject("lineSeparator", '\n');
mav.addObject("viewUserSeq", loginUser.getUserSeq());
mav.addObject("cia", ciService.selectSaftyDemandInfo(cia));
cia.setDownOrganCdList(loginUser.getDownOrganCdList());
cia.setWrtUserSeq(loginUser.getUserSeq());
cia.setQueryInfo();
mav.addObject("sdiList", ciService.selectCiaSafetyDemandList(cia));
cia.setContentCnt(ciService.selectCiaSafetyDemandListCnt(cia));
cia.setPaginationInfo();
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("loginUserSeq", loginUser.getUserSeq());
mav.addObject("searchParams", cia);
return mav;
}
@ -216,31 +179,7 @@ public class CounterIntelligenceController {
return mav;
}
@GetMapping("/ciaManageCompanyEditModal")
public ModelAndView ciaManageCompanyEditModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaManageCompanyEditModal");
if(cia.getCiKey() != null) {
cia = ciService.selectManageCompanyInfo(cia);
}else{
cia.setManageCompanyInfo(new ManageCompanyInfo());
}
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("cia", cia);
return mav;
}
@GetMapping("/ciaManageCompanyViewModal")
public ModelAndView ciaManageCompanyViewModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaManageCompanyViewModal");
String accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaManageCompanyList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth);
mav.addObject("lineSeparator", '\n');
mav.addObject("viewUserSeq", loginUser.getUserSeq());
mav.addObject("cia", ciService.selectManageCompanyInfo(cia));
return mav;
}
@GetMapping("/ciaForeignerList")
public ModelAndView ciaForeignerList(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
@ -261,31 +200,6 @@ public class CounterIntelligenceController {
return mav;
}
@GetMapping("/ciaForeignerEditModal")
public ModelAndView ciaForeignerEditModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaForeignerEditModal");
if(cia.getCiKey() != null) {
cia = ciService.selectForeignerInfo(cia);
}else{
cia.setForeignerInfo(new ForeignerInfo());
}
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("cia", cia);
return mav;
}
@GetMapping("/ciaForeignerViewModal")
public ModelAndView ciaForeignerViewModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaForeignerViewModal");
String accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaForeignerList").get(0).getAccessAuth();
mav.addObject("accessAuth", accessAuth);
mav.addObject("lineSeparator", '\n');
mav.addObject("viewUserSeq", loginUser.getUserSeq());
mav.addObject("cia", ciService.selectForeignerInfo(cia));
return mav;
}
@GetMapping("/ciaEduList")
public ModelAndView ciaEduList(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
@ -306,29 +220,59 @@ public class CounterIntelligenceController {
return mav;
}
@GetMapping("/ciaEduEditModal")
public ModelAndView ciaEduEditModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaEduEditModal");
if(cia.getCiKey() != null) {
cia = ciService.selectEduInfo(cia);
}else{
cia.setEduInfo(new EduInfo());
}
@GetMapping("/ciaEditModal")
public ModelAndView ciaEditModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = null;
switch (cia.getCiType()){
case "SDI":
mav = new ModelAndView("counterIntelligence/ciaSafetyDemandEditModal");
break;
case "MCI":
mav = new ModelAndView("counterIntelligence/ciaManageCompanyEditModal");
break;
case "FI":
mav = new ModelAndView("counterIntelligence/ciaForeignerEditModal");
break;
case "EI":
mav = new ModelAndView("counterIntelligence/ciaEduEditModal");
break;
}
mav.addObject("mgtOrganList", loginUser.getDownOrganCdList());
mav.addObject("cia", cia);
mav.addObject("cia", ciService.selectCiaInfo(cia));
return mav;
}
@GetMapping("/ciaEduViewModal")
public ModelAndView ciaEduViewModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = new ModelAndView("counterIntelligence/ciaEduViewModal");
String accessAuth = authMgtService.selectAccessConfigList
@GetMapping("/ciaViewModal")
public ModelAndView ciaViewModal(@AuthenticationPrincipal UserInfo loginUser, CounterIntelligenceActivity cia){
ModelAndView mav = null;
String accessAuth = null;
switch (cia.getCiType()){
case "SDI":
mav = new ModelAndView("counterIntelligence/ciaSafetyDemandViewModal");
accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaSafetyDemandList").get(0).getAccessAuth();
break;
case "MCI":
mav = new ModelAndView("counterIntelligence/ciaManageCompanyViewModal");
accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaManageCompanyList").get(0).getAccessAuth();
break;
case "FI":
mav = new ModelAndView("counterIntelligence/ciaForeignerViewModal");
accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaForeignerList").get(0).getAccessAuth();
break;
case "EI":
mav = new ModelAndView("counterIntelligence/ciaEduViewModal");
accessAuth = authMgtService.selectAccessConfigList
(loginUser.getUserSeq(), "/counterIntelligence/ciaEduList").get(0).getAccessAuth();
break;
}
mav.addObject("accessAuth", accessAuth);
mav.addObject("lineSeparator", '\n');
mav.addObject("viewUserSeq", loginUser.getUserSeq());
mav.addObject("cia", ciService.selectEduInfo(cia));
mav.addObject("cia", ciService.selectCiaInfo(cia));
return mav;
}

View File

@ -23,9 +23,9 @@ public interface CounterIntelligenceMapper {
List<Integer> selectCiWorkYearList();
List<CounterIntelligenceActivity> selectCiaSaftyDemandList(CounterIntelligenceActivity cia);
List<CounterIntelligenceActivity> selectCiaSafetyDemandList(CounterIntelligenceActivity cia);
Integer selectCiaSaftyDemandListCnt(CounterIntelligenceActivity cia);
Integer selectCiaSafetyDemandListCnt(CounterIntelligenceActivity cia);
List<CounterIntelligenceActivity> selectCiaManageCompanyList(CounterIntelligenceActivity cia);

View File

@ -51,7 +51,7 @@ public class CounterIntelligenceActivity extends BaseModel {
@Transient
private Integer fileCnt;
@Transient
private SaftyDemandInfo saftyDemandInfo;
private SafetyDemandInfo safetyDemandInfo;
@Transient
private ManageCompanyInfo manageCompanyInfo;
@Transient

View File

@ -16,8 +16,8 @@ import javax.persistence.*;
@NoArgsConstructor
@DynamicInsert
@DynamicUpdate
@Table(name = "safty_demand_info")
public class SaftyDemandInfo {
@Table(name = "safety_demand_info")
public class SafetyDemandInfo {
@Id
@Column(name = "ci_key")
private Integer ciKey;

View File

@ -0,0 +1,10 @@
package com.dbnt.faisp.main.counterIntelligence.repository;
import com.dbnt.faisp.main.counterIntelligence.model.SafetyDemandInfo;
import org.springframework.data.jpa.repository.JpaRepository;
public interface SafetyDemandInfoRepository extends JpaRepository<SafetyDemandInfo, Integer> {
}

View File

@ -1,13 +0,0 @@
package com.dbnt.faisp.main.counterIntelligence.repository;
import com.dbnt.faisp.main.counterIntelligence.model.SaftyDemandInfo;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
import java.util.Optional;
public interface SaftyDemandInfoRepository extends JpaRepository<SaftyDemandInfo, Integer> {
}

View File

@ -12,7 +12,7 @@ import com.dbnt.faisp.main.counterIntelligence.model.EduInfo;
import com.dbnt.faisp.main.counterIntelligence.model.ForeignerInfo;
import com.dbnt.faisp.main.counterIntelligence.model.HashTagLinkCiw;
import com.dbnt.faisp.main.counterIntelligence.model.ManageCompanyInfo;
import com.dbnt.faisp.main.counterIntelligence.model.SaftyDemandInfo;
import com.dbnt.faisp.main.counterIntelligence.model.SafetyDemandInfo;
import com.dbnt.faisp.main.counterIntelligence.repository.CiaFileRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.CiwFileRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.CounterIntelligenceActivityRepository;
@ -21,13 +21,14 @@ import com.dbnt.faisp.main.counterIntelligence.repository.EduInfoRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.ForeignerInfoRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.HashTagLinkCiwRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.ManageCompanyInfoRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.SaftyDemandInfoRepository;
import com.dbnt.faisp.main.counterIntelligence.repository.SafetyDemandInfoRepository;
import com.dbnt.faisp.main.equip.model.EquipFile;
import com.dbnt.faisp.main.hashTag.service.HashTagService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.servlet.ModelAndView;
import java.io.File;
import java.util.List;
@ -42,7 +43,7 @@ public class CounterIntelligenceService extends BaseService {
private final HashTagLinkCiwRepository hashTagLinkCiwRepository;
private final CounterIntelligenceActivityRepository counterIntelligenceActivityRepository;
private final CiaFileRepository ciaFileRepository;
private final SaftyDemandInfoRepository saftyDemandInfoRepository;
private final SafetyDemandInfoRepository safetyDemandInfoRepository;
private final ManageCompanyInfoRepository manageCompanyInfoRepository;
private final ForeignerInfoRepository foreignerInfoRepository;
private final EduInfoRepository eduInfoRepository;
@ -158,6 +159,20 @@ public class CounterIntelligenceService extends BaseService {
if(cia.getMultipartFileList()!=null){
saveCiaUploadFiles(ciKey, cia.getMultipartFileList());
}
switch (cia.getCiType()) {
case "SDI": // 치안수요분석
saveSafetyDemand(cia);
break;
case "MCI": // 해양산업보호관리업체
saveManageCompany(cia);
break;
case "FI": // 외국인커뮤니티모니터링
saveForeigner(cia);
break;
case "EI": // 방첩교육실시
saveEdu(cia);
break;
}
return ciKey;
}
@ -194,29 +209,20 @@ public class CounterIntelligenceService extends BaseService {
}
@Transactional
public void saveSaftyDemand(CounterIntelligenceActivity cia) {
SaftyDemandInfo sdi = new SaftyDemandInfo();
public void saveSafetyDemand(CounterIntelligenceActivity cia) {
SafetyDemandInfo sdi = new SafetyDemandInfo();
sdi.setCiKey(cia.getCiKey());
sdi.setLocalInfo(cia.getLocalInfo());
sdi.setOutlookProblem(cia.getOutlookProblem());
saftyDemandInfoRepository.save(sdi);
safetyDemandInfoRepository.save(sdi);
}
public List<CounterIntelligenceActivity> selectCiaSaftyDemandList(CounterIntelligenceActivity cia) {
return ciMapper.selectCiaSaftyDemandList(cia);
public List<CounterIntelligenceActivity> selectCiaSafetyDemandList(CounterIntelligenceActivity cia) {
return ciMapper.selectCiaSafetyDemandList(cia);
}
public Integer selectCiaSaftyDemandListCnt(CounterIntelligenceActivity cia) {
return ciMapper.selectCiaSaftyDemandListCnt(cia);
}
public CounterIntelligenceActivity selectSaftyDemandInfo(CounterIntelligenceActivity cia) {
CounterIntelligenceActivity dbCia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(null);
if(dbCia!=null){
dbCia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
dbCia.setSaftyDemandInfo(saftyDemandInfoRepository.findById(cia.getCiKey()).orElse(null));
}
return dbCia;
public Integer selectCiaSafetyDemandListCnt(CounterIntelligenceActivity cia) {
return ciMapper.selectCiaSafetyDemandListCnt(cia);
}
@Transactional
@ -242,15 +248,6 @@ public class CounterIntelligenceService extends BaseService {
return ciMapper.selectCiaManageCompanyListCnt(cia);
}
public CounterIntelligenceActivity selectManageCompanyInfo(CounterIntelligenceActivity cia) {
CounterIntelligenceActivity dbCia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(null);
if(dbCia!=null){
dbCia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
dbCia.setManageCompanyInfo(manageCompanyInfoRepository.findById(cia.getCiKey()).orElse(null));
}
return dbCia;
}
@Transactional
public void saveForeigner(CounterIntelligenceActivity cia) {
ForeignerInfo fi = new ForeignerInfo();
@ -274,15 +271,6 @@ public class CounterIntelligenceService extends BaseService {
return ciMapper.selectCiaForeignerListCnt(cia);
}
public CounterIntelligenceActivity selectForeignerInfo(CounterIntelligenceActivity cia) {
CounterIntelligenceActivity dbCia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(null);
if(dbCia!=null){
dbCia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
dbCia.setForeignerInfo(foreignerInfoRepository.findById(cia.getCiKey()).orElse(null));
}
return dbCia;
}
@Transactional
public void saveEdu(CounterIntelligenceActivity cia) {
EduInfo ei = new EduInfo();
@ -324,4 +312,45 @@ public class CounterIntelligenceService extends BaseService {
}
public CounterIntelligenceActivity selectCiaInfo(CounterIntelligenceActivity cia) {
switch (cia.getCiType()){
case "SDI":
if(cia.getCiKey() != null){
cia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(new CounterIntelligenceActivity());
cia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
cia.setSafetyDemandInfo(safetyDemandInfoRepository.findById(cia.getCiKey()).orElse(new SafetyDemandInfo()));
}else{
cia.setSafetyDemandInfo(new SafetyDemandInfo());
}
break;
case "MCI":
if(cia.getCiKey() != null){
cia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(new CounterIntelligenceActivity());
cia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
cia.setManageCompanyInfo(manageCompanyInfoRepository.findById(cia.getCiKey()).orElse(new ManageCompanyInfo()));
}else{
cia.setManageCompanyInfo(new ManageCompanyInfo());
}
break;
case "FI":
if(cia.getCiKey() != null){
cia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(new CounterIntelligenceActivity());
cia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
cia.setForeignerInfo(foreignerInfoRepository.findById(cia.getCiKey()).orElse(new ForeignerInfo()));
}else{
cia.setForeignerInfo(new ForeignerInfo());
}
break;
case "EI":
if(cia.getCiKey() != null){
cia = counterIntelligenceActivityRepository.findById(cia.getCiKey()).orElse(new CounterIntelligenceActivity());
cia.setFileList(ciaFileRepository.findByCiKey(cia.getCiKey()));
cia.setEduInfo(eduInfoRepository.findById(cia.getCiKey()).orElse(new EduInfo()));
}else{
cia.setEduInfo(new EduInfo());
}
break;
}
return cia;
}
}

View File

@ -26,7 +26,7 @@ file.dir.affair.result=/affairResult
file.dir.editor=/editor
file.dir.sri=/sri
file.dir.ciw=/ciw
file.dir.cia.safty=/cia/safty
file.dir.cia.safety=/cia/safety
file.dir.cia.company=/cia/company
file.dir.cia.foreigner=/cia/foreigner
file.dir.cia.edu=/cia/edu

View File

@ -37,7 +37,7 @@ file.dir.affair.result=/affairResult
file.dir.editor=/editor
file.dir.sri=/sri
file.dir.ciw=/ciw
file.dir.cia.safty=/cia/safty
file.dir.cia.safety=/cia/safety
file.dir.cia.company=/cia/company
file.dir.cia.foreigner=/cia/foreigner
file.dir.cia.edu=/cia/edu

View File

@ -37,7 +37,7 @@ file.dir.affair.result=/affairResult
file.dir.editor=/editor
file.dir.sri=/sri
file.dir.ciw=/ciw
file.dir.cia.safty=/cia/safty
file.dir.cia.safety=/cia/safety
file.dir.cia.company=/cia/company
file.dir.cia.foreigner=/cia/foreigner
file.dir.cia.edu=/cia/edu

View File

@ -33,7 +33,7 @@ file.dir.affair.result=/affairResult
file.dir.editor=/editor
file.dir.sri=/sri
file.dir.ciw=/ciw
file.dir.cia.safty=/cia/safty
file.dir.cia.safety=/cia/safety
file.dir.cia.company=/cia/company
file.dir.cia.foreigner=/cia/foreigner
file.dir.cia.edu=/cia/edu

View File

@ -33,7 +33,7 @@ file.dir.affair.result=/affairResult
file.dir.editor=/editor
file.dir.sri=/sri
file.dir.ciw=/ciw
file.dir.cia.safty=/cia/safty
file.dir.cia.safety=/cia/safety
file.dir.cia.company=/cia/company
file.dir.cia.foreigner=/cia/foreigner
file.dir.cia.edu=/cia/edu

View File

@ -148,7 +148,7 @@
</select>
<select id="selectCiaSaftyDemandList" parameterType="CounterIntelligenceActivity" resultType="CounterIntelligenceActivity">
<select id="selectCiaSafetyDemandList" parameterType="CounterIntelligenceActivity" resultType="CounterIntelligenceActivity">
select cia.ci_key,
(select item_value from code_mgt where item_cd = cia.content_status) as content_status,
cia.ci_type,
@ -160,7 +160,7 @@
cia.wrt_user_nm,
cia.wrt_dt
from counter_intelligence_activity cia,
safty_demand_info sdi
safety_demand_info sdi
where cia.ci_key = sdi.ci_key
and cia.content_status != 'DST008'
and ((cia.wrt_user_seq = #{wrtUserSeq} and cia.content_status = 'DST001') or cia.content_status = 'DST007')
@ -184,7 +184,7 @@
LIMIT #{rowCnt} OFFSET #{firstIndex}
</select>
<select id="selectCiaSaftyDemandListCnt" parameterType="CounterIntelligenceActivity" resultType="Integer">
<select id="selectCiaSafetyDemandListCnt" parameterType="CounterIntelligenceActivity" resultType="Integer">
select count(*)
from(
select cia.ci_key,
@ -198,7 +198,7 @@
cia.wrt_user_nm,
cia.wrt_dt
from counter_intelligence_activity cia,
safty_demand_info sdi
safety_demand_info sdi
where cia.ci_key = sdi.ci_key
and cia.content_status != 'DST008'
and ((cia.wrt_user_seq = #{wrtUserSeq} and cia.content_status = 'DST001') or cia.content_status = 'DST007')

View File

@ -12,8 +12,8 @@ $(document).on('click', '#addBtn', function (){
function getCiaEduEditModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaEduEditModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaEditModal',
data: {ciKey: ciKey, ciType: "EI"},
type: 'GET',
dataType:"html",
success: function(html){
@ -78,8 +78,8 @@ $(document).on('click', '.eiTr', function (){
function getCiaEduViewModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaEduViewModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaViewModal',
data: {ciKey: ciKey, ciType: "EI"},
type: 'GET',
dataType:"html",
success: function(html){

View File

@ -12,8 +12,8 @@ $(document).on('click', '#addBtn', function (){
function getCiaForeignerEditModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaForeignerEditModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaEditModal',
data: {ciKey: ciKey, ciType: "FI"},
type: 'GET',
dataType:"html",
success: function(html){
@ -81,8 +81,8 @@ $(document).on('click', '.fiTr', function (){
function getCiaForeignerViewModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaForeignerViewModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaViewModal',
data: {ciKey: ciKey, ciType: "FI"},
type: 'GET',
dataType:"html",
success: function(html){

View File

@ -12,8 +12,8 @@ $(document).on('click', '#addBtn', function (){
function getCiaManageCompanyEditModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaManageCompanyEditModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaEditModal',
data: {ciKey: ciKey, ciType: "MCI"},
type: 'GET',
dataType:"html",
success: function(html){
@ -73,8 +73,8 @@ $(document).on('click', '.mciTr', function (){
function getCiaManageCompanyViewModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaManageCompanyViewModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaViewModal',
data: {ciKey: ciKey, ciType: "MCI"},
type: 'GET',
dataType:"html",
success: function(html){

View File

@ -7,19 +7,19 @@ $(function(){
})
$(document).on('click', '#addBtn', function (){
getCiaSaftyDemandEditModal(null);
getCiaSafetyDemandEditModal(null);
})
function getCiaSaftyDemandEditModal(ciKey){
function getCiaSafetyDemandEditModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaSaftyDemandEditModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaEditModal',
data: {ciKey: ciKey, ciType: "SDI"},
type: 'GET',
dataType:"html",
success: function(html){
$("#ciaSaftyDemandEditModalContent").empty().append(html)
$("#ciaSafetyDemandEditModalContent").empty().append(html)
setUploadDiv();
$("#ciaSaftyDemandEditModal").modal('show');
$("#ciaSafetyDemandEditModal").modal('show');
},
error:function(e){
ajaxErrorAction(e);
@ -29,18 +29,18 @@ function getCiaSaftyDemandEditModal(ciKey){
$(document).on('click', '#saveBtn', function (){
if(confirm("저장하시겠습니까?")){
save('DST007');
saveCia('DST007');
}
})
$(document).on('click', '#saveTempBtn', function (){
if(confirm("임시저장 하시겠습니까?")){
save('DST001');
saveCia('DST001');
}
})
function save(contentStatus){
const formData = new FormData($("#ciaSaftyDemandEditForm")[0]);
function saveCia(contentStatus){
const formData = new FormData($("#ciaSafetyDemandEditForm")[0]);
for(const file of files) {
if(!file.isDelete)
formData.append('uploadFiles', file, file.name);
@ -90,18 +90,18 @@ $(document).on('click', '#deleteBtn', function (){
})
$(document).on('click', '.sdiTr', function (){
getCiaSaftyDemandViewModal($(this).find(".ciKey").val());
getCiaSafetyDemandViewModal($(this).find(".ciKey").val());
})
function getCiaSaftyDemandViewModal(ciKey){
function getCiaSafetyDemandViewModal(ciKey){
$.ajax({
url: '/counterIntelligence/ciaSaftyDemandViewModal',
data: {ciKey: ciKey},
url: '/counterIntelligence/ciaViewModal',
data: {ciKey: ciKey, ciType: "SDI"},
type: 'GET',
dataType:"html",
success: function(html){
$("#ciaSaftyDemandViewModalBody").empty().append(html)
$("#ciaSaftyDemandViewModal").modal('show');
$("#ciaSafetyDemandViewModalBody").empty().append(html)
$("#ciaSafetyDemandViewModal").modal('show');
},
error:function(e){
ajaxErrorAction(e);
@ -110,8 +110,8 @@ function getCiaSaftyDemandViewModal(ciKey){
}
$(document).on('click', '#editBtn', function (){
$("#ciaSaftyDemandViewModal").modal('hide');
getCiaSaftyDemandEditModal($(this).attr("data-cikey"));
$("#ciaSafetyDemandViewModal").modal('hide');
getCiaSafetyDemandEditModal($(this).attr("data-cikey"));
})
$(document).on('click', '#excelDown', function (){

View File

@ -5,7 +5,7 @@
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<div class="modal-body" id="ivsgtEditBody">
<form action="#" method="post" id="ciaSaftyDemandEditForm">
<form action="#" method="post" id="ciaSafetyDemandEditForm">
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
<input type="hidden" name="ciType" value="SDI">
@ -29,13 +29,13 @@
<div class="row mb-1">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">지역특성</label>
<div class="col-sm-11">
<textarea class="form-control form-control-sm" rows="5" cols="30" name="localInfo" th:utext="${cia.saftyDemandInfo.localInfo}"></textarea>
<textarea class="form-control form-control-sm" rows="5" cols="30" name="localInfo" th:utext="${cia.safetyDemandInfo.localInfo}"></textarea>
</div>
</div>
<div class="row mb-1">
<label class="col-sm-1 col-form-label col-form-label-sm text-center">예상<br>문제점</label>
<div class="col-sm-11">
<textarea class="form-control form-control-sm" rows="5" cols="30" name="outlookProblem" th:utext="${cia.saftyDemandInfo.outlookProblem}"></textarea>
<textarea class="form-control form-control-sm" rows="5" cols="30" name="outlookProblem" th:utext="${cia.safetyDemandInfo.outlookProblem}"></textarea>
</div>
</div>
<div class="row mb-1">

View File

@ -3,7 +3,7 @@
xmlns:layout="http://www.ultraq.net.nz/thymeleaf/layout"
layout:decorate="~{layout/layout}">
<th:block layout:fragment="script">
<script type="text/javascript" th:src="@{/js/counterIntelligence/ciaSaftyDemand.js}"></script>
<script type="text/javascript" th:src="@{/js/counterIntelligence/ciaSafetyDemand.js}"></script>
</th:block>
<div layout:fragment="content">
<main>
@ -23,7 +23,7 @@
<div class="col-12 card bg-light text-center">
<div class="card-body">
<div class="tab-content bg-white border border-top-0 p-2">
<form method="get" th:action="@{/counterIntelligence/ciaSaftyDemandList}">
<form method="get" th:action="@{/counterIntelligence/ciaSafetyDemandList}">
<input type="hidden" name="pageIndex" id="pageIndex" th:value="${searchParams.pageIndex}">
<div class="row justify-content-between py-1">
<div class="col-auto">
@ -142,16 +142,16 @@
</div>
</main>
<div class="modal fade" id="ciaSaftyDemandEditModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="ciWorkModalLabel" aria-hidden="true">
<div class="modal fade" id="ciaSafetyDemandEditModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="ciWorkModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-scrollable">
<div class="modal-content" id="ciaSaftyDemandEditModalContent">
<div class="modal-content" id="ciaSafetyDemandEditModalContent">
</div>
</div>
</div>
<div class="modal fade" id="ciaSaftyDemandViewModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="ciWorkModalLabel" aria-hidden="true">
<div class="modal fade" id="ciaSafetyDemandViewModal" data-bs-backdrop="static" data-bs-keyboard="false" tabindex="-1" aria-labelledby="ciWorkModalLabel" aria-hidden="true">
<div class="modal-dialog modal-lg modal-dialog-scrollable">
<div class="modal-content" id="ciaSaftyDemandViewModalBody">
<div class="modal-content" id="ciaSafetyDemandViewModalBody">
</div>
</div>

View File

@ -1,12 +1,12 @@
<!DOCTYPE html>
<html lang="ko" xmlns:th="http://www.thymeleaf.org">
<div class="modal-header bg-dark">
<h5 class="modal-title text-white" id="ciaSaftyDemandViewModalLabel">치안수요 열람</h5>
<h5 class="modal-title text-white" id="ciaSafetyDemandViewModalLabel">치안수요 열람</h5>
<button type="button" class="btn-close f-invert" data-bs-dismiss="modal" aria-label="Close"></button>
</div>
<input type="hidden" name="_csrf_header" th:value="${_csrf.headerName}"/>
<input type="hidden" th:name="${_csrf.parameterName}" th:value="${_csrf.token}"/>
<div class="modal-body" id="ciaSaftyDemandViewBody">
<div class="modal-body" id="ciaSafetyDemandViewBody">
<ul class="nav nav-tabs" id="userTab" role="tablist">
<li class="nav-item" role="presentation">
<button class="nav-link active" id="boardTab" data-bs-toggle="tab" data-bs-target="#boardTabPanel" type="button" role="tab" aria-controls="boardTabPanel" aria-selected="true">본문</button>
@ -22,20 +22,20 @@
<label class="col-sm-3 col-form-label col-form-label-sm text-start" th:text="${#temporals.format(cia.wrtDt, 'yyyy-MM-dd HH:mm')}"></label>
<label class="col-sm-2 col-form-label col-form-label-sm text-center fw-bold">작성자</label>
<label class="col-sm-5 col-form-label col-form-label-sm text-start">
<th:block th:each="commonCode:${session.commonCode.get('JT')}">
<option th:value="${commonCode.itemCd}" th:if="${commonCode.itemCd eq cia.wrtUserGrd}" th:text="|${commonCode.itemValue} ${cia.wrtUserNm}|"></option>
<th:block th:each="code:${session.commonCode.get('JT')}">
<option th:value="${code.itemCd}" th:if="${code.itemCd eq cia.wrtUserGrd}" th:text="|${code.itemValue} ${cia.wrtUserNm}|"></option>
</th:block>
</label>
</div>
<hr class="my-1">
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center fw-bold">지역특성</label>
<div class="col-sm-10 form-control-sm" th:utext="${#strings.replace(cia.saftyDemandInfo.localInfo, lineSeparator, '<br>')}"></div>
<div class="col-sm-10 form-control-sm" th:utext="${#strings.replace(cia.safetyDemandInfo.localInfo, lineSeparator, '<br>')}"></div>
</div>
<hr class="my-1">
<div class="row mb-1">
<label class="col-sm-2 col-form-label col-form-label-sm text-center fw-bold">예상문제점</label>
<div class="col-sm-10 form-control-sm" th:utext="${#strings.replace(cia.saftyDemandInfo.outlookProblem, lineSeparator, '<br>')}"></div>
<div class="col-sm-10 form-control-sm" th:utext="${#strings.replace(cia.safetyDemandInfo.outlookProblem, lineSeparator, '<br>')}"></div>
</div>
</div>
<div class="tab-pane fade p-2" id="fileTabPanel" role="tabpanel" tabindex="0">