DuGuYang hace 2 años
padre
commit
dd664df015

+ 16 - 15
AppStart/Helper/GetRadioCardInfoService.cs

@@ -48,7 +48,7 @@ public class GetRadioCardInfoService
                 string queryBeginTime = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd"); //工号开通时间,开始时间。格式:yyyy-MM-dd
                 string queryEndTime = DateTime.Now.ToString("yyyy-MM-dd"); //工号开通时间,结束时间。格式:yyyy-MM-dd
                 string pageNo = "1"; //当前页
-                string pageSize = "100"; //每页大小
+                string pageSize = "99999"; //每页大小
                 string timestamp = function.getTimeStamp(); //时间戳,精确到秒。签名用参数
                 SortedList<string, string> req = new SortedList<string, string>();
                 req.Add("queryBeginTime", queryBeginTime);
@@ -66,6 +66,7 @@ public class GetRadioCardInfoService
                 string reqUrl = host + "/ycsim-business/openapi/query_marketers_info";
                 function.WriteLog("请求地址\n" + reqUrl, "广电卡查询开通工号数据");
                 string result = function.PostWebRequest(reqUrl, reqstr, "application/json");
+                result = result.Replace("null", "\"\"");
                 function.WriteLog("响应数据\n" + result, "广电卡查询开通工号数据");
 
                 JsonData jsonObj = JsonMapper.ToObject(result);
@@ -78,20 +79,20 @@ public class GetRadioCardInfoService
                         var radioCardInfo = db.RadioCardInfo.FirstOrDefault(m => m.IdNo == IdNo) ?? new RadioCardInfo();
                         if (string.IsNullOrEmpty(radioCardInfo.JobId))
                         {
-                            radioCardInfo.JobId = function.CheckNull(data[i]["jobId"].ToString()); //行销宝工号
-                            radioCardInfo.JobStatus = function.CheckNull(data[i]["status"].ToString()); //工号状态
-                            radioCardInfo.OprName = function.CheckNull(data[i]["oprName"].ToString()); //人员姓名
-                            radioCardInfo.Mobile = function.CheckNull(data[i]["mobile"].ToString()); //广电手机号
-                            radioCardInfo.IdNo = function.CheckNull(data[i]["idNo"].ToString()); //身份证号
-                            radioCardInfo.Gender = function.CheckNull(data[i]["gender"].ToString()); //性别
-                            radioCardInfo.Role = function.CheckNull(data[i]["role"].ToString()); //角色
-                            radioCardInfo.ChannelCode = function.CheckNull(data[i]["channelCode"].ToString()); //归属社招渠道编码
-                            radioCardInfo.ChannelName = function.CheckNull(data[i]["channelName"].ToString()); //归属社招渠道名称
-                            radioCardInfo.ProvincialCompany = function.CheckNull(data[i]["provincialCompany"].ToString()); //归属省公司
-                            radioCardInfo.OprInviteCode = function.CheckNull(data[i]["oprInviteCode"].ToString()); //邀请码
-                            radioCardInfo.OpenTime = function.CheckNull(data[i]["openTime"].ToString()); //开通时间
-                            radioCardInfo.BrhName = function.CheckNull(data[i]["brhName"].ToString()); //机构名称
-                            radioCardInfo.BrhUserId = function.CheckNull(data[i]["brhUserId"].ToString()); //机构用户编码
+                            radioCardInfo.JobId = data[i]["jobId"].ToString(); //行销宝工号
+                            radioCardInfo.JobStatus = data[i]["status"].ToString(); //工号状态
+                            radioCardInfo.OprName = data[i]["oprName"].ToString(); //人员姓名
+                            radioCardInfo.Mobile = data[i]["mobile"].ToString(); //广电手机号
+                            radioCardInfo.IdNo = data[i]["idNo"].ToString(); //身份证号
+                            radioCardInfo.Gender = data[i]["gender"].ToString(); //性别
+                            radioCardInfo.Role = data[i]["role"].ToString(); //角色
+                            radioCardInfo.ChannelCode = data[i]["channelCode"].ToString(); //归属社招渠道编码
+                            radioCardInfo.ChannelName = data[i]["channelName"].ToString(); //归属社招渠道名称
+                            radioCardInfo.ProvincialCompany = data[i]["provincialCompany"].ToString(); //归属省公司
+                            radioCardInfo.OprInviteCode = data[i]["oprInviteCode"].ToString(); //邀请码
+                            radioCardInfo.OpenTime = data[i]["openTime"].ToString(); //开通时间
+                            radioCardInfo.BrhName = data[i]["brhName"].ToString(); //机构名称
+                            radioCardInfo.BrhUserId = data[i]["brhUserId"].ToString(); //机构用户编码
                             radioCardInfo.UpdateDate = DateTime.Now; //更新时间
                         }
                     }

+ 26 - 43
AppStart/Helper/SIMPosMerchantTradeService.cs

@@ -6,6 +6,7 @@ using Library;
 using MySystem.Models;
 using System.Collections.Generic;
 using LitJson;
+using Newtonsoft.Json;
 
 /// <summary>
 /// 广电卡交易数据导入
@@ -25,9 +26,9 @@ namespace MySystem
             thread.IsBackground = true;
             thread.Start();
 
-            // Thread thread1 = new Thread(SIMActDo); // 通过接口获取广电卡激活数据
-            // thread1.IsBackground = true;
-            // thread1.Start();
+            Thread thread1 = new Thread(SIMActDo); // 通过接口获取广电卡激活数据
+            thread1.IsBackground = true;
+            thread1.Start();
         }
 
         public void ImportPostDo()
@@ -213,16 +214,20 @@ namespace MySystem
         {
             while (true)
             {
-                if (DateTime.Now.Hour > 16 && DateTime.Now.Hour < 18)
+                string Info = RedisDbconn.Instance.RPop<string>("SIMActInfo");
+                if (!string.IsNullOrEmpty(Info))
                 {
+                    // if (DateTime.Now.Hour > 16 && DateTime.Now.Hour < 18)
+                    // {
                     try
                     {
                         var time = DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd");
                         string check = function.ReadInstance("/GetSIMActInfo/check" + time + ".txt");
                         if (string.IsNullOrEmpty(check))
                         {
-                            // function.WritePage("/GetSIMActInfo/", "check" + time + ".txt", DateTime.Now.ToString("HH:mm:ss"));
+                            function.WritePage("/GetSIMActInfo/", "check" + time + ".txt", DateTime.Now.ToString("HH:mm:ss"));
                             var result = RadioCardHelper.Instance.QueryCardOrderInfo(time, time, "1", "99999");
+                            result = result.Replace("null", "\"\"");
                             JsonData jsonObj = JsonMapper.ToObject(result);
                             if (jsonObj["resultCode"].ToString() == "1")
                             {
@@ -240,48 +245,26 @@ namespace MySystem
 
                                         SIMActInfo sIMActInfo = new SIMActInfo
                                         {
-                                            OrderNo = function.CheckNull(data[i]["orderNo"].ToString()), //订单编码
-                                            CreateDate = function.CheckNull(data[i]["orderCreateTime"].ToString()), //订单创建时间
-                                            PhoneNumber = function.CheckNull(data[i]["phoneNo"].ToString()), //选择号码
-                                            HasFirstCharge = function.CheckNull(data[i]["firstCharge"].ToString()), //是否有首充
-                                            FirstChargeAmount = function.CheckNull(data[i]["initialChargeAmount"].ToString()), //首充金额(元)
-                                            Province = function.CheckNull(data[i]["province"].ToString()), //号码归属省份
-                                            City = function.CheckNull(data[i]["city"].ToString()), //号码归属地市
-                                            ProductName = function.CheckNull(data[i]["productName"].ToString()), //商品名称
-                                            ActiveName = function.CheckNull(data[i]["promotionName"].ToString()), //促销活动名称
-                                            ProductType = function.CheckNull(data[i]["productTypeName"].ToString()), //商品类型名称
-                                            ActualAmount = function.CheckNull(data[i]["paidInAmount"].ToString()), //实付金额(元)
-                                            OrderStatus = function.CheckNull(data[i]["orderStatus"].ToString()), //订单状态
-                                            ActStatus = function.CheckNull(data[i]["activationStatusName"].ToString()), //激活状态名称
-                                            ActDate = function.CheckNull(data[i]["activationTime"].ToString()), //激活时间
-                                            WorkNo = function.CheckNull(data[i]["jobId"].ToString()), //BOSS员工工号
+                                            OrderNo = data[i]["orderNo"].ToString(), //订单编码
+                                            CreateDate = data[i]["orderCreateTime"].ToString(), //订单创建时间
+                                            PhoneNumber = data[i]["phoneNo"].ToString(), //选择号码
+                                            HasFirstCharge = data[i]["firstCharge"].ToString(), //是否有首充
+                                            FirstChargeAmount = data[i]["initialChargeAmount"].ToString(), //首充金额(元)
+                                            Province = data[i]["province"].ToString(), //号码归属省份
+                                            City = data[i]["city"].ToString(), //号码归属地市
+                                            ProductName = data[i]["productName"].ToString(), //商品名称
+                                            ActiveName = data[i]["promotionName"].ToString(), //促销活动名称
+                                            ProductType = data[i]["productTypeName"].ToString(), //商品类型名称
+                                            ActualAmount = data[i]["paidInAmount"].ToString(), //实付金额(元)
+                                            OrderStatus = data[i]["orderStatus"].ToString(), //订单状态
+                                            ActStatus = data[i]["activationStatusName"].ToString(), //激活状态名称
+                                            ActDate = data[i]["activationTime"].ToString(), //激活时间
+                                            WorkNo = data[i]["jobId"].ToString(), //BOSS员工工号
                                             // sIMActInfo.AccountName = data[""].ToString(); //账号姓名
                                             AccountName = "", //账号姓名
                                             SimNo = iccId //SIM卡号
                                         };
 
-                                        // SIMActInfo sIMActInfo = new SIMActInfo();
-                                        // sIMActInfo.OrderNo = function.CheckNull(data[i]["orderNo"].ToString()); //订单编码
-                                        // sIMActInfo.CreateDate = function.CheckNull(data[i]["orderCreateTime"].ToString()); //订单创建时间
-                                        // sIMActInfo.PhoneNumber = function.CheckNull(data[i]["phoneNo"].ToString()); //选择号码
-                                        // sIMActInfo.HasFirstCharge = function.CheckNull(data[i]["firstCharge"].ToString()); //是否有首充
-                                        // sIMActInfo.FirstChargeAmount = function.CheckNull(data[i]["initialChargeAmount"].ToString()); //首充金额(元)
-                                        // sIMActInfo.Province = function.CheckNull(data[i]["province"].ToString()); //号码归属省份
-                                        // sIMActInfo.City = function.CheckNull(data[i]["city"].ToString()); //号码归属地市
-                                        // sIMActInfo.ProductName = function.CheckNull(data[i]["productName"].ToString()); //商品名称
-                                        // sIMActInfo.ActiveName = function.CheckNull(data[i]["promotionName"].ToString()); //促销活动名称
-
-                                        // sIMActInfo.ProductType = function.CheckNull(data[i]["productTypeName"].ToString()); //商品类型名称
-
-                                        // sIMActInfo.ActualAmount = function.CheckNull(data[i]["paidInAmount"].ToString()); //实付金额(元)
-                                        // sIMActInfo.OrderStatus = function.CheckNull(data[i]["orderStatus"].ToString()); //订单状态
-                                        // sIMActInfo.ActStatus = function.CheckNull(data[i]["activationStatusName"].ToString()); //激活状态名称
-                                        // sIMActInfo.ActDate = function.CheckNull(data[i]["activationTime"].ToString()); //激活时间
-                                        // sIMActInfo.WorkNo = function.CheckNull(data[i]["jobId"].ToString()); //BOSS员工工号
-                                        // // sIMActInfo.AccountName = data[""].ToString(); //账号姓名
-                                        // sIMActInfo.AccountName = ""; //账号姓名
-                                        // sIMActInfo.SimNo = iccId; //SIM卡号
-
                                         AddSIMActInfo(sIMActInfo);
                                     }
                                 }
@@ -294,7 +277,7 @@ namespace MySystem
                         function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "获取广电卡激活信息队列异常");
                     }
                 }
-                Thread.Sleep(600000);
+                Thread.Sleep(6000);
             }
         }
 

+ 25 - 0
Areas/Admin/Controllers/MainServer/TradeRecordController.cs

@@ -384,6 +384,31 @@ namespace MySystem.Areas.Admin.Controllers
         }
         #endregion
 
+
+        #region 获取激活信息
+        /// <summary>
+        /// 获取激活信息
+        /// </summary>
+        /// <param name="key"></param>
+        /// <returns></returns>
+        public string GetActInfo()
+        {
+            string check = RedisDbconn.Instance.Get<string>("CheckSIMActInfo:" + SysId);
+            if (!string.IsNullOrEmpty(check))
+            {
+                return "请勿重复操作";
+            }
+            else
+            {
+                RedisDbconn.Instance.Set("CheckSIMActInfo:" + SysId, "1");
+                RedisDbconn.Instance.SetExpire("CheckSIMActInfo:" + SysId, 10);
+                RedisDbconn.Instance.AddList("SIMActInfo", SysId);
+                return "success";
+            }
+        }
+        #endregion
+
+
         #region 导入数据
         public IActionResult Import(string right)
         {

+ 35 - 0
Areas/Admin/Views/MainServer/TradeRecord/Index.cshtml

@@ -148,6 +148,9 @@
                             <button class="layui-btn" data-type="ImportTrade">
                                 <i class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>导交易
                             </button>
+                            <button class="layui-btn" onclick="GetActInfo()">
+                                <i class="layui-icon layui-icon-upload layuiadmin-button-btn"></i>获取激活信息
+                            </button>
                             }
                             <button class="layui-btn" data-type="ExportExcel">
                                 <i class="layui-icon layui-icon-export layuiadmin-button-btn"></i>导出
@@ -198,5 +201,37 @@
     <script>
         var BrandId = '@BrandId';
     </script>
+    <script>
+        function GetActInfo() {
+            var index = layer.confirm('确定操作该功能吗?', function (index) {
+                var indexs = layer.load(1, {
+                    shade: [0.5, '#000']
+                });
+                var userdata = $("#confirmFrm").serialize();
+                $.ajax({
+                    type: "POST",
+                    url: "/Admin/TradeRecord/GetActInfo?r=" + Math.random(1),
+                    data: userdata,
+                    dataType: "text",
+                    success: function (data) {
+                        layer.close(index); //关闭弹层
+                        if (data == "success") {
+                            layer.close(indexs); //关闭弹层
+                            layer.msg('成功', {
+                                time: 1000
+                            }, function () {
+                                window.location.reload();
+                            });
+                        } else {
+                            layer.close(indexs); //关闭弹层
+                            layer.msg(data, { time: 1000 }, function () {
+                                window.location.reload();
+                            });
+                        }
+                    }
+                });
+            });
+        }
+    </script>
 </body>
 </html>