"5. · 교육운영>증빙서류출력(과거) 화면 데이터의 등록/수정기능
This commit is contained in:
parent
25a8c8c5ab
commit
fa8ee14ae6
|
|
@ -60,7 +60,7 @@
|
|||
<HintPath>..\packages\Common.Logging.Core.3.0.0\lib\net40\Common.Logging.Core.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="IBatisNet.Common.Logging.Log4Net">
|
||||
<HintPath>..\..\LMS_TSTI\Source\Core\NPTech.LMS.Core\bin\Release\IBatisNet.Common.Logging.Log4Net.dll</HintPath>
|
||||
<HintPath>..\References\IBatisNet.Common.Logging.Log4Net.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="Linkhub">
|
||||
<HintPath>..\References\Popbill\Linkhub.dll</HintPath>
|
||||
|
|
@ -497,6 +497,7 @@
|
|||
<Content Include="Content\file\users.xlsx" />
|
||||
<Content Include="Content\file\examusers.xlsx" />
|
||||
<Content Include="Content\file\YNICTEManualaxds.pdf" />
|
||||
<Content Include="Content\file\documentspast.xlsx" />
|
||||
<None Include="Properties\PublishProfiles\FolderProfile.pubxml" />
|
||||
<Content Include="js\Chart.utils.js" />
|
||||
<Content Include="Spring\ControllersStaging.xml" />
|
||||
|
|
|
|||
Binary file not shown.
|
|
@ -945,14 +945,15 @@ namespace NP.BO.Controllers
|
|||
{
|
||||
var ht = SetHash(vm);
|
||||
|
||||
vm.syears = Dao.Get<textvalue>("cr.documnets.syear", ht).ToList();
|
||||
vm.cgs = Dao.Get<textvalue>("cr.documnets.cg", ht).ToList();
|
||||
vm.cshapes = Dao.Get<textvalue>("cr.documnets.cshape", ht).ToList();
|
||||
vm.typemans = Dao.Get<textvalue>("cr.documnets.typeman", ht).ToList();
|
||||
vm.edukinds = Dao.Get<textvalue>("cr.documnets.edukind", ht).ToList();
|
||||
vm.typeedus = Dao.Get<textvalue>("cr.documnets.typeedu", ht).ToList();
|
||||
vm.typegrades = Dao.Get<textvalue>("cr.documnets.typegrade", ht).ToList();
|
||||
vm.typejobs = Dao.Get<textvalue>("cr.documnets.typejob", ht).ToList();
|
||||
vm.syears = Dao.Get<textvalue>("cr.documnetspasts.syear", ht).ToList();
|
||||
vm.cgs = Dao.Get<textvalue>("cr.documnetspasts.cg", ht).ToList();
|
||||
vm.cshapes = Dao.Get<textvalue>("cr.documnetspasts.cshape", ht).ToList();
|
||||
vm.typemans = Dao.Get<textvalue>("cr.documnetspasts.typeman", ht).ToList();
|
||||
vm.edukinds = Dao.Get<textvalue>("cr.documnetspasts.edukind", ht).ToList();
|
||||
vm.typeedus = Dao.Get<textvalue>("cr.documnetspasts.typeedu", ht).ToList();
|
||||
vm.typegrades = Dao.Get<textvalue>("cr.documnetspasts.typegrade", ht).ToList();
|
||||
vm.typejobs = Dao.Get<textvalue>("cr.documnetspasts.typejob", ht).ToList();
|
||||
vm.kinds = Dao.Get<textvalue>("cr.documnetspasts.kind", ht).ToList();
|
||||
List<textvalue> words = new List<textvalue>();
|
||||
words.Add(new textvalue { text = "이름", value = "이름"});
|
||||
words.Add(new textvalue { text = "주민등록번호", value = "주민등록번호" });
|
||||
|
|
@ -983,17 +984,17 @@ namespace NP.BO.Controllers
|
|||
case "사업자등록번호": ht.Add("word", "brno"); break;
|
||||
}
|
||||
ht.Add("text", vm.stringval12);
|
||||
vm.DocumentList = Dao.Get<Document>("cr.documnetspast", ht);
|
||||
vm.DocumentList = Dao.Get<Document>("cr.documnetspasts", ht);
|
||||
vm.pagetotalcount = GetCount(vm.DocumentList.FirstOrDefault());
|
||||
|
||||
if (vm.isexceldown == 1)
|
||||
{
|
||||
vm.DocumentList = Dao.Get<Document>("cr.documnetspast", ht);
|
||||
vm.DocumentList = Dao.Get<Document>("cr.documnetspasts", ht);
|
||||
return ExportExcel(
|
||||
new String[] { "구분","과정분류","교육유형","아이디","이름","주민번호","기술인분류","교육구분","교육목적","등급","직무분야","과정명","수료번호","업체명","업체주소","사업자등록번호",
|
||||
new String[] { "구분","과정분류","교육유형","이름","주민번호","기술인분류","교육구분","교육목적","등급","직무분야","과정명","수료번호","업체명","업체주소","사업자등록번호",
|
||||
"고용보험관리번호","업태","종목","대표자","교육시작일","교육종료일","교육이수시간","소속협회","학력","직위","교육생연락처","업체담당자","업체담당당자 연락처","교육비",
|
||||
"환급액","환급은행명","환급계좌" ,"환급계좌예금주","계산서이메일","교육연도"},
|
||||
new String[] { "kind", "cg", "cshape","id", "username", "userpno", "typeman", "edukind", "typeedu", "typegrade", "typejob", "cgname", "completeno", "companyname",
|
||||
new String[] { "kind", "cg", "cshape", "username", "userpno", "typeman", "edukind", "typeedu", "typegrade", "typejob", "cgname", "completeno", "companyname",
|
||||
"companyaddr", "brno", "eino", "btype", "bkind", "ceoname", "ssdateymd","sedateymd","sctime","assign","slevel","uduty","phone","mname","mphone",
|
||||
"sprice","rprice","rbank","rbankno","rbankuser","taxemail","syear"},
|
||||
vm.DocumentList,
|
||||
|
|
|
|||
|
|
@ -99,6 +99,7 @@
|
|||
<div style="text-align: right; border-bottom: 1px solid #ddd; padding-bottom: 5px;">
|
||||
<button class="btn btn-default btn-s-xs" type="button" onclick="javascript:submit();"><i class="fa fa-search"></i></button>
|
||||
<a href="#" onclick="javascript:exceldown('mform', '/croom/documentspast', 'tbody1', 'DocumentsPast');" class="btn btn-default btn-s-xs" style="margin-left: 5px;">엑셀다운로드</a>
|
||||
<a href="#" onclick="javascript:viewbatch();" class="btn btn-s-xs btn-info">엑셀일괄등록</a>
|
||||
|
||||
</div><br />
|
||||
<div class="tar buttonbox">
|
||||
|
|
@ -109,6 +110,9 @@
|
|||
<table class="table table-striped b-t b-light" style="width:5000px">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>수정</th>
|
||||
<th>등록/수정 일자</th>
|
||||
<th>구분</th>
|
||||
<th>과정분류</th>
|
||||
<th>교육유형</th>
|
||||
<th>이름</th>
|
||||
|
|
@ -149,7 +153,10 @@
|
|||
@foreach (var item in Model.DocumentList)
|
||||
{
|
||||
<tr>
|
||||
<td class="link"><a href="#" onclick="viewdocument(@item.no)">[수정]</a></td>
|
||||
<td>@(item.cdt != DateTime.MinValue ? item.cdtymd : item.udt != DateTime.MinValue ? item.udtymd : "-") </td>
|
||||
<td>@item.kind</td>
|
||||
<td>@item.cg</td>
|
||||
<td>@item.cshape</td>
|
||||
<td>@item.username</td>
|
||||
<td>@(item.userpno.Length > 7 ? item.userpno.Insert(6,"-") : item.userpno)</td>
|
||||
|
|
@ -191,13 +198,329 @@
|
|||
@Html.Pager((int)Model.pagenum, 10, Model.pagerowcount, Model.pagetotalcount)
|
||||
</section>
|
||||
</form>
|
||||
<div id="documentbox" class="findbox draggable regbox" style="width: 800px; z-index: 1041; top: 60px;bottom: 30px; overflow: auto;">
|
||||
<h4><i class="fa fa-bars"></i> <span id="pcap">과거 증빙서류 수정</span><a href="#" class="btn btn-default btn-xs f-r closethisbox">닫기</a></h4>
|
||||
<input type="hidden" id="document_no" name="document.no" />
|
||||
<table class="regtable">
|
||||
<colgroup>
|
||||
<col style="width:20%" />
|
||||
<col style="width:30%" />
|
||||
<col style="width:20%" />
|
||||
<col />
|
||||
</colgroup>
|
||||
<tr>
|
||||
<th>과정분류</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.cgs, new ViewDataDictionary { { "name", "document.cg" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
<th>교육유형</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.cshapes, new ViewDataDictionary { { "name", "document.cshape" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>이름</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.username", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>주민번호</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.userpno", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>기술인분류</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.typemans, new ViewDataDictionary { { "name", "document.typeman" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
<th>교육구분</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.edukinds, new ViewDataDictionary { { "name", "document.edukind" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>교육목적</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.typeedus, new ViewDataDictionary { { "name", "document.typeedu" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
<th>등급</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.typegrades, new ViewDataDictionary { { "name", "document.typegrade" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>직무분야</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.typejobs, new ViewDataDictionary { { "name", "document.typejob" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
<th>과정명</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.cgname", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>수료번호</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.completeno", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>업체명</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.companyname", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>업체주소</th>
|
||||
<td colspan="3">
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.companyaddr", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>사업자등록번호</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.brno", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>고용보험관리번호</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.eino", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>업태</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.btype", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>종목</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.bkind", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>대표자</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.ceoname", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>교육일시작일</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Date", null, new ViewDataDictionary { { "name", "document.ssdate" } })
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>교육일종료일</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Date", null, new ViewDataDictionary { { "name", "document.sedate" } })
|
||||
</td>
|
||||
<th>교육이수시간</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.sctime", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>소속협회</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.assign", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>학력</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.slevel", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>직위</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.uduty", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>교육생연락처</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.phone", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>업체담당자</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.mname", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>업체담당자연락처</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.mphone", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>교육비</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.sprice", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>환급액</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.rprice", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>환급은행명</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.rbank", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>환급계좌</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.rbankno", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>환급계좌예금주</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.rbankuser", Style = "width:100%;" }))
|
||||
</td>
|
||||
<th>계산서이메일</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Text", null, Helpers.DicText(new NP.Model.TextDic() { Name = "document.taxemail", Style = "width:100%;" }))
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<th>교육연도</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.syears, new ViewDataDictionary { { "name", "document.syear" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
<th>구분</th>
|
||||
<td>
|
||||
@Html.Partial("./Partial/Select", Model.kinds, new ViewDataDictionary { { "name", "document.kind" }, { "style", "width: 100%" }, { "df", ":-선택" } })
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div class="findboxbtnbox" id="btnsave">
|
||||
<a href="#" class="btn btn-primary" onclick="update();">수정</a>
|
||||
</div>
|
||||
</div>
|
||||
<div id="batchbox" class="findbox draggable regbox summernoteparentfixedbox" style="width: 500px; z-index: 1041; left: 50%; margin-left: -250px; top: 60px; bottom: 30px; overflow: auto;">
|
||||
<h4><a href="#" class="btn btn-default btn-xs f-r closethisbox" style="margin-right:5px; margin-top:5px;">닫기</a></h4>
|
||||
<section class="panel panel-default" style="border-top: 1px solid #ddd; margin-top: 5px;">
|
||||
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 일괄등록<span class=""></span></strong></header>
|
||||
<div class="panel-body">
|
||||
<div class="form-group">
|
||||
<label class="col-sm-5 col-md-3 control-label">일괄등록</label>
|
||||
<div class="col-sm-7 col-md-9">
|
||||
<input id="uploadfile" type="file" /><br />
|
||||
</div>
|
||||
<div class="findboxbtnbox">
|
||||
<a href="~/Content/file/documentspast.xlsx" class="btn btn-info">양식다운로드</a>
|
||||
<a href="#" class="btn btn-primary" onclick="save();">일괄등록</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</div>
|
||||
@section scriptsHeader{
|
||||
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
|
||||
@Html.Partial("./Partial/ScriptDate")
|
||||
}
|
||||
@section scripts{
|
||||
<script>
|
||||
$(document).ready(function () {
|
||||
});
|
||||
});
|
||||
|
||||
function jsonDateToString(jsonDate) {
|
||||
var date = new Date(parseInt(jsonDate.replace(/(^.*\()|([+-].*$)/g, '')));
|
||||
var yyyy = String(date.getFullYear());
|
||||
var MM = (date.getMonth() + 1) < 10 ? "0" + (date.getMonth() + 1) : String(date.getMonth() + 1);
|
||||
var dd = date.getDate() < 10 ? "0" + date.getDate() : String(date.getDate());
|
||||
return yyyy + "-" + MM + "-" + dd;;
|
||||
}
|
||||
function viewdocument(no) {
|
||||
capp("/acommon/DocumnetsPast", { no: no }, "cbviewdocument",null,null,true);
|
||||
}
|
||||
function cbviewdocument() {
|
||||
if (capResult.code == 1000) {
|
||||
for (key in capResult.obj) {
|
||||
if (key == "ssdate" || key == "sedate") {
|
||||
capResult.obj[key] = jsonDateToString(capResult.obj[key]);
|
||||
} else if (key == "userpno") {
|
||||
capResult.obj[key] = capResult.obj[key].substr(0, 6) + "-" + capResult.obj[key].substr(6);
|
||||
}
|
||||
$("#document_" + key).val(capResult.obj[key]);
|
||||
}
|
||||
bglayer(); $("#documentbox").slideDown("fast");
|
||||
|
||||
} else {
|
||||
msgadmin2();
|
||||
}
|
||||
}
|
||||
function update() {
|
||||
if ($("#document_username").val() == "") {
|
||||
$("#document_username").focus();
|
||||
msg2("이름을 입력해주세요.");
|
||||
} else if ($("#document_userpno").val() == "") {
|
||||
$("#document_userpno").focus();
|
||||
msg2("주민번호를 입력해주세요.");
|
||||
} else if (!$.isNumeric($("#document_userpno").val().replace(/-/gi, "")) || $("#document_userpno").val().replace(/-/gi, "").length != 13) {
|
||||
$("#document_userpno").focus();
|
||||
msg2("잘못된 주민번호입니다.");
|
||||
} else if (!$.isNumeric($("#document_brno").val())) {
|
||||
$("#document_brno").focus();
|
||||
msg2("사업자등록번호는 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_eino").val())) {
|
||||
$("#document_eino").focus();
|
||||
msg2("고용보험관리번호는 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_sctime").val())) {
|
||||
$("#document_sctime").focus();
|
||||
msg2("교육이수시간은 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_sprice").val())) {
|
||||
$("#document_sprice").focus();
|
||||
msg2("교육비는 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_rprice").val())) {
|
||||
$("#document_rprice").focus();
|
||||
msg2("환급액은 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_rbankno").val())) {
|
||||
$("#document_rbankno").focus();
|
||||
msg2("환급계좌는 숫자만 입력가능합니다.");
|
||||
} else if (!$.isNumeric($("#document_syear").val())) {
|
||||
$("#document_syear").focus();
|
||||
msg2("교육년도는 숫자만 입력가능합니다.");
|
||||
} else {
|
||||
if (confirm("과거 증빙서류를 수정하시겠습니까??")) {
|
||||
var data = {};
|
||||
$.each($("#documentbox input, #documentbox select"), function () {
|
||||
data[this.name.replace(/document./gi, "")] = this.value;
|
||||
});
|
||||
capp("/acommon/DocumnetsPastUpdate", data, "cbupdate");
|
||||
}
|
||||
}
|
||||
}
|
||||
function cbupdate() {
|
||||
if (capResult.code == 1000) {
|
||||
msgok(1, "", true);
|
||||
submit("mform", 800, true);
|
||||
} else {
|
||||
msgadmin2();
|
||||
}
|
||||
}
|
||||
function viewbatch() {
|
||||
bglayer(); $("#batchbox").slideDown("fast", function () { $("#batchbox").scrollTop(0); });
|
||||
}
|
||||
|
||||
function save() {
|
||||
if ($("#uploadfile").val() == "") {
|
||||
msg2("파일을 선택해주세요.");
|
||||
}
|
||||
else {
|
||||
var thumbext = $("#uploadfile").val();
|
||||
thumbext = thumbext.slice(thumbext.indexOf(".") + 1).toLowerCase();
|
||||
if (thumbext.indexOf("xlsx")<0) {
|
||||
msg("xlsx 확장자만 가능합니다.", 0, true);
|
||||
}
|
||||
else if (confirm("일괄등록하시겠습니까?")){
|
||||
var formData = new FormData();
|
||||
formData.append("uploadfile", $("#uploadfile")[0].files[0]);
|
||||
formData.append("uploadjob", "documentbatch");
|
||||
capfile("/acommon/uploadexcel", formData, "cbsave", true, false, true, true);
|
||||
}
|
||||
}
|
||||
}
|
||||
function cbsave() {
|
||||
$("#uploadfile").val("");
|
||||
if (capResult.code == 1000) {
|
||||
msg("일괄등록을 완료했습니다.", null, true, null, true);
|
||||
submit("mform", 800, true);
|
||||
}
|
||||
else {
|
||||
msg("업로드가 실패했습니다.<br /><br /><br />" + capResult.msg, null, true);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
}
|
||||
|
|
@ -1431,6 +1431,83 @@ namespace NP.Base.Controllers
|
|||
return JsonOK(Dao.SaveContentsBatch(cts), false);
|
||||
}
|
||||
}
|
||||
case "documentbatch":
|
||||
{
|
||||
var data = new Lib.ExcelToEntity(uploadfile).Read<Document>(2, 1).ToList();
|
||||
//입력된 정보 검증
|
||||
if (data.Count() < 1)
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = "데이터가 없습니다." });
|
||||
}
|
||||
int i = 1;
|
||||
foreach (var d in data)
|
||||
{
|
||||
long tryParseResult = 0;
|
||||
d.userpno = d.userpno.Replace("-", "");
|
||||
if (!String.IsNullOrEmpty(d.ssdatestring))
|
||||
{
|
||||
int index = d.ssdatestring.IndexOf(" ");
|
||||
if (index > -1)
|
||||
{
|
||||
d.ssdate = Convert.ToDateTime(d.ssdatestring.Substring(0, index + 1));
|
||||
}
|
||||
else {
|
||||
d.ssdate = Convert.ToDateTime(d.ssdatestring.Substring(0, 10));
|
||||
}
|
||||
}
|
||||
if (!String.IsNullOrEmpty(d.sedatestring))
|
||||
{
|
||||
int index = d.sedatestring.IndexOf(" ");
|
||||
if (index > -1)
|
||||
{
|
||||
d.sedate = Convert.ToDateTime(d.sedatestring.Substring(0, index + 1));
|
||||
}
|
||||
else
|
||||
{
|
||||
d.sedate = Convert.ToDateTime(d.sedatestring.Substring(0, 10));
|
||||
}
|
||||
}
|
||||
if (string.IsNullOrEmpty(d.username.Trim()))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 이름이 공란입니다." });
|
||||
}
|
||||
else if(string.IsNullOrEmpty(d.userpno.Trim()))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 주민번호가 공란입니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.brno.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 사업자등록번호는 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.eino.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 고용보험관리번호는 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.sctime.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 교육이수시간은 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.sprice.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 교육비는 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.rprice.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 환급액은 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.rbankno.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 환급계좌는 숫자만 입력가능합니다." });
|
||||
}
|
||||
else if (!long.TryParse(d.syear.Trim(), out tryParseResult))
|
||||
{
|
||||
return JsonBack(new JsonRtn() { code = 1, msg = i + "번째 데이터의 교육년도는 숫자만 입력가능합니다." });
|
||||
}
|
||||
d.uno = SUserInfo.UserNo;
|
||||
d.uip = GetUserIP();
|
||||
}
|
||||
return JsonOK(Dao.Save("cr.documnetspast.batch", new Hashtable() { { "Ds", data } }));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1223,6 +1223,19 @@ namespace NP.Base.Controllers
|
|||
{
|
||||
return JsonOK(Dao.Save("pay.pplogtype.up", new Hashtable() { { "pplno", pplno }, { "typeman", typeman }, { "typejob", typejob }, { "typeedu", typeedu }, { "typegrade", typegrade } }));
|
||||
}
|
||||
[HttpPost]
|
||||
public JsonResult DocumnetsPast(Int64 no)
|
||||
{
|
||||
return JsonBack(Dao.Get<Document>("cr.documnetspast", new Hashtable() { { "no", no } }).First());
|
||||
}
|
||||
|
||||
[HttpPost]
|
||||
public JsonResult DocumnetsPastUpdate(Document document)
|
||||
{
|
||||
document.userpno = document.userpno.Replace("-", "");
|
||||
document.uno = SUserInfo.UserNo;
|
||||
document.uip = GetUserIP();
|
||||
return JsonOK(Dao.Save("cr.documnetspast.up", document));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -1492,4 +1492,64 @@ create table councel (
|
|||
atext mediumtext DEFAULT NULL,
|
||||
isdel tinyint not null default 0,
|
||||
cdt datetime not null,cno bigint not NULL,udt datetime not null,uno bigint not NULL,uip varchar(50) not NULL
|
||||
,primary key(bno));
|
||||
,primary key(bno));
|
||||
|
||||
CREATE TABLE docprintpast (
|
||||
no BIGINT(20) NOT NULL AUTO_INCREMENT,
|
||||
kind VARCHAR(50) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
cg VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
cshape VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
username VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
userpno VARBINARY(200) NULL DEFAULT NULL,
|
||||
typeman VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
edukind VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
typeedu VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
typegrade VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
typejob VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
cgname VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
completeno VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
companyname VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
companyaddr VARCHAR(100) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
brno VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
eino VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
btype VARCHAR(50) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
bkind VARCHAR(100) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
ceoname VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
ssdate DATETIME NULL DEFAULT NULL,
|
||||
sedate DATETIME NULL DEFAULT NULL,
|
||||
sctime VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
assign VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
slevel VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
uduty VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
phone VARBINARY(200) NULL DEFAULT NULL,
|
||||
mname VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
mphone VARBINARY(200) NULL DEFAULT NULL,
|
||||
sprice VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
rprice VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
rbank VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
rbankno VARBINARY(200) NULL DEFAULT NULL,
|
||||
rbankuser VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
taxemail VARBINARY(200) NULL DEFAULT NULL,
|
||||
syear VARCHAR(30) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
cdt DATETIME NULL DEFAULT NULL,
|
||||
cno BIGINT(20) NULL DEFAULT NULL,
|
||||
udt DATETIME NULL DEFAULT NULL,
|
||||
uno BIGINT(20) NULL DEFAULT NULL,
|
||||
uip VARCHAR(50) NULL DEFAULT NULL COLLATE utf8_general_ci,
|
||||
PRIMARY KEY (no) USING BTREE,
|
||||
INDEX idocprintpastsedate (sedate) USING BTREE,
|
||||
INDEX idocprintpastsyear (syear) USING BTREE,
|
||||
INDEX idocprintpasttypeman (typeman) USING BTREE,
|
||||
INDEX idocprintpastedukind (edukind) USING BTREE,
|
||||
INDEX idocprintpasttypeedu (typeedu) USING BTREE,
|
||||
INDEX idocprintpasttypegrade (typegrade) USING BTREE,
|
||||
INDEX idocprintpasttypejob (typejob) USING BTREE,
|
||||
INDEX idocprintpastssdate (ssdate) USING BTREE,
|
||||
INDEX idocprintpastcshape (cshape) USING BTREE,
|
||||
INDEX idocprintpastcg (cg) USING BTREE,
|
||||
INDEX idocprintpastkind (kind) USING BTREE
|
||||
)
|
||||
COLLATE=utf8_general_ci
|
||||
ENGINE=InnoDB
|
||||
AUTO_INCREMENT=181866
|
||||
;
|
||||
|
|
@ -221,3 +221,15 @@ alter table boardmaster add unique index uiboardmaster (bmcode);
|
|||
alter table users add unique index uiusersuserid(userid);
|
||||
alter table users add unique index uiusersemail(email);
|
||||
alter table ct add unique index uictccode(ccode);
|
||||
|
||||
alter table docprintpast add index idocprintpastsedate (sedate)
|
||||
alter table docprintpast add index idocprintpastsyear (syear)
|
||||
alter table docprintpast add index idocprintpasttypeman (typeman)
|
||||
alter table docprintpast add index idocprintpastedukind (edukind)
|
||||
alter table docprintpast add index idocprintpasttypeedu (typeedu)
|
||||
alter table docprintpast add index idocprintpasttypegrade (typegrade)
|
||||
alter table docprintpast add index idocprintpasttypejob (typejob)
|
||||
alter table docprintpast add index idocprintpastssdate (ssdate)
|
||||
alter table docprintpast add index idocprintpastcshape (cshape)
|
||||
alter table docprintpast add index idocprintpastcg (cg)
|
||||
alter table docprintpast add index idocprintpastkind (kind)
|
||||
|
|
|
|||
|
|
@ -1347,20 +1347,25 @@
|
|||
,mgtkey=#mgtkey#
|
||||
where taxno=#taxno#
|
||||
</update>
|
||||
<select id="cr.documnetspast" parameterClass="hashtable" resultClass="document">
|
||||
<select id="cr.documnetspasts" parameterClass="hashtable" resultClass="document">
|
||||
select
|
||||
a.*
|
||||
from (
|
||||
select
|
||||
a.no,a.kind,a.cg,a.cshape,a.username,CAST(AES_DECRYPT(UNHEX(a.userpno), <include refid="sql.digest"></include>) AS char) userpno
|
||||
a.no,a.kind,a.cg,a.cshape,a.username
|
||||
,CAST(AES_DECRYPT(UNHEX(a.userpno), <include refid="sql.digest"></include>) AS char) userpno
|
||||
,a.typeman,a.edukind,a.typeedu,a.typegrade,a.typejob,a.cgname,a.completeno,a.companyname,a.companyaddr,a.brno,a.eino,a.btype
|
||||
,a.bkind,a.ceoname,date_format(a.ssdate, '%Y-%m-%d') ssdate,date_format(a.sedate, '%Y-%m-%d') sedate,a.sctime,a.assign,a.slevel,a.uduty
|
||||
,CAST(AES_DECRYPT(UNHEX(a.phone), <include refid="sql.digest"></include>) AS char) phone,a.mname
|
||||
,CAST(AES_DECRYPT(UNHEX(a.mphone), <include refid="sql.digest"></include>) AS char) mphone,a.sprice,a.rprice,a.rbank
|
||||
,CAST(AES_DECRYPT(UNHEX(a.rbankno), <include refid="sql.digest"></include>) AS char) rbankno,a.rbankuser
|
||||
,CAST(AES_DECRYPT(UNHEX(a.taxemail), <include refid="sql.digest"></include>) AS char) taxemail,a.syear
|
||||
,CAST(AES_DECRYPT(UNHEX(a.phone), <include refid="sql.digest"></include>) AS char) phone
|
||||
,a.mname
|
||||
,CAST(AES_DECRYPT(UNHEX(a.mphone), <include refid="sql.digest"></include>) AS char) mphone
|
||||
,a.sprice,a.rprice,a.rbank
|
||||
,CAST(AES_DECRYPT(UNHEX(a.rbankno), <include refid="sql.digest"></include>) AS char) rbankno
|
||||
,a.rbankuser
|
||||
,CAST(AES_DECRYPT(UNHEX(a.taxemail), <include refid="sql.digest"></include>) AS char) taxemail
|
||||
,a.syear,a.cdt,a.cno,a.udt,a.uno,a.uip
|
||||
,row_number() over(order by a.ssdate desc) rno
|
||||
,count(a.ssdate) over() pagetotalcount
|
||||
,count(a.ssdate) over() pagetotalcount
|
||||
from docprintpast a
|
||||
where a.ssdate >= #ssdate# and a.sedate <= #sedate#
|
||||
<isNotNull property="syear">and a.syear=#syear#</isNotNull>
|
||||
|
|
@ -1384,42 +1389,121 @@
|
|||
<include refid="sql.pagedynamic"></include>
|
||||
order by a.rno
|
||||
</select>
|
||||
<select id="cr.documnets.syear" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspast" parameterClass="hashtable" resultClass="document">
|
||||
select
|
||||
a.no,a.kind,a.cg,a.cshape,a.username
|
||||
,CAST(AES_DECRYPT(UNHEX(a.userpno), <include refid="sql.digest"></include>) AS char) userpno
|
||||
,a.typeman,a.edukind,a.typeedu,a.typegrade,a.typejob,a.cgname,a.completeno,a.companyname,a.companyaddr,a.brno,a.eino,a.btype
|
||||
,a.bkind,a.ceoname,date_format(a.ssdate, '%Y-%m-%d') ssdate,date_format(a.sedate, '%Y-%m-%d') sedate,a.sctime,a.assign,a.slevel,a.uduty
|
||||
,CAST(AES_DECRYPT(UNHEX(a.phone), <include refid="sql.digest"></include>) AS char) phone
|
||||
,a.mname
|
||||
,CAST(AES_DECRYPT(UNHEX(a.mphone), <include refid="sql.digest"></include>) AS char) mphone
|
||||
,a.sprice,a.rprice,a.rbank
|
||||
,CAST(AES_DECRYPT(UNHEX(a.rbankno), <include refid="sql.digest"></include>) AS char) rbankno
|
||||
,a.rbankuser
|
||||
,CAST(AES_DECRYPT(UNHEX(a.taxemail), <include refid="sql.digest"></include>) AS char) taxemail
|
||||
,a.syear,a.cdt,a.cno,a.udt,a.uno,a.uip
|
||||
from docprintpast a
|
||||
where a.no = #no#
|
||||
</select>
|
||||
<update id="cr.documnetspast.up" parameterClass="document">
|
||||
update docprintpast
|
||||
set <include refid="sql.up"></include>
|
||||
,kind=#kind#
|
||||
,cg=#cg#
|
||||
,cshape=#cshape#
|
||||
,username=#username#
|
||||
,userpno=HEX(AES_ENCRYPT(#userpno#, <include refid="sql.digest"></include>))
|
||||
,typeman=#typeman#
|
||||
,edukind=#edukind#
|
||||
,typeedu=#typeedu#
|
||||
,typegrade=#typegrade#
|
||||
,typejob=#typejob#
|
||||
,cgname=#cgname#
|
||||
,completeno=#completeno#
|
||||
,companyname=#companyname#
|
||||
,companyaddr=#companyaddr#
|
||||
,brno=#brno#
|
||||
,eino=#eino#
|
||||
,btype=#btype#
|
||||
,bkind=#bkind#
|
||||
,ceoname=#ceoname#
|
||||
,ssdate=#ssdate#
|
||||
,sedate=#sedate#
|
||||
,sctime=#sctime#
|
||||
,assign=#assign#
|
||||
,slevel=#slevel#
|
||||
,uduty=#uduty#
|
||||
,phone=HEX(AES_ENCRYPT(#phone#, <include refid="sql.digest"></include>))
|
||||
,mname=#mname#
|
||||
,mphone=HEX(AES_ENCRYPT(#mphone#, <include refid="sql.digest"></include>))
|
||||
,sprice=#sprice#
|
||||
,rprice=#rprice#
|
||||
,rbank=#rbank#
|
||||
,rbankno=HEX(AES_ENCRYPT(#rbankno#, <include refid="sql.digest"></include>))
|
||||
,rbankuser=#rbankuser#
|
||||
,taxemail=HEX(AES_ENCRYPT(#taxemail#, <include refid="sql.digest"></include>))
|
||||
,syear=#syear#
|
||||
where no=#no#
|
||||
</update>
|
||||
<update id="cr.documnetspast.batch" parameterClass="hashtable">
|
||||
insert into docprintpast (kind, cg, cshape, username, userpno, typeman, edukind, typeedu, typegrade, typejob, cgname, completeno, companyname, companyaddr, brno, eino, btype, bkind, ceoname, ssdate, sedate, sctime, assign, slevel, uduty, phone, mname, mphone, sprice, rprice, rbank, rbankno, rbankuser, taxemail, syear, <include refid="sql.inc"></include>)
|
||||
<iterate property="Ds" open="" conjunction="union all" close="">
|
||||
select #Ds[].kind#, #Ds[].cg#, #Ds[].cshape#, #Ds[].username#
|
||||
, HEX(AES_ENCRYPT(#Ds[].userpno#, <include refid="sql.digest"></include>))
|
||||
, #Ds[].typeman#, #Ds[].edukind#, #Ds[].typeedu#, #Ds[].typegrade#, #Ds[].typejob#, #Ds[].cgname#, #Ds[].completeno#, #Ds[].companyname#, #Ds[].companyaddr#, #Ds[].brno#, #Ds[].eino#, #Ds[].btype#, #Ds[].bkind#, #Ds[].ceoname#, #Ds[].ssdate#, #Ds[].sedate#, #Ds[].sctime#, #Ds[].assign#, #Ds[].slevel#, #Ds[].uduty#
|
||||
, HEX(AES_ENCRYPT(#Ds[].phone#, <include refid="sql.digest"></include>))
|
||||
, #Ds[].mname#
|
||||
, HEX(AES_ENCRYPT(#Ds[].mphone#, <include refid="sql.digest"></include>))
|
||||
, #Ds[].sprice#, #Ds[].rprice#, #Ds[].rbank#
|
||||
, HEX(AES_ENCRYPT(#Ds[].rbankno#, <include refid="sql.digest"></include>))
|
||||
, #Ds[].rbankuser#
|
||||
, HEX(AES_ENCRYPT(#Ds[].taxemail#, <include refid="sql.digest"></include>))
|
||||
, #Ds[].syear#
|
||||
, now(), #Ds[].uno#, now(), #Ds[].uno#, #Ds[].uip#
|
||||
</iterate>;
|
||||
</update>
|
||||
<select id="cr.documnetspasts.kind" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.kind value,a.kind text from docprintpast a
|
||||
where a.kind is not null and a.kind <> ""
|
||||
group by a.kind
|
||||
</select>
|
||||
<select id="cr.documnetspasts.syear" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.syear value,a.syear text from docprintpast a
|
||||
where a.syear is not null and a.syear <> ""
|
||||
group by a.syear
|
||||
</select>
|
||||
<select id="cr.documnets.cg" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.cg" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.cg value,a.cg text from docprintpast a
|
||||
where a.cg is not null and a.cg <> ""
|
||||
group by a.cg
|
||||
</select>
|
||||
<select id="cr.documnets.cshape" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.cshape" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.cshape value,a.cshape text from docprintpast a
|
||||
where a.cshape is not null and a.cshape <> ""
|
||||
group by a.cshape
|
||||
</select>
|
||||
<select id="cr.documnets.typeman" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.typeman" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.typeman value,a.typeman text from docprintpast a
|
||||
where a.typeman is not null and a.typeman <> ""
|
||||
group by a.typeman
|
||||
</select>
|
||||
<select id="cr.documnets.edukind" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.edukind" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.edukind value,a.edukind text from docprintpast a
|
||||
where a.edukind is not null and a.edukind <> ""
|
||||
group by a.edukind
|
||||
</select>
|
||||
<select id="cr.documnets.typeedu" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.typeedu" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.typeedu value,a.typeedu text from docprintpast a
|
||||
where a.typeedu is not null and a.typeedu <> ""
|
||||
group by a.typeedu
|
||||
</select>
|
||||
<select id="cr.documnets.typegrade" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.typegrade" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.typegrade value,a.typegrade text from docprintpast a
|
||||
where a.typegrade is not null and a.typegrade <> ""
|
||||
group by a.typegrade
|
||||
</select>
|
||||
<select id="cr.documnets.typejob" parameterClass="hashtable" resultClass="textvalue">
|
||||
<select id="cr.documnetspasts.typejob" parameterClass="hashtable" resultClass="textvalue">
|
||||
select a.typejob value,a.typejob text from docprintpast a
|
||||
where a.typejob is not null and a.typejob <> ""
|
||||
group by a.typejob
|
||||
|
|
|
|||
|
|
@ -19,8 +19,9 @@ namespace NP.Model
|
|||
public List<textvalue> typegrades { get; set; }
|
||||
public List<textvalue> typejobs { get; set; }
|
||||
public List<textvalue> words { get; set; }
|
||||
public List<textvalue> kinds { get; set; }
|
||||
}
|
||||
public class Document
|
||||
public class Document : BaseModel
|
||||
{
|
||||
/// <summary>
|
||||
/// 순서
|
||||
|
|
@ -37,11 +38,7 @@ namespace NP.Model
|
|||
/// <summary>
|
||||
/// 교육유형
|
||||
/// </summary>
|
||||
public String cshape { get; set; }
|
||||
/// <summary>
|
||||
/// 아이디 (공백)
|
||||
/// </summary>
|
||||
public String id { get; set; }
|
||||
public String cshape { get; set; }
|
||||
/// <summary>
|
||||
/// 이름
|
||||
/// </summary>
|
||||
|
|
@ -117,7 +114,10 @@ namespace NP.Model
|
|||
return ssdate != null ? ssdate.Value.ToString("yyyy-MM-dd") : null;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 교육시작일(엑셀매칭용)
|
||||
/// </summary>
|
||||
public string ssdatestring { get; set; }
|
||||
/// <summary>
|
||||
/// 교육종료일
|
||||
/// </summary>
|
||||
|
|
@ -130,6 +130,10 @@ namespace NP.Model
|
|||
}
|
||||
}
|
||||
/// <summary>
|
||||
/// 교육종료일(엑셀매칭용)
|
||||
/// </summary>
|
||||
public string sedatestring { get; set; }
|
||||
/// <summary>
|
||||
/// 교육이수시간
|
||||
/// </summary>
|
||||
public String sctime { get; set; }
|
||||
|
|
@ -187,9 +191,7 @@ namespace NP.Model
|
|||
public String syear { get; set; }
|
||||
public int? pagenum { get; set; }
|
||||
public int pageviewcount { get; set; }
|
||||
public int pagerowcount { get; set; }
|
||||
public int pagetotalcount { get; set; }
|
||||
|
||||
public int pagerowcount { get; set; }
|
||||
}
|
||||
public class textvalue
|
||||
{
|
||||
|
|
|
|||
Loading…
Reference in New Issue