(201105)학습독려 문자 추가(발송로직 변경 x), 고객사 회원 사이트 로그인시 오류 수정

This commit is contained in:
kdh0120 2020-11-05 02:07:44 +00:00
parent a57b127eb5
commit 6611b4f758
13 changed files with 102 additions and 34 deletions

View File

@ -44,15 +44,18 @@
</tr>
</thead>
<tbody class="data" id="tbody1">
@foreach (var item in Model.CMInnings)
@if(Model.CMInnings.Count() > 0)
{
<tr>
<td>@item.iseq @(item.istaste == 1 ? "(S)" : "")</td>
<td>@item.isonlinename</td>
<td class="link"><a href="#" onclick="reg(@item.cmino)">@item.ititle</a></td>
<td>@item.username</td>
<td>@item.udtymd</td>
</tr>
foreach (var item in Model.CMInnings)
{
<tr>
<td>@item.iseq @(item.istaste == 1 ? "(S)" : "")</td>
<td>@item.isonlinename</td>
<td class="link"><a href="#" onclick="reg(@item.cmino)">@item.ititle</a></td>
<td>@item.username</td>
<td>@item.udtymd</td>
</tr>
}
}
</tbody>
</table>

View File

@ -30,7 +30,7 @@
<td>@(i < 2 ? "진도율 80% 미만" : i == 2 || i == 3 ? "미응시자 대상" : i == 4 || i == 5 ? "미제출자 대상" : i == 6 ? "미참여자 대상" : i == 7 ? "교육일" : i == 8 ? "시험일" : "")</td>
<td class="dday">@Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "special", "fromto" }, { "start", 1 }, { "end", 10 }, { "name", "dday" }, { "selected", scdlect.dday } }) 일 남음</td>
<td class="dtime">매일 @Html.Partial("./Partial/Select", null, new ViewDataDictionary { { "special", "fromto" }, { "start", 0 }, { "end", 23 }, { "name", "dtime" }, { "selected", scdlect.dtime } }) 시</td>
<td class="talkemail"><label><input type="checkbox" class="istalk" @(scdlect.istalk == 1 ? "checked" : "") /> 알림톡</label>&nbsp;&nbsp;&nbsp;<label><input type="checkbox" class="isemail" @(scdlect.isemail == 1 ? "checked" : "") /> 이메일</label></td>
<td class="talkemail"><label><input type="checkbox" class="istalk" @(scdlect.istalk == 1 ? "checked" : "") /> 알림톡</label>&nbsp;&nbsp;&nbsp;<label><input type="checkbox" class="isemail" @(scdlect.isemail == 1 ? "checked" : "") /> 이메일</label>&nbsp;&nbsp;&nbsp;<label><input type="checkbox" class="issms" @(scdlect.issms == 1 ? "checked" : "") /> SMS</label></td>
<td class="isuse">@Html.Partial("./Partial/Radio", null, new ViewDataDictionary() { { "valuetext", "1:사용;0:미사용" }, { "checked", scdlect.isuse }, { "name", "isuse" + i } })</td>
</tr>
}
@ -90,7 +90,8 @@
return false;
}
sd += ";" + $(r).attr("data-no") + ":" + $(r).find("td.dday select").val() + ":" + $(r).find("td.dtime select").val() + ":" + ($(r).find("td.talkemail input.istalk").prop("checked") ? 1 : 0) + ":" +
($(r).find("td.talkemail input.isemail").prop("checked") ? 1 : 0) + ":" + $(r).find("td.isuse input:checked").val();
($(r).find("td.talkemail input.isemail").prop("checked") ? 1 : 0) + ":" + $(r).find("td.isuse input:checked").val() + ":" +
($(r).find("td.talkemail input.issms").prop("checked") ? 1 : 0);
});
if (isvalid && confirm("저장하시겠습니까?")) {
capp("/acommon/scdlectsave", { sd: sd.substr(1) }, "cbscdlectsave");

View File

@ -154,7 +154,7 @@ namespace NP.Base.Controllers
foreach (var s in sd.Split(';'))
{
var v = s.Split(':');
scd.Ds.Add(new SCDLect() { scdno = GetInt(v[0]), dday = GetInt(v[1]), dtime = GetInt(v[2]), istalk = GetInt(v[3]), isemail = GetInt(v[4]), isuse = GetInt(v[5]) });
scd.Ds.Add(new SCDLect() { scdno = GetInt(v[0]), dday = GetInt(v[1]), dtime = GetInt(v[2]), istalk = GetInt(v[3]), isemail = GetInt(v[4]), isuse = GetInt(v[5]), issms= GetInt(v[6]) });
}
return JsonOK(Dao.Save("lect.scdlect.save", scd));
}

View File

@ -1101,6 +1101,7 @@ create table scdlect (
,dtime tinyint not null
,istalk tinyint not null
,isemail tinyint not null
,issms tinyint not null
,isuse tinyint not null
,cdt datetime not null,cno bigint not NULL,udt datetime not null,uno bigint not NULL,uip varchar(50) not NULL
,primary key(scdno));
@ -1112,6 +1113,7 @@ create table scdlectlog (
,dtime tinyint not null
,istalk tinyint not null
,isemail tinyint not null
,issms tinyint not null
,isuse tinyint not null
,cdt datetime not null,cno bigint not NULL,udt datetime not null,uno bigint not NULL,uip varchar(50) not NULL);

View File

@ -255,8 +255,8 @@
,a.dpoint=b.dpoint
,a.tpoint=b.apoint+b.mpoint+b.fpoint+b.spoint+b.dpoint
where a.status=1 and a.ischanged=0
<isNotNull property="cmnos">and a.cmno in ($cmnos$)</isNotNull>
<isNotNull property="lectnos">and a.lectno in ($lectnos$)</isNotNull>
<isNotEmpty property="cmnos">and a.cmno in ($cmnos$)</isNotEmpty>
<isNotEmpty property="lectnos">and a.lectno in ($lectnos$)</isNotEmpty>
</update>
<select id="grade.nocompletecm" parameterClass="string" resultClass="cm">
select a.cmno, max(a.iscomplete)

View File

@ -239,31 +239,31 @@
where a.lectno=#lectno#
</update>
<select id="lect.scdlects" parameterClass="hashtable" resultClass="scdlect">
select a.scdno,a.dday,a.dtime,a.istalk,a.isemail,a.isuse
select a.scdno,a.dday,a.dtime,a.istalk,a.isemail,a.issms,a.isuse
from scdlect a
order by a.scdno
</select>
<update id="lect.scdlect.save" parameterClass="scdlect">
insert into scdlectlog (userno,scdno,dday,dtime,istalk,isemail,isuse,<include refid="sql.inc"></include>)
select #uno#,scdno,dday,dtime,istalk,isemail,isuse,<include refid="sql.inv"></include>
insert into scdlectlog (userno,scdno,dday,dtime,istalk,isemail,issms,isuse,<include refid="sql.inc"></include>)
select #uno#,scdno,dday,dtime,istalk,isemail,issms,isuse,<include refid="sql.inv"></include>
from scdlect;
update scdlect a
inner join (
<iterate property="Ds" open="" conjunction="union all" close=""> select #Ds[].scdno# scdno,#Ds[].dday# dday,#Ds[].dtime# dtime,#Ds[].istalk# istalk,#Ds[].isemail# isemail,#Ds[].isuse# isuse </iterate>
<iterate property="Ds" open="" conjunction="union all" close=""> select #Ds[].scdno# scdno,#Ds[].dday# dday,#Ds[].dtime# dtime,#Ds[].istalk# istalk,#Ds[].isemail# isemail,#Ds[].issms# issms,#Ds[].isuse# isuse </iterate>
) b on b.scdno=a.scdno
set a.dday=b.dday,a.dtime=b.dtime,a.istalk=b.istalk,a.isemail=b.isemail,a.isuse=b.isuse,a.udt=<include refid="sql.now"></include>,a.uno=#uno#,a.uip=#uip#;
set a.dday=b.dday,a.dtime=b.dtime,a.istalk=b.istalk,a.isemail=b.isemail,a.issms=b.issms,a.isuse=b.isuse,a.udt=<include refid="sql.now"></include>,a.uno=#uno#,a.uip=#uip#;
insert into scdlect (scdno,dday,dtime,istalk,isemail,isuse,<include refid="sql.inc"></include>)
select a.scdno,a.dday,a.dtime,a.istalk,a.isemail,a.isuse,<include refid="sql.inv"></include>
insert into scdlect (scdno,dday,dtime,istalk,isemail,issms,isuse,<include refid="sql.inc"></include>)
select a.scdno,a.dday,a.dtime,a.istalk,a.isemail,a.issms,a.isuse,<include refid="sql.inv"></include>
from (
<iterate property="Ds" open="" conjunction="union all" close=""> select #Ds[].scdno# scdno,#Ds[].dday# dday,#Ds[].dtime# dtime,#Ds[].istalk# istalk,#Ds[].isemail# isemail,#Ds[].isuse# isuse </iterate>
<iterate property="Ds" open="" conjunction="union all" close=""> select #Ds[].scdno# scdno,#Ds[].dday# dday,#Ds[].dtime# dtime,#Ds[].istalk# istalk,#Ds[].isemail# isemail,#Ds[].issms# issms,#Ds[].isuse# isuse </iterate>
) a
left outer join scdlect b on b.scdno=a.scdno
where b.scdno is null
</update>
<sql id="sql.encourages" parameterClass="hashtable" resultClass="scdlect">
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,null stime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char) email,CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char) mobile
@ -274,7 +274,7 @@
inner join users d on d.userno=c.userno and d.status=1
where a.scdno &lt; 3 and a.isuse=1 and a.dtime=#dtime#
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,null stime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char) email,CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char) mobile
@ -287,7 +287,7 @@
left outer join lectex f on f.lectno=c.lectno and f.exno=e.exno
where a.scdno &gt; 2 and a.scdno &lt; 5 and a.isuse=1 and a.dtime=#dtime# and f.lectno is null
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,null stime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char) email,CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char) mobile
@ -300,7 +300,7 @@
left outer join lectsd f on f.lectno=c.lectno and f.sdno=e.sdno
where a.scdno=5 and a.isuse=1 and a.dtime=#dtime# and f.lectno is null
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,null stime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char) email,CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char) mobile
@ -313,7 +313,7 @@
left outer join lectsd f on f.lectno=c.lectno and f.sdno=e.sdno
where a.scdno=6 and a.isuse=1 and a.dtime=#dtime# and f.lectno is null
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,null stime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char) email,CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char) mobile
@ -326,7 +326,7 @@
left outer join lectrs f on f.lectno=c.lectno and f.rsno=e.rsno
where a.scdno=7 and a.isuse=1 and a.dtime=#dtime# and f.lectno is null
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.cmno cmexno,b.cname,b.sstime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char),CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char)
@ -338,7 +338,7 @@
inner join users d on d.userno=c.userno and d.status=1
where a.scdno=8 and a.isuse=1 and a.dtime=#dtime#
union all
select a.scdno,a.dday,a.istalk,a.isemail
select a.scdno,a.dday,a.istalk,a.isemail,a.issms
,d.userno,d.username
,b.exno cmexno,b.exname cname,b.estime
,CAST(AES_DECRYPT(UNHEX(d.email), <include refid="sql.digest"></include>) AS char),CAST(AES_DECRYPT(UNHEX(d.mobile), <include refid="sql.digest"></include>) AS char)

View File

@ -69,7 +69,7 @@ namespace NP.FO.Controllers
public ActionResult Play(VMCRoom vm)
{
var sd = Request.Url.Host.Split('.')[0];
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "kfcf.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "ynicte.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
{
ViewBag.SiteTitle = Dao.Get<Assign>("users.assignsite", new System.Collections.Hashtable() { { "subdomain", sd } }).First().asname;
}

View File

@ -14,7 +14,7 @@ namespace NP.FO.Controllers
{
//서브도메인 확인 하여 고객사 로그인/마이페이지로 이동
var sd = Request.Url.Host.Split('.')[0];
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "kfcf.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "ynicte.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
{
if (SUserInfo.UserNo < 1)
{
@ -41,7 +41,7 @@ namespace NP.FO.Controllers
{
//서브도메인 확인 하여 고객사 로그인/마이페이지로 이동
var sd = Request.Url.Host.Split('.')[0];
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "kfcf.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "ynicte.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
{
if (SUserInfo.UserNo < 1)
{

View File

@ -18,7 +18,7 @@ namespace NP.FO.Controllers
ViewBag.Banners = GetBANNER;
ViewBag.ismain = false;
var sd = Request.Url.Host.Split('.')[0];
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "kfcf.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
if (GetConfig("isdevtest") != "1" && Request.Url.Host != "222.122.63.91" && Request.Url.Host != "ynicte.nptc.kr" && Request.Url.Host != "phd.nptc.kr" && MainSubDomain.ToUpper() != sd.ToUpper())
{
ViewBag.Assign = Dao.Get<Assign>("users.assignsite", new System.Collections.Hashtable() { { "subdomain", sd } }).First();
ViewBag.Files = (new NP.Model.VMBase()).Files;
@ -36,7 +36,7 @@ namespace NP.FO.Controllers
//신청중,수강중,나의할일,나의알림
vm.Datas = Dao.Get<Data>("lect.mydata", SUserInfo.UserNo);
var sd = Request.Url.Host.Split('.')[0];
if (GetConfig("isdevtest") != "" && Request.Url.Host != "kfcf.nptc.kr" && Request.Url.Host != "222.122.63.91" && MainSubDomain.ToUpper() != sd.ToUpper())
if (GetConfig("isdevtest") != "" && Request.Url.Host != "ynicte.nptc.kr" && Request.Url.Host != "222.122.63.91" && MainSubDomain.ToUpper() != sd.ToUpper())
{
vm.Boards = Dao.Get<Board>("board.bs.forassign", new System.Collections.Hashtable() { { "subdomain", sd }, { "limit", 2 },{ "isdefault",3} });
}

View File

@ -243,6 +243,10 @@
<Content Include="img\academy\aca_flow03.png" />
<Content Include="img\academy\aca_flow04.png" />
<Content Include="img\academy\aca_flow05.png" />
<Content Include="img\academy\edu_intro.jpg" />
<Content Include="img\academy\edu_intro_m.jpg" />
<Content Include="img\academy\edu_online.jpg" />
<Content Include="img\academy\edu_online_m.jpg" />
<Content Include="img\book\book_list_btn01.png" />
<Content Include="img\book\book_list_btn02.png" />
<Content Include="img\book\thumb_arrow_next.png" />
@ -269,9 +273,16 @@
<Content Include="img\certificate\cer_print_0202.png" />
<Content Include="img\certificate\cer_print_chrome.png" />
<Content Include="img\certificate\cer_print_ie.png" />
<Content Include="img\certificate\print.jpg" />
<Content Include="img\common\apply_more.png" />
<Content Include="img\common\breadcrumb_arrow.png" />
<Content Include="img\common\breadcrumb_home.png" />
<Content Include="img\common\footer_cer.png" />
<Content Include="img\common\footer_family01.jpg" />
<Content Include="img\common\footer_family02.jpg" />
<Content Include="img\common\footer_family03.jpg" />
<Content Include="img\common\footer_family04.jpg" />
<Content Include="img\common\footer_family_arrow.png" />
<Content Include="img\common\footer_ico01.png" />
<Content Include="img\common\footer_ico02.png" />
<Content Include="img\common\footer_ico03.png" />
@ -281,25 +292,69 @@
<Content Include="img\common\gnb_lecture.png" />
<Content Include="img\common\gnb_list_arrow.png" />
<Content Include="img\common\gnb_login.png" />
<Content Include="img\common\gnb_logo.jpg" />
<Content Include="img\common\gnb_logo.png" />
<Content Include="img\common\gnb_mobile_dot.png" />
<Content Include="img\common\gnb_mypage.png" />
<Content Include="img\common\gnb_top_left_insta.png" />
<Content Include="img\common\gnb_top_left_kakao.png" />
<Content Include="img\common\gnb_top_right_eng.jpg" />
<Content Include="img\common\gnb_top_right_join.jpg" />
<Content Include="img\common\gnb_top_right_login.jpg" />
<Content Include="img\common\gnb_updown_m.png" />
<Content Include="img\common\gnb_logo.gif" />
<Content Include="img\common\history_ico01.png" />
<Content Include="img\common\history_ico02.png" />
<Content Include="img\common\history_ico03.png" />
<Content Include="img\common\history_ico04.png" />
<Content Include="img\common\history_ico05.png" />
<Content Include="img\common\ico_down.png" />
<Content Include="img\common\into_ico01.png" />
<Content Include="img\common\into_ico02.png" />
<Content Include="img\common\into_ico03.png" />
<Content Include="img\common\into_ico04.png" />
<Content Include="img\common\into_ico05.png" />
<Content Include="img\common\join_select01.png" />
<Content Include="img\common\join_select02.png" />
<Content Include="img\common\join_select03.png" />
<Content Include="img\common\join_sns01.jpg" />
<Content Include="img\common\join_sns02.jpg" />
<Content Include="img\common\join_sns03.jpg" />
<Content Include="img\common\join_step01.png" />
<Content Include="img\common\join_step01_on.png" />
<Content Include="img\common\join_step02.png" />
<Content Include="img\common\join_step02_on.png" />
<Content Include="img\common\join_step03.png" />
<Content Include="img\common\join_step03_on.png" />
<Content Include="img\common\link_arrow.png" />
<Content Include="img\common\login_sns01.png" />
<Content Include="img\common\login_sns02.png" />
<Content Include="img\common\login_sns03.png" />
<Content Include="img\common\mobile_arrow.png" />
<Content Include="img\common\mobile_back.png" />
<Content Include="img\common\mobile_gnb_loginok.png" />
<Content Include="img\common\mobile_gnb_loginok_ico01.png" />
<Content Include="img\common\mobile_gnb_loginok_ico02.png" />
<Content Include="img\common\mobile_gnb_loginok_ico03.png" />
<Content Include="img\common\mobile_gnb_loginok_ico04.png" />
<Content Include="img\common\mobile_link.png" />
<Content Include="img\common\mobile_top.png" />
<Content Include="img\common\mobile_updown.png" />
<Content Include="img\common\mypage_close.png" />
<Content Include="img\common\paging_first.png" />
<Content Include="img\common\paging_last.png" />
<Content Include="img\common\paging_next.png" />
<Content Include="img\common\paging_prev.png" />
<Content Include="img\common\pop_close.png" />
<Content Include="img\common\refund_ico01.png" />
<Content Include="img\common\refund_ico02.png" />
<Content Include="img\common\select_arrow.png" />
<Content Include="img\common\select_arrow_on.png" />
<Content Include="img\common\subTitle_bg.jpg" />
<Content Include="img\common\subTitle_bg01.jpg" />
<Content Include="img\common\subTitle_bg04.jpg" />
<Content Include="img\common\subTitle_bg05.jpg" />
<Content Include="img\common\subTitle_bg06.jpg" />
<Content Include="img\common\subTitle_ico01.png" />
<Content Include="img\common\subTitle_ico02.png" />
<Content Include="img\common\subTitle_ico03.png" />
@ -378,6 +433,7 @@
<Content Include="img\mypage\basket_desc.png" />
<Content Include="img\mypage\basket_plus.png" />
<Content Include="img\mypage\basket_result.png" />
<Content Include="img\mypage\join_intro.png" />
<Content Include="img\mypage\lecture_attend_license.jpg" />
<Content Include="img\mypage\lecture_attend_qrcode.jpg" />
<Content Include="img\mypage\left_menu01.png" />
@ -390,6 +446,7 @@
<Content Include="img\mypage\left_menu08.png" />
<Content Include="img\mypage\left_menu09.png" />
<Content Include="img\mypage\left_menu10.png" />
<Content Include="img\mypage\left_menu11.png" />
<Content Include="img\mypage\mobile_gnb_loginok_ico01_bk.png" />
<Content Include="img\mypage\mobile_gnb_loginok_ico02_bk.png" />
<Content Include="img\mypage\mobile_gnb_loginok_ico03_bk.png" />
@ -398,6 +455,7 @@
<Content Include="img\mypage\notice_close.png" />
<Content Include="img\mypage\popup_profile_sample.jpg" />
<Content Include="img\mypage\popup_sign.jpg" />
<Content Include="img\mypage\privacy_img.jpg" />
<Content Include="img\mypage\title_arrow.png" />
<Content Include="img\mypage\title_arrow_on.png" />
<Content Include="img\offline\consign_list_dot.png" />

View File

@ -121,7 +121,7 @@
</table>
</dd>
</dl>
<p style="color:red;">※ 수료기준은 각 항목의 백분율 기준으로 표기합니다.</p>
@section scriptsHeader{
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 482 KiB

View File

@ -2332,6 +2332,10 @@ namespace NP.Model
/// 메일발송여부
/// </summary>
public int isemail {get;set;}
/// <summary>
/// sms발송여부
/// </summary>
public int issms { get; set; }
public IList<SCDLect> Ds { get; set; }
public int userno { get; set; }