관리자 검수 페이지에서 '검수등록완료 목록' 로딩 속도 개선
parent
ca837c7ecf
commit
ba0969523d
29
list.txt
29
list.txt
|
|
@ -1,28 +1 @@
|
||||||
src\main\webapp\WEB-INF\views\home\include\top.jsp
|
src\main\resources\egovframework\egovProps\globals.properties
|
||||||
src\main\java\geoinfo\main\main\MainController.java
|
|
||||||
src\main\java\geoinfo\main\login\LoginController.java
|
|
||||||
src\main\java\geoinfo\training\home\HomeTrainingController.java
|
|
||||||
src\main\java\geoinfo\training\home\service\HomeTrainingService.java
|
|
||||||
src\main\java\geoinfo\training\home\service\impl\HomeTrainingServiceImpl.java
|
|
||||||
src\main\java\geoinfo\training\home\service\HomeTrainingMapper.java
|
|
||||||
src\main\resources\egovframework\sqlmap\mapper\training\home\HomeTrainingMapper.xml
|
|
||||||
src\main\webapp\WEB-INF\views\visitEducationApplication\inquiry\visitEducationApplicationInquiry.jsp
|
|
||||||
src\main\webapp\WEB-INF\views\visitEducationApplication\input\visitEducationApplicationInput.jsp
|
|
||||||
src\main\webapp\com\img\visitEducationApplication\visitEducationApplicationSample.svg
|
|
||||||
src\main\webapp\WEB-INF\views\homeEducationApplication\inquiry\homeEducationApplicationInquiry.jsp
|
|
||||||
src\main\webapp\WEB-INF\views\homeEducationApplication\input\homeEducationApplicationInput.jsp
|
|
||||||
src\main\webapp\WEB-INF\views\home\main.jsp
|
|
||||||
src\main\webapp\WEB-INF\views\home\include\left_menu.jsp
|
|
||||||
src\main\webapp\com\css\common.v2.0.css
|
|
||||||
src\main\webapp\WEB-INF\views\home\index.jsp
|
|
||||||
src\main\webapp\com\img\common\bg\main_info_visual_20240905.png
|
|
||||||
src\main\webapp\com\img\common\bg\main_info_visual_20240906.png
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Regular.woff2
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Regular.woff
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Regular.otf
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Bold.woff2
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Bold.woff
|
|
||||||
src\main\webapp\com\fonts\NotoSansKr\NotoSansKR-Bold.otf
|
|
||||||
src\main\resources\egovframework\sqlmap\mapper\main\Login_SQL.xml
|
|
||||||
src\main\resources\egovframework\spring\context-mybatis.xml
|
|
||||||
src\main\webapp\WEB-INF\views\home\main.jsp
|
|
||||||
|
|
@ -1,13 +1,16 @@
|
||||||
package geoinfo.regi.complete;
|
package geoinfo.regi.complete;
|
||||||
|
|
||||||
import geoinfo.com.GeoinfoCommon;
|
import geoinfo.com.GeoinfoCommon;
|
||||||
|
import geoinfo.com.PaginationInfo;
|
||||||
import geoinfo.regi.complete.service.CompleteService;
|
import geoinfo.regi.complete.service.CompleteService;
|
||||||
|
import geoinfo.util.MyUtil;
|
||||||
import ictway.comm.util.strUtil;
|
import ictway.comm.util.strUtil;
|
||||||
import ictway.comm.web.WebUtil;
|
import ictway.comm.web.WebUtil;
|
||||||
import ictway.session.UserInfoYu;
|
import ictway.session.UserInfoYu;
|
||||||
|
|
||||||
import java.sql.SQLException;
|
import java.sql.SQLException;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
|
@ -15,12 +18,15 @@ import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
import org.jfree.util.Log;
|
import org.jfree.util.Log;
|
||||||
|
import org.json.simple.JSONObject;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.stereotype.Controller;
|
import org.springframework.stereotype.Controller;
|
||||||
import org.springframework.ui.ModelMap;
|
import org.springframework.ui.ModelMap;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMethod;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.ResponseBody;
|
||||||
import org.springframework.web.util.UrlPathHelper;
|
import org.springframework.web.util.UrlPathHelper;
|
||||||
|
|
||||||
@Controller
|
@Controller
|
||||||
|
|
@ -72,66 +78,18 @@ public class CompleteController {
|
||||||
// 지반정보 입력시스템 - 검수등록완료 목록
|
// 지반정보 입력시스템 - 검수등록완료 목록
|
||||||
@RequestMapping(value = "/manage/complete")
|
@RequestMapping(value = "/manage/complete")
|
||||||
public String complete(@RequestParam HashMap<String, Object> params, ModelMap model, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
public String complete(@RequestParam HashMap<String, Object> params, ModelMap model, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||||
|
|
||||||
// 관리자 아닐 경우 back();
|
// 관리자 아닐 경우 back();
|
||||||
if (!request.getSession().getAttribute("CLS").equals("9")) {
|
if (!request.getSession().getAttribute("CLS").equals("9")) {
|
||||||
return "";
|
return "";
|
||||||
}
|
}
|
||||||
|
|
||||||
strUtil sUtil = new strUtil();
|
|
||||||
WebUtil wUtil = new WebUtil();
|
|
||||||
wUtil.topTabId = "manageComplete"; // 검수일때 tab 활성화 시켜주기 위해
|
|
||||||
String LoginUserId = String.valueOf(request.getSession().getAttribute("USERID"));
|
|
||||||
|
|
||||||
// request
|
|
||||||
//240108 임효주 프로젝트 목록에 검색조건 추가
|
|
||||||
String srchStartDate = sUtil.checkNull((String)params.get("startDate"));
|
|
||||||
String srchEndDate = sUtil.checkNull((String)params.get("endDate"));
|
|
||||||
String srchReportType = sUtil.checkNull((String)params.get("searchReportType"));
|
|
||||||
String searchProjectName = sUtil.checkNull((String)params.get("searchProjectName"));
|
|
||||||
String searchProjectCode = sUtil.checkNull((String)params.get("searchProjectCode"));
|
|
||||||
String searchHistSeq = sUtil.checkNull((String)params.get("searchHistSeq"));
|
|
||||||
String searchUserName = sUtil.checkNull((String)params.get("searchUserName"));
|
|
||||||
String searchCreateName = sUtil.checkNull((String)params.get("searchCreateName"));
|
|
||||||
|
|
||||||
ArrayList arrayData = new ArrayList();
|
|
||||||
ArrayList arrayColumn = new ArrayList();
|
|
||||||
ArrayList arrayCommon = new ArrayList();
|
|
||||||
HashMap mapCommon = new HashMap();
|
|
||||||
|
|
||||||
int count = 0;
|
|
||||||
// data조회
|
|
||||||
try {
|
try {
|
||||||
// **************************************공통코드**************************************//
|
String LoginUserId = String.valueOf(request.getSession().getAttribute("USERID"));
|
||||||
String commCode = "CM016";
|
|
||||||
String commCode02 = "'CM016'";
|
|
||||||
params.put("commCode", commCode);
|
|
||||||
|
|
||||||
// common Array 로 받기
|
|
||||||
arrayCommon = completeService.selectWebCommCode(params);
|
|
||||||
|
|
||||||
// SelectBox형태로 map으로 받기
|
|
||||||
mapCommon = wUtil.getCommCodeSel(commCode, arrayCommon, "");
|
|
||||||
|
|
||||||
params.put("srchReportType", srchReportType);
|
|
||||||
params.put("searchProjectName", searchProjectName);
|
|
||||||
params.put("searchProjectCode", searchProjectCode);
|
|
||||||
params.put("searchHistSeq", searchHistSeq);
|
|
||||||
params.put("searchUserName", searchUserName);
|
|
||||||
params.put("searchCreateName", searchCreateName);
|
|
||||||
/*params.put("LoginUserId", LoginUserId);*/
|
|
||||||
|
|
||||||
// data정보
|
|
||||||
arrayData = completeService.selectCompleteItems(params);
|
|
||||||
params.put("LoginUserId", LoginUserId);
|
params.put("LoginUserId", LoginUserId);
|
||||||
// column정보
|
|
||||||
// arrayColumn = wUtil.getColArrayList(rsmd, count);
|
|
||||||
|
|
||||||
model.put("arrayCommon", arrayCommon);
|
|
||||||
model.put("result", arrayData);
|
|
||||||
model.put("params", params);
|
model.put("params", params);
|
||||||
|
model.put("result", new ArrayList<Object>());
|
||||||
} catch (SQLException e) {
|
//completeService.getCompleteList(request, response, null, params, model);
|
||||||
Log.debug("error", e);
|
|
||||||
} catch (NumberFormatException e) {
|
} catch (NumberFormatException e) {
|
||||||
Log.debug("error", e);
|
Log.debug("error", e);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
|
|
@ -140,4 +98,56 @@ public class CompleteController {
|
||||||
|
|
||||||
return "web/manage/complete";
|
return "web/manage/complete";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@RequestMapping(value = "/manage/complete/list.do", method = RequestMethod.GET)
|
||||||
|
@ResponseBody
|
||||||
|
public JSONObject getCompleteList(
|
||||||
|
HttpServletRequest request,
|
||||||
|
@RequestParam HashMap<String, Object> params,
|
||||||
|
HttpServletResponse response) {
|
||||||
|
|
||||||
|
|
||||||
|
JSONObject jsonResponse = new JSONObject();
|
||||||
|
|
||||||
|
System.out.println(
|
||||||
|
"\n--------------------------------------------------------------\n" +
|
||||||
|
request.getRequestURI() + " IN:" +
|
||||||
|
"\n--------------------------------------------------------------\n" +
|
||||||
|
"params.toString()" + params.toString() + "\n" +
|
||||||
|
"\n--------------------------------------------------------------\n"
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
try {
|
||||||
|
completeService.getCompleteList(request, response, jsonResponse, params, null);
|
||||||
|
jsonResponse.put("resultCode", 100);
|
||||||
|
jsonResponse.put("result", "true");
|
||||||
|
jsonResponse.put("message", "조회가 완료되었습니다.");
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
// TODO Auto-generated catch block
|
||||||
|
String strTxt =
|
||||||
|
"---------- BUG REPORTING START ----------" + "\n" +
|
||||||
|
"에러 문구:[" + request.getRequestURI() + " " + "]" + "\n" +
|
||||||
|
"e.getMessage():[\n" + e.getMessage() + "\n]\n" + "\n" +
|
||||||
|
"new Date().toString():[" + new Date().toString() + "]\n" + "\n" +
|
||||||
|
"---------- BUG REPORTING END ----------" + "\n" +
|
||||||
|
"";
|
||||||
|
System.out.println(strTxt);
|
||||||
|
jsonResponse.put("resultCode", -1);
|
||||||
|
jsonResponse.put("result", "false");
|
||||||
|
jsonResponse.put("message", e.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
System.out.println(
|
||||||
|
"\n--------------------------------------------------------------\n" +
|
||||||
|
request.getRequestURI() + " OUT:" +
|
||||||
|
"\n--------------------------------------------------------------\n" +
|
||||||
|
"jsonResponse.toJSONString():[" + jsonResponse.toJSONString() + "]\n" +
|
||||||
|
"\n--------------------------------------------------------------\n"
|
||||||
|
);
|
||||||
|
|
||||||
|
return jsonResponse;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,4 +14,6 @@ public interface CompleteMapper {
|
||||||
public ArrayList selectWebCommCode(HashMap<String, Object> params) throws Exception;
|
public ArrayList selectWebCommCode(HashMap<String, Object> params) throws Exception;
|
||||||
|
|
||||||
public ArrayList selectCompleteItems(HashMap<String, Object> params) throws Exception;
|
public ArrayList selectCompleteItems(HashMap<String, Object> params) throws Exception;
|
||||||
|
|
||||||
|
public long selectCompleteItemsCnt(HashMap<String, Object> params) throws Exception;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -3,6 +3,12 @@ package geoinfo.regi.complete.service;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import org.json.simple.JSONObject;
|
||||||
|
import org.springframework.ui.ModelMap;
|
||||||
|
|
||||||
|
|
||||||
public interface CompleteService {
|
public interface CompleteService {
|
||||||
|
|
||||||
|
|
@ -10,5 +16,7 @@ public interface CompleteService {
|
||||||
|
|
||||||
ArrayList selectCompleteItems(HashMap<String, Object> params) throws Exception;
|
ArrayList selectCompleteItems(HashMap<String, Object> params) throws Exception;
|
||||||
|
|
||||||
|
long selectCompleteItemsCnt(HashMap<String, Object> params) throws Exception;
|
||||||
|
|
||||||
|
public void getCompleteList(HttpServletRequest request, HttpServletResponse response, JSONObject jsonResponse, HashMap<String, Object> params, ModelMap model) throws Exception;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,30 @@
|
||||||
package geoinfo.regi.complete.service.impl;
|
package geoinfo.regi.complete.service.impl;
|
||||||
|
|
||||||
|
import java.sql.SQLException;
|
||||||
|
import java.sql.Timestamp;
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.Enumeration;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
|
|
||||||
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
import egovframework.rte.psl.dataaccess.util.EgovMap;
|
||||||
|
import geoinfo.com.PaginationInfo;
|
||||||
import geoinfo.regi.complete.service.CompleteMapper;
|
import geoinfo.regi.complete.service.CompleteMapper;
|
||||||
import geoinfo.regi.complete.service.CompleteService;
|
import geoinfo.regi.complete.service.CompleteService;
|
||||||
import geoinfo.regi.status.service.RegiPageMapper;
|
import geoinfo.regi.status.service.RegiPageMapper;
|
||||||
import geoinfo.regi.status.service.RegiPageService;
|
import geoinfo.regi.status.service.RegiPageService;
|
||||||
|
import geoinfo.util.MyUtil;
|
||||||
|
import ictway.comm.util.strUtil;
|
||||||
|
import ictway.comm.web.WebUtil;
|
||||||
|
import oracle.sql.TIMESTAMP;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import org.jfree.util.Log;
|
||||||
|
import org.json.simple.JSONObject;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
import org.springframework.ui.ModelMap;
|
||||||
|
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -36,4 +49,114 @@ public class CompleteServiceImpl implements CompleteService {
|
||||||
return completeMapper.selectCompleteItems(params);
|
return completeMapper.selectCompleteItems(params);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long selectCompleteItemsCnt(HashMap<String, Object> params) throws Exception {
|
||||||
|
return completeMapper.selectCompleteItemsCnt(params);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void getCompleteList(HttpServletRequest request, HttpServletResponse response, JSONObject jsonResponse, HashMap<String, Object> params, ModelMap model) throws Exception {
|
||||||
|
|
||||||
|
// 관리자 아닐 경우 back();
|
||||||
|
if (!request.getSession().getAttribute("CLS").equals("9")) {
|
||||||
|
throw new Exception( "로그인이 필요한 서비스 입니다." );
|
||||||
|
}
|
||||||
|
|
||||||
|
strUtil sUtil = new strUtil();
|
||||||
|
WebUtil wUtil = new WebUtil();
|
||||||
|
wUtil.topTabId = "manageComplete"; // 검수일때 tab 활성화 시켜주기 위해
|
||||||
|
String LoginUserId = String.valueOf(request.getSession().getAttribute("USERID"));
|
||||||
|
|
||||||
|
// request
|
||||||
|
//240108 임효주 프로젝트 목록에 검색조건 추가
|
||||||
|
String srchStartDate = sUtil.checkNull((String)params.get("startDate"));
|
||||||
|
String srchEndDate = sUtil.checkNull((String)params.get("endDate"));
|
||||||
|
String srchReportType = sUtil.checkNull((String)params.get("searchReportType"));
|
||||||
|
String searchProjectName = sUtil.checkNull((String)params.get("searchProjectName"));
|
||||||
|
String searchProjectCode = sUtil.checkNull((String)params.get("searchProjectCode"));
|
||||||
|
String searchHistSeq = sUtil.checkNull((String)params.get("searchHistSeq"));
|
||||||
|
String searchUserName = sUtil.checkNull((String)params.get("searchUserName"));
|
||||||
|
String searchCreateName = sUtil.checkNull((String)params.get("searchCreateName"));
|
||||||
|
|
||||||
|
ArrayList arrayData = new ArrayList();
|
||||||
|
ArrayList arrayColumn = new ArrayList();
|
||||||
|
ArrayList arrayCommon = new ArrayList();
|
||||||
|
HashMap mapCommon = new HashMap();
|
||||||
|
|
||||||
|
int count = 0;
|
||||||
|
|
||||||
|
// **************************************공통코드**************************************//
|
||||||
|
String commCode = "CM016";
|
||||||
|
String commCode02 = "'CM016'";
|
||||||
|
params.put("commCode", commCode);
|
||||||
|
|
||||||
|
// common Array 로 받기
|
||||||
|
arrayCommon = selectWebCommCode(params);
|
||||||
|
|
||||||
|
// SelectBox형태로 map으로 받기
|
||||||
|
mapCommon = wUtil.getCommCodeSel(commCode, arrayCommon, "");
|
||||||
|
|
||||||
|
params.put("srchReportType", srchReportType);
|
||||||
|
params.put("searchProjectName", searchProjectName);
|
||||||
|
params.put("searchProjectCode", searchProjectCode);
|
||||||
|
params.put("searchHistSeq", searchHistSeq);
|
||||||
|
params.put("searchUserName", searchUserName);
|
||||||
|
params.put("searchCreateName", searchCreateName);
|
||||||
|
/*params.put("LoginUserId", LoginUserId);*/
|
||||||
|
|
||||||
|
Long pageSize = MyUtil.getLongFromObject( params.get("pageSize") );
|
||||||
|
if( pageSize == null ) {
|
||||||
|
pageSize = 10l;
|
||||||
|
}
|
||||||
|
|
||||||
|
PaginationInfo paginationInfo = new PaginationInfo();
|
||||||
|
|
||||||
|
paginationInfo.setRecordCountPerPage(10);
|
||||||
|
paginationInfo.setPageSize(pageSize.intValue());
|
||||||
|
paginationInfo.setTotalRecordCount( MyUtil.getIntegerFromObject(selectCompleteItemsCnt(params)).intValue() );
|
||||||
|
|
||||||
|
if (params.get("pageIndex") == null || params.get("pageIndex").equals("") || Integer.parseInt((String) params.get("pageIndex"))<=0 ) {
|
||||||
|
paginationInfo.setCurrentPageNo(1);
|
||||||
|
params.put("pageIndex", 1);
|
||||||
|
}else if(Integer.parseInt((String)params.get("pageIndex")) > paginationInfo.getLastPageNo()){
|
||||||
|
paginationInfo.setCurrentPageNo(paginationInfo.getLastPageNo());
|
||||||
|
params.put("pageIndex", paginationInfo.getLastPageNo());
|
||||||
|
}else {
|
||||||
|
paginationInfo.setCurrentPageNo((Integer) Integer.valueOf((String) params.get("pageIndex")));
|
||||||
|
}
|
||||||
|
|
||||||
|
params.put("firstIndex", paginationInfo.getFirstRecordIndex());
|
||||||
|
params.put("recordCountPerPage", paginationInfo.getRecordCountPerPage());
|
||||||
|
|
||||||
|
|
||||||
|
// data정보
|
||||||
|
arrayData = selectCompleteItems(params);
|
||||||
|
params.put("LoginUserId", LoginUserId);
|
||||||
|
// column정보
|
||||||
|
// arrayColumn = wUtil.getColArrayList(rsmd, count);
|
||||||
|
|
||||||
|
if( model != null ) {
|
||||||
|
model.put("paginationInfo", paginationInfo);
|
||||||
|
model.put("arrayCommon", arrayCommon);
|
||||||
|
//model.put("result", arrayData);
|
||||||
|
model.put("params", params);
|
||||||
|
}
|
||||||
|
|
||||||
|
if( jsonResponse != null ) {
|
||||||
|
jsonResponse.put("paginationInfo", paginationInfo);
|
||||||
|
jsonResponse.put("arrayCommon", arrayCommon);
|
||||||
|
jsonResponse.put("data", arrayData);
|
||||||
|
jsonResponse.put("params", params);
|
||||||
|
/*
|
||||||
|
jsonResponse.put("take", 1);
|
||||||
|
jsonResponse.put("skip", 2);
|
||||||
|
jsonResponse.put("page", 3);
|
||||||
|
jsonResponse.put("pageSize", 4);
|
||||||
|
*/
|
||||||
|
jsonResponse.put("filter", null);
|
||||||
|
jsonResponse.put("total", paginationInfo.getTotalRecordCount());
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -14,6 +14,10 @@
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="selectCompleteItems" parameterType="map" resultType="egovMap">
|
<select id="selectCompleteItems" parameterType="map" resultType="egovMap">
|
||||||
|
SELECT
|
||||||
|
*
|
||||||
|
FROM
|
||||||
|
(
|
||||||
SELECT
|
SELECT
|
||||||
T.CLASS_CODE
|
T.CLASS_CODE
|
||||||
, T.PROJECT_CODE
|
, T.PROJECT_CODE
|
||||||
|
|
@ -34,6 +38,76 @@
|
||||||
, TO_CHAR(OB.CREATEDATE,'YYYY-MM-DD HH24:MI:SS') AS CREATEDATE
|
, TO_CHAR(OB.CREATEDATE,'YYYY-MM-DD HH24:MI:SS') AS CREATEDATE
|
||||||
, TO_CHAR(OB.MODIFY_CALL_DATE,'YYYY-MM-DD HH24:MI:SS') AS MODIFYCALLDATE
|
, TO_CHAR(OB.MODIFY_CALL_DATE,'YYYY-MM-DD HH24:MI:SS') AS MODIFYCALLDATE
|
||||||
, NVL((SELECT DISTINCT(REPORT_FILE) FROM TEMP_EXPERT_OPINION WHERE PROJECT_CODE = T.PROJECT_CODE),'NO') AS EXPERT_FILE
|
, NVL((SELECT DISTINCT(REPORT_FILE) FROM TEMP_EXPERT_OPINION WHERE PROJECT_CODE = T.PROJECT_CODE),'NO') AS EXPERT_FILE
|
||||||
|
, ROW_NUMBER() OVER(ORDER BY T.DATETIME DESC) AS RNK
|
||||||
|
|
||||||
|
FROM
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
CLASS_CODE
|
||||||
|
, PROJECT_CODE
|
||||||
|
, REPORT_TYPE
|
||||||
|
, FUNC_COMM_NAME('CM016',REPORT_TYPE ) REPORT_TYPE_NAME
|
||||||
|
, PROJECT_NAME
|
||||||
|
, USERID
|
||||||
|
, (SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = INFO.USERID) AS USER_NAME
|
||||||
|
, STATE
|
||||||
|
, FUNC_COMM_NAME('CM001',STATE ) STATE_NAME
|
||||||
|
, (
|
||||||
|
SELECT
|
||||||
|
(SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = M.USERID)
|
||||||
|
FROM
|
||||||
|
TEMP_MANAGE_STATE M
|
||||||
|
WHERE
|
||||||
|
M.PROJECT_CODE = INFO.PROJECT_CODE
|
||||||
|
) AS CREATE_NAME
|
||||||
|
, (SELECT M.USERID FROM TEMP_MANAGE_STATE M WHERE M.PROJECT_CODE = INFO.PROJECT_CODE) AS CREATE_USERID
|
||||||
|
, TO_CHAR(DATETIME,'YYYY-MM-DD HH24:MI:SS') AS DATETIME
|
||||||
|
, DECODE(REPORT_TYPE,'CH','map','') AS MAP
|
||||||
|
, PROJECT_MASTER_COMPANY_O_CODE
|
||||||
|
, DECODE(STATE,'6','insert') AS INS
|
||||||
|
, DECODE(STATE,'6','modifycall') AS MODIFYCALL
|
||||||
|
FROM
|
||||||
|
TEMP_PROJECT_INFO INFO
|
||||||
|
WHERE STATE = '6'
|
||||||
|
) T
|
||||||
|
, TEMP_MANAGE_STATE OB
|
||||||
|
WHERE
|
||||||
|
T.PROJECT_CODE = OB.PROJECT_CODE(+)
|
||||||
|
|
||||||
|
<if test="srchReportType != null and srchReportType != '' and srchReportType != 'null'">
|
||||||
|
AND T.REPORT_TYPE = #{srchReportType}
|
||||||
|
</if>
|
||||||
|
<if test="searchProjectName != null and searchProjectName != '' and searchProjectName != 'null'">
|
||||||
|
AND T.PROJECT_NAME LIKE '%${searchProjectName}%'
|
||||||
|
</if>
|
||||||
|
<if test="searchProjectCode != null and searchProjectCode != '' and searchProjectCode != 'null'">
|
||||||
|
AND T.PROJECT_CODE LIKE '%${searchProjectCode}%'
|
||||||
|
</if>
|
||||||
|
<if test="searchUserName != null and searchUserName != '' and searchUserName != 'null'">
|
||||||
|
AND T.USER_NAME = #{searchUserName}
|
||||||
|
</if>
|
||||||
|
<if test="searchCreateName != null and searchCreateName != '' and searchCreateName != 'null'">
|
||||||
|
AND T.CREATE_NAME = #{searchCreateName}
|
||||||
|
</if>
|
||||||
|
<if test="searchHistSeq != null and searchHistSeq != '' and searchHistSeq != 'null'">
|
||||||
|
AND OB.HIST_SEQ = #{searchHistSeq}
|
||||||
|
</if>
|
||||||
|
<if test="LoginUserId != 'admin_user' and LoginUserId != null and LoginUserId != '' ">
|
||||||
|
AND T.PROJECT_MASTER_COMPANY_O_CODE = (SELECT MASTER_COMPANY_CODE FROM WEB_MEMBER_IN WHERE USERID = #{LoginUserId})
|
||||||
|
</if>
|
||||||
|
ORDER BY
|
||||||
|
T.DATETIME DESC
|
||||||
|
) A
|
||||||
|
WHERE
|
||||||
|
<![CDATA[
|
||||||
|
A.RNK BETWEEN #{firstIndex} + 1
|
||||||
|
AND #{firstIndex} + #{recordCountPerPage}
|
||||||
|
]]>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectCompleteItemsCnt" parameterType="hashmap" resultType="long">
|
||||||
|
SELECT
|
||||||
|
COUNT(1)
|
||||||
FROM (
|
FROM (
|
||||||
SELECT
|
SELECT
|
||||||
CLASS_CODE
|
CLASS_CODE
|
||||||
|
|
|
||||||
|
|
@ -169,6 +169,7 @@ function onDataBound(e) {
|
||||||
|
|
||||||
// 순번
|
// 순번
|
||||||
kendoJQuery(rows).each(function () {
|
kendoJQuery(rows).each(function () {
|
||||||
|
//var noIndex = kendoJQuery(this).index() + 1 + (grid.dataSource.pageSize() * (grid.dataSource.page() - 1));
|
||||||
var noIndex = kendoJQuery(this).index() + 1 + (grid.dataSource.pageSize() * (grid.dataSource.page() - 1));
|
var noIndex = kendoJQuery(this).index() + 1 + (grid.dataSource.pageSize() * (grid.dataSource.page() - 1));
|
||||||
var rowLabel = kendoJQuery(this).find(".row-number");
|
var rowLabel = kendoJQuery(this).find(".row-number");
|
||||||
$(rowLabel).html(noIndex);
|
$(rowLabel).html(noIndex);
|
||||||
|
|
@ -176,8 +177,88 @@ function onDataBound(e) {
|
||||||
}
|
}
|
||||||
|
|
||||||
function kendoGrid() {
|
function kendoGrid() {
|
||||||
|
|
||||||
|
var dataSource = new kendo.data.DataSource({
|
||||||
|
transport: {
|
||||||
|
read: function(options) {
|
||||||
|
var grid = kendoJQuery("#grid_type_1").data("kendoGrid");
|
||||||
|
let currentPage = 1;
|
||||||
|
if( typeof grid !== 'undefined' ) {
|
||||||
|
var dataSource = grid.dataSource; // dataSource 객체 가져오기
|
||||||
|
currentPage = dataSource.page(); // 현재 페이지 번호 가져오기
|
||||||
|
}
|
||||||
|
|
||||||
|
//사업명
|
||||||
|
let searchProjectName = null;
|
||||||
|
const searchProjectNameEle = document.getElementById('searchProjectName');
|
||||||
|
if( searchProjectNameEle ) {
|
||||||
|
searchProjectName = searchProjectNameEle.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
//사업코드
|
||||||
|
let searchProjectCode = null;
|
||||||
|
const searchProjectCodeEle = document.getElementById('searchProjectCode');
|
||||||
|
if( searchProjectCodeEle ) {
|
||||||
|
searchProjectCode = searchProjectCodeEle.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
//수정요청차수
|
||||||
|
let searchHistSeq = null;
|
||||||
|
const searchHistSeqEle = document.getElementById('searchHistSeq');
|
||||||
|
if( searchHistSeqEle ) {
|
||||||
|
searchHistSeq = searchHistSeqEle.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//공급자
|
||||||
|
let searchUserName = null;
|
||||||
|
const searchUserNameEle = document.getElementById('searchUserName');
|
||||||
|
if( searchUserNameEle ) {
|
||||||
|
searchUserName = searchUserNameEle.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//등록자
|
||||||
|
let searchCreateName = null;
|
||||||
|
const searchCreateNameEle = document.getElementById('searchCreateName');
|
||||||
|
if( searchCreateNameEle ) {
|
||||||
|
searchCreateName = searchCreateNameEle.value;
|
||||||
|
}
|
||||||
|
|
||||||
|
$.ajax({
|
||||||
|
url: "/manage/complete/list.do?pageIndex=" + currentPage
|
||||||
|
+ "&" + "searchProjectName=" + searchProjectName
|
||||||
|
+ "&" + "searchProjectCode=" + searchProjectCode
|
||||||
|
+ "&" + "searchHistSeq=" + searchHistSeq
|
||||||
|
+ "&" + "searchUserName=" + searchUserName
|
||||||
|
+ "&" + "searchCreateName=" + searchCreateName
|
||||||
|
,
|
||||||
|
contentType: 'application/json',
|
||||||
|
dataType: "json",
|
||||||
|
type: 'GET',
|
||||||
|
success: function(result) {
|
||||||
|
options.success(result);
|
||||||
|
},
|
||||||
|
error: function(result) {
|
||||||
|
options.error(result);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
|
schema: {
|
||||||
|
data: function(response) {
|
||||||
|
return response.data;
|
||||||
|
},
|
||||||
|
total: function(response) {
|
||||||
|
return response.total;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
pageSize: 10,
|
||||||
|
serverPaging: true
|
||||||
|
});
|
||||||
|
|
||||||
kendoJQuery("#grid_type_1").kendoGrid({
|
kendoJQuery("#grid_type_1").kendoGrid({
|
||||||
dataSource: gridData,
|
dataSource: dataSource,
|
||||||
columns: [
|
columns: [
|
||||||
{ field: "rowNumber", width: 50, title: "순번", template: "<span class='row-number'></span>" },
|
{ field: "rowNumber", width: 50, title: "순번", template: "<span class='row-number'></span>" },
|
||||||
{
|
{
|
||||||
|
|
@ -196,22 +277,57 @@ function kendoGrid() {
|
||||||
width: 80,
|
width: 80,
|
||||||
title: "공급자",
|
title: "공급자",
|
||||||
template: function(data){
|
template: function(data){
|
||||||
|
let userName = data.userName;
|
||||||
|
if( !data.userName ) {
|
||||||
|
userName = "";
|
||||||
|
}
|
||||||
var param = "'"+data.userid+"'";
|
var param = "'"+data.userid+"'";
|
||||||
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + data.userName + "</a>";
|
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + userName + "</a>";
|
||||||
return url;
|
return url;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
{ field: "datetime", width: 130, title: "입력일시", template: "<div class='td-data'>#: datetime #</div>" },
|
{ field: "datetime", width: 130, title: "입력일시",
|
||||||
{ field: "createdate", width: 130, title: "등록일시", template: "<div class='td-data'>#: createdate #</div>" },
|
template: function(data){
|
||||||
{ field: "modifycalldate", width: 130, title: "수정요청일시", template: "<div class='td-data'>#: modifycalldate #</div>" },
|
let datetime = data.datetime;
|
||||||
|
if( !data.datetime ) {
|
||||||
|
datetime = "";
|
||||||
|
}
|
||||||
|
var url = "<div class='td-data'>" + datetime + "</div>";
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{ field: "createdate", width: 130, title: "등록일시",
|
||||||
|
template: function(data){
|
||||||
|
let createdate = data.createdate;
|
||||||
|
if( !data.createdate ) {
|
||||||
|
createdate = "";
|
||||||
|
}
|
||||||
|
var url = "<div class='td-data'>" + createdate + "</div>";
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
{ field: "modifycalldate", width: 130, title: "수정요청일시",
|
||||||
|
template: function(data){
|
||||||
|
let modifycalldate = data.modifycalldate;
|
||||||
|
if( !data.modifycalldate ) {
|
||||||
|
modifycalldate = "";
|
||||||
|
}
|
||||||
|
var url = "<div class='td-data'>" + modifycalldate + "</div>";
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
},
|
||||||
{ field: "stateName", width: 80, title: "공급현황", template: "<div class='td-data'>#: stateName #</div>" },
|
{ field: "stateName", width: 80, title: "공급현황", template: "<div class='td-data'>#: stateName #</div>" },
|
||||||
{
|
{
|
||||||
field: "createName",
|
field: "createName",
|
||||||
width: 80,
|
width: 80,
|
||||||
title: "등록자",
|
title: "등록자",
|
||||||
template: function(data){
|
template: function(data){
|
||||||
|
let createName = data.createName;
|
||||||
|
if( !data.createName ) {
|
||||||
|
createName = "";
|
||||||
|
}
|
||||||
var param = "'"+data.createUserid+"'";
|
var param = "'"+data.createUserid+"'";
|
||||||
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + data.createName + "</a>";
|
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + createName + "</a>";
|
||||||
return url;
|
return url;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
@ -233,7 +349,16 @@ function kendoGrid() {
|
||||||
등록완료 후 프로젝트 정보 수정 시, TBL_HEADER_HOLE 테이블에서 수정 전 정보가 삭제되지 않아, 검색유통에 이중으로 나오는 문제 있음. --%>
|
등록완료 후 프로젝트 정보 수정 시, TBL_HEADER_HOLE 테이블에서 수정 전 정보가 삭제되지 않아, 검색유통에 이중으로 나오는 문제 있음. --%>
|
||||||
template: "<div class='td-data'>#= modifycallBtnTemplate(data.projectCode, data.createUserid, data.modifycall) #</div>"
|
template: "<div class='td-data'>#= modifycallBtnTemplate(data.projectCode, data.createUserid, data.modifycall) #</div>"
|
||||||
},
|
},
|
||||||
{ field: "histSeq", width: 60, title: "차수", template: "<div class='td-data'>#: histSeq #</div>" },
|
{ field: "histSeq", width: 60, title: "차수",
|
||||||
|
template: function(data){
|
||||||
|
let histSeq = data.histSeq;
|
||||||
|
if( !data.histSeq ) {
|
||||||
|
histSeq = "";
|
||||||
|
}
|
||||||
|
var url = "<div class='td-data'>" + histSeq + "</div>";
|
||||||
|
return url;
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
field: "modifyuser",
|
field: "modifyuser",
|
||||||
width: 80, title: "변경",
|
width: 80, title: "변경",
|
||||||
|
|
@ -248,7 +373,7 @@ function kendoGrid() {
|
||||||
pageable: {
|
pageable: {
|
||||||
refresh: false,
|
refresh: false,
|
||||||
pageSizes: true,
|
pageSizes: true,
|
||||||
pageSize: 10,
|
pageSize: 10, // 몇 개의 레코드를 보여줄 것인가?
|
||||||
//buttonCount: 10,
|
//buttonCount: 10,
|
||||||
input: true,
|
input: true,
|
||||||
numeric: false,
|
numeric: false,
|
||||||
|
|
@ -344,6 +469,7 @@ function fn_grid_refresh(){
|
||||||
<!-- 검색영역 시작 -->
|
<!-- 검색영역 시작 -->
|
||||||
<div class="page-top-search" data-target="project-search">
|
<div class="page-top-search" data-target="project-search">
|
||||||
<form name="frmSearch" id="frmSearch" action="/manage/complete.do" method="post">
|
<form name="frmSearch" id="frmSearch" action="/manage/complete.do" method="post">
|
||||||
|
<input id="pageIndex" name="pageIndex" type="hidden" value="1" />
|
||||||
<div class="form-inline row">
|
<div class="form-inline row">
|
||||||
<!-- 윗줄 -->
|
<!-- 윗줄 -->
|
||||||
<div class="input-group col-md-4 col-xs-4 col-sm-4">
|
<div class="input-group col-md-4 col-xs-4 col-sm-4">
|
||||||
|
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue