parent
435f7dc795
commit
7b5c1a5146
|
|
@ -2,6 +2,7 @@ package geoinfo.regi.holeCoordinate;
|
|||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
|
@ -12,10 +13,10 @@ import org.springframework.stereotype.Controller;
|
|||
import org.springframework.ui.ModelMap;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.ResponseBody;
|
||||
import org.springframework.web.servlet.ModelAndView;
|
||||
|
||||
import comm.util.strUtil;
|
||||
import comm.web.WebSupplyXml;
|
||||
import egovframework.com.json.JSONObject;
|
||||
import geoinfo.regi.holeCoordinate.service.HoleCoordinateService;
|
||||
import geoinfo.regi.manageList.service.ManageListService;
|
||||
|
|
@ -69,7 +70,8 @@ public class HoleCoordinateController {
|
|||
// SelectBox형태로 map으로 받기
|
||||
HashMap<?, ?> mapCommon = wUtil.getCommCodeSel(commCode, arrayCommon, "");
|
||||
|
||||
ArrayList<?> result = masterService.getDataList(params);
|
||||
// ArrayList<?> result = masterService.getDataList(params);
|
||||
ArrayList<?> result = new ArrayList<>();
|
||||
JSONObject json = new JSONObject();
|
||||
json.put("items", result);
|
||||
count = commonService.getCommonCodeCount();
|
||||
|
|
@ -86,6 +88,47 @@ public class HoleCoordinateController {
|
|||
return "/web/manage/hole_coord";
|
||||
};
|
||||
|
||||
/**
|
||||
* kendo grid 목록데이타 AJAX 요청
|
||||
* @throws Exception
|
||||
*/
|
||||
@RequestMapping("/getHoleCoordList.do")
|
||||
@ResponseBody
|
||||
public Map<String, Object> getHoleCoordList(HttpServletRequest request, HttpServletResponse response, @RequestParam HashMap<String, Object> params) throws Exception {
|
||||
|
||||
int page = params.get("page").toString() != null ? Integer.parseInt(params.get("page").toString()) : 1;
|
||||
int pageSize = params.get("pageSize") != null ? Integer.parseInt((String)params.get("pageSize")) : 10; // 기본값 10
|
||||
|
||||
|
||||
int nCls = MyUtil.getIntegerFromObject(request.getSession().getAttribute("CLS"));
|
||||
strUtil sUtil = new strUtil();
|
||||
WebUtil wUtil = new WebUtil();
|
||||
wUtil.topTabId = "manageCoordinate"; // 검수일때 tab 활성화 시켜주기 위해
|
||||
String loginUserId = String.valueOf(request.getSession().getAttribute("USERID"));
|
||||
// request
|
||||
String srchStartDate = sUtil.checkNull(parseData.parseData((String)params.get("startDate")));
|
||||
String srchEndDate = sUtil.checkNull(parseData.parseData((String)params.get("endDate")));
|
||||
String searchProjectName = sUtil.checkNull(parseData.parseData((String)params.get("searchProjectName")));
|
||||
String searchUserName = sUtil.checkNull(parseData.parseData((String)params.get("searchUserName")));
|
||||
String searchCreateName = sUtil.checkNull(parseData.parseData((String)params.get("searchCreateName")));
|
||||
params.put("loginUserId", loginUserId);
|
||||
params.put("cls", nCls);
|
||||
params.put("startRow", ((page - 1) * pageSize) + 1);
|
||||
if (page > 1) {
|
||||
params.put("endRow", (((page - 1) * pageSize) + 1) + pageSize - 1); // startRow + pageSize - 1
|
||||
} else {
|
||||
params.put("endRow", 10);
|
||||
}
|
||||
|
||||
List<?> items = masterService.getDataListPaging(params);
|
||||
int total = masterService.getDataListCount(params);
|
||||
|
||||
Map<String, Object> result = new HashMap<>();
|
||||
result.put("items", items);
|
||||
result.put("total", total);
|
||||
return result;
|
||||
}
|
||||
|
||||
// 좌표수정 (관리자)
|
||||
@RequestMapping(value = "/holeCoordModify.do")
|
||||
public String holeCoordModify(@RequestParam HashMap<String, Object> params, ModelMap model, HttpServletRequest request, HttpServletResponse response) throws Exception {
|
||||
|
|
|
|||
|
|
@ -10,6 +10,8 @@ import egovframework.rte.psl.dataaccess.util.EgovMap;
|
|||
@Mapper("holeCoordinateMapper")
|
||||
public interface HoleCoordinateMapper {
|
||||
|
||||
public Integer getDataListCount(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getDataListPaging(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getDataList(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getCoordList(HashMap<String,Object> params) throws Exception;
|
||||
public String getCoordName(HashMap<String,Object> params) throws Exception;
|
||||
|
|
|
|||
|
|
@ -9,6 +9,8 @@ import egovframework.rte.psl.dataaccess.util.EgovMap;
|
|||
|
||||
public interface HoleCoordinateService {
|
||||
|
||||
public Integer getDataListCount(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getDataListPaging(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getDataList(HashMap<String,Object> params) throws Exception;
|
||||
public ArrayList<?> getCoordList(HashMap<String,Object> params) throws Exception;
|
||||
public String getCoordName(HashMap<String,Object> params) throws Exception;
|
||||
|
|
|
|||
|
|
@ -17,6 +17,16 @@ public class HoleCoordinateServiceImpl implements HoleCoordinateService {
|
|||
|
||||
@Resource(name = "holeCoordinateMapper")
|
||||
private HoleCoordinateMapper holeCoordinateMapper;
|
||||
|
||||
@Override
|
||||
public Integer getDataListCount(HashMap<String,Object> params) throws Exception {
|
||||
return holeCoordinateMapper.getDataListCount(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ArrayList<?> getDataListPaging(HashMap<String,Object> params) throws Exception {
|
||||
return holeCoordinateMapper.getDataListPaging(params);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ArrayList<?> getDataList(HashMap<String,Object> params) throws Exception {
|
||||
|
|
|
|||
|
|
@ -41,6 +41,111 @@
|
|||
]]>
|
||||
</select>
|
||||
|
||||
<!-- 좌표수정 목록 데이타 건수 취득 -->
|
||||
<select id="getDataListCount" parameterType="map" resultType="int">
|
||||
<![CDATA[
|
||||
SELECT COUNT(1)
|
||||
FROM (
|
||||
SELECT
|
||||
CLASS_CODE, PROJECT_CODE, REPORT_TYPE, REPORT_TYPE_NAME,
|
||||
REPLACE(REPLACE(PROJECT_NAME, '"',''''), '''', ' ') AS PROJECT_NAME,
|
||||
USERID, USER_NAME, STATE, STATE_NAME, CREATE_NAME,
|
||||
CREATE_USERID, DATETIME, MAP, INS, ROW_NUMBER() OVER (ORDER BY T.DATETIME DESC) AS RN
|
||||
FROM (
|
||||
SELECT
|
||||
T.CLASS_CODE, T.PROJECT_CODE, T.REPORT_TYPE,
|
||||
FUNC_COMM_NAME('CM016',REPORT_TYPE ) AS REPORT_TYPE_NAME,
|
||||
T.PROJECT_NAME, T.USERID,
|
||||
(SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = T.USERID) AS USER_NAME,
|
||||
T.STATE, FUNC_COMM_NAME('CM001',STATE ) AS STATE_NAME,
|
||||
(SELECT (SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = M.USERID)
|
||||
FROM TEMP_MANAGE_STATE M WHERE M.PROJECT_CODE = T.PROJECT_CODE) AS CREATE_NAME,
|
||||
(SELECT M.USERID FROM TEMP_MANAGE_STATE M WHERE M.PROJECT_CODE = T.PROJECT_CODE) AS CREATE_USERID,
|
||||
TO_CHAR(T.DATETIME,'YYYY-MM-DD HH24:MI:SS') AS DATETIME,
|
||||
DECODE(REPORT_TYPE,'CH','map','') AS MAP,
|
||||
DECODE(STATE,'6','insert') AS INS,
|
||||
T.PROJECT_MASTER_COMPANY_O_CODE
|
||||
FROM TEMP_PROJECT_INFO T
|
||||
WHERE NVL(USE_YN,' ') <> 'N'
|
||||
AND STATE = '6'
|
||||
AND REPORT_TYPE = 'CH'
|
||||
]]>
|
||||
) T
|
||||
<where>
|
||||
<if test="searchProjectName != null and searchProjectName != ''">
|
||||
AND T.PROJECT_NAME LIKE '%' || #{searchProjectName} || '%'
|
||||
</if>
|
||||
<if test="searchUserName != null and searchUserName != ''">
|
||||
AND T.USER_NAME = #{searchUserName}
|
||||
</if>
|
||||
<if test="searchCreateName != null and searchCreateName != ''">
|
||||
AND T.CREATE_NAME = #{searchCreateName}
|
||||
</if>
|
||||
<if test="loginUserId != 'admin_user' and cls != 65535">
|
||||
AND T.PROJECT_MASTER_COMPANY_O_CODE = (
|
||||
SELECT MASTER_COMPANY_CODE
|
||||
FROM WEB_MEMBER_IN
|
||||
WHERE USERID = #{loginUserId}
|
||||
)
|
||||
</if>
|
||||
</where>
|
||||
) TB
|
||||
WHERE 1=1
|
||||
|
||||
</select>
|
||||
<!-- 좌표수정 목록 데이타 취득 -->
|
||||
<select id="getDataListPaging" parameterType="map" resultType="egovMap">
|
||||
<![CDATA[
|
||||
SELECT TB.*
|
||||
FROM (
|
||||
SELECT ROW_NUMBER() OVER (ORDER BY T.DATETIME DESC) AS RN,
|
||||
CLASS_CODE, PROJECT_CODE, REPORT_TYPE, REPORT_TYPE_NAME,
|
||||
REPLACE(REPLACE(PROJECT_NAME, '"',''''), '''', ' ') AS PROJECT_NAME,
|
||||
USERID, USER_NAME, STATE, STATE_NAME, CREATE_NAME,
|
||||
CREATE_USERID, DATETIME, MAP, INS
|
||||
FROM (
|
||||
SELECT
|
||||
T.CLASS_CODE, T.PROJECT_CODE, T.REPORT_TYPE,
|
||||
FUNC_COMM_NAME('CM016',REPORT_TYPE ) AS REPORT_TYPE_NAME,
|
||||
T.PROJECT_NAME, T.USERID,
|
||||
(SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = T.USERID) AS USER_NAME,
|
||||
T.STATE, FUNC_COMM_NAME('CM001',STATE ) AS STATE_NAME,
|
||||
(SELECT (SELECT USER_NAME FROM WEB_MEMBER_IN WHERE USERID = M.USERID)
|
||||
FROM TEMP_MANAGE_STATE M WHERE M.PROJECT_CODE = T.PROJECT_CODE) AS CREATE_NAME,
|
||||
(SELECT M.USERID FROM TEMP_MANAGE_STATE M WHERE M.PROJECT_CODE = T.PROJECT_CODE) AS CREATE_USERID,
|
||||
TO_CHAR(T.DATETIME,'YYYY-MM-DD HH24:MI:SS') AS DATETIME,
|
||||
DECODE(REPORT_TYPE,'CH','map','') AS MAP,
|
||||
DECODE(STATE,'6','insert') AS INS,
|
||||
T.PROJECT_MASTER_COMPANY_O_CODE
|
||||
FROM TEMP_PROJECT_INFO T
|
||||
WHERE NVL(USE_YN,' ') <> 'N'
|
||||
AND STATE = '6'
|
||||
AND REPORT_TYPE = 'CH'
|
||||
]]>
|
||||
) T
|
||||
<where>
|
||||
<if test="searchProjectName != null and searchProjectName != ''">
|
||||
AND T.PROJECT_NAME LIKE '%' || #{searchProjectName} || '%'
|
||||
</if>
|
||||
<if test="searchUserName != null and searchUserName != ''">
|
||||
AND T.USER_NAME = #{searchUserName}
|
||||
</if>
|
||||
<if test="searchCreateName != null and searchCreateName != ''">
|
||||
AND T.CREATE_NAME = #{searchCreateName}
|
||||
</if>
|
||||
<if test="loginUserId != 'admin_user' and cls != 65535">
|
||||
AND T.PROJECT_MASTER_COMPANY_O_CODE = (
|
||||
SELECT MASTER_COMPANY_CODE
|
||||
FROM WEB_MEMBER_IN
|
||||
WHERE USERID = #{loginUserId}
|
||||
)
|
||||
</if>
|
||||
</where>
|
||||
) TB
|
||||
WHERE 1=1
|
||||
AND RN BETWEEN #{startRow} AND #{endRow}
|
||||
</select>
|
||||
|
||||
<select id="getCoordList" parameterType="map" resultType="egovMap">
|
||||
<![CDATA[
|
||||
SELECT PROJECT_CODE
|
||||
|
|
|
|||
|
|
@ -5,19 +5,20 @@
|
|||
<%@ include file="/include/inc_head_2021_new.jsp" %>
|
||||
|
||||
<!-- 자바스크립트 데이터 배열 생성 -->
|
||||
<c:import url="/includeDataArray.do" />
|
||||
<%-- <c:import url="/includeDataArray.do" /> --%>
|
||||
|
||||
<!--function 정의 -->
|
||||
<script type="text/javascript">
|
||||
|
||||
var gridData = new Array(); //데이터 배열객체
|
||||
// var gridData = new Array(); //데이터 배열객체
|
||||
|
||||
//조회
|
||||
function fn_Search(){
|
||||
//날짜 체크
|
||||
if(!fn_fromToCheckAlert($("#startDate").val(), $("#endDate").val(), "기간시작일", "기간종료일", "startDate"))return false;
|
||||
|
||||
document.frmSearch.submit();
|
||||
// document.frmSearch.submit();
|
||||
reloadGrid(); // 그리드 데이타를 새로 요청한다
|
||||
}
|
||||
|
||||
//load
|
||||
|
|
@ -33,7 +34,8 @@ function fn_submit(report_type, project_code, proc){
|
|||
//엔터키 이벤트
|
||||
function submitEvent(){
|
||||
if (event.keyCode == 13) {
|
||||
document.frmSearch.submit();
|
||||
// document.frmSearch.submit();
|
||||
reloadGrid();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -48,8 +50,9 @@ function fn_gourl(project_code){
|
|||
}
|
||||
|
||||
$(document).ready(function () {
|
||||
fn_MakeDataArray();
|
||||
kendoGrid();
|
||||
// fn_MakeDataArray();
|
||||
// kendoGrid();
|
||||
reloadGrid()
|
||||
});
|
||||
|
||||
//등록 및 유통자료 생성 버튼
|
||||
|
|
@ -151,6 +154,108 @@ function kendoGrid() {
|
|||
});
|
||||
}
|
||||
|
||||
function reloadGrid() {
|
||||
var gridData = new kendo.data.DataSource({
|
||||
transport: {
|
||||
read: {
|
||||
url: "/getHoleCoordList.do",
|
||||
dataType: "json",
|
||||
type: "POST",
|
||||
data: function() {
|
||||
return {
|
||||
startDate: $("#startDate").val(),
|
||||
endDate: $("#endDate").val(),
|
||||
searchProjectName: $("#searchProjectName").val(),
|
||||
searchUserName: $("#searchUserName").val(),
|
||||
searchCreateName: $("#searchCreateName").val(),
|
||||
page: 1,
|
||||
pageSize: 10
|
||||
};
|
||||
}
|
||||
}
|
||||
},
|
||||
schema: {
|
||||
data: "items", // 서버에서 실제 데이터 Array key
|
||||
total: "total" // 서버에서 전체 개수 key
|
||||
},
|
||||
serverPaging: true,
|
||||
serverSorting: true,
|
||||
pageSize: 10
|
||||
});
|
||||
|
||||
kendoJQuery("#grid_type_1").kendoGrid({
|
||||
dataSource: gridData,
|
||||
scrollable: { virtual: true },
|
||||
pageable: {
|
||||
refresh: true,
|
||||
numeric: true,
|
||||
pageSizes: [50, 100, 200],
|
||||
pageSize: 10
|
||||
},
|
||||
columns: [
|
||||
|
||||
{ field: "rowNumber", width: 50, title: "순번", template: "<span class='row-number'></span>" },
|
||||
{
|
||||
field: "projectName",
|
||||
width: 262,
|
||||
title: "프로젝트명",
|
||||
template: function(data){
|
||||
var param = "'"+data.projectCode+"'";
|
||||
var url = "<a href=javascript:fn_gourl(" + param +");>" + data.projectName + "</a>";
|
||||
return url;
|
||||
},
|
||||
attributes: { style:"text-align: left" }
|
||||
},
|
||||
{
|
||||
field: "userName",
|
||||
width: 80,
|
||||
title: "공급자",
|
||||
template: function(data){
|
||||
var param = "'"+data.userid+"'";
|
||||
var userName = data.userName == null ? "" : data.userName;
|
||||
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + userName + "</a>";
|
||||
return url;
|
||||
},
|
||||
},
|
||||
{ field: "datetime", width: 130, title: "입력일시", template: "<div class='td-data'>#: datetime #</div>" },
|
||||
{ field: "stateName", width: 80, title: "공급현황", template: "<div class='td-data'>#: stateName #</div>" },
|
||||
{
|
||||
field: "createName",
|
||||
width: 80,
|
||||
title: "등록자",
|
||||
template: function(data){
|
||||
var param = "'"+data.createUserid+"'";
|
||||
var createName = data.createName == null ? "" : data.createName;
|
||||
var url = "<a href=javascript:fn_ProviderInfoPopupDiv("+ param +",'ProviderInfo');>" + createName + "</a>";
|
||||
return url;
|
||||
},
|
||||
},
|
||||
{
|
||||
field: "ins",
|
||||
width: 60, title: "재등록",
|
||||
template: "<div class='td-data'>#= insBtnTemplate(data.reportType, data.projectCode, data.createUserid, data.expertFile, data.ins) #</div>"
|
||||
},
|
||||
],
|
||||
sortable: true,
|
||||
scrollable: true,
|
||||
selectable: true,
|
||||
columnResizeHandleWidth: 20,
|
||||
resizable: true,
|
||||
pageable: {
|
||||
refresh: false,
|
||||
pageSizes: true,
|
||||
pageSize: 10,
|
||||
//buttonCount: 10,
|
||||
input: true,
|
||||
numeric: false,
|
||||
},
|
||||
noRecords: {
|
||||
template: "등록된데이터가 없습니다."
|
||||
},
|
||||
dataBound: onDataBound,
|
||||
});
|
||||
}
|
||||
|
||||
/* 도움말 시작 */
|
||||
function fn_help_tour(){
|
||||
var pageTitle = "좌표수정 목록";
|
||||
|
|
@ -234,8 +339,10 @@ function fn_grid_refresh(){
|
|||
|
||||
<!-- 검색영역 시작 -->
|
||||
<div class="page-top-search" data-target="project-search">
|
||||
<form name="frmSearch" id="frmSearch" action="holeCoord.do" method="post">
|
||||
<form name="frmSearch" id="frmSearch" action="getHoleCoordList.do" method="post">
|
||||
|
||||
<input type="hidden" id="page" name="page" value="1" />
|
||||
<input type="hidden" id="pageSize" name="pageSize" value="10" />
|
||||
<div class="form-inline row">
|
||||
<div class="input-group col-md-4 col-xs-4 col-sm-4">
|
||||
<label class="input-label-display" for="searchProjectName">사업명</label>
|
||||
|
|
|
|||
Loading…
Reference in New Issue