<기능개선>

통합테스트목록 . 548
Base/Controller/ACommonCRoom.cs
BO/Views/croom/payview.cshtml
Dao/MyBatis/Maps/CRoom.xml
Dao/MyBatis/Maps/Pay.xml
Model.Pay.cs
관리자 현금영수증 발행완료 해제 및 결제상세 화면 변경 적용
This commit is contained in:
kdh0120 2021-11-16 04:10:27 +00:00
parent b51262572b
commit d71eab7b6e
5 changed files with 80 additions and 33 deletions

View File

@ -43,7 +43,7 @@
<section class="panel panel-default">
<header class="panel-heading"><strong><i class="fa fa-bars"></i> 결제정보<span class=""></span></strong></header>
<table class="regtable" style="margin-top: 0;">
<colgroup><col width="100" /><col width="150" /><col width="100" /><col width="200" /><col width="100" /><col /></colgroup>
<colgroup><col width="100" /><col width="200" /><col width="100" /><col width="200" /><col width="100" /><col /></colgroup>
<tr>
<th>결제금액</th>
<td>@(p.pstatus == 1 ? p.payamt.ToString("#,0") : "0")원</td>
@ -73,24 +73,24 @@
@:@p.pstatusname2 @*@(p.ptype == 3 && p.pstatus == 22 && p.ispg == 1 && p.isunpay == 0 && p.paylimit.Value > DateTime.Now?string.Format("(만료일: {0})", p.paylimit.Value.ToString("yyyy-MM-dd")):"")*@
}
@if (p.ptype == 3 && p.pstatus == 22 && p.ispg == 1 && p.isunpay == 0@*&& p.paylimit.Value < DateTime.Now*@)
{
<a href="#" class="btn btn-primary" onclick="unpay(@p.payno)">미수처리</a>
<a href="#" class="btn btn-primary" onclick="abspay(@p.payno)">결제완료처리</a>
<a href="#" class="btn btn-primary" onclick="cancelpay(@p.payno, @p.userno)">취소</a>
}
else if (p.ptype == 3 && p.pstatus == 1 && p.ispg == 1 && p.isunpay == 1)
{
@Html.Partial("./Partial/Date", (DateTime?)null, new ViewDataDictionary { { "name", "payoktime" } })
<a href="#" class="btn btn-primary" onclick="unpaymoney(@p.payno)">미수입금처리</a>
}
else if (p.isunpay == 2)
{
@:(미수입금)
}
else if (p.isunpay == 3)
{
@:(결제변경)
}
{
<a href="#" class="btn btn-primary" onclick="unpay(@p.payno)">미수처리</a>
<a href="#" class="btn btn-primary" onclick="abspay(@p.payno)">결제완료처리</a>
<a href="#" class="btn btn-primary" onclick="cancelpay(@p.payno, @p.userno)">취소</a>
}
else if (p.ptype == 3 && p.pstatus == 1 && p.ispg == 1 && p.isunpay == 1)
{
@Html.Partial("./Partial/Date", (DateTime?)null, new ViewDataDictionary { { "name", "payoktime" } })
<a href="#" class="btn btn-primary" onclick="unpaymoney(@p.payno)">미수입금처리</a>
}
else if (p.isunpay == 2)
{
@:(미수입금)
}
else if (p.isunpay == 3)
{
@:(결제변경)
}
</td>
</tr>
<tr>
@ -115,13 +115,17 @@ else if (p.isunpay == 3)
계산서신청
</th>
<td>
@if (p.taxno != null)
@if (p.taxtype == 3)
{
<a href="#" onclick="gotax(@p.payno)" class="link" style="color:blue">신청</a>
<a href="#" onclick="gotax(@p.payno)" class="link" style="color:blue">@p.taxtypename</a>
}
else if (p.taxtype == 1)
{
<span>@p.taxtypename <a href="#" class="btn btn-primary" onclick="payuntax(@p.payno)">계산서변경</a></span>
}
else
{
<span>-</span>
<span>@p.taxtypename</span>
}
</td>
<th>
@ -608,5 +612,16 @@ else if (p.isunpay == 3)
$("#thisbox").slideUp('fast'); $('#bglayer').hide();
}
}
function payuntax(payno) {
if (confirm("현금영수증을 계산서로 변경하시겠습니까?")) {
capp("/acommon/untax", { payno: payno }, "cbpayuntax");
}
}
function cbpayuntax() {
if (capResult.code == 1000) {
msg("변경상태가 저장되었습니다.", null, null, null, null, "location.href='/croom/payview?payno=@p.payno'");
opener.searchthis();
}
}
</script>
}

View File

@ -1503,5 +1503,10 @@ namespace NP.Base.Controllers
}
return JsonOK(Dao.Save("cr.completion.up", completion));
}
[HttpPost]
public JsonResult UnTax(Int64 payno)
{
return JsonOK(Dao.Save("pay.untax", new Hashtable() { { "payno", payno }, { "uno", SUserInfo.UserNo }, { "uip", GetUserIP() } }));
}
}
}

View File

@ -954,17 +954,18 @@
</select>
<select id="cr.pay1" parameterClass="long" resultClass="pay">
select p.payno,p.cdt,p.payamt,p.ptype,p.refundamt,p.ispg,p.isgroup,p.isexam,p.pstatus,p.rstatus,p.payoktime,p.pgkey,p.isdvr,p.deliamt,p.isunpay,p.paylimit
,u.userno,u.username,u.post,u.address1,u.address2
,CAST(AES_DECRYPT(UNHEX(u.userpno), <include refid="sql.digest"></include>) AS char) userpno
,CAST(AES_DECRYPT(UNHEX(u.telno), <include refid="sql.digest"></include>) AS char) telno
,CAST(AES_DECRYPT(UNHEX(u.mobile), <include refid="sql.digest"></include>) AS char) mobile
,CAST(AES_DECRYPT(UNHEX(u.email), <include refid="sql.digest"></include>) AS char) email
,case pi.ptype when 3 then exu.cdt when 4 then le.oktime else p.cdt end oktime
,pd.dvrcode,pd.rcvname,pd.isdvr isdvr2,pd.codetime,pd.post post2,pd.address1 address12,pd.address2 address22,pd.dmemo
,CAST(AES_DECRYPT(UNHEX(pd.telno), <include refid="sql.digest"></include>) AS char) telno2
,CAST(AES_DECRYPT(UNHEX(pd.mobile), <include refid="sql.digest"></include>) AS char) mobile2
,tax.iscancel, tax.taxdate, tax.taxno
,paydata.vactbankname,CAST(AES_DECRYPT(UNHEX(paydata.vactnum), <include refid="sql.digest"></include>) AS char) vactnum,paydata.vactname
,p.iscashrct
,u.userno,u.username,u.post,u.address1,u.address2
,CAST(AES_DECRYPT(UNHEX(u.userpno), <include refid="sql.digest"></include>) AS char) userpno
,CAST(AES_DECRYPT(UNHEX(u.telno), <include refid="sql.digest"></include>) AS char) telno
,CAST(AES_DECRYPT(UNHEX(u.mobile), <include refid="sql.digest"></include>) AS char) mobile
,CAST(AES_DECRYPT(UNHEX(u.email), <include refid="sql.digest"></include>) AS char) email
,case pi.ptype when 3 then exu.cdt when 4 then le.oktime else p.cdt end oktime
,pd.dvrcode,pd.rcvname,pd.isdvr isdvr2,pd.codetime,pd.post post2,pd.address1 address12,pd.address2 address22,pd.dmemo
,CAST(AES_DECRYPT(UNHEX(pd.telno), <include refid="sql.digest"></include>) AS char) telno2
,CAST(AES_DECRYPT(UNHEX(pd.mobile), <include refid="sql.digest"></include>) AS char) mobile2
,tax.iscancel, tax.taxdate, tax.taxno
,paydata.vactbankname,CAST(AES_DECRYPT(UNHEX(paydata.vactnum), <include refid="sql.digest"></include>) AS char) vactnum,paydata.vactname
from pay p
inner join users u on u.userno=p.userno
left outer join payitem pi on pi.payno=p.payno and pi.ptype in (3,4)

View File

@ -1099,6 +1099,13 @@
<isNotNull property="taxdatereq">,taxdatereq=#taxdatereq#</isNotNull>
where pplno = #pplno# and userno=#userno#
</update>
<update id="pay.untax" parameterClass="hashtable">
insert into untaxlog (payno,logtime,<include refid="sql.inc"></include>) values(#payno#,<include refid="sql.now"></include>,<include refid="sql.inv"></include>);
update pay
set iscashrct = null
where payno = #payno#;
</update>
</statements>
</sqlMap>

View File

@ -239,6 +239,25 @@ namespace NP.Model
/// </summary>
public int? iscancel { get; set; }
public Int64? taxno { get; set; }
/// <summary>
/// 계산서신청 type
/// 0:신용카드,1:현금영수증신청완료,2:가상계좌영수증신청필요,3:계산서신청완료,4:가상계좌,신용카드제외건
/// </summary>
public int taxtype
{
get
{
return ptype == 1 ? 0 : ptype == 3 ? iscashrct == 1 ? 1 : taxno == null ? 2 : 3 : 4;
}
}
public String taxtypename
{
get
{
return taxtype == 0 ? "카드" : taxtype == 1 ? "현금영수증" : taxtype == 2 ? "신청필요" : taxtype == 3 ? "신청" : "-";
}
}
}