팝빌 api 모듈 연동 추가

This commit is contained in:
lch 2021-04-22 09:28:05 +00:00
parent 1704c8219f
commit 02f854807b
10 changed files with 695 additions and 415 deletions

View File

@ -2,12 +2,10 @@
using System.Collections.Generic;
using System.Linq;
using System.Net.Http;
using System.Net.Http.Headers;
using System.Web;
using System.Web.Mvc;
using NP.Model;
using NP.Base.Popbill;
using NP.Model;
using System.Net.Http;
namespace NP.BO.Controllers
{
public class croomController : BOBaseController
@ -770,6 +768,7 @@ namespace NP.BO.Controllers
}
vm.PayTaxes = Dao.Get<PayTax>("cr.paytaxes", ht);
vm.pagetotalcount = GetCount(vm.PayTaxes.FirstOrDefault());
return View(vm);
}
public ActionResult taxdetail(VMCRoom vm)
@ -793,6 +792,18 @@ namespace NP.BO.Controllers
else
vm.PayTaxItem = Dao.Get<PayItem>("cr.paytaxitem2", new System.Collections.Hashtable() { { "taxno", vm.longval } });
#region Popbill
var mgtKey = vm.PayTaxes.First()?.mgtKey;
if (!string.IsNullOrEmpty(mgtKey))
{
ViewBag.Taxinvoice = PopbillService.GetTaxinvoice(mgtKey);
}
else
{
ViewBag.Taxinvoice = PopbillService.GetTaxinvoiceR();
}
#endregion
return View(vm);
}
public ActionResult taxsmart(VMCRoom vm)

View File

@ -1,11 +1,7 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Routing;
using NP.Base.Popbill;
using Spring.Web.Mvc;
namespace BO
@ -18,7 +14,7 @@ namespace BO
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
PopbillConfig.StartTaxinvoiceService();
}
}
}

View File

@ -5,7 +5,7 @@
<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>
@*<li><a href="#" onclick="gotab();" data-toggle="tab">스마트빌</a></li>*@
</ul>
</div>
<section class="panel panel-default">
@ -100,6 +100,44 @@
</tbody></table>
</section>
<form id="sform" method="post">
<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="200"><col width="400" /><col width="200" /><col /></colgroup>
<tbody>
<tr>
<th>회사명</th>
<td><input type="text" class="form-control dev" name="asname" value="@ViewBag.Taxinvoice.invoicerCorpName" /></td>
<th>대표자</th>
<td><input type="text" class="form-control dev" name="ceoname" value="@ViewBag.Taxinvoice.invoicerCEOName" /></td>
</tr>
<tr>
<th>사업자등록번호</th>
<td><input type="text" class="form-control dev" name="brno" value="@ViewBag.Taxinvoice.invoicerCorpNum" /></td>
<th>업태</th>
<td><input type="text" class="form-control dev" name="btype" value="@ViewBag.Taxinvoice.invoicerBizType" /></td>
</tr>
<tr>
<th>종목</th>
<td><input type="text" class="form-control dev" name="bkind" value="@ViewBag.Taxinvoice.invoicerBizClass" /></td>
<th>사업장주소</th>
<td><input type="text" class="form-control dev" name="asaddr" value="@ViewBag.Taxinvoice.invoicerAddr" /></td>
</tr>
<tr>
<th>담당자</th>
<td><input type="text" class="form-control dev" name="manname" value="@ViewBag.Taxinvoice.invoicerContactName" /></td>
<th>연락처</th>
<td><input type="text" class="form-control dev" name="telno" value="@ViewBag.Taxinvoice.invoicerTEL" /></td>
</tr>
<tr>
<th>이메일주소</th>
<td><input type="text" class="form-control dev" name="email" value="@ViewBag.Taxinvoice.invoicerEmail" /></td>
<th>문서번호</th>
<td><input type="text" class="form-control dev" name="email" value="@ViewBag.Taxinvoice.invoicerMgtKey" placeholder="결제일-결제번호?" /></td>
</tr>
</tbody>
</table>
</section>
<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;">

View File

@ -29,55 +29,73 @@
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<add key="fronturl" value="https://www.ynicte.com" />
<add key="adminurl" value="http://admin.ynicte.com" />
<add key="adminips" value="118.219.255.223;118.219.255.225"/>
<add key="reporturl" value="http://ynicter.nptc.kr" />
<add key="isstaging" value="0" />
<!--<add key="masteremail" value="edu@ynicte.or.kr;mail.ynicte.or.kr;25;ynicte@ynicte.or.kr;k7758870!%" />-->
<add key="masteremail" value="yicte@cte.or.kr;smtp.daum.net;465;yicte2020;yicte04003" />
<add key="usessl" value="Y" />
<add key="daokey" value="ynictelms2020" />
<!--결제 url | mid | hashed signkey | 취소모듈비밀번호 | 거래번호앞두자리-->
<!--테스트-->
<add key="pginfo" value="https://stgstdpay.inicis.com|INIpayTest|SU5JTElURV9UUklQTEVERVNfS0VZU1RS|1111|te|" />
<!--상용-->
<!--<add key="pginfo" value="https://stdpay.inicis.com|?|?|1111|pr|" />-->
<add key="pgroot" value="D:\INIpay50_ASP" />
<!--
<add key="fronturl" value="https://www.ynicte.com" />
<add key="adminurl" value="http://admin.ynicte.com" />
<add key="adminips" value="118.219.255.223;118.219.255.225"/>
<add key="reporturl" value="http://ynicter.nptc.kr" />
<add key="isstaging" value="0" />
<!--<add key="masteremail" value="edu@ynicte.or.kr;mail.ynicte.or.kr;25;ynicte@ynicte.or.kr;k7758870!%" />-->
<add key="masteremail" value="yicte@cte.or.kr;smtp.daum.net;465;yicte2020;yicte04003" />
<add key="usessl" value="Y" />
<add key="daokey" value="ynictelms2020" />
<!--결제 url | mid | hashed signkey | 취소모듈비밀번호 | 거래번호앞두자리-->
<!--테스트-->
<add key="pginfo" value="https://stgstdpay.inicis.com|INIpayTest|SU5JTElURV9UUklQTEVERVNfS0VZU1RS|1111|te|" />
<!--상용-->
<!--<add key="pginfo" value="https://stdpay.inicis.com|?|?|1111|pr|" />-->
<add key="pgroot" value="D:\INIpay50_ASP" />
<!--
talk
0: url, 1: id, 2: password,3: 계정키, 4: 계정ID, 5: 발신프로필키
-->
<add key="talk" value="https://dev-alimtalk-api.bizmsg.kr:1443/v2/sender/send,?,?,?,?,?,023103312" />
<!--<add key="talk" value="https://alimtalk-api.bizmsg.kr/v2/sender/send,?,?,?,?,?,023103312" />-->
<!--<add key="configpath" value="Product" />-->
<!--<add key="configpath" value="ProductDev" />-->
<add key="configpath" value="Staging" />
<add key="talk" value="https://dev-alimtalk-api.bizmsg.kr:1443/v2/sender/send,?,?,?,?,?,023103312" />
<!--<add key="talk" value="https://alimtalk-api.bizmsg.kr/v2/sender/send,?,?,?,?,?,023103312" />-->
<!--<add key="configpath" value="Product" />-->
<!--<add key="configpath" value="ProductDev" />-->
<add key="configpath" value="Staging" />
<add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" />
<add key="CST_MID" value="yicte2000" />
<!--상점아이디-->
<add key="CST_PLATFORM" value="test" />
<!--test, service-->
<add key="LGD_ENCODING" value="UTF-8" />
<add key="LGD_BACKBTN_YN" value="N" />
<add key="LGD_CASNOTEURL" value="http://kdh.nptc.kr:8084/Account/XPayVBankMoney" />
<!--가상계좌 입금통보 URL-->
<add key="LGD_AUTOFILLYN_BUYER" value="Y" />
<add key="LGD_CASHRECEIPTYN" value="Y" />
<add key="LGD_ESCROW_USEYN" value="N" />
<add key="PAYMENT_CLASSIFICATION" value="te" />
<add key="LGD_MERTKEY" value="e988951b7fe0b7f25ebaa07e54824365" />
<add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" />
<add key="CST_MID" value="yicte2000" />
<!--상점아이디-->
<add key="CST_PLATFORM" value="test" />
<!--test, service-->
<add key="LGD_ENCODING" value="UTF-8" />
<add key="LGD_BACKBTN_YN" value="N" />
<add key="LGD_CASNOTEURL" value="http://kdh.nptc.kr:8084/Account/XPayVBankMoney" />
<!--가상계좌 입금통보 URL-->
<add key="LGD_AUTOFILLYN_BUYER" value="Y" />
<add key="LGD_CASHRECEIPTYN" value="Y" />
<add key="LGD_ESCROW_USEYN" value="N" />
<add key="PAYMENT_CLASSIFICATION" value="te" />
<add key="LGD_MERTKEY" value="e988951b7fe0b7f25ebaa07e54824365" />
<!--MTS SMSMMS 발신번호, 알림톡발신키-->
<add key="mastersms" value="10d3158b52019fa6b7e5563b1e35cf8c48a8caf9" />
<add key="mtssendnum" value="15447660" />
<add key="mtsdb" value="Server=218.232.111.111;Database=mtsyicte;User ID=mtsyicteremote;Password=dev1@#" />
<!--MTS SMSMMS 발신번호, 알림톡발신키-->
<add key="mastersms" value="10d3158b52019fa6b7e5563b1e35cf8c48a8caf9" />
<add key="mtssendnum" value="15447660" />
<add key="mtsdb" value="Server=218.232.111.111;Database=mtsyicte;User ID=mtsyicteremote;Password=dev1@#" />
<!--팝빌 API 연동정보-->
<!--팝빌회원 링크아이디(LinkID)-->
<add key="Popbill.LinkID" value="YJCTE" />
<!--팝빌회원 비밀키(SecretKey)-->
<add key="Popbill.SecretKey" value="nC+bFG/XTCAQ3XtsRVdPWx70wJwq8XTE5vGeW2/uxyg=" />
<!--팝빌회원 사업자번호, '-' 제외 10자리-->
<add key="Popbill.CorpNum" value="6218204003" />
<!--팝빌회원 아이디(비필수)-->
<add key="Popbill.UserID" value="" />
<!--연동환경 설정값, 개발용(true), 상업용(false)-->
<add key="Popbill.TaxinvoiceService.IsTest" value="true" />
<!--인증토큰 IP 제한기능 사용여부, 권장(true)-->
<add key="Popbill.TaxinvoiceService.IPRestrictOnOff" value="true" />
<!--팝빌 API 서비스 고정 IP 사용여부(GA), true-사용, false-미사용, 기본값(false)-->
<add key="Popbill.TaxinvoiceService.UseStaticIP" value="false" />
<!--로컬서버 시간 사용 여부 true-사용, false-미사용, 기본값(false)-->
<add key="Popbill.TaxinvoiceService.UseLocalTimeYN" value="false" />
</appSettings>
<common>
<logging>
@ -126,27 +144,27 @@
<forms loginUrl="~/Account/Index" timeout="2880" />
</authentication>
<!--<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" cookieless="false" timeout="20" cookieName="ntest_admin" />-->
<!--<sessionState cookieless="UseCookies" cookieName="kfcfa" mode="Off" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<sessionState cookieless="UseCookies" cookieName="kfcfa" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />
<!--<sessionState cookieless="UseCookies" cookieName="kfcfa" mode="Off" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<sessionState cookieless="UseCookies" cookieName="kfcfa" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />
<!--<identity impersonate="true" userName="root" password="rhdwjdrudwod!@#45" />-->
<customErrors mode="RemoteOnly" defaultRedirect="~/Account/Error">
<error statusCode="404" redirect="~/Account/Error404" />
<error statusCode="403" redirect="~/Account/Error403" />
<error statusCode="500" redirect="~/Account/Error500" />
</customErrors>
<customErrors mode="RemoteOnly" defaultRedirect="~/Account/Error">
<error statusCode="404" redirect="~/Account/Error404" />
<error statusCode="403" redirect="~/Account/Error403" />
<error statusCode="500" redirect="~/Account/Error500" />
</customErrors>
<compilation debug="true" targetFramework="4.6" />
<httpRuntime targetFramework="4.5" requestValidationMode="2.0" maxRequestLength="1042000" />
<httpModules>
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
</httpModules>
</system.web>
<system.web.extensions>
<scripting>
<webServices>
<system.web.extensions>
<scripting>
<webServices>
<jsonSerialization maxJsonLength="5000000" />
</webServices>
</scripting>
</system.web.extensions>
</webServices>
</scripting>
</system.web.extensions>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
@ -196,18 +214,18 @@
</assemblyBinding>
</runtime>
<system.webServer>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824"></requestLimits>
</requestFiltering>
</security>
<httpProtocol>
<customHeaders>
<remove name="Vary"></remove>
<add name="Vary" value="Accept-Encoding"></add>
<add name="Access-Control-Allow-Origin" value="http://127.0.0.1" />
</customHeaders>
</httpProtocol>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824"></requestLimits>
</requestFiltering>
</security>
<httpProtocol>
<customHeaders>
<remove name="Vary"></remove>
<add name="Vary" value="Accept-Encoding"></add>
<add name="Access-Control-Allow-Origin" value="http://127.0.0.1" />
</customHeaders>
</httpProtocol>
<!--<httpErrors>
<remove statusCode="403" subStatusCode="-1" />
<error statusCode="403" prefixLanguageFilePath="" path="Account/Error403" responseMode="ExecuteURL" />
@ -233,7 +251,7 @@
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
</system.webServer>
<!-- <system.codedom>
<!-- <system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />

View File

@ -60,6 +60,9 @@
<Reference Include="INIpayNet">
<HintPath>..\References\inipay\INIpayNet.dll</HintPath>
</Reference>
<Reference Include="Linkhub">
<HintPath>..\References\Popbill\Linkhub.dll</HintPath>
</Reference>
<Reference Include="log4net, Version=2.0.8.0, Culture=neutral, PublicKeyToken=669e0ddf0bb1aa2a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\References\log4net.dll</HintPath>
@ -79,6 +82,9 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\References\NPDao.dll</HintPath>
</Reference>
<Reference Include="Popbill">
<HintPath>..\References\Popbill\Popbill.dll</HintPath>
</Reference>
<Reference Include="QRCoder, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\References\QRCoder.dll</HintPath>
@ -156,6 +162,8 @@
<Compile Include="Lib\KISA256.cs" />
<Compile Include="Lib\Logger.cs" />
<Compile Include="Lib\Logging.cs" />
<Compile Include="Popbill\PopbillConfig.cs" />
<Compile Include="Popbill\PopbillService.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Lib\Helpers.cs" />
</ItemGroup>
@ -173,5 +181,8 @@
<Name>Model</Name>
</ProjectReference>
</ItemGroup>
<ItemGroup>
<WCFMetadata Include="Connected Services\" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
</Project>

View File

@ -0,0 +1,82 @@
using Popbill;
using Popbill.Taxinvoice;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Configuration;
namespace NP.Base.Popbill
{
public class PopbillConfig
{
/// <summary>
/// 링크아이디
/// </summary>
private static string _linkID;
/// <summary>
/// 비밀키
/// </summary>
private static string _secretKey;
/// <summary>
/// 사업자번호
/// </summary>
private static string _corpNum;
/// <summary>
/// 회원아이디
/// </summary>
private static string _userID;
/// <summary>
/// 링크아이디
/// </summary>
public static string LinkID => _linkID;
/// <summary>
/// 사업자번호
/// </summary>
public static string CorpNum => _corpNum;
/// <summary>
/// 회원아이디(비필수)
/// </summary>
public static string UserID => _userID;
/// <summary>
/// 세금계산서 서비스 객체 선언
/// </summary>
public static TaxinvoiceService taxinvoiceService;
/// <summary>
/// 서비스시작
/// </summary>
public static void StartTaxinvoiceService()
{
try
{
_linkID = WebConfigurationManager.AppSettings["Popbill.LinkID"];
_secretKey = WebConfigurationManager.AppSettings["Popbill.SecretKey"];
_corpNum = WebConfigurationManager.AppSettings["Popbill.CorpNum"];
_userID = WebConfigurationManager.AppSettings["Popbill.UserID"];
// 세금계산서 서비스 객체 초기화
taxinvoiceService = new TaxinvoiceService(_linkID, _secretKey);
// 연동환경 설정값, 개발용(true), 상업용(false)
taxinvoiceService.IsTest = bool.Parse(WebConfigurationManager.AppSettings["Popbill.TaxinvoiceService.IsTest"]);
// 인증토큰 IP 제한기능 사용여부, 권장(true)
taxinvoiceService.IPRestrictOnOff = bool.Parse(WebConfigurationManager.AppSettings["Popbill.TaxinvoiceService.IPRestrictOnOff"]);
// 팝빌 API 서비스 고정 IP 사용여부(GA), true-사용, false-미사용, 기본값(false)
taxinvoiceService.UseStaticIP = bool.Parse(WebConfigurationManager.AppSettings["Popbill.TaxinvoiceService.UseStaticIP"]);
// 로컬서버 시간 사용 여부 true-사용, false-미사용, 기본값(false)
taxinvoiceService.UseLocalTimeYN = bool.Parse(WebConfigurationManager.AppSettings["Popbill.TaxinvoiceService.UseLocalTimeYN"]);
}
catch (PopbillException ex)
{
Logger.TryError(ex.Message, ex);
}
}
}
}

View File

@ -0,0 +1,106 @@
using NP.Base;
using Popbill;
using Popbill.Taxinvoice;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web.Configuration;
namespace NP.Base.Popbill
{
public class PopbillService
{
/// <summary>
/// 세금계산서 문서번호{mgtKey} 생성
/// </summary>
/// <returns></returns>
public static string MakeMgtKey()
{
string mgtKey = string.Empty;
try
{
string date = DateTime.Now.ToString("yyyy-MM-dd");
string no = 1.ToString("D5");//수정->발행문서 검색 후 순번 + 1 하는 거로 변경
mgtKey = $"{date}-L{no}";
}
catch (PopbillException ex)
{
Logger.TryError(ex.Message, ex);
}
return mgtKey;
}
/// <summary>
/// 세금계산서 상세정보
/// </summary>
/// <param name="mgtKey"></param>
/// <returns></returns>
public static Taxinvoice GetTaxinvoice(string mgtKey)
{
Taxinvoice taxinvoice = null;
try
{
taxinvoice = PopbillConfig.taxinvoiceService.GetDetailInfo(PopbillConfig.CorpNum, MgtKeyType.SELL, mgtKey);
}
catch (PopbillException ex)
{
Logger.TryError(ex.Message, ex);
}
return taxinvoice;
}
/// <summary>
/// 세금계산서 공급자정보
/// </summary>
/// <returns></returns>
public static Taxinvoice GetTaxinvoiceR()
{
Taxinvoice Taxinvoice = null;
try
{
CorpInfo corpInfo = PopbillConfig.taxinvoiceService.GetCorpInfo(PopbillConfig.CorpNum, PopbillConfig.UserID);
Contact contact = PopbillConfig.taxinvoiceService.ListContact(PopbillConfig.CorpNum, PopbillConfig.UserID).Where(w => w.mgrYN == true).FirstOrDefault();
Taxinvoice = new Taxinvoice
{
invoicerAddr = corpInfo?.addr,
invoicerCEOName = corpInfo?.ceoname,
invoicerCorpName = corpInfo?.corpName,
invoicerMgtKey = MakeMgtKey(),
invoicerCorpNum = PopbillConfig.CorpNum,
invoicerBizClass = corpInfo?.bizClass,
invoicerBizType = corpInfo?.bizType,
invoicerContactName = contact?.personName,
invoicerEmail = contact?.email,
invoicerHP = contact?.hp,
invoicerTEL = contact?.tel
};
}
catch (PopbillException ex)
{
Logger.TryError(ex.Message, ex);
}
return Taxinvoice;
}
/// <summary>
/// 세금계산서 즉시 발행
/// </summary>
/// <param name="taxinvoice"></param>
/// <param name="forceIssue"></param>
/// <param name="memo"></param>
/// <returns></returns>
public static IssueResponse RegistIssue(Taxinvoice taxinvoice, bool forceIssue, string memo)
{
IssueResponse IssueResponse = null;
try
{
PopbillConfig.taxinvoiceService.RegistIssue(PopbillConfig.CorpNum, taxinvoice, forceIssue, memo);
}
catch (PopbillException ex)
{
Logger.TryError(ex.Message, ex);
}
return IssueResponse;
}
}
}

View File

@ -1,11 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.Optimization;
using System.Web.Mvc;
using System.Web.Routing;
using NP.Base.Popbill;
using Spring.Web.Mvc;
namespace FO
@ -19,6 +14,7 @@ namespace FO
RouteConfig.RegisterRoutes(RouteTable.Routes);
//BundleConfig.RegisterBundles(BundleTable.Bundles);
MvcHandler.DisableMvcResponseHeader = true;
PopbillConfig.StartTaxinvoiceService();
}
}
}

View File

@ -4,84 +4,102 @@
https://go.microsoft.com/fwlink/?LinkId=301880
-->
<configuration>
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
<!--Spring-->
<sectionGroup name="spring">
<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler, Spring.Core" />
<section name="typeAliases" type="Spring.Context.Support.TypeAliasesSectionHandler, Spring.Core" />
<section name="context" type="Spring.Context.Support.MvcContextHandler, Spring.Web.Mvc5" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
<!--<section name="context" type="Spring.Context.Support.MvcContextHandler, Spring.Core" />
<configSections>
<sectionGroup name="common">
<section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" />
</sectionGroup>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
<!--Spring-->
<sectionGroup name="spring">
<section name="parsers" type="Spring.Context.Support.NamespaceParsersSectionHandler, Spring.Core" />
<section name="typeAliases" type="Spring.Context.Support.TypeAliasesSectionHandler, Spring.Core" />
<section name="context" type="Spring.Context.Support.MvcContextHandler, Spring.Web.Mvc5" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />
<!--<section name="context" type="Spring.Context.Support.MvcContextHandler, Spring.Core" />
<section name="objects" type="Spring.Context.Support.DefaultSectionHandler, Spring.Core" />-->
</sectionGroup>
<!---iBATIS-->
<sectionGroup name="iBATIS">
<section name="logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
</sectionGroup>
<!---iBATIS-->
<sectionGroup name="iBATIS">
<section name="logging" type="IBatisNet.Common.Logging.ConfigurationSectionHandler, IBatisNet.Common" />
</sectionGroup>
<!--Common-->
</configSections>
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
</configSections>
<appSettings>
<add key="webpages:Version" value="3.0.0.0" />
<add key="webpages:Enabled" value="false" />
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
<!--<add key="SIP" value="192.168.0.58" />-->
<add key="fronturl" value="https://www.ynicte.com" />
<add key="adminurl" value="http://admin.ynicte.com" />
<add key="reporturl" value="http://ynicter.nptc.kr" />
<!--<add key="masteremail" value="edu@ynicte.or.kr;mail.ynicte.or.kr;25;ynicte@ynicte.or.kr;k7758870!%" />-->
<add key="masteremail" value="yicte@cte.or.kr;smtp.daum.net;465;yicte2020;yicte04003" />
<add key="usessl" value="Y" />
<add key="ssonoauth" value="Y" />
<add key="daokey" value="ynictelms2020" />
<!--<add key="configpath" value="Product" />-->
<!--<add key="configpath" value="ProductDev" />-->
<add key="configpath" value="Staging" />
<add key="thumbnailexe" value="D:\\dev_tool\\ffmpeg.exe" />
<!--개발자pc결제테스트를 위한 서브도메인 무효화 변수-->
<add key="ispaytest" value="1" />
<add key="isdevtest" value="0" />
<add key="deliveramt" value="2500" />
<!--0:pc결제 url | 1:mid | 2:hashed signkey | 3:취소모듈비밀번호 | 4:거래번호앞두자리-->
<!--테스트결제-->
<add key="pginfo" value="https://stgstdpay.inicis.com|INIpayTest|SU5JTElURV9UUklQTEVERVNfS0VZU1RS|1111|te|" />
<!--모바일가상계좌입금통보url | 신용카드context | 계좌이체context | 가상계좌context | -->
<add key="pginfomobile" value="https://phd.nptc.kr:8080|/Account/PayVBankMoneyMobile" />
<!--상용결제-->
<!--<add key="pginfo" value="https://stdpay.inicis.com|?|?|1111|pr|" />-->
<!--<add key="pginfomobile" value="https://edu.kfcf.or.kr|/Account/PayVBankMoneyMobile" />-->
<!--<add key="SIP" value="192.168.0.58" />-->
<add key="fronturl" value="https://www.ynicte.com" />
<add key="adminurl" value="http://admin.ynicte.com" />
<add key="reporturl" value="http://ynicter.nptc.kr" />
<!--<add key="masteremail" value="edu@ynicte.or.kr;mail.ynicte.or.kr;25;ynicte@ynicte.or.kr;k7758870!%" />-->
<add key="masteremail" value="yicte@cte.or.kr;smtp.daum.net;465;yicte2020;yicte04003" />
<add key="usessl" value="Y" />
<add key="ssonoauth" value="Y" />
<add key="daokey" value="ynictelms2020" />
<!--<add key="configpath" value="Product" />-->
<!--<add key="configpath" value="ProductDev" />-->
<add key="configpath" value="Staging" />
<add key="thumbnailexe" value="D:\\dev_tool\\ffmpeg.exe" />
<add key="pgroot" value="D:\INIpay50_ASP" />
<!--개발자pc결제테스트를 위한 서브도메인 무효화 변수-->
<add key="ispaytest" value="1" />
<add key="isdevtest" value="0" />
<add key="deliveramt" value="2500" />
<!--0:pc결제 url | 1:mid | 2:hashed signkey | 3:취소모듈비밀번호 | 4:거래번호앞두자리-->
<!--테스트결제-->
<add key="pginfo" value="https://stgstdpay.inicis.com|INIpayTest|SU5JTElURV9UUklQTEVERVNfS0VZU1RS|1111|te|" />
<!--모바일가상계좌입금통보url | 신용카드context | 계좌이체context | 가상계좌context | -->
<add key="pginfomobile" value="https://phd.nptc.kr:8080|/Account/PayVBankMoneyMobile" />
<!--상용결제-->
<!--<add key="pginfo" value="https://stdpay.inicis.com|?|?|1111|pr|" />-->
<!--<add key="pginfomobile" value="https://edu.kfcf.or.kr|/Account/PayVBankMoneyMobile" />-->
<add key="pgroot" value="D:\INIpay50_ASP" />
<!-- 토스페이먼츠(구LG Xpay) 결제 시작 -->
<add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" />
<add key="CST_MID" value="yicte2000" />
<!--상점아이디-->
<add key="CST_PLATFORM" value="test" />
<!--test, service-->
<add key="LGD_ENCODING" value="UTF-8" />
<add key="LGD_BACKBTN_YN" value="N" />
<add key="LGD_CASNOTEURL" value="http://kdh.nptc.kr:8084/Account/XPayVBankMoney" />
<!--가상계좌 입금통보 URL-->
<add key="LGD_AUTOFILLYN_BUYER" value="Y" />
<add key="LGD_CASHRECEIPTYN" value="Y" />
<add key="LGD_ESCROW_USEYN" value="N" />
<add key="PAYMENT_CLASSIFICATION" value="te" />
<add key="LGD_MERTKEY" value="e988951b7fe0b7f25ebaa07e54824365" />
<!-- 토스페이먼츠(구LG Xpay) 결제 종료 -->
<add key="mastersms" value="10d3158b52019fa6b7e5563b1e35cf8c48a8caf9" />
<add key="mtssendnum" value="15447660" />
<add key="mtsdb" value="Server=218.232.111.111;Database=mtsyicte;User ID=mtsyicteremote;Password=dev1@#" />
<!--MTS SMSMMS 발신번호, 알림톡발신키-->
</appSettings>
<!-- 토스페이먼츠(구LG Xpay) 결제 시작 -->
<add key="lgdacomConfigPath" value="D:\3rdparti\lgdacomyicte" />
<add key="CST_MID" value="yicte2000" />
<!--상점아이디-->
<add key="CST_PLATFORM" value="test" />
<!--test, service-->
<add key="LGD_ENCODING" value="UTF-8" />
<add key="LGD_BACKBTN_YN" value="N" />
<add key="LGD_CASNOTEURL" value="http://kdh.nptc.kr:8084/Account/XPayVBankMoney" />
<!--가상계좌 입금통보 URL-->
<add key="LGD_AUTOFILLYN_BUYER" value="Y" />
<add key="LGD_CASHRECEIPTYN" value="Y" />
<add key="LGD_ESCROW_USEYN" value="N" />
<add key="PAYMENT_CLASSIFICATION" value="te" />
<add key="LGD_MERTKEY" value="e988951b7fe0b7f25ebaa07e54824365" />
<!-- 토스페이먼츠(구LG Xpay) 결제 종료 -->
<add key="mastersms" value="10d3158b52019fa6b7e5563b1e35cf8c48a8caf9" />
<add key="mtssendnum" value="15447660" />
<add key="mtsdb" value="Server=218.232.111.111;Database=mtsyicte;User ID=mtsyicteremote;Password=dev1@#" />
<!--MTS SMSMMS 발신번호, 알림톡발신키-->
<!--팝빌 API 연동정보-->
<!--팝빌회원 링크아이디(LinkID)-->
<add key="Popbill.LinkID" value="YJCTE" />
<!--팝빌회원 비밀키(SecretKey)-->
<add key="Popbill.SecretKey" value="nC+bFG/XTCAQ3XtsRVdPWx70wJwq8XTE5vGeW2/uxyg=" />
<!--팝빌회원 사업자번호, '-' 제외 10자리-->
<add key="Popbill.CorpNum" value="6218204003" />
<!--팝빌회원 아이디(비필수)-->
<add key="Popbill.UserID" value="" />
<!--연동환경 설정값, 개발용(true), 상업용(false)-->
<add key="Popbill.TaxinvoiceService.IsTest" value="true" />
<!--인증토큰 IP 제한기능 사용여부, 권장(true)-->
<add key="Popbill.TaxinvoiceService.IPRestrictOnOff" value="true" />
<!--팝빌 API 서비스 고정 IP 사용여부(GA), true-사용, false-미사용, 기본값(false)-->
<add key="Popbill.TaxinvoiceService.UseStaticIP" value="false" />
<!--로컬서버 시간 사용 여부 true-사용, false-미사용, 기본값(false)-->
<add key="Popbill.TaxinvoiceService.UseLocalTimeYN" value="false" />
</appSettings>
<!-- to see logging output in the attached debugger -->
<common>
<logging>
@ -130,113 +148,113 @@
<authentication mode="Forms">
<forms loginUrl="~/Account/Index" timeout="2880" />
</authentication>
<!--<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" cookieless="false" timeout="1" cookieName="tesl_lms_mobile" />-->
<!--<sessionState cookieless="UseCookies" cookieName="tesl_lms_mobile" mode="Off" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<!--<sessionState cookieless="UseCookies" regenerateExpiredSessionId="false" mode="StateServer" compressionEnabled="true" stateConnectionString="tcpip=localhost:42424" timeout="10" cookieName="tssc" />-->
<!--<sessionState mode="StateServer" stateConnectionString="tcpip=localhost:42424" cookieless="false" timeout="1" cookieName="tesl_lms_mobile" />-->
<!--<sessionState cookieless="UseCookies" cookieName="tesl_lms_mobile" mode="Off" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<!--<sessionState cookieless="UseCookies" regenerateExpiredSessionId="false" mode="StateServer" compressionEnabled="true" stateConnectionString="tcpip=localhost:42424" timeout="10" cookieName="tssc" />-->
<!--<sessionState cookieless="UseCookies" cookieName="kfcf" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<sessionState cookieless="UseCookies" cookieName="yicte" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />
<!--<sessionState cookieless="UseCookies" cookieName="kfcff" mode="Off" stateConnectionString="tcpip=xxx.xxx.xxx:42424" timeout="60" />-->
<!--<identity impersonate="true" userName="root" password="rhdwjdrudwod!@#45" />-->
<!--<customErrors mode="RemoteOnly" defaultRedirect="Account/Error" allowNestedErrors="true" redirectMode="ResponseRewrite">
<!--<sessionState cookieless="UseCookies" cookieName="kfcf" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />-->
<sessionState cookieless="UseCookies" cookieName="yicte" mode="StateServer" stateConnectionString="tcpip=localhost:42424" timeout="60" />
<!--<sessionState cookieless="UseCookies" cookieName="kfcff" mode="Off" stateConnectionString="tcpip=xxx.xxx.xxx:42424" timeout="60" />-->
<!--<identity impersonate="true" userName="root" password="rhdwjdrudwod!@#45" />-->
<!--<customErrors mode="RemoteOnly" defaultRedirect="Account/Error" allowNestedErrors="true" redirectMode="ResponseRewrite">
<error statusCode="404" redirect="Account/Error404" />
<error statusCode="403" redirect="Account/Error403" />
<error statusCode="500" redirect="Account/Error500" />
</customErrors>-->
<customErrors mode="Off" defaultRedirect="~/Account/Error">
<error statusCode="404" redirect="~/Account/Error404" />
<error statusCode="403" redirect="~/Account/Error403" />
<error statusCode="500" redirect="~/Account/Error500" />
</customErrors>
<compilation debug="true" targetFramework="4.6" />
<!--<compilation debug="false" targetFramework="4.6" />product-->
<httpRuntime targetFramework="4.5" requestValidationMode="2.0" maxRequestLength="61200" />
<httpModules>
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
</httpModules>
<customErrors mode="Off" defaultRedirect="~/Account/Error">
<error statusCode="404" redirect="~/Account/Error404" />
<error statusCode="403" redirect="~/Account/Error403" />
<error statusCode="500" redirect="~/Account/Error500" />
</customErrors>
<compilation debug="true" targetFramework="4.6" />
<!--<compilation debug="false" targetFramework="4.6" />product-->
<httpRuntime targetFramework="4.5" requestValidationMode="2.0" maxRequestLength="61200" />
<httpModules>
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" />
</httpModules>
</system.web>
<!--<system.net>
<!--<system.net>
<settings>
<servicePointManager checkCertificateName="false" checkCertificateRevocationList="false" />
</settings>
</system.net>-->
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.2.0.0" newVersion="1.2.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http.WebHost" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
</assemblyBinding>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" culture="neutral" publicKeyToken="30ad4fe6b2a6aeed" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Optimization" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-1.1.0.0" newVersion="1.1.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-1.5.2.14234" newVersion="1.5.2.14234" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Helpers" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.WebPages" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="1.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging.Core" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Common.Logging" publicKeyToken="af08829b84f0328e" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.2.0.0" newVersion="1.2.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web.Http.WebHost" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Web" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="System.Net.Http.Formatting" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.webServer>
<!--<asp>
<!--<asp>
<limits processorThreadMax="100"/>
</asp>-->
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824"></requestLimits>
</requestFiltering>
</security>
<security>
<requestFiltering>
<requestLimits maxAllowedContentLength="1073741824"></requestLimits>
</requestFiltering>
</security>
<httpProtocol>
<customHeaders>
<!--<remove name="Vary"></remove>
<customHeaders>
<!--<remove name="Vary"></remove>
<add name="Vary" value="Accept-Encoding"></add>
<add name="Access-Control-Allow-Origin" value="*"/>
<add name="Access-Control-Allow-Headers" value="Content-Type"/>
<add name="Access-Control-Allow-Methods" value="GET, POST"/>-->
<add name="X-Frame-Options" value="SAMEORIGIN" />
<!--<add name="X-Frame-Options" value="ALLOW-FROM http://www.kocw.net" />-->
<!--<add name="Access-Control-Allow-Origin" value="http://www.kocw.net/ "/>-->
</customHeaders>
<add name="X-Frame-Options" value="SAMEORIGIN" />
<!--<add name="X-Frame-Options" value="ALLOW-FROM http://www.kocw.net" />-->
<!--<add name="Access-Control-Allow-Origin" value="http://www.kocw.net/ "/>-->
</customHeaders>
</httpProtocol>
<!--<httpErrors>
<!--<httpErrors>
<remove statusCode="403" subStatusCode="-1" />
<error statusCode="403" prefixLanguageFilePath="" path="Account/Error403" responseMode="ExecuteURL" />
</httpErrors>
@ -249,22 +267,22 @@
</outboundRules>
</rewrite>
<defaultDocument enabled="false" />-->
<validation validateIntegratedModeConfiguration="false" />
<modules>
<remove name="ApplicationInsightsWebTracking" />
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
<staticContent>
<clientCache cacheControlMode="DisableCache" />
<remove fileExtension=".hwp" />
<mimeMap fileExtension=".hwp" mimeType="application/unknown" />
</staticContent>
<validation validateIntegratedModeConfiguration="false" />
<modules>
<remove name="ApplicationInsightsWebTracking" />
<add name="ApplicationInsightsWebTracking" type="Microsoft.ApplicationInsights.Web.ApplicationInsightsHttpModule, Microsoft.AI.Web" preCondition="managedHandler" />
</modules>
<handlers>
<remove name="ExtensionlessUrlHandler-Integrated-4.0" />
<remove name="OPTIONSVerbHandler" />
<remove name="TRACEVerbHandler" />
<add name="ExtensionlessUrlHandler-Integrated-4.0" path="*." verb="*" type="System.Web.Handlers.TransferRequestHandler" preCondition="integratedMode,runtimeVersionv4.0" />
</handlers>
<staticContent>
<clientCache cacheControlMode="DisableCache" />
<remove fileExtension=".hwp" />
<mimeMap fileExtension=".hwp" mimeType="application/unknown" />
</staticContent>
<!--<staticContent>
<remove fileExtension=".eot" />
<mimeMap fileExtension=".eot" mimeType="application/vnd.ms-fontobject" />
@ -277,170 +295,170 @@
<remove fileExtension=".hwp" />
<mimeMap fileExtension=".hwp" mimeType="application/unknown" />
</staticContent>-->
</system.webServer>
<!-- <system.codedom>
<!-- <system.codedom>
<compilers>
<compiler language="c#;cs;csharp" extension=".cs" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.CSharpCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:1659;1699;1701" />
<compiler language="vb;vbs;visualbasic;vbscript" extension=".vb" type="Microsoft.CodeDom.Providers.DotNetCompilerPlatform.VBCodeProvider, Microsoft.CodeDom.Providers.DotNetCompilerPlatform, Version=1.0.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" warningLevel="4" compilerOptions="/langversion:default /nowarn:41008 /define:_MYTYPE=\&quot;Web\&quot; /optionInfer+" />
</compilers>
</system.codedom>-->
<iBATIS>
<logging>
<logFactoryAdapter type="IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
<arg key="configType" value="inline" />
</logFactoryAdapter>
</logging>
<logging>
<logFactoryAdapter type="IBatisNet.Common.Logging.Impl.Log4NetLoggerFA, IBatisNet.Common.Logging.Log4Net">
<arg key="configType" value="inline" />
</logFactoryAdapter>
</logging>
</iBATIS>
<log4net>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="D:\log\ynicte\log.txt" />
<param name="MaxSizeRollBackups" value="2" />
<param name="MaximumFileSize" value="1024KB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d - %m%n" />
</layout>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d - %m%n" />
</layout>
</appender>
<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/debug.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="DeleteAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/delete.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="WarnAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/warn.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="QueryAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="D:\log\ynicte\query.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/error.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="TryErrorAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/tryerror.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<!-- OFF, FATAL, ERROR, Delete, WARN, INFO, DEBUG, ALL -->
<root>
<level value="DEBUG" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
<logger name="Debug">
<appender-ref ref="DebugAppender" />
<level value="DEBUG" />
</logger>
<logger name="Query">
<appender-ref ref="QueryAppender" />
<level value="QUERY" />
</logger>
<logger name="Delete">
<appender-ref ref="DeleteAppender" />
<level value="DELETE" />
</logger>
<logger name="TryError">
<appender-ref ref="TryErrorAppender" />
<level value="TRYERROR" />
</logger>
<logger name="Warn">
<appender-ref ref="WarnAppender" />
<level value="WARN" />
</logger>
<logger name="Error">
<appender-ref ref="ErrorAppender" />
<level value="ERROR" />
</logger>
<logger name="IBatisNet.DataMapper.Commands.DefaultPreparedCommand">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Configuration.Cache.CacheModel">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.LazyLoadList">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.SqlMapSession">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.Common.Transaction.TransactionScope">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataAccess.DaoSession">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataAccess.Configuration.DaoProxy">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Configuration.Statements.PreparedStatementFactory">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Commands.IPreparedCommand">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="D:\log\ynicte\log.txt" />
<param name="MaxSizeRollBackups" value="2" />
<param name="MaximumFileSize" value="1024KB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d - %m%n" />
</layout>
</appender>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<param name="ConversionPattern" value="%d - %m%n" />
</layout>
</appender>
<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/debug.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="DeleteAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/delete.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="WarnAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/warn.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="QueryAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="D:\log\ynicte\query.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="ErrorAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/error.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<appender name="TryErrorAppender" type="log4net.Appender.RollingFileAppender,log4net">
<param name="File" value="Logs/tryerror.txt" />
<param name="AppendToFile" value="true" />
<param name="MaxSizeRollBackups" value="10" />
<param name="MaximumFileSize" value="5MB" />
<param name="RollingStyle" value="Size" />
<param name="StaticLogFileName" value="true" />
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<!-- OFF, FATAL, ERROR, Delete, WARN, INFO, DEBUG, ALL -->
<root>
<level value="DEBUG" />
<appender-ref ref="RollingLogFileAppender" />
<appender-ref ref="ConsoleAppender" />
</root>
<logger name="Debug">
<appender-ref ref="DebugAppender" />
<level value="DEBUG" />
</logger>
<logger name="Query">
<appender-ref ref="QueryAppender" />
<level value="QUERY" />
</logger>
<logger name="Delete">
<appender-ref ref="DeleteAppender" />
<level value="DELETE" />
</logger>
<logger name="TryError">
<appender-ref ref="TryErrorAppender" />
<level value="TRYERROR" />
</logger>
<logger name="Warn">
<appender-ref ref="WarnAppender" />
<level value="WARN" />
</logger>
<logger name="Error">
<appender-ref ref="ErrorAppender" />
<level value="ERROR" />
</logger>
<logger name="IBatisNet.DataMapper.Commands.DefaultPreparedCommand">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Configuration.Cache.CacheModel">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.LazyLoadList">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.SqlMapSession">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.Common.Transaction.TransactionScope">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataAccess.DaoSession">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataAccess.Configuration.DaoProxy">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Configuration.Statements.PreparedStatementFactory">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
<logger name="IBatisNet.DataMapper.Commands.IPreparedCommand">
<!--<level value="DEBUG"/>-->
<appender-ref ref="QueryAppender" />
</logger>
</log4net>
<!--<system.diagnostics>
<trace autoflush="true">

View File

@ -915,6 +915,10 @@ namespace NP.Model
public String username { get; set; }
public String userid { get; set; }
public int? iscancel { get; set; }
/// <summary>
/// 세금계산서 문서번호
/// </summary>
public String mgtKey { get; set; }
}
[Serializable]
public class PayRfd : BaseModel