<기능개선>
1. PMS NO :
2. (주요)작업내용 : 학습독려 알림톡 발송 오류 처리
Base/Controller/BasePartialController.cs
BO/Controllers/AccountController.cs
This commit is contained in:
parent
1b31ac3228
commit
c03fc2ff3f
|
|
@ -319,7 +319,12 @@ namespace NP.BO.Controllers
|
||||||
if ("nptech1234".Equals(sss))
|
if ("nptech1234".Equals(sss))
|
||||||
{
|
{
|
||||||
//시간불규칙 대비해야 함
|
//시간불규칙 대비해야 함
|
||||||
var lects = Dao.Get<SCDLect>("lect.encourages", new Hashtable() { { "dtime", DateTime.Now.Minute > 30 ? (DateTime.Now.Hour + 1) : DateTime.Now.Hour }, { "uno", SUserInfo.UserNo }, { "uip", GetUserIP() } });
|
Hashtable hsData = new Hashtable();
|
||||||
|
hsData.Add("dtime", DateTime.Now.Minute > 30 ? (DateTime.Now.Hour + 1) : DateTime.Now.Hour);
|
||||||
|
hsData.Add("uno", SUserInfo.UserNo);
|
||||||
|
hsData.Add("uip", GetUserIP());
|
||||||
|
|
||||||
|
var lects = Dao.Get<SCDLect>("lect.encourages", hsData);
|
||||||
//1~7. 온라인/혼합 출석 80% 미만, 진행평가, 최종평가, 과제, 토론, 강의평가 미참여
|
//1~7. 온라인/혼합 출석 80% 미만, 진행평가, 최종평가, 과제, 토론, 강의평가 미참여
|
||||||
{
|
{
|
||||||
foreach (var u in lects.Where(w => w.scdno < 8 && w.istalk == 1))
|
foreach (var u in lects.Where(w => w.scdno < 8 && w.istalk == 1))
|
||||||
|
|
@ -338,6 +343,7 @@ namespace NP.BO.Controllers
|
||||||
u.username, u.cname, u.dday)
|
u.username, u.cname, u.dday)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
||||||
{
|
{
|
||||||
SaveTalk(m.Users.Where(w => w.isok == 1).ToList(), "encourage001");
|
SaveTalk(m.Users.Where(w => w.isok == 1).ToList(), "encourage001");
|
||||||
|
|
@ -358,6 +364,7 @@ namespace NP.BO.Controllers
|
||||||
u.username, u.cname, u.dday)
|
u.username, u.cname, u.dday)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
||||||
{
|
{
|
||||||
SaveSmsMulti(m.Users.Where(w => w.isok == 1).ToList());
|
SaveSmsMulti(m.Users.Where(w => w.isok == 1).ToList());
|
||||||
|
|
@ -377,6 +384,7 @@ namespace NP.BO.Controllers
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
//8. 오프라인 출석
|
//8. 오프라인 출석
|
||||||
{
|
{
|
||||||
foreach (var u in lects.Where(w => w.scdno == 8 && w.istalk == 1))
|
foreach (var u in lects.Where(w => w.scdno == 8 && w.istalk == 1))
|
||||||
|
|
@ -411,6 +419,7 @@ namespace NP.BO.Controllers
|
||||||
u.username, u.cname, u.stime.ToString("yyyy-MM-dd"), u.studyplace)
|
u.username, u.cname, u.stime.ToString("yyyy-MM-dd"), u.studyplace)
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
if (m.Users.Where(w => w.isok == 1).Count() > 0)
|
||||||
{
|
{
|
||||||
SaveSmsMulti(m.Users.Where(w => w.isok == 1).ToList());
|
SaveSmsMulti(m.Users.Where(w => w.isok == 1).ToList());
|
||||||
|
|
|
||||||
|
|
@ -1391,34 +1391,87 @@ namespace NP.Base
|
||||||
/// <param name="tmplkey"></param>
|
/// <param name="tmplkey"></param>
|
||||||
public void SaveTalk(IList<NP.Model.MemoUser> Users, String tmplkey)
|
public void SaveTalk(IList<NP.Model.MemoUser> Users, String tmplkey)
|
||||||
{
|
{
|
||||||
Memo m = new Memo() { Users = Users ,uno = SUserInfo.UserNo,uip = GetUserIP()};
|
Memo m = new Memo(); /*{ Users = Users ,uno = SUserInfo.UserNo,uip = GetUserIP()};*/
|
||||||
|
m.Users = Users;
|
||||||
|
m.uno = SUserInfo.UserNo;
|
||||||
|
m.uip = GetUserIP();
|
||||||
|
|
||||||
var us = m.Users.Where(w => w.isok == 1).ToList();
|
var us = m.Users.Where(w => w.isok == 1).ToList();
|
||||||
|
|
||||||
if (us.Count() > 0)
|
if (us.Count() > 0)
|
||||||
{
|
{
|
||||||
m.mcontents = us.FirstOrDefault().mcontents;
|
//20220824 건별로 등록한다.
|
||||||
Dao.Insert("common.sms.in", m);
|
foreach (MemoUser talkUser in us)
|
||||||
System.Text.StringBuilder sb = new System.Text.StringBuilder("");
|
|
||||||
for (var i = 0; i < us.Count(); i++)
|
|
||||||
{
|
{
|
||||||
|
Memo mTmp = m;
|
||||||
|
mTmp.Users.Clear();
|
||||||
|
mTmp.Users.Add(talkUser);
|
||||||
|
mTmp.mcontents = us.FirstOrDefault().mcontents;
|
||||||
|
Dao.Insert("common.sms.in", mTmp);
|
||||||
|
|
||||||
|
//common.smsuser.in 쿼리가 array형태이기에 List변수를 선언함
|
||||||
|
List<MemoUser> talkUserTmp = new List<MemoUser>();
|
||||||
|
talkUserTmp.Add(talkUser);
|
||||||
|
talkUserTmp[0].mno = m.mno;
|
||||||
|
System.Text.StringBuilder sb = new System.Text.StringBuilder("");
|
||||||
var cbnum = GetConfig("mtssendnum");
|
var cbnum = GetConfig("mtssendnum");
|
||||||
var talkkey = GetConfig("mastersms");
|
var talkkey = GetConfig("mastersms");
|
||||||
var ismms = System.Text.Encoding.Default.GetBytes(us[i].mcontents).Length > 90;
|
var ismms = System.Text.Encoding.Default.GetBytes(talkUserTmp[0].mcontents).Length > 90;
|
||||||
|
|
||||||
|
sb.Append(string.Format(",('{0}','{1}','{2}','{3}','{4}','{5}',now(),5,'1','{6}','{7}')"
|
||||||
|
, talkkey, tmplkey, cbnum, talkUserTmp[0].mobile.Replace(" ", "").Replace("-", ""), talkUserTmp[0].title
|
||||||
|
, talkUserTmp[0].mcontents, (ismms ? "L" : "S"), talkUserTmp[0].mcontents));
|
||||||
|
|
||||||
for (var j = 0; j < us.Count(); j++)
|
|
||||||
{
|
|
||||||
sb.Append(string.Format(",('{0}','{1}','{2}','{3}','{4}','{5}',now(),5,'1','{6}','{7}')", talkkey, tmplkey, cbnum, us[i].mobile.Replace(" ","").Replace("-",""), us[i].title, us[i].mcontents, (ismms ? "L" : "S"), us[i].mcontents));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
var strConn = GetConfig("mtsdb");
|
var strConn = GetConfig("mtsdb");
|
||||||
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
{
|
{
|
||||||
conn.Open();
|
conn.Open();
|
||||||
var cmd = new MySql.Data.MySqlClient.MySqlCommand("insert into mts_atalk_msg(tran_sender_key,tran_tmpl_cd,tran_callback,tran_phone,tran_subject,tran_msg,tran_date,tran_type,tran_status,tran_replace_type,tran_replace_msg) values" + sb.ToString().Substring(1), conn);
|
string strQeury = "insert into mts_atalk_msg" +
|
||||||
|
" (tran_sender_key,tran_tmpl_cd,tran_callback,tran_phone,tran_subject,tran_msg,tran_date,tran_type,tran_status,tran_replace_type,tran_replace_msg)" +
|
||||||
|
" values " +
|
||||||
|
sb.ToString().Substring(1);
|
||||||
|
var cmd = new MySql.Data.MySqlClient.MySqlCommand(strQeury, conn);
|
||||||
cmd.ExecuteNonQuery();
|
cmd.ExecuteNonQuery();
|
||||||
}
|
}
|
||||||
Dao.Save("common.smsuser.in", m);
|
Dao.Save("common.smsuser.in", mTmp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region 20220824 구버전
|
||||||
|
//if (us.Count() > 0)
|
||||||
|
//{
|
||||||
|
// m.mcontents = us.FirstOrDefault().mcontents;
|
||||||
|
// Dao.Insert("common.sms.in", m);
|
||||||
|
|
||||||
|
// System.Text.StringBuilder sb = new System.Text.StringBuilder("");
|
||||||
|
// for (var i = 0; i < us.Count(); i++)
|
||||||
|
// {
|
||||||
|
// var cbnum = GetConfig("mtssendnum");
|
||||||
|
// var talkkey = GetConfig("mastersms");
|
||||||
|
// var ismms = System.Text.Encoding.Default.GetBytes(us[i].mcontents).Length > 90;
|
||||||
|
|
||||||
|
// for (var j = 0; j < us.Count(); j++)
|
||||||
|
// {
|
||||||
|
// sb.Append(string.Format(",('{0}','{1}','{2}','{3}','{4}','{5}',now(),5,'1','{6}','{7}')"
|
||||||
|
// , talkkey, tmplkey, cbnum, us[i].mobile.Replace(" ", "").Replace("-", ""), us[i].title
|
||||||
|
// , us[i].mcontents, (ismms ? "L" : "S"), us[i].mcontents));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// var strConn = GetConfig("mtsdb");
|
||||||
|
// using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
|
// {
|
||||||
|
// conn.Open();
|
||||||
|
// string strQeury = "insert into mts_atalk_msg" +
|
||||||
|
// " (tran_sender_key,tran_tmpl_cd,tran_callback,tran_phone,tran_subject,tran_msg,tran_date,tran_type,tran_status,tran_replace_type,tran_replace_msg)" +
|
||||||
|
// " values " +
|
||||||
|
// sb.ToString().Substring(1);
|
||||||
|
// var cmd = new MySql.Data.MySqlClient.MySqlCommand(strQeury, conn);
|
||||||
|
// cmd.ExecuteNonQuery();
|
||||||
|
// }
|
||||||
|
// Dao.Save("common.smsuser.in", m);
|
||||||
|
//}
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// sms,mms 발송
|
/// sms,mms 발송
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|
@ -1432,51 +1485,109 @@ namespace NP.Base
|
||||||
var us = m.Users.Where(w => w.isok == 1).ToList();
|
var us = m.Users.Where(w => w.isok == 1).ToList();
|
||||||
if (us.Count() > 0)
|
if (us.Count() > 0)
|
||||||
{
|
{
|
||||||
m.uno = SUserInfo.UserNo;
|
//20220824 건별 발송
|
||||||
m.uip = GetUserIP();
|
foreach (MemoUser talkUser in us)
|
||||||
m.mcontents = us.FirstOrDefault().mcontents;
|
|
||||||
Dao.Insert("common.sms.in", m);
|
|
||||||
System.Text.StringBuilder sbm = new System.Text.StringBuilder("");
|
|
||||||
System.Text.StringBuilder sbs = new System.Text.StringBuilder("");
|
|
||||||
var cbnum = GetConfig("mtssendnum");
|
|
||||||
for (var i = 0; i < us.Count(); i++)
|
|
||||||
{
|
{
|
||||||
us[i].ismms = System.Text.Encoding.Default.GetBytes(us[i].mcontents).Length > 90;
|
Memo mTmp = m;
|
||||||
var phn = us[i].mobile.Replace("-", "");
|
mTmp.Users.Clear();
|
||||||
|
mTmp.Users.Add(talkUser);
|
||||||
|
|
||||||
if (us[i].ismms)
|
mTmp.uno = SUserInfo.UserNo;
|
||||||
|
mTmp.uip = GetUserIP();
|
||||||
|
mTmp.mcontents = us.FirstOrDefault().mcontents;
|
||||||
|
Dao.Insert("common.sms.in", m);
|
||||||
|
|
||||||
|
List<MemoUser> talkUserTmp = new List<MemoUser>();
|
||||||
|
talkUserTmp.Add(talkUser);
|
||||||
|
talkUserTmp[0].mno = m.mno;
|
||||||
|
|
||||||
|
//System.Text.StringBuilder sbm = new System.Text.StringBuilder("");
|
||||||
|
//System.Text.StringBuilder sbs = new System.Text.StringBuilder("");
|
||||||
|
var cbnum = GetConfig("mtssendnum");
|
||||||
|
|
||||||
|
talkUserTmp[0].ismms = System.Text.Encoding.Default.GetBytes(talkUserTmp[0].mcontents).Length > 90;
|
||||||
|
var phn = talkUserTmp[0].mobile.Replace("-", "");
|
||||||
|
|
||||||
|
string strQuery = "";
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
sb.Append(string.Format(",('{0}','{1}','{2}', now(),{5},'{3}','{4}')", phn, cbnum, talkUserTmp[0].mcontents, m.mno, talkUserTmp[0].userno, talkUserTmp[0].ismms ? 4 : 0));
|
||||||
|
|
||||||
|
var strConn = GetConfig("mtsdb");
|
||||||
|
|
||||||
|
if (talkUserTmp[0].ismms == false)
|
||||||
|
{//sms일경우
|
||||||
|
strQuery = "insert into mts_sms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sb.ToString().Substring(1);
|
||||||
|
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
{
|
{
|
||||||
sbm.Append(string.Format(",('{0}','{1}','{2}', now(),{5},'{3}','{4}')", phn, cbnum, us[i].mcontents, m.mno, us[i].userno, us[i].ismms ? 4 : 0));
|
conn.Open();
|
||||||
|
|
||||||
|
var cmd = new MySql.Data.MySqlClient.MySqlCommand(strQuery, conn);
|
||||||
|
cmd.ExecuteNonQuery();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{ //mms일경우
|
||||||
sbs.Append(string.Format(",('{0}','{1}','{2}', now(),{5},'{3}','{4}')", phn, cbnum, us[i].mcontents, m.mno, us[i].userno, us[i].ismms ? 4 : 0));
|
strQuery = "insert into mts_mms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sb.ToString().Substring(1);
|
||||||
}
|
|
||||||
}
|
|
||||||
var strConn = GetConfig("mtsdb");
|
|
||||||
//sms일경우
|
|
||||||
if(us.Where(w=>!w.ismms).Count()> 0)
|
|
||||||
{
|
|
||||||
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
{
|
{
|
||||||
conn.Open();
|
conn.Open();
|
||||||
var cmd = new MySql.Data.MySqlClient.MySqlCommand("insert into mts_sms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sbs.ToString().Substring(1), conn);
|
var cmd = new MySql.Data.MySqlClient.MySqlCommand(strQuery, conn);
|
||||||
cmd.ExecuteNonQuery();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
//mms일경우
|
|
||||||
if(us.Where(w=>w.ismms).Count() > 0)
|
|
||||||
{
|
|
||||||
using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
|
||||||
{
|
|
||||||
conn.Open();
|
|
||||||
var cmd = new MySql.Data.MySqlClient.MySqlCommand("insert into mts_mms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sbm.ToString().Substring(1), conn);
|
|
||||||
cmd.ExecuteNonQuery();
|
cmd.ExecuteNonQuery();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
return JsonOK(Dao.Save("common.smsuser.in", m));
|
Dao.Save("common.smsuser.in", mTmp);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#region 20220824 건별발송 변경전
|
||||||
|
//m.uno = SUserInfo.UserNo;
|
||||||
|
//m.uip = GetUserIP();
|
||||||
|
//m.mcontents = us.FirstOrDefault().mcontents;
|
||||||
|
//Dao.Insert("common.sms.in", m);
|
||||||
|
//System.Text.StringBuilder sbm = new System.Text.StringBuilder("");
|
||||||
|
//System.Text.StringBuilder sbs = new System.Text.StringBuilder("");
|
||||||
|
//var cbnum = GetConfig("mtssendnum");
|
||||||
|
//for (var i = 0; i < us.Count(); i++)
|
||||||
|
//{
|
||||||
|
// us[i].ismms = System.Text.Encoding.Default.GetBytes(us[i].mcontents).Length > 90;
|
||||||
|
// var phn = us[i].mobile.Replace("-", "");
|
||||||
|
|
||||||
|
// if (us[i].ismms)
|
||||||
|
// {
|
||||||
|
// sbm.Append(string.Format(",('{0}','{1}','{2}', now(),{5},'{3}','{4}')", phn, cbnum, us[i].mcontents, m.mno, us[i].userno, us[i].ismms ? 4 : 0));
|
||||||
|
// }
|
||||||
|
// else
|
||||||
|
// {
|
||||||
|
// sbs.Append(string.Format(",('{0}','{1}','{2}', now(),{5},'{3}','{4}')", phn, cbnum, us[i].mcontents, m.mno, us[i].userno, us[i].ismms ? 4 : 0));
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
|
||||||
|
//var strConn = GetConfig("mtsdb");
|
||||||
|
////sms일경우
|
||||||
|
//if(us.Where(w=>!w.ismms).Count()> 0)
|
||||||
|
//{
|
||||||
|
// using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
|
// {
|
||||||
|
// conn.Open();
|
||||||
|
// var cmd = new MySql.Data.MySqlClient.MySqlCommand("insert into mts_sms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sbs.ToString().Substring(1), conn);
|
||||||
|
// cmd.ExecuteNonQuery();
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
////mms일경우
|
||||||
|
//if(us.Where(w=>w.ismms).Count() > 0)
|
||||||
|
//{
|
||||||
|
// using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn))
|
||||||
|
// {
|
||||||
|
// conn.Open();
|
||||||
|
// var cmd = new MySql.Data.MySqlClient.MySqlCommand("insert into mts_mms_msg(tran_phone,tran_callback,tran_msg,tran_date,tran_type,tran_etc1,tran_etc2) values" + sbm.ToString().Substring(1), conn);
|
||||||
|
// cmd.ExecuteNonQuery();
|
||||||
|
// }
|
||||||
|
//}
|
||||||
|
//return JsonOK(Dao.Save("common.smsuser.in", m));
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
return JsonOK(0);
|
return JsonOK(0);
|
||||||
}
|
}
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue