288 lines
16 KiB
Plaintext
288 lines
16 KiB
Plaintext
@model NP.Model.VMCRoom
|
|
@{
|
|
|
|
}
|
|
<div>
|
|
<ul class="pagination pagination-md" style="margin: 0;">
|
|
<li class="active"><a href="#" data-toggle="tab">요청현황</a></li>
|
|
@*<li><a href="#" onclick="gotab();" data-toggle="tab">스마트빌</a></li>*@
|
|
</ul>
|
|
</div>
|
|
<form id="mform" method="post">
|
|
<section class="panel panel-default clearfix devsearch" data-cleartbody="tbody1">
|
|
@Html.Partial("./Partial/SearchCaption")
|
|
@Html.HiddenFor(w=>w.stringval11)
|
|
<div class="step-content">
|
|
<div class="step-pane active form-inline">
|
|
<div class="form-groupx">
|
|
<table class="table table-striped b-t b-light no-odd">
|
|
<colgroup>
|
|
<col width="15%" />
|
|
<col width="35%" />
|
|
<col width="15%" />
|
|
<col width="*" />
|
|
</colgroup>
|
|
<tr>
|
|
<th>신청일</th>
|
|
<td class="text-left">
|
|
@Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval) ? (DateTime?)null : Convert.ToDateTime(Model.stringval), new ViewDataDictionary { { "name", "stringval" } }) ~ @Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval2) ? (DateTime?)null : Convert.ToDateTime(Model.stringval2), new ViewDataDictionary { { "name", "stringval2" } })
|
|
</td>
|
|
<th>계산서 요청날짜</th>
|
|
<td class="text-left">
|
|
@Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval6) ? (DateTime?)null : Convert.ToDateTime(Model.stringval6), new ViewDataDictionary { { "name", "stringval6" } }) ~ @Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval7) ? (DateTime?)null : Convert.ToDateTime(Model.stringval7), new ViewDataDictionary { { "name", "stringval7" } })
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>계산서 실제 날짜</th>
|
|
<td class="text-left">
|
|
@Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval8) ? (DateTime?)null : Convert.ToDateTime(Model.stringval8), new ViewDataDictionary { { "name", "stringval8" } }) ~ @Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval9) ? (DateTime?)null : Convert.ToDateTime(Model.stringval9), new ViewDataDictionary { { "name", "stringval9" } })
|
|
</td>
|
|
<th>계산서 확인 날짜</th>
|
|
<td class="text-left">
|
|
@Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval13) ? (DateTime?)null : Convert.ToDateTime(Model.stringval13), new ViewDataDictionary { { "name", "stringval13" } }) ~ @Html.Partial("./Partial/Date", string.IsNullOrEmpty(Model.stringval14) ? (DateTime?)null : Convert.ToDateTime(Model.stringval14), new ViewDataDictionary { { "name", "stringval14" } })
|
|
</td>
|
|
</tr>
|
|
<tr>
|
|
<th>검색어</th>
|
|
<td class="text-left" colspan="3">
|
|
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":발행상태;0:미발행;3:미발행(임시저장);1:발행;2:발행취소" }, { "name", "stringval3" }, { "selected", Model.stringval3 } })
|
|
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":결제상태;p21:결제대기;p22:입금대기;p1:결제완료;rf1:환불요청;r1:부분환불;r2:전액환불;p41,42,43:결제취소" }, { "name", "stringval10" }, { "selected", Model.stringval10 } })
|
|
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":확인상태;1:확인;0:미확인" }, { "name", "stringval12" }, { "selected", Model.stringval12 } })
|
|
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":영수구분;1:영수;0:청구" }, { "name", "stringval15" }, { "selected", Model.stringval15 } })
|
|
@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":전체검색;username:신청자이름;userid:신청자ID;manname:담당자이름;itemname:상품명;cname:교육과정명;paynos:결제번호;asname:회사명" }, { "name", "stringval4" }, { "selected", Model.stringval4 } })
|
|
@Html.Partial("./Partial/Text", Model.stringval5, Helpers.DicText(new NP.Model.TextDic() { Name = "stringval5", Value = Model.stringval5, PH = "", CssClass = "ff" }))
|
|
@Html.Partial("./Partial/Button", new NP.Model.Button() { Special = "search" })
|
|
</td>
|
|
</tr>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</section>
|
|
<div style="padding:5px 10px; text-align:right;">
|
|
@Html.Partial("./Partial/pagerow", new ViewDataDictionary { { "tbodyid", "tbody1" }, { "searchmethod", "submit()" }, { "pagesize", Model.pagerowcount } })
|
|
@*<a href="#" onclick="javascript:exceldown('mform', '/croom/tax', 'tbody1', '계산서요청');" class="btn btn-s-xs btn-success" style="margin-left: 5px;">엑셀다운로드</a>*@
|
|
<a href="#" onclick="javascript:callexcel();" class="btn btn-s-xs btn-success" style="margin-left: 5px;">엑셀다운로드</a>
|
|
<a href="#" onclick="javascript:taxcancel();" class="btn btn-s-xs btn-danger" style="margin-left: 5px;">일괄발행취소</a>
|
|
<a href="#" onclick="javascript:taxcheck();" class="btn btn-s-xs btn-info" style="margin-left: 5px;">일괄확인</a>
|
|
<a href="#" onclick="javascript:taxuncheck();" class="btn btn-s-xs btn-danger" style="margin-left: 5px;">일괄확인취소</a>
|
|
</div>
|
|
<section class="panel panel-default">
|
|
<div class="table-responsive" id="excel1">
|
|
<table class="table table-striped b-t b-light no-odd">
|
|
<thead>
|
|
<tr>
|
|
<th><input type="checkbox" onclick="javascript: checkall('excel1', this);" /></th>
|
|
<th width="20">No</th>
|
|
<th>결제번호</th>
|
|
<th>회사명</th>
|
|
<th>신청자(ID)</th>
|
|
<th>상품명</th>
|
|
<th>수량<br />(인원)</th>
|
|
<th>발행요청금액</th>
|
|
<th>결제상태</th>
|
|
<th>신청일</th>
|
|
<th>계산서날짜</th>
|
|
<th>실제날짜</th>
|
|
<th>발행한날</th>
|
|
<th>영수구분</th>
|
|
<th width="100">상태</th>
|
|
<th width="100">확인상태</th>
|
|
<th>확인날짜</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody class="data" id="tbody1">
|
|
@foreach (var d in Model.PayTaxes)
|
|
{
|
|
<tr>
|
|
<td><input type="checkbox" class="autocheck" value="@d.taxno" data-ischeck="@d.ischeck" data-state="@d.statecode" /></td>
|
|
<td>@d.rno</td>
|
|
<td>@d.payno</td>
|
|
<td class="left">@Html.Raw(string.Format("<span class=\"isjoin{0}\">{1}</span> {2}", d.isjoin, d.isjoin == 1 ? "정" : "비", d.asname))</td>
|
|
<td>@string.Format("{0}({1})", d.username, d.userid)</td>
|
|
<td class="link"><a href="#" onclick="gotax(@d.taxno)">@d.itemname @(d.ccount > 1 ? string.Format("외 {0}건", d.ccount - 1) : "")</a></td>
|
|
<td>@d.pcnt</td>
|
|
<td class="right">@d.taxamt.ToString("#,0")</td>
|
|
<td>@d.pstatusname2</td>
|
|
<td>@d.cdtymd</td>
|
|
<td>@(d.taxdatereq == null ? "" : d.taxdatereq.Value.ToString("yyyy-MM-dd"))</td>
|
|
<td>@(d.taxdate == null ? "" : d.taxdate.Value.ToString("yyyy-MM-dd"))</td>
|
|
<td>@(d.realtaxdate == null ? "" : d.realtaxdate.Value.ToString("yyyy-MM-dd"))</td>
|
|
<td>@(d.isreceipt == 0 ? "청구" : "영수")</td>
|
|
<td class="taxdate@(d.status == "미발행" || d.status == "임시저장" ? "x" :"")" @(!string.IsNullOrEmpty(d.mgtkey) && d.statecode == 0 ? "style=color:blue;" : "" )>@(d.status)</td>
|
|
<td class="taxdate@(d.ischeck == 1 ? "" : "x")">@(d.ischeckname)</td>
|
|
<td>@d.checktimeymd</td>
|
|
</tr>
|
|
}
|
|
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
@Html.Pager((int)Model.pagenum, 10, Model.pagerowcount, Model.pagetotalcount)
|
|
</section>
|
|
</form>
|
|
<form id="dform" method="post" action="">
|
|
@Html.Partial("./Partial/dform", Model, new ViewDataDictionary { { "preform", 1 } })
|
|
</form>
|
|
@section styles{
|
|
<style type="text/css">
|
|
td span.isjoin0 {background-color: #ddd; color: #fff;}
|
|
td span.isjoin1 {background-color: #0094ff; color: #fff;}
|
|
td.taxdatex{background-color: #d89f77; color: #d00000}
|
|
td.left{text-align: left !important}
|
|
td.right{text-align: right !important}
|
|
.panel .table-striped.no-odd > tbody > tr:nth-child(odd) > td.taxdatex,
|
|
.taxdatex {
|
|
background-color: #ffc399 !important
|
|
}
|
|
</style>
|
|
}
|
|
@section scriptsHeader{
|
|
@Html.Partial("./Partial/ScriptDate")
|
|
}
|
|
@section scripts{
|
|
<script>
|
|
$(document).ready(function () {
|
|
|
|
});
|
|
function gotax(tno) {
|
|
$("#dform_longval").val(tno);
|
|
$("#dform").attr("action", "/croom/taxdetail").submit();
|
|
}
|
|
function gotab() {
|
|
$("#dform").attr("action", "/croom/taxsmart").submit();
|
|
}
|
|
function callexcel() {
|
|
$("#stringval11").val("")
|
|
if ($("#tbody1 tr td input.autocheck:checked").length < 1) {
|
|
msg("엑셀 다운로드 할 건이 선택되지 않았습니다.");
|
|
} else {
|
|
var taxnos = "";
|
|
$.each($("#tbody1 tr td input.autocheck:checked"), function (i, c) {
|
|
taxnos += "," + $(c).val();
|
|
});
|
|
$("#stringval11").val(taxnos.substr(1));
|
|
exceldown('mform', '/croom/tax', 'tbody1', '계산서요청');
|
|
}
|
|
}
|
|
function taxcheck() {
|
|
if ($("#tbody1 tr td input.autocheck:checked").length < 1) {
|
|
msg("확인 처리 할 요청서가 없습니다.");
|
|
} else {
|
|
var taxnos = "";
|
|
var chk = false;
|
|
var cnt = 0;
|
|
$.each($("#tbody1 tr td input.autocheck:checked"), function (i, c) {
|
|
if ($(c).attr("data-ischeck") == 1) {
|
|
chk = false;
|
|
return false;
|
|
} else {
|
|
chk = true;
|
|
cnt++;
|
|
taxnos += "," + $(c).val();
|
|
}
|
|
});
|
|
if (chk == false) {
|
|
msg("확인 완료 건이 포함되어 있습니다. 다시 확인해주세요.");
|
|
} else {
|
|
if(confirm("선택한 "+cnt+"건을 확인 처리 하시겠습니까?"))
|
|
capp("/acommon/taxcheck", { taxnos: taxnos.substr(1), ischeck: 1 }, "cbtaxcheck");
|
|
}
|
|
}
|
|
}
|
|
function cbtaxcheck() {
|
|
if (capResult.code == 1000) {
|
|
if (capResult.obj == -1) {
|
|
msg("확인 처리 할 요청서가 없습니다.");
|
|
} else if (capResult.obj == -2) {
|
|
//우연의 확률..
|
|
msg("확인 완료 건이 포함되어 있습니다. 다시 확인해주세요.", null, null, null, null, "submit()");
|
|
} else {
|
|
msg("일괄확인 처리 되었습니다.", null, null, null, null, "submit();");
|
|
}
|
|
} else {
|
|
msgdev();
|
|
}
|
|
}
|
|
function taxuncheck() {
|
|
if ($("#tbody1 tr td input.autocheck:checked").length < 1) {
|
|
msg("확인 취소 할 요청서가 없습니다.");
|
|
} else {
|
|
var taxnos = "";
|
|
var chk = false;
|
|
var cnt = 0;
|
|
$.each($("#tbody1 tr td input.autocheck:checked"), function (i, c) {
|
|
if ($(c).attr("data-ischeck") == 0) {
|
|
chk = false;
|
|
return false;
|
|
} else {
|
|
chk = true;
|
|
cnt++;
|
|
taxnos += "," + $(c).val();
|
|
}
|
|
});
|
|
if (chk == false) {
|
|
msg("미확인 건이 포함되어 있습니다. 다시 확인해주세요.");
|
|
} else {
|
|
if (confirm("선택한 " + cnt + "건을 일괄로 확인취소 처리 하시겠습니까?")) {
|
|
capp("/acommon/taxcheck", { taxnos: taxnos.substr(1), ischeck: 0 }, "cbtaxuncheck");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
function cbtaxuncheck() {
|
|
if (capResult.code == 1000) {
|
|
if (capResult.obj == -1) {
|
|
msg("확인 취소 할 요청서가 없습니다.");
|
|
} else if (capResult.obj == -2) {
|
|
//우연의 확률..
|
|
msg("미확인 건이 포함되어 있습니다. 다시 확인해주세요.", null, null, null, null, "submit()");
|
|
} else {
|
|
msg("일괄확인취소 처리 되었습니다.", null, null, null, null, "submit();");
|
|
}
|
|
} else {
|
|
msgdev();
|
|
}
|
|
}
|
|
function taxcancel() {
|
|
if ($("#tbody1 tr td input.autocheck:checked").length < 1) {
|
|
msg("발행 취소 할 요청서가 없습니다.");
|
|
} else {
|
|
var taxnos = "";
|
|
var chk = false;
|
|
var cnt = 0;
|
|
$.each($("#tbody1 tr td input.autocheck:checked"), function (i, c) {
|
|
if ($(c).attr("data-state") == 0) {
|
|
chk = true;
|
|
cnt++;
|
|
taxnos += "," + $(c).val();
|
|
} else {
|
|
chk = false;
|
|
return false;
|
|
}
|
|
});
|
|
if (chk == false) {
|
|
msg("발행완료, 발행취소 건이 포함되어 있습니다. 다시 확인해주세요.");
|
|
} else {
|
|
if (confirm("선택한 " + cnt + "건을 일괄로 발행취소 처리 하시겠습니까?")) {
|
|
capp("/acommon/taxcancel", { taxnos: taxnos.substr(1) }, "cbtaxcancel");
|
|
}
|
|
}
|
|
}
|
|
}
|
|
function cbtaxcancel() {
|
|
if (capResult.code == 1000) {
|
|
if (capResult.obj == -1) {
|
|
msg("발행취소 할 요청서가 없습니다.");
|
|
} else if (capResult.obj == -2) {
|
|
//우연의 확률..
|
|
msg("발행완료, 발행취소 건이 포함되어 있습니다. 다시 확인해주세요.", null, null, null, null, "submit()");
|
|
} else {
|
|
msg("일괄 발행취소 처리 되었습니다.", null, null, null, null, "submit();");
|
|
}
|
|
} else {
|
|
msgdev();
|
|
}
|
|
}
|
|
</script>
|
|
} |