diff --git a/BO/Views/cc/talks.cshtml b/BO/Views/cc/talks.cshtml index 1a5c70b..d4d3d0f 100644 --- a/BO/Views/cc/talks.cshtml +++ b/BO/Views/cc/talks.cshtml @@ -10,7 +10,7 @@ No 메시지 내용 - 발송인원(알림톡/친구톡/SMS/LMS/MMS/실패) + 발송인원@*(알림톡/친구톡/SMS/LMS/MMS/실패)*@ 발송인 발송일 @@ -21,16 +21,18 @@ @item.rnorvt @item.mcontents - + - @string.Format("{0}({1}/{2}/{3}/{4}/{5}/{6})" + @*@string.Format("{0}({1}/{2}/{3}/{4}/{5}/{6})"*@ + @string.Format("{0}" , item.ccount.ToString("#,0") -, item.ACount.ToString("#,0") -, item.FTCount.ToString("#,0") -, item.SCount.ToString("#,0") -, item.LCount.ToString("#,0") -, item.MCount.ToString("#,0") -, item.ECount.ToString("#,0")) +//, item.ACount.ToString("#,0") +//, item.FTCount.ToString("#,0") +//, item.SCount.ToString("#,0") +//, item.LCount.ToString("#,0") +//, item.MCount.ToString("#,0") +//, item.ECount.ToString("#,0") +) @item.cnoname @@ -55,11 +57,11 @@ No 소속 - 권한 + @*권한*@ 이름 핸드폰번호 - 상태 전송방식 + @*상태*@ @@ -112,7 +114,8 @@ $("#tbody2 tr").remove(); if (capResult.code == 1000) { $.each(capResult.obj, function (i, d) { - $("#tbody2").append("" + d.rnorvt + "" + d.asname + "" + d.usertypestr + "" + d.username + "" + d.mobile + "" + d.smstypename + "" + d.isokname + ""); + //$("#tbody2").append("" + d.rnorvt + "" + d.asname + "" + d.usertypestr + "" + d.username + "" + d.mobile + "" + d.smstypename + "" + d.isokname + ""); + $("#tbody2").append("" + d.rnorvt + "" + d.asname + "" + d.username + "" + d.mobile + "" + d.smstypename + ""); }); setTimeout(function () { bglayer(); diff --git a/BO/Web.config b/BO/Web.config index adf99b2..b732431 100644 --- a/BO/Web.config +++ b/BO/Web.config @@ -72,6 +72,10 @@ + + + + diff --git a/Base/Base.csproj b/Base/Base.csproj index 71f0572..d8970fa 100644 --- a/Base/Base.csproj +++ b/Base/Base.csproj @@ -68,6 +68,10 @@ ..\packages\Microsoft.Web.Infrastructure.1.0.0.0\lib\net40\Microsoft.Web.Infrastructure.dll True + + False + ..\References\MySql.Data.dll + ..\packages\Newtonsoft.Json.12.0.1\lib\net45\Newtonsoft.Json.dll diff --git a/Base/Controller/ACommon.cs b/Base/Controller/ACommon.cs index 970f61f..4afc484 100644 --- a/Base/Controller/ACommon.cs +++ b/Base/Controller/ACommon.cs @@ -370,7 +370,7 @@ namespace NP.Base.Controllers } foreach(var u in data) { - m.Users.Add(new MemoUser() { userno = u.userno, smstype = "A", isok = string.IsNullOrEmpty(u.mobile) ? -1 : 1, mobile = (u.mobile??"").Replace("-", "") }); + m.Users.Add(new MemoUser() { userno = u.userno, smstype = "S", isok = string.IsNullOrEmpty(u.mobile) ? -1 : 1, mobile = (u.mobile??"").Replace("-", "") }); } } else @@ -378,90 +378,28 @@ namespace NP.Base.Controllers var data = Dao.Get("users.byusernos", m.usernos); foreach (var u in data) { - m.Users.Add(new MemoUser() { userno = u.userno, smstype = "A", isok = string.IsNullOrEmpty(u.mobile) ? -1 : 1, mobile = (u.mobile ?? "").Replace("-", "") }); + m.Users.Add(new MemoUser() { userno = u.userno, smstype = "S", isok = string.IsNullOrEmpty(u.mobile) ? -1 : 1, mobile = (u.mobile ?? "").Replace("-", "") }); } } - //알림톡 발송 - var t = GetConfig("talk"); - var talkurl = t.Split(',')[0]; - var talkid = t.Split(',')[1]; - var talkpw = t.Split(',')[2]; - var talkaccountkey = t.Split(',')[3]; - var talkaccountid = t.Split(',')[4]; - var talkprofilekey = t.Split(',')[5]; - System.Text.StringBuilder sb = new System.Text.StringBuilder(); - m.mcontents = m.mcontents.Length > 1000 ? m.mcontents.Substring(0, 1000) : m.mcontents; + //System.Text.Encoding.Default.GetBytes("x").Length 90 limit + //m.mcontents = m.mcontents.Length > 1000 ? m.mcontents.Substring(0, 1000) : m.mcontents; var us = m.Users.Where(w => w.isok == 1).ToList(); if (us.Count() > 0) { - //System.Net.WebRequest request = System.Net.WebRequest.Create(talkurl); - //request.ContentType = "application/json"; - //request.Method = "post"; - //request.Headers["ContentType"] = "application/json";//"application /x-www-form-urlencoded"; - //request.Headers.Add("userid", talkaccountid); + System.Text.StringBuilder sb = new System.Text.StringBuilder(""); + var cbnum = GetConfig("mtssendnum"); for (var i = 0; i < us.Count(); i++) { - if ((i+1) % 100 == 1) - { - sb.Clear(); - sb.Append("["); - } - sb.Append("{\"message_type\": \"AT\", \"" + - "phn\": \"" + us[i].mobile.Replace("-", "") + "\", \"" + - "profile\": \"" + talkprofilekey + "\", \"" + - "reserveDt\": \"00000000000000\", \"" + - //"msg\": \"" + m.mcontents + "\",\"" + - "msg\": \"[카카오뮤직] 회원가입 안내\n박효동님, 카카오뮤직 회원이 되신 것을\n환영합니다.\n\n▶신규 가입 회원 혜택\n\n"+ m.mcontents + "\n카카오톡 이모티콘 증정\", \"" + - "tmplId\": \"alimtalktest_001\",\"" + - "smsKind\": \"N\"" + - //"msgSms\":\"" + m.mcontents + "\",\"" + - //"smsSender\":\"\"}"); - "},"); - if ((i + 1) % 100 == 0 || i == us.Count() - 1) - { - String rtntalk=""; - System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(talkurl); - request.Method = "POST"; - request.ContentType = "application/json"; - request.Accept = "application/json"; - request.Headers.Add("userid", talkaccountid); - rtntalk = ApiCall(request, sb.ToString().Substring(0, sb.Length - 1) + "]"); - - if (rtntalk.StartsWith("nptecherr:")) - { - foreach (var d in us) - { - d.isok = -2; - } - } - else { - System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer(); - TalkRtn[] rtn = js.Deserialize(rtntalk.StartsWith("[") ? rtntalk : ("[" +rtntalk+"]")); - foreach (var d in rtn) - { - if (d.data == null) - { - foreach (var u2 in us) - { - u2.isok = 0; - } - } - else - { - var u = us.Where(w => w.mobile.Replace("-", "") == d.data.phn).FirstOrDefault(); - if (u != null) - { - u.msgid = d.data.msgid; - u.message = d.message; - if ("fail".Equals(d.code.ToLower())) - { - u.isok = 0; - } - } - } - } - } - } + sb.Append(string.Format(",('{0}','{1}','{2}', now())", us[i].mobile, cbnum, m.mcontents)); + } + var strConn = GetConfig("mtsdb"); + using (var conn = new MySql.Data.MySqlClient.MySqlConnection(strConn)) + { + conn.Open(); + var cmd = new MySql.Data.MySqlClient.MySqlCommand(); + cmd.Connection = conn; + cmd.CommandText = "insert into mts_sms_msg(tran_phone,tran_callback,tran_msg,tran_date) values"+sb.ToString().Substring(1); + cmd.ExecuteNonQuery(); } } m.uno = SUserInfo.UserNo;