public async Task <IActionResult> SubmitPwd(ChangePassWordReuqest query)
        {
            if (string.IsNullOrWhiteSpace(query.F_NewPawword))
            {
                return(Error("新密码不能为空"));
            }
            if (string.IsNullOrWhiteSpace(query.F_OldPawword))
            {
                return(Error("老密码不能为空"));
            }

            if (!userApp.ChangePassworld(OperatorProvider.Provider.GetCurrent().UserId, query.F_OldPawword, query.F_NewPawword))
            {
                return(Error("原密码不正确"));
            }

            logApp.WriteDbLog(new LogEntity
            {
                F_ModuleName  = "系统登录",
                F_Type        = DbLogType.Exit.ToString(),
                F_Account     = OperatorProvider.Provider.GetCurrent().UserCode,
                F_NickName    = OperatorProvider.Provider.GetCurrent().UserName,
                F_Result      = true,
                F_Description = "安全退出系统",
            });
            await OperatorProvider.Provider.RemoveCurrent();

            return(Success("密码修改成功,请重新登录"));
        }
        public ActionResult OutLogin()
        {
            var userCode = HttpContext.User.Claims.First(t => t.Type == OperatorModelClaimNames.UserCode).Value;
            var userName = HttpContext.User.Claims.First(t => t.Type == OperatorModelClaimNames.UserName).Value;

            logApp.WriteDbLog(new LogEntity
            {
                ModuleName  = "系统登录",
                Type        = DbLogType.Exit.ToString(),
                Account     = userCode,
                NickName    = userName,
                Result      = true,
                Description = "安全退出系统",
            }, HttpContext);
            //Session.Abandon();
            HttpContext.Session.Clear();
            logonApp.SignOut(HttpContext);
            return(RedirectToAction("Index", "Login"));
        }
        private void WriteLog(ExceptionContext context)
        {
            if (context == null)
            {
                return;
            }
            var log = LogFactory.GetLogger(context.Controller.ToString());

            try
            {
                log.LogAll(() => { log.Error(context.Exception); }, () =>
                {
                    LogApp logApp             = new LogApp();
                    LogEntity logEntity       = new LogEntity();
                    logEntity.F_ModuleName    = context.HttpContext.Request.Url.AbsoluteUri;
                    logEntity.F_Type          = context.HttpContext.Request.Path;
                    logEntity.F_Result        = false;
                    logEntity.F_Account       = OperatorProvider.Provider.GetCurrent().UserCode;
                    logEntity.F_NickName      = OperatorProvider.Provider.GetCurrent().UserName;
                    StringBuilder description = new StringBuilder();
                    foreach (string item in context.HttpContext.Request.QueryString.Keys)
                    {
                        description.Append(",");
                        description.Append("\"" + item + "\"");
                        description.Append(":");
                        description.Append("\"" + context.HttpContext.Request.QueryString[item] + "\"");
                    }
                    if (description.Length > 0)
                    {
                        description.Remove(0, 1);
                    }
                    foreach (string item in context.HttpContext.Request.Form.Keys)
                    {
                        description.Append(",");
                        description.Append("\"" + item + "\"");
                        description.Append(":");
                        description.Append("\"" + context.HttpContext.Request.Form[item] + "\"");
                    }
                    if (description.Length > 0)
                    {
                        description.Remove(0, 1);
                    }
                    description.Append("}");
                    description.Insert(0, "{");
                    logEntity.F_Description = description.ToString();
                    logApp.WriteDbLog(logEntity);
                });
            }
            catch (Exception ex) {
            }
        }
示例#4
0
 protected virtual ActionResult Success(string message)
 {
     try
     {
         FileLog.LogAll(() => { FileLog.Info(message); }, () =>
         {
             LogApp logApp             = new LogApp();
             LogEntity logEntity       = new LogEntity();
             logEntity.F_ModuleName    = this.HttpContext.Request.Url.AbsoluteUri;
             logEntity.F_Type          = this.HttpContext.Request.Path;
             logEntity.F_Result        = true;
             StringBuilder description = new StringBuilder();
             foreach (string item in this.HttpContext.Request.QueryString.Keys)
             {
                 description.Append(",");
                 description.Append("\"" + item + "\"");
                 description.Append(":");
                 description.Append("\"" + this.HttpContext.Request.QueryString[item] + "\"");
             }
             if (description.Length > 0)
             {
                 description.Remove(0, 1);
             }
             foreach (string item in this.HttpContext.Request.Form.Keys)
             {
                 description.Append(",");
                 description.Append("\"" + item + "\"");
                 description.Append(":");
                 description.Append("\"" + this.HttpContext.Request.Form[item] + "\"");
             }
             if (description.Length > 0)
             {
                 description.Remove(0, 1);
             }
             description.Append("}");
             description.Insert(0, "{");
             logEntity.F_Description = description.ToString();
             logApp.WriteDbLog(logEntity);
         });
     }
     catch { }
     return(Content(new AjaxResult {
         state = ResultType.success.ToString(), message = message
     }.ToJson()));
 }
示例#5
0
        public async Task <ActionResult> CheckLogin(string username, string password, string code)
        {
            LogEntity logEntity = new LogEntity();

            logEntity.F_ModuleName = "系统登录";
            logEntity.F_Type       = DbLogType.Login.ToString();
            try
            {
                if (NFine.Code.WebHelper.GetSession("nfine_session_verifycode").IsEmpty() || EncryptProvider.Md5(code.ToLower(), Code.Internal.MD5Length.L16) != NFine.Code.WebHelper.GetSession("nfine_session_verifycode").ToString())
                {
                    throw new Exception("验证码错误,请重新输入");
                }

                UserEntity userEntity = userApp.CheckLogin(username, password);
                if (userEntity != null)
                {
                    OperatorModel operatorModel = new OperatorModel();
                    operatorModel.UserId             = userEntity.F_Id;
                    operatorModel.UserCode           = userEntity.F_Account;
                    operatorModel.UserName           = userEntity.F_RealName;
                    operatorModel.CompanyId          = userEntity.F_OrganizeId;
                    operatorModel.DepartmentId       = userEntity.F_DepartmentId;
                    operatorModel.RoleId             = userEntity.F_RoleId;
                    operatorModel.LoginIPAddress     = Net.Ip;
                    operatorModel.LoginIPAddressName = Net.GetLocation(operatorModel.LoginIPAddress);
                    operatorModel.LoginTime          = DateTime.Now;
                    operatorModel.LoginToken         = EncryptProvider.DESEncrypt(Guid.NewGuid().ToString());
                    if (userEntity.F_Account == "admin")
                    {
                        operatorModel.IsSystem = true;
                    }
                    else
                    {
                        operatorModel.IsSystem = false;
                    }
                    await OperatorProvider.Provider.AddCurrent(operatorModel);

                    logEntity.F_Account         = userEntity.F_Account;
                    logEntity.F_NickName        = userEntity.F_RealName;
                    logEntity.F_Result          = true;
                    logEntity.F_Description     = "登录成功";
                    logEntity.F_CreatorUserId   = operatorModel.UserId;
                    logEntity.F_CreatorUserName = operatorModel.UserName;
                    logApp.WriteDbLog(logEntity);
                }
                return(Content(new AjaxResult {
                    state = ResultType.success.ToString(), message = "登录成功。"
                }.ToJson()));
            }
            catch (Exception ex)
            {
                logEntity.F_Account         = username;
                logEntity.F_NickName        = username;
                logEntity.F_Result          = false;
                logEntity.F_Description     = "登录失败," + ex.Message;
                logEntity.F_CreatorUserId   = username;
                logEntity.F_CreatorUserName = username;
                logApp.WriteDbLog(logEntity);
                return(Content(new AjaxResult {
                    state = ResultType.error.ToString(), message = ex.Message
                }.ToJson()));
            }
        }
示例#6
0
        public void insertTaskMember(List <TaskMemberDataEntity> ents, string bid)
        {
            LogApp logApp = new LogApp();

            foreach (var ent in ents)
            {
                rep.Insert(ent);
            }

            /*logApp.WriteDbLog(new LogEntity()
             * {
             *  F_Account = "",
             *  F_CreatorTime = System.DateTime.Now,
             *  F_Date = System.DateTime.Now,
             *  F_CreatorUserId = "",
             *  F_Description = "StartSend",
             *  F_Id = System.Guid.NewGuid().ToString(),
             *  F_ModuleId = "SendMessage",
             *  F_ModuleName = "SendMessage",
             *
             *
             * });
             */
            try
            {
                var shops = ents.GroupBy(p => p.shopCode);
                foreach (var shop in shops)
                {
                    string ShopCode = shop.Key;


                    var salesApp = new marketSalesApp();
                    var users    = salesApp.getGuidManByShop(ShopCode);
                    foreach (var user in users)
                    {
                        var            userinfo = salesApp.getUserInfoBySalesNo(user.sales_No);
                        string         taskId   = System.Guid.NewGuid().ToString();
                        TaskMastEntity ent      = new TaskMastEntity()
                        {
                            id                      = taskId,
                            alertType               = 1,
                            createdTime             = System.DateTime.Now,
                            createdUserId           = userinfo.id,
                            MESSAGE_BILL_NO         = bid,
                            MESSAGE_SUB_NO          = 0,
                            MESSAGE_REPLY_TYPE_CODE = "001",
                            MESSAGE_REPLY_TYPE_NAME = "不需回复",
                            RECEIVE_EMPLOYEE_CODE   = user.sales_No,
                            RECEIVE_EMPLOYEE_NAME   = user.sales_Name,
                            desc                    = "有会员进店,请接待",
                            freqType                = 1,
                            taskName                = "有会员进店,请接待",
                            starTime                = System.DateTime.Now,
                            endTime                 = System.DateTime.Now.AddMinutes(5),
                            importantType           = 1,
                            isAll                   = 1,
                            isRead                  = 0,
                            isReply                 = 0,

                            taskType          = "009",
                            taskTypeName      = "会员到店通知",
                            URGENCY_TYPE_CODE = "002",
                            URGENCY_TYPE_NAME = "紧急",
                            taskSource        = "系统",
                            isDelete          = 0,
                            taskUrl           = "{'shopCode':'" + ShopCode + "','bid':'" + bid + "'}"
                        };
                        taskRep.Insert(ent);

                        TaskPopApp popApp = new TaskPopApp();
                        popApp.createTaskPop(new TaskPopEntity()
                        {
                            id = System.Guid.NewGuid().ToString(), status = 2, taskId = taskId, UserId = userinfo.id, userType = 1
                        });


                        string AndroIdDevice = getDeviceTokens(userinfo.id, "Android");
                        if (AndroIdDevice.Length > 0)
                        {
                            AndroidPostJson postJson = new AndroidPostJson();
                            var             payload  = new AndroidPayload();
                            postJson.type          = CastType.listcast;
                            postJson.device_tokens = AndroIdDevice;

                            payload.display_type      = "notification";
                            payload.body              = new ContentBody();
                            payload.body.ticker       = ent.taskName;
                            payload.body.title        = ent.taskName;
                            payload.body.icon         = "appicon";
                            payload.body.play_lights  = "true";
                            payload.body.play_sound   = "true";
                            payload.body.play_vibrate = "true";
                            payload.body.text         = ent.taskName;
                            payload.body.after_open   = AfterOpenAction.go_app;
                            //payload.body.custom = "comment-notify";
                            var dic = new Dictionary <string, string>();
                            dic.Add("messageId", System.Guid.NewGuid().ToString());

                            payload.extra        = dic;
                            postJson.payload     = payload;
                            postJson.description = ent.taskName;
                            UMengMessagePush <AndroidPostJson> uMAndroidPush = new UMengMessagePush <AndroidPostJson>("59550725677baa17ce0003fe", "grpqx0ayqc1ovn45iqczlrovqrdtvujf");
                            ReturnJsonClass resu = uMAndroidPush.SendMessage(postJson);
                            foreach (var memberEnt in ents)
                            {
                                postJson               = new AndroidPostJson();
                                payload                = new AndroidPayload();
                                postJson.type          = CastType.unicast;
                                postJson.device_tokens = AndroIdDevice;

                                payload.display_type      = "notification";
                                payload.body              = new ContentBody();
                                payload.body.ticker       = ent.taskName;
                                payload.body.title        = ent.taskName;
                                payload.body.icon         = "appicon";
                                payload.body.play_lights  = "true";
                                payload.body.play_sound   = "true";
                                payload.body.play_vibrate = "true";
                                payload.body.text         = ent.taskName;
                                payload.body.after_open   = AfterOpenAction.go_app;
                                dic = new Dictionary <string, string>();
                                dic.Add("messageId", System.Guid.NewGuid().ToString());
                                dic.Add("mfMemberId", memberEnt.mfMemberId);
                                dic.Add("bid", bid);

                                payload.extra               = dic;
                                postJson.payload            = payload;
                                postJson.policy             = new AndroidPolicy();
                                postJson.policy.expire_time = DateTime.Now.AddMinutes(5).ToString("yyyy-MM-dd HH:mm:ss");
                                UMengMessagePush <AndroidPostJson> uMAndroidPush2 = new UMengMessagePush <AndroidPostJson>("5b3ae2eaf43e4808f6000112", "gljoyn3tebkcchaeyvksvp0itjagynqr");
                                ReturnJsonClass resu2 = uMAndroidPush2.SendMessage(postJson);

                                /*logApp.WriteDbLog(new LogEntity()
                                 * {
                                 *  F_Account = user.sales_No,
                                 *  F_CreatorTime = System.DateTime.Now,
                                 *  F_Date = System.DateTime.Now,
                                 *  F_CreatorUserId = user.sales_No,
                                 *  F_Description = resu2.ret,
                                 *  F_Id = System.Guid.NewGuid().ToString(),
                                 *  F_ModuleId = "SendMessage",
                                 *  F_ModuleName = "SendMessage",
                                 *
                                 * });*/
                            }

                            System.Console.WriteLine(resu.ret);
                        }
                        string IOSDevice = getDeviceTokens(userinfo.id, "IOS");
                        if (IOSDevice.Length > 0)
                        {
                            IOSPostJson postJson = new IOSPostJson();
                            postJson.type = CastType.unicast;
                            var aps = new Aps()
                            {
                                alert = "msg",
                                sound = "default"
                            };
                            var     payload = new IOSPayload(aps);
                            JObject jo      = JObject.FromObject(payload);
                            var     extra   = new Dictionary <string, string>();
                            //用户自定义内容,"d","p"为友盟保留字段,key不可以是"d","p"
                            extra.Add("open", "list");
                            extra.ToList().ForEach(x => jo.Add(x.Key, x.Value));

                            postJson.payload         = jo;
                            postJson.description     = ent.taskName;
                            postJson.device_tokens   = IOSDevice;
                            postJson.production_mode = "true";

                            UMengMessagePush <IOSPostJson> uMAndroidPush = new UMengMessagePush <IOSPostJson>("596791cbb27b0a673700001f", "siy2v7u9uzishzimgnslzdukyqkeofhp");
                            ReturnJsonClass resu = uMAndroidPush.SendMessage(postJson);
                            System.Console.WriteLine(resu.ret);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                logApp.WriteDbLog(new LogEntity()
                {
                    F_Account       = "",
                    F_CreatorTime   = System.DateTime.Now,
                    F_Date          = System.DateTime.Now,
                    F_CreatorUserId = "",
                    F_Description   = ex.Message,
                    F_Id            = System.Guid.NewGuid().ToString(),
                    F_ModuleId      = "SendMessage",
                    F_ModuleName    = "SendMessage",
                });
            }
        }