1. 회원가입 본인인증 시 선택한 본인인증 값 학습인증수단의 기본값으로 저장 (컬럼추가 필요)

2. 회원가입 신청서 작성 시 문구 추가
This commit is contained in:
lch 2021-06-07 06:23:38 +00:00
parent 4bcacc6fec
commit 00a43b4acb
9 changed files with 69 additions and 23 deletions

View File

@ -119,7 +119,7 @@ namespace NP.Base.Controllers
return JsonOK(check * -1); return JsonOK(check * -1);
} }
LogSet(new ActLog() { logtype = 30, logtarget = 21, logdata = u.username, userno = u.userno, uno = SUserInfo.UserNo, uip = GetUserIP() }); LogSet(new ActLog() { logtype = 30, logtarget = 21, logdata = u.username, userno = u.userno, uno = SUserInfo.UserNo, uip = GetUserIP() });
u.savefrontbuy = 1; u.savefrontbuy = 1;
var result = Dao.Save("users.up", u); var result = Dao.Save("users.up", u);
if (result > 0) if (result > 0)
{ {

View File

@ -238,7 +238,7 @@
,case when c.refcode='9' then a.ccpositionetc else c.cname end ccpositionname ,case when c.refcode='9' then a.ccpositionetc else c.cname end ccpositionname
,case when a.usertype=1 then '교육생' when d.authname is null then '-' else d.authname end usertypestr ,case when a.usertype=1 then '교육생' when d.authname is null then '-' else d.authname end usertypestr
,CAST(AES_DECRYPT(UNHEX(a.birthday), <include refid="sql.digest"></include>) AS char) birthday ,CAST(AES_DECRYPT(UNHEX(a.birthday), <include refid="sql.digest"></include>) AS char) birthday
,a.uduty,a.slevel,a.isacceptmobile,a.vssn,a.ischkatt ,a.uduty,a.slevel,a.isacceptmobile,a.vssn,a.ischkatt,a.authPlatform
,row_number() over(order by <isNotNull property="orderby">$orderby$</isNotNull><isNull property="orderby">a.username</isNull>) rno ,row_number() over(order by <isNotNull property="orderby">$orderby$</isNotNull><isNull property="orderby">a.username</isNull>) rno
,count(a.cdt) over() pagetotalcount ,count(a.cdt) over() pagetotalcount
from users a from users a
@ -303,13 +303,13 @@
,asno,pasname,depart,ccposition,ccpositionetc,fgnoprofile,ccjobs ,asno,pasname,depart,ccposition,ccpositionetc,fgnoprofile,ccjobs
,userpno,bankname,bankno ,userpno,bankname,bankno
,post,address1,address2,introhtml,status,logintime,send335time,pwcalltime,pwcallno,eastereggkey,eetime,kfcfyear,isassignuser,edus ,post,address1,address2,introhtml,status,logintime,send335time,pwcalltime,pwcallno,eastereggkey,eetime,kfcfyear,isassignuser,edus
,isacceptmobile,uduty,slevel,jointype,birthday,snsid,di,ci,vssn,ischkatt,<include refid="sql.inc"></include>) ,isacceptmobile,uduty,slevel,jointype,birthday,snsid,di,ci,vssn,ischkatt,authPlatform,<include refid="sql.inc"></include>)
values (#usertype#,#userkind#,#userid#,#userpass#,#username#,#usernameeng# values (#usertype#,#userkind#,#userid#,#userpass#,#username#,#usernameeng#
,gender,HEX(AES_ENCRYPT(#email#, <include refid="sql.digest"></include>)),#isacceptemail#,HEX(AES_ENCRYPT(#mobile#, <include refid="sql.digest"></include>)),HEX(AES_ENCRYPT(#telno#, <include refid="sql.digest"></include>)) ,gender,HEX(AES_ENCRYPT(#email#, <include refid="sql.digest"></include>)),#isacceptemail#,HEX(AES_ENCRYPT(#mobile#, <include refid="sql.digest"></include>)),HEX(AES_ENCRYPT(#telno#, <include refid="sql.digest"></include>))
,#asno#,#pasname#,#depart#,#ccposition#,#ccpositionetc#,#fgnoprofile#,#ccjobs# ,#asno#,#pasname#,#depart#,#ccposition#,#ccpositionetc#,#fgnoprofile#,#ccjobs#
,HEX(AES_ENCRYPT(#userpno#, <include refid="sql.digest"></include>)),#bankname#,HEX(AES_ENCRYPT(#bankno#, <include refid="sql.digest"></include>)) ,HEX(AES_ENCRYPT(#userpno#, <include refid="sql.digest"></include>)),#bankname#,HEX(AES_ENCRYPT(#bankno#, <include refid="sql.digest"></include>))
,#post#,#address1#,#address2#,#introhtml#,#status#,<include refid="sql.now"></include>,null,null,null,null,null,#kfcfyear#,#isassignuser#,#edus# ,#post#,#address1#,#address2#,#introhtml#,#status#,<include refid="sql.now"></include>,null,null,null,null,null,#kfcfyear#,#isassignuser#,#edus#
,#isacceptmobile#,#uduty#,#slevel#,#jointype#,HEX(AES_ENCRYPT(#birthday#, <include refid="sql.digest"></include>)),#snsid#,#di#,#ci#,#vssn#,#ischkatt#,<include refid="sql.inv"></include>); ,#isacceptmobile#,#uduty#,#slevel#,#jointype#,HEX(AES_ENCRYPT(#birthday#, <include refid="sql.digest"></include>)),#snsid#,#di#,#ci#,#vssn#,#ischkatt#,#authPlatform#,<include refid="sql.inv"></include>);
<selectKey type="post" property="userno" resultClass="int">SELECT LAST_INSERT_ID()</selectKey> <selectKey type="post" property="userno" resultClass="int">SELECT LAST_INSERT_ID()</selectKey>
</insert> </insert>
@ -335,22 +335,23 @@
,userpno =case when #userpno# is not null then HEX(AES_ENCRYPT(#userpno#, <include refid="sql.digest"></include>)) else null end ,userpno =case when #userpno# is not null then HEX(AES_ENCRYPT(#userpno#, <include refid="sql.digest"></include>)) else null end
,bankname =case when #bankname# is not null then #bankname# else bankname end ,bankname =case when #bankname# is not null then #bankname# else bankname end
,bankno =case when #bankno# is not null then HEX(AES_ENCRYPT(#bankno#, <include refid="sql.digest"></include>)) else bankno end ,bankno =case when #bankno# is not null then HEX(AES_ENCRYPT(#bankno#, <include refid="sql.digest"></include>)) else bankno end
,post =case when #post# is not null then #post# else post end ,post =case when #post# is not null then #post# else post end
,address1 =case when #address1# is not null then #address1# else address1 end ,address1 =case when #address1# is not null then #address1# else address1 end
,address2 =case when #address2# is not null then #address2# else address2 end ,address2 =case when #address2# is not null then #address2# else address2 end
,introhtml =case when #introhtml# is not null then #introhtml# else introhtml end ,introhtml =case when #introhtml# is not null then #introhtml# else introhtml end
,isacceptmobile = #isacceptmobile# ,isacceptmobile = #isacceptmobile#
,uduty = #uduty# ,uduty = #uduty#
,slevel = #slevel# ,slevel = #slevel#
,jointype =case when #jointype# is not null then #jointype# else jointype end ,jointype =case when #jointype# is not null then #jointype# else jointype end
,isassignuser = #isassignuser# ,isassignuser = #isassignuser#
,birthday = case when #birthday# is not null then HEX(AES_ENCRYPT(#birthday#, <include refid="sql.digest"></include>)) else birthday end ,birthday = case when #birthday# is not null then HEX(AES_ENCRYPT(#birthday#, <include refid="sql.digest"></include>)) else birthday end
,kfcfyear =case when #kfcfyear# is not null then #kfcfyear# else kfcfyear end ,kfcfyear =case when #kfcfyear# is not null then #kfcfyear# else kfcfyear end
<isEqual property="savefrontbuy" compareValue="1"> <isEqual property="savefrontbuy" compareValue="1">
,isassignuser =#isassignuser#,kfcfyear =#kfcfyear#,edus=#edus# ,isassignuser =#isassignuser#,kfcfyear =#kfcfyear#,edus=#edus#
</isEqual> </isEqual>
,status =case when #status# &gt; 0 then #status# else status end ,status =case when #status# &gt; 0 then #status# else status end
,ischkatt = #ischkatt# ,ischkatt = #ischkatt#
,authPlatform = case when #authPlatform# &gt; 0 then #authPlatform# else authPlatform end
where userno=#userno# where userno=#userno#
</update> </update>
<update id="users.exitjoin" parameterClass="hashtable"> <update id="users.exitjoin" parameterClass="hashtable">

View File

@ -13,6 +13,7 @@ using Newtonsoft.Json;
using OkCert3Com; using OkCert3Com;
using XPayClientNet; using XPayClientNet;
using NP.Model.ENUM;
namespace NP.FO.Controllers namespace NP.FO.Controllers
{ {
@ -68,6 +69,7 @@ namespace NP.FO.Controllers
if (Url.IsLocalUrl(returnUrl)){return Redirect(returnUrl);} if (Url.IsLocalUrl(returnUrl)){return Redirect(returnUrl);}
else {return RedirectToAction(nameof(HomeController.Index), "Home");} else {return RedirectToAction(nameof(HomeController.Index), "Home");}
} }
[HttpPost]
public ActionResult Join(VMUser vm) public ActionResult Join(VMUser vm)
{ {
//if ("Y".Equals(GetConfig("usessl")) && !Request.IsSecureConnection) //if ("Y".Equals(GetConfig("usessl")) && !Request.IsSecureConnection)
@ -75,11 +77,12 @@ namespace NP.FO.Controllers
// return Redirect("https://" + Request.Url.Host + Request.Url.PathAndQuery); // return Redirect("https://" + Request.Url.Host + Request.Url.PathAndQuery);
//} //}
//else //else
//{ //{
if(vm.User == null) if(string.IsNullOrEmpty(vm.User.username) || string.IsNullOrEmpty(vm.User.ci) || string.IsNullOrEmpty(vm.User.di) || vm.User.authPlatform == AuthPlatform.None)
{ {
vm.User = new Users() { }; return Redirect("/Account/JoinIdVeri");
} }
ViewBag.JoinOK = false; ViewBag.JoinOK = false;
if (GetInt(Request["intval"]) == 1) if (GetInt(Request["intval"]) == 1)
{ {

View File

@ -1,4 +1,5 @@
@{ @using NP.Model.ENUM
@{
Layout = null; Layout = null;
var CP_CD = (ViewBag.result ?? "").Split(':')[0]; var CP_CD = (ViewBag.result ?? "").Split(':')[0];
var TX_SEQ_NO = (ViewBag.result ?? "").Split(':')[1]; var TX_SEQ_NO = (ViewBag.result ?? "").Split(':')[1];
@ -29,6 +30,7 @@
$(opener.document).find("#mform").find("#User_di").val("@(DI)"); $(opener.document).find("#mform").find("#User_di").val("@(DI)");
$(opener.document).find("#mform").find("#User_ci").val("@(CI)"); $(opener.document).find("#mform").find("#User_ci").val("@(CI)");
$(opener.document).find("#mform").find("#User_jointype").val(0); $(opener.document).find("#mform").find("#User_jointype").val(0);
$(opener.document).find("#mform").find("#User_authPlatform").val("@(AuthPlatform.IPIN.GetHashCode().GetHashCode())");
$(opener.document).find("#mform").attr("action", "/Account/Join"); $(opener.document).find("#mform").attr("action", "/Account/Join");
$(opener.document).find("#mform").submit(); $(opener.document).find("#mform").submit();
self.close(); self.close();

View File

@ -1,4 +1,5 @@
@{ @using NP.Model.ENUM
@{
Layout = null; Layout = null;
var CP_CD = (ViewBag.result ?? "").Split(':')[0]; var CP_CD = (ViewBag.result ?? "").Split(':')[0];
var TX_SEQ_NO = (ViewBag.result ?? "").Split(':')[1]; var TX_SEQ_NO = (ViewBag.result ?? "").Split(':')[1];
@ -31,6 +32,7 @@
$(opener.document).find("#mform").find("#User_ci").val("@(CI)"); $(opener.document).find("#mform").find("#User_ci").val("@(CI)");
$(opener.document).find("#mform").find("#intval2").val(1); $(opener.document).find("#mform").find("#intval2").val(1);
$(opener.document).find("#mform").find("#User_jointype").val(0); $(opener.document).find("#mform").find("#User_jointype").val(0);
$(opener.document).find("#mform").find("#User_authPlatform").val("@(AuthPlatform.Mobile.GetHashCode())");
$(opener.document).find("#mform").attr("action", "/Account/Join"); $(opener.document).find("#mform").attr("action", "/Account/Join");
$(opener.document).find("#mform").submit(); $(opener.document).find("#mform").submit();
self.close(); self.close();

View File

@ -1,4 +1,5 @@
@model NP.Model.VMUser @using NP.Model.ENUM
@model NP.Model.VMUser
@{ @{
var menus = (List<NP.Model.MenuPage>)ViewBag.Menus; var menus = (List<NP.Model.MenuPage>)ViewBag.Menus;
var em = new NP.Model.MenuPage(); var em = new NP.Model.MenuPage();
@ -49,6 +50,7 @@ else
@Html.HiddenFor(w => w.intval2) @Html.HiddenFor(w => w.intval2)
@*가입유형 0:일반회원가입,1:google,2:naver,3:카카오*@ @*가입유형 0:일반회원가입,1:google,2:naver,3:카카오*@
@Html.HiddenFor(w => w.User.jointype) @Html.HiddenFor(w => w.User.jointype)
@Html.HiddenFor(w => w.User.authPlatform)
@Html.HiddenFor(w => w.IsSaveOK) @Html.HiddenFor(w => w.IsSaveOK)
<input type="hidden" name="jointype" id="jointype" value="@(Model.User.jointype)" /> <input type="hidden" name="jointype" id="jointype" value="@(Model.User.jointype)" />
<input type="hidden" name="birthday" id="birthday" value="@(Model.User.birthday)" /> <input type="hidden" name="birthday" id="birthday" value="@(Model.User.birthday)" />
@ -57,11 +59,25 @@ else
<input type="hidden" name="vssn" id="vssn" value="@(Model.User.vssn)" /> <input type="hidden" name="vssn" id="vssn" value="@(Model.User.vssn)" />
<input type="hidden" name="userpno" id="userpno" /> <input type="hidden" name="userpno" id="userpno" />
<input type="hidden" name="intval" id="intval" value="0" /> <input type="hidden" name="intval" id="intval" value="0" />
<input type="hidden" name="authPlatform" id="authPlatform" value="@(Model.User.authPlatform.GetHashCode())" />
<div class="joinForm"> <div class="joinForm">
<ul> <ul>
<li> <li>
<p class="subDsc">※아래 기재사항은 필수 입니다 빈칸 없이 기재해주세요.</p> <p class="subDsc">※아래 기재사항은 필수 입니다 빈칸 없이 기재해주세요.</p>
</li> </li>
<li>
@if (Model.User.authPlatform == AuthPlatform.IPIN)
{
<p class="subDsc">※[i-PIN 인증] 으로 본인인증을 하였습니다. 학습 시 본인인증도 [i-PIN 인증]으로 본인인증을 진행합니다.</p>
}
else if (Model.User.authPlatform == AuthPlatform.Mobile)
{
<p class="subDsc">※[휴대폰 본인인증] 으로 본인인증을 하였습니다. 학습 시 본인인증도 [i-PIN 인증]으로 본인인증을 진행합니다.</p>
}
</li>
<li>
<p class="subDsc">※학습 본인인증 수단은 회원가입 후 회원정보수정에서 변경 가능합니다.</p>
</li>
<li><input type="text" id="username" name="username" placeholder="이름" value="@(Model.User.username)" @(!string.IsNullOrEmpty(Model.User.username) ? Html.Raw("readonly=\"\" style=\"background-color:#ddd;\"") : Html.Raw(""))></li> <li><input type="text" id="username" name="username" placeholder="이름" value="@(Model.User.username)" @(!string.IsNullOrEmpty(Model.User.username) ? Html.Raw("readonly=\"\" style=\"background-color:#ddd;\"") : Html.Raw(""))></li>
<li><input type="text" id="email" style="ime-mode:inactive" name="email" maxlength="50" placeholder="이메일"></li> <li><input type="text" id="email" style="ime-mode:inactive" name="email" maxlength="50" placeholder="이메일"></li>
<li class="joinId"> <li class="joinId">

View File

@ -15,6 +15,7 @@
@Html.HiddenFor(w=>w.User.ci) @Html.HiddenFor(w=>w.User.ci)
@Html.HiddenFor(w=>w.intval2) @Html.HiddenFor(w=>w.intval2)
@Html.HiddenFor(w=>w.User.jointype) @Html.HiddenFor(w=>w.User.jointype)
@Html.HiddenFor(w=>w.User.authPlatform)
</form> </form>
<div> <div>
<div class="jnsCont"> <div class="jnsCont">
@ -39,4 +40,4 @@
</div>*@ </div>*@
</div> </div>
@Html.Partial("./Partial/OkCert3", null, new ViewDataDictionary { }) @Html.Partial("./Partial/OkCert3", null, new ViewDataDictionary { })
<p class="subDsc mt20">본인 인증 시 제공되는 정보는 해당 인증기관에서 직접 수집하며, 인증 이외의 용도로 이용 또는 저장하지 않습니다.</p> <p class="subDsc mt20">본인 인증 시 제공되는 정보는 해당 인증기관에서 직접 수집하며, 인증 이외의 용도로 이용 또는 저장하지 않습니다.</p>

View File

@ -92,4 +92,23 @@ namespace NP.Model.ENUM
VocaSeq, VocaSeq,
StringList, StringList,
} }
/// <summary>
/// 인증플랫폼
/// </summary>
public enum AuthPlatform
{
/// <summary>
/// 없음
/// </summary>
None,
/// <summary>
/// I-PIN 인증
/// </summary>
IPIN,
/// <summary>
/// 핸드폰 본인인증
/// </summary>
Mobile
}
} }

View File

@ -1,7 +1,8 @@
using System; using NP.Model.ENUM;
using System;
using System.CodeDom; using System.CodeDom;
using System.Collections.Generic; using System.Collections.Generic;
using System.Text; using System.Text;
namespace NP.Model namespace NP.Model
{ {
[Serializable] [Serializable]
@ -252,6 +253,7 @@ namespace NP.Model
public String ci { get; set; } public String ci { get; set; }
public String vssn { get; set; } public String vssn { get; set; }
public int ischkatt { get; set; } public int ischkatt { get; set; }
public AuthPlatform authPlatform { get; set; }
} }
/// <summary> /// <summary>