Example #1
0
        public static OpResult Activate(string serialno)
        {
            var op = new OpResult();

            DictRegister[SysCommonRules.CompanyId] = null;
            op = HasRegister(serialno.IsNullOrEmpty() ? null : serialno);
            if (op.Successed)
            {
                var company = CurrentStoreUser.Company as CompanyAuthorize;
                #region 独立方式写入配置文件
                if (company.Way == 2)
                {
                    var key = Pharos.Utility.Config.GetAppSettings(_SerialKey);
                    if (!serialno.IsNullOrEmpty() && serialno != key)
                    {
                        if (!new Pharos.Utility.Config().SetAppSettings(_SerialKey, serialno))
                        {
                            op.Message   = "注册系列号写入失败,请确认是否有写入权限!";
                            op.Successed = false;
                        }
                    }
                }
                #endregion
                if (op.Successed && Pharos.Logic.BLL.UserInfoService.GetUserCount(SysCommonRules.CompanyId) <= 0)
                {
                    var batchlist = new List <Pharos.Logic.Entity.BatchTranEntity>();
                    #region 类目
                    if (!company.OpenScopeId.IsNullOrEmpty())
                    {
                        var firsts              = company.OpenScopeId.Split(',');
                        var sources             = Pharos.Logic.BLL.ProductCategoryService.FindList(o => o.CompanyId == SysCommonRules.CompanyId && firsts.Contains(o.Title));
                        var maxode              = Pharos.Logic.BLL.ProductCategoryService.MaxCode(0);
                        var maxsn               = Pharos.Logic.BLL.ProductCategoryService.MaxSn;
                        var productCategorylist = new List <Pharos.Logic.Entity.ProductCategory>();
                        foreach (var first in firsts)
                        {
                            if (sources.Any(o => o.Title == first))
                            {
                                continue;
                            }
                            productCategorylist.Add(new Logic.Entity.ProductCategory()
                            {
                                CategoryPSN  = 0,
                                State        = 1,
                                CategoryCode = (++maxode),
                                CompanyId    = SysCommonRules.CompanyId,
                                CategorySN   = (++maxsn),
                                Title        = first,
                                Grade        = 1
                            });
                        }
                        batchlist.Add(new Logic.Entity.BatchTranEntity(Logic.CommandEnum.Insert, productCategorylist, typeof(Logic.Entity.ProductCategory)));
                    }
                    #endregion
                    #region 超管
                    if (company.SupperAccount.IsNullOrEmpty())
                    {
                        company.SupperAccount = "superadmin";
                    }
                    if (company.SupperPassword.IsNullOrEmpty())
                    {
                        company.SupperAccount = "888888";
                    }
                    var user = new Sys.Entity.SysUserInfo()
                    {
                        CompanyId = SysCommonRules.CompanyId,
                        UID       = SysCommonRules.GUID,
                        UserCode  = SysCommonRules.UserCode,
                        FullName  = company.SupperAccount,
                        LoginName = company.SupperAccount,
                        LoginPwd  = Pharos.Utility.Security.MD5_Encrypt(company.SupperPassword),
                        Sex       = true,
                        Status    = 1,
                        LoginDT   = DateTime.Now,
                        LoginNum  = 0,
                        RoleIds   = "9",
                        BranchId  = company.CID.GetValueOrDefault(),
                        CreateDT  = DateTime.Now
                    };
                    batchlist.Add(new Logic.Entity.BatchTranEntity(Logic.CommandEnum.Insert, new List <Sys.Entity.SysUserInfo>()
                    {
                        user
                    }, typeof(Sys.Entity.SysUserInfo)));
                    #endregion
                    #region 组织机构
                    var depart = new Sys.Entity.SysDepartments()
                    {
                        CompanyId = SysCommonRules.CompanyId,
                        Type      = 1,
                        DepId     = company.CID.GetValueOrDefault(),
                        PDepId    = 0,
                        Title     = company.Title,
                        Status    = true
                    };
                    batchlist.Add(new Logic.Entity.BatchTranEntity(Logic.CommandEnum.Insert, new List <Sys.Entity.SysDepartments>()
                    {
                        depart
                    }, typeof(Sys.Entity.SysDepartments)));
                    #endregion
                    #region 初始化sql文件
                    try
                    {
                        var    filePath = AppDomain.CurrentDomain.BaseDirectory + "App_Data\\init.sql";
                        string sql      = "";
                        using (System.IO.StreamReader sr = new System.IO.StreamReader(filePath, System.Text.Encoding.GetEncoding("gb2312")))
                        {
                            sql = sr.ReadToEnd();
                            sr.Close();
                            if (!sql.IsNullOrEmpty())
                            {
                                sql = sql.Replace("@companyId", SysCommonRules.CompanyId.ToString());
                            }
                        }
                        batchlist.Add(new Logic.Entity.BatchTranEntity(Logic.CommandEnum.Sql, new List <string>()
                        {
                            sql
                        }));
                    }
                    catch (Exception ex)
                    {
                        op.Successed = false;
                        op.Message   = ex.Message;
                    }
                    #endregion
                    op = Pharos.Logic.BLL.CommonService.ExecuteTranList(batchlist.ToArray());
                }
            }
            return(op);
        }
Example #2
0
 public ActionResult UserInfo()
 {
     Sys.Entity.SysUserInfo model = null;
     try
     {
         var userBll = new Pharos.Sys.BLL.SysUserInfoBLL();
         model = userBll.GetModelByUID(Sys.CurrentUser.UID);
         List <SelectListItem> storeRoles = null;
         if (!Sys.CurrentUser.StoreId.IsNullOrEmpty())
         {
             var user = userBll.GetStoreUser(Sys.CurrentUser.StoreId, null, 0).FirstOrDefault(o => o.UID == Sys.CurrentUser.UID);
             if (user != null && !user.OperateAuth.IsNullOrEmpty())
             {
                 var auths = user.OperateAuth.Split('|');
                 storeRoles = new List <SelectListItem>();
                 foreach (var o in auths)
                 {
                     if (o.IsNullOrEmpty())
                     {
                         continue;
                     }
                     if (o.StartsWith(Sys.CurrentUser.StoreId + ","))
                     {
                         var role = o.Substring(o.LastIndexOf(',') + 1);
                         storeRoles.Add(new SelectListItem()
                         {
                             Value    = role,
                             Text     = role == "1" ? "店长" : role == "2" ? "营业员" : role == "3" ? "收银员" : "数据维护",
                             Selected = true
                         });
                     }
                 }
             }
         }
         ViewBag.BumenTitle    = new Pharos.Sys.BLL.SysDepartmentBLL().GetModelByDepId(model.BumenId.GetValueOrDefault()).Title;
         ViewBag.PositionTitle = new Pharos.Sys.BLL.SysDataDictionaryBLL().GetExtModelByDicSN(model.PositionId.GetValueOrDefault()).Title;
         var roleBLL     = new Pharos.Sys.BLL.SysRoleBLL();
         var roleIdArray = model.RoleIds.Split(',');
         var roleTitle   = string.Empty;
         var roleStr     = string.Empty;
         foreach (var item in roleIdArray)
         {
             roleTitle = roleBLL.GetModelByRoleId(int.Parse(item)).Title;
             if (string.IsNullOrEmpty(roleStr))
             {
                 roleStr = roleTitle;
             }
             else
             {
                 roleStr += "、" + roleTitle;
             }
         }
         ViewBag.RoleStr    = roleStr;
         ViewBag.StoreRoles = storeRoles;
     }
     catch (Exception ex)
     {
         new LogEngine().WriteError(ex);
     }
     return(View(model));
 }