diff --git a/BO/Controllers/croomController.cs b/BO/Controllers/croomController.cs index 5a76718..8c90cc8 100644 --- a/BO/Controllers/croomController.cs +++ b/BO/Controllers/croomController.cs @@ -856,6 +856,8 @@ namespace NP.BO.Controllers ht.Add("cdte", string.IsNullOrEmpty(vm.stringval2) ? null : (vm.stringval2 + " 23:59:59")); ht.Add("staxdate", vm.stringval8); ht.Add("etaxdate", string.IsNullOrEmpty(vm.stringval9) ? null : (vm.stringval9 + " 23:59:59")); + ht.Add("pstatus", vm.stringval10); + ht.Add("taxnos", vm.stringval11); if (!string.IsNullOrEmpty(vm.stringval3)) { if(vm.stringval3 == "2") @@ -880,6 +882,16 @@ namespace NP.BO.Controllers } } vm.PayTaxes = Dao.Get("cr.paytaxes", ht); + if (vm.isexceldown == 1) + { + return ExportExcel( + new String[] {"결제번호","신청일","입금일","결제상태","이름","아이디","전화번호","강좌명","교육종료일","회사명","대표명","주소","사업자번호","업태","종목","담당자명","담당자연락처" + ,"계산서수신이메일","청구영수","발행요청금액","발행요청일","실제날짜","발행한날","발행상태"}, + new String[] {"payno","cdtymd", "payoktimeymd", "pstatusname2","username", "userid", "mobile", "itemname","eendymd", "asname", "ceoname","asaddr", + "brno", "btype","bkind", "manname", "telno", "email", "isreceiptname", "taxamt", "taxdatereqymd","taxdateymd","realtaxdateymd","status"}, + vm.PayTaxes, + "계산서요청"+DateTime.Now.ToString("yy.MM.dd"), null); + } vm.pagetotalcount = GetCount(vm.PayTaxes.FirstOrDefault()); return View(vm); diff --git a/BO/Views/croom/tax.cshtml b/BO/Views/croom/tax.cshtml index 7fa050e..74f6a9f 100644 --- a/BO/Views/croom/tax.cshtml +++ b/BO/Views/croom/tax.cshtml @@ -11,6 +11,7 @@
@Html.Partial("./Partial/SearchCaption") + @Html.HiddenFor(w=>w.stringval11)
@@ -41,6 +42,7 @@ 검색어 @Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "valuetext", ":발행상태;0:미발행;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", ":전체검색;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" }) @@ -51,11 +53,17 @@
+
+ @Html.Partial("./Partial/pagerow", new ViewDataDictionary { { "tbodyid", "tbody1" }, { "searchmethod", "submit()" }, { "pagesize", Model.pagerowcount } }) + @*엑셀다운로드*@ + 엑셀다운로드 +
+ @@ -63,9 +71,11 @@ + - + + @@ -74,6 +84,7 @@ @foreach (var d in Model.PayTaxes) { + @@ -81,11 +92,13 @@ + - + + - + } @@ -126,5 +139,18 @@ 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', '계산서요청'); + } + } } \ No newline at end of file diff --git a/Dao/DB/DB1.Scheme.txt b/Dao/DB/DB1.Scheme.txt index 3416fc0..978fdfb 100644 --- a/Dao/DB/DB1.Scheme.txt +++ b/Dao/DB/DB1.Scheme.txt @@ -1012,7 +1012,8 @@ create table paytax ( ,cdt datetime not null,cno bigint not NULL,udt datetime not null,uno bigint not NULL,uip varchar(50) not NULL ,mgtkey varchar (24) ,taxdatereq datetime - ,statecode INT(11) NULL DEFAULT NULL, + ,statecode INT(11) NULL DEFAULT NULL + ,realtaxdate datetime default null ,primary key(taxno)); create table paytaxitem ( diff --git a/Dao/MyBatis/Maps/CRoom.xml b/Dao/MyBatis/Maps/CRoom.xml index 27da9d8..b10a13d 100644 --- a/Dao/MyBatis/Maps/CRoom.xml +++ b/Dao/MyBatis/Maps/CRoom.xml @@ -1289,54 +1289,75 @@ diff --git a/FO/Views/My/Document.cshtml b/FO/Views/My/Document.cshtml index 12f116b..845b311 100644 --- a/FO/Views/My/Document.cshtml +++ b/FO/Views/My/Document.cshtml @@ -159,7 +159,8 @@ { if (item.iscancel != 1 && item.taxdate2 != null && !string.IsNullOrEmpty(item.mgtkey) && item.statecode >= 300) /*취소 and 발행일 and 세금계산서문서번호 */ { - [인쇄] + @*[인쇄]*@ + [계산서발행완료] } else if (item.iscancel == 1) /*취소시 일반영수증*/ { diff --git a/Model/Pay.cs b/Model/Pay.cs index 350a041..261f025 100644 --- a/Model/Pay.cs +++ b/Model/Pay.cs @@ -996,6 +996,21 @@ namespace NP.Model /// 발행일 관리자만입력 /// public DateTime? taxdate {get;set;} + public String taxdateymd + { + get + { + return taxdate == null ? "" : taxdate.Value.ToString("yyyy-MM-dd"); + } + } + public DateTime? realtaxdate { get; set; } + public String realtaxdateymd + { + get + { + return realtaxdate == null ? "" : realtaxdate.Value.ToString("yyyy-MM-dd"); + } + } /// /// fkpaytaxfg 첨부파일 /// @@ -1009,6 +1024,13 @@ namespace NP.Model /// public String asaddr { get; set; } public int isreceipt { get; set; } + public String isreceiptname + { + get + { + return isreceipt == 0 ? "청구" : "영수"; + } + } public Int64 pino { get; set; } public String itemname { get; set; } public String payamt { get; set; } @@ -1041,6 +1063,13 @@ namespace NP.Model /// 계산서날짜 /// public DateTime? taxdatereq { get; set; } + public String taxdatereqymd + { + get + { + return taxdatereq == null ? "" : taxdatereq.Value.ToString("yyyy-MM-dd"); + } + } /// /// 세금계산서 상태코드 /// @@ -1097,6 +1126,51 @@ namespace NP.Model return returnString; } } + public int isrefundcall { get; set; } + /// + /// 결제상태 0:결제시도,1:결제완료,21:결제대기(승인심사),22:입금대기,41:결제취소,42: 가상계좌입금대기만료, 43: 가상계좌입금전취소,51:자격증강좌심사중 + /// + public int pstatus { get; set; } + /// + /// 결제액 + /// + public int payamt2 { get; set; } + /// + /// 환불액 + /// + public int refundamt { get; set; } + public int isunpay { get; set; } + public String pstatusname + { + get + { + return rstatus == 2 ? "전액환불" : rstatus == 1 ? "부분환불" : isrefundcall == 1 ? "환불요청" : pstatus == 1 ? "결제완료" : pstatus == 21 ? "결제대기" : pstatus == 22 ? "입금대기" : "결제취소"; + } + } + public String pstatusname2 + { + get + { + return rstatus == 1 && payamt2 <= refundamt ? "전액환불" : (pstatusname + (isunpay == 1 ? "(미수)" : isunpay == 2 ? "(미수입금)" : "")); + } + } + public DateTime? payoktime { get; set; } + public String payoktimeymd + { + get + { + return payoktime == null ? "-" : payoktime.Value.ToString("yyyy-MM-dd"); + } + } + public DateTime? eend { get; set; } + public String eendymd + { + get + { + return eend == null ? "-" : eend.Value.ToString("yyyy-MM-dd"); + } + } + public String mobile { get; set; } } [Serializable] public class PayRfd : BaseModel
No 결제번호 회사명상품명 수량
(인원)
발행요청금액결제상태 신청일 계산서날짜실제날짜실제날짜발행한날 영수구분 상태
@d.rno @d.payno @Html.Raw(string.Format("{1} {2}", d.isjoin, d.isjoin == 1 ? "정" : "비", d.asname)) @d.pcnt @d.taxamt.ToString("#,0")@d.pstatusname2 @d.cdtymd @(d.taxdatereq == null ? "" : d.taxdatereq.Value.ToString("yyyy-MM-dd"))@(d.taxdate == null ? "" : d.taxdate.Value.ToString("yyyy-MM-dd"))@(d.taxdate == null ? "" : d.taxdate.Value.ToString("yyyy-MM-dd"))@(d.realtaxdate == null ? "" : d.realtaxdate.Value.ToString("yyyy-MM-dd")) @(d.isreceipt == 0 ? "청구" : "영수")@(d.status)@(d.status)