Exemplo n.º 1
0
        /// <summary>
        /// 根据账号Id得到可以查看的车辆信息
        /// </summary>
        /// <param name="nAccountId"></param>
        /// <returns></returns>
        public static DataTable GetAccountVehicel(USER_SHARE_ACCOUNTMODEL account)
        {
            string strSql = string.Empty;

            if (!(account.ISADMIN == 1))
            {
                strSql = string.Format(@" SELECT RTRIM(LTRIM(ROLEIDS,','),',') FROM USER_SHARE_ACCOUNT WHERE 
                                          ACCOUNTID={0} AND COMPANYID={1} AND STATUS={2} ", account.ACCOUNTID, account.COMPANYID,
                                       ShareEnum.AccountStatus.Normal.ToString("d"));

                string roleids = CommonMethod.FinalString(StaticConnectionProvider.ExecuteScalar(strSql));
                if (roleids.Length > 0)
                {
                    strSql = string.Format(@"SELECT * FROM USER_SHARE_VEHICLE_GROUP WHERE SHAREGROUPID IN(
                                             SELECT DISTINCT(SHAREGROUPID) FROM USER_SHARE_ROLE_GROUP WHERE ROLEID IN({0})
                                             )", roleids);
                }
                else
                {
                    return(null);
                }
            }

            else
            {
                strSql = string.Format(@"SELECT * FROM USER_SHARE_VEHICLE_GROUP WHERE SHAREGROUPID IN(
                                         SELECT ID FROM USER_SHARE_GROUP WHERE COMPANYCODE={0}
                                         AND STATE={1} )", account.COMPANYID, ShareEnum.CompanyGroupStatus.Normal.ToString("d"));
            }

            return(StaticConnectionProvider.ExecuteDataTable(strSql));
        }
Exemplo n.º 2
0
    private void LoadNavigation()
    {
        #region 导航信息

        NavigationMenu.Items.Clear();

        int nCompanyId    = ((BasePage)this.Page).CompanyId;
        int nAccountId    = ((BasePage)this.Page).AccountId;
        int nSysProjectId = ValidatorHelper.ToInt(CommonMethod.GetConfigValue("SYSPROJECTID"), 1);
        int nSysCompanyId = ValidatorHelper.ToInt(CommonMethod.GetConfigValue("SYSCOMPANYID"), 1);


        USER_SHARE_ACCOUNTMODEL account = AccountBusiness.GetAccountModel(nAccountId);

        DataTable dt = CompanyFunBusiness.GetAccountFunMenu(nAccountId, account.ISADMIN, nSysProjectId, nCompanyId);
        if (dt != null)
        {
            DataRow[] rows = dt.Select("PROJECTID=" + nSysProjectId, "");
            divNavigation.Visible = nAccountId > 0 && rows.Length > 0;

            MenuItem menu = null;
            foreach (DataRow dr in rows)
            {
                menu             = new MenuItem();
                menu.Text        = CommonMethod.FinalString(dr["CFANOTHERNAME"]);
                menu.NavigateUrl = ResolveUrl("~/" + CommonMethod.FinalString(dr["CFPAGEURL"]));
                menu.ToolTip     = CommonMethod.FinalString(dr["CFDESC"]);
                NavigationMenu.Items.Add(menu);
            }
        }
        else
        {
            ((BasePage)this.Page).Alert("您没有此系统权限!");
            Response.Redirect(ResolveUrl("~/Login.aspx"));
        }


        #endregion

        #region 欢迎信息

        if (this.Page is BasePage && ((BasePage)this.Page).AccountId > 0)
        {
            lblCompany.Text = ((BasePage)this.Page).CompanyName;
            lblWelcome.Text = string.Format("欢迎您,<span class=\"bold\">{0}</span>&nbsp;&nbsp;", ((BasePage)this.Page).RealName);

            lblWelcome.Visible = true;
            lnkLogOut.Visible  = true;
        }
        else
        {
            lblWelcome.Visible = false;
            lnkLogOut.Visible  = false;
        }

        #endregion
    }
Exemplo n.º 3
0
        /// <summary>
        /// 是否存在该记录
        /// </summary>
        public static USER_SHARE_ACCOUNTMODEL GetAccountModel(string strAccountName, string strCompanyCode)
        {
            string    strSql = "select * from USER_SHARE_ACCOUNT where ACCOUNTNAME=:ACCOUNTNAME AND COMPANYID=:COMPANYID AND STATUS!=:STATUS ";
            ParamList param  = new ParamList();

            param["ACCOUNTNAME"] = strAccountName;
            param["COMPANYID"]   = strCompanyCode;
            param["STATUS"]      = ShareEnum.AccountStatus.Del.ToString("d");
            USER_SHARE_ACCOUNTMODEL model = null;
            DataTable dt = StaticConnectionProvider.ExecuteDataTable(strSql.ToString(), param);

            if (dt != null && dt.Rows.Count > 0)
            {
                model = ReaderBind(dt.Rows[0]);
            }

            return(model);
        }
Exemplo n.º 4
0
        /// <summary>
        /// 判断账号名是否重复
        /// </summary>
        /// <param name="context"></param>
        /// <returns></returns>
        private string ValidateAccountName(HttpContext context)
        {
            string strResult      = string.Empty;
            string strAccountName = GlobalObject.unescape(context.Request.QueryString["AccountName"]);
            int    nAccountId     = ValidatorHelper.ToInt(context.Request.QueryString["AccountId"], 0);
            string strCompanyCode = context.Request.QueryString["CompanyCode"];
            USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(strAccountName, strCompanyCode);

            if (accountModel != null)
            {
                // 新增时,存在证明重复,修改时 判断与自身之外的记录重复才算重复
                strResult = (nAccountId == 0 || (nAccountId > 0 && accountModel.ACCOUNTID != nAccountId)) ? "1" : "0";
            }
            else
            {
                strResult = "0";
            }
            return(strResult);
        }
Exemplo n.º 5
0
        /// <summary>
        /// 对象实体绑定数据
        /// </summary>
        private static USER_SHARE_ACCOUNTMODEL ReaderBind(DataRow dataReader)
        {
            USER_SHARE_ACCOUNTMODEL model = new USER_SHARE_ACCOUNTMODEL();

            model.ACCOUNTID   = ValidatorHelper.ToInt(dataReader["ACCOUNTID"], 0);
            model.ACCOUNTNAME = ValidatorHelper.FinalString(dataReader["ACCOUNTNAME"]);
            model.COMPANYID   = ValidatorHelper.ToInt(dataReader["COMPANYID"], 0);
            model.ACCOUNTPWD  = ValidatorHelper.FinalString(dataReader["ACCOUNTPWD"]);
            model.ORIGNALPWD  = ValidatorHelper.FinalString(dataReader["ORIGNALPWD"]);
            model.REALNAME    = ValidatorHelper.FinalString(dataReader["REALNAME"]);
            model.EMAIL       = ValidatorHelper.FinalString(dataReader["EMAIL"]);
            model.ROLEIDS     = ValidatorHelper.FinalString(dataReader["ROLEIDS"]);
            model.LINKPHONE   = ValidatorHelper.FinalString(dataReader["LINKPHONE"]);
            model.CREATEDATE  = ValidatorHelper.ToDateTime(dataReader["CREATEDATE"], DateTime.Now);
            model.CREATORID   = ValidatorHelper.ToInt(dataReader["CREATORID"], 0);
            model.ISADMIN     = ValidatorHelper.ToInt(dataReader["ISADMIN"], 0);
            model.STATUS      = ValidatorHelper.ToInt(dataReader["Status"], 0);
            return(model);
        }
Exemplo n.º 6
0
        /// <summary>
        /// 获取账号信息
        /// </summary>
        /// <param name="nAccountId"></param>
        /// <returns></returns>
        public static USER_SHARE_ACCOUNTMODEL GetAccountModel(int nAccountId)
        {
            StringBuilder strSql = new StringBuilder();

            strSql.Append("select ACCOUNTID,ACCOUNTNAME,COMPANYID,ACCOUNTPWD,ORIGNALPWD,REALNAME,EMAIL,ROLEIDS,LINKPHONE,CREATEDATE,CREATORID,ISADMIN,STATUS from USER_SHARE_ACCOUNT ");
            strSql.Append(" where ACCOUNTID=:ACCOUNTID AND STATUS!=:STATUS ");
            ParamList param = new ParamList();

            param["ACCOUNTID"] = nAccountId;
            param["STATUS"]    = ShareEnum.AccountStatus.Del.ToString("d");
            USER_SHARE_ACCOUNTMODEL model = null;
            DataTable dt = StaticConnectionProvider.ExecuteDataTable(strSql.ToString(), param);

            if (dt != null && dt.Rows.Count > 0)
            {
                model = ReaderBind(dt.Rows[0]);
            }

            return(model);
        }
Exemplo n.º 7
0
        private void InitPage()
        {
            //账号状态
            ControlHelper.ListContolDataBindFromEnum(rbtAccountStatus, typeof(ShareEnum.AccountStatus), "", "", ShareEnum.AccountStatus.Normal.ToString("d"));
            rbtAccountStatus.Items.Remove(rbtAccountStatus.Items.FindByValue(ShareEnum.AccountStatus.Del.ToString("d")));

            //账号Id
            hidAccountId.Value = PageAccountId.ToString();

            string strRoleIds = string.Empty;

            hidCompanyCode.Value = CompanyCode.ToString();

            if (PageAccountId > 0)//修改页面
            {
                USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(PageAccountId);
                if (accountModel != null)
                {
                    txtAccountName.Text         = accountModel.ACCOUNTNAME;
                    txtRealName.Text            = accountModel.REALNAME;
                    txtPwd.Attributes["value"]  = accountModel.ORIGNALPWD;
                    txtPwd2.Attributes["value"] = accountModel.ORIGNALPWD;
                    txtLinkPhone.Text           = CommonMethod.FinalString(accountModel.LINKPHONE);
                    hidEmail.Value       = CommonMethod.FinalString(accountModel.EMAIL);
                    hidCompanyCode.Value = accountModel.COMPANYID.ToString();
                    ControlHelper.SelectFlg(rbtAccountStatus, accountModel.STATUS.ToString());
                    strRoleIds = CommonMethod.FinalString(accountModel.ROLEIDS);
                }

                else
                {
                    Response.Write("不存在的账号信息!");
                    Response.End();
                }
            }


            #region 角色

            if (!IsInit)
            {
                DataTable dtProjects = CompanyBusiness.GetCompanyProjects(CompanyCode.ToString());
                DataTable dtRoles    = RoleBusiness.GetAccountRoleList(" AND R.COMPANYID=" + CompanyId);
                if (dtProjects != null && dtProjects.Rows.Count > 0 && dtRoles != null)
                {
                    StringBuilder sbContent = new StringBuilder("");
                    foreach (DataRow dr in dtProjects.Rows)
                    {
                        sbContent.Append("<table class=\"table\" style=\"float:left; width:33%; margin-left:3px;\">");
                        sbContent.AppendFormat("<tr><td class='rhead' style=\"text-align:left;background-image: url('../../Resource/images/searchthead.gif');\" >{0}</td></tr>", dr["ProjectName"]);

                        DataRow[] drRoles = dtRoles.Select("PROJECTID=" + dr["PROJECTID"], " ROLEID ASC ");
                        foreach (DataRow drRole in drRoles)
                        {
                            sbContent.AppendFormat("<tr><td><input type='checkbox'   name='role' id='{0}' value='{0}' {2} />{1}</td></tr>",
                                                   drRole["ROLEID"], drRole["ROLENAME"], strRoleIds.IndexOf("," + drRole["ROLEID"] + ",") >= 0 ? "checked='checked'" : "");
                        }

                        sbContent.Append("</table>");
                    }

                    tdRoles.InnerHtml = sbContent.ToString();
                }
            }
            else
            {
                trRoles.Visible      = false;
                hidCompanyCode.Value = Enc.Decrypt(CommonMethod.FinalString(Request.QueryString["code"]), UrlEncKey);
            }

            #endregion
        }
Exemplo n.º 8
0
        protected void btnSave_Click(object sender, EventArgs e)
        {
            #region  务端验证

            if (txtAccountName.Text.Trim().Length == 0)
            {
                Alert("请输入账号名称!");
                Select(txtAccountName);
                return;
            }

            if (txtRealName.Text.Trim().Length == 0)
            {
                Alert("请输入真实姓名!");
                Select(txtRealName);
                return;
            }

            if (txtPwd.Text.Trim().Length == 0)
            {
                Alert("请输入登录密码!");
                Select(txtPwd);
                return;
            }

            if (txtPwd2.Text.Trim().Length == 0)
            {
                Alert("请确认登录密码!");
                Select(txtPwd2);
                return;
            }
            if (!txtPwd.Text.Trim().Equals(txtPwd2.Text.Trim()))
            {
                Alert("两次输入密码不一致!");
                Select(txtPwd2);
                return;
            }
            if (txtEmail.Text.Trim().Length == 0)
            {
                Alert("请输入邮箱!");
                Select(txtEmail);
                return;
            }

            string strRoles = CommonMethod.FinalString(Request.Form["role"]);
            if (strRoles.Length > 0)
            {
                strRoles = "," + strRoles + ",";
            }

            #endregion

            #region 账号信息保存

            USER_SHARE_ACCOUNTMODEL accountModel = null;

            int nCompanyCode = IsInit ? ValidatorHelper.ToInt(Enc.Decrypt(Request.QueryString["code"], UrlEncKey), 0) : CompanyCode;

            //日志信息
            USER_SHARE_LOGMODEL logModel = new USER_SHARE_LOGMODEL();
            logModel.LOGID       = CommonBusiness.GetSeqID("S_USER_SHARE_LOG");
            logModel.OPERATEDATE = DateTime.Now;
            logModel.OPERATORID  = AccountId;
            logModel.PROJECTID   = ProjectId;
            logModel.COMPANYID   = CompanyId;

            if (PageAccountId > 0)
            {
                accountModel            = AccountBusiness.GetAccountModel(PageAccountId);
                logModel.OPERATETYPE    = int.Parse(ShareEnum.LogType.EditAccount.ToString("d"));
                logModel.OPERATECONTENT = string.Format("修改账号信息,修改后账号名称:{0},公司编码:{1},账号Id:{2} ", txtAccountName.Text.Trim(), CompanyCode, PageAccountId);
            }
            else
            {
                accountModel           = new USER_SHARE_ACCOUNTMODEL();
                accountModel.ACCOUNTID = CommonBusiness.GetSeqID("S_USER_SHARE_ACCOUNT");
                accountModel.COMPANYID = nCompanyCode;
                accountModel.CREATORID = AccountId;
                if (IsInit)
                {
                    accountModel.ISADMIN = 1;
                }
                accountModel.CREATEDATE = DateTime.Now;
                logModel.OPERATETYPE    = int.Parse(ShareEnum.LogType.AddAccount.ToString("d"));
                logModel.OPERATECONTENT = string.Format("新增账号信息,账号名称:{0},公司ID:{1} ", txtAccountName.Text.Trim(), accountModel.COMPANYID);
            }

            accountModel.ACCOUNTNAME = txtAccountName.Text.Trim();
            accountModel.REALNAME    = txtRealName.Text.Trim();
            accountModel.ORIGNALPWD  = txtPwd.Text.Trim();
            accountModel.ACCOUNTPWD  = Enc.Encrypt(txtPwd.Text.Trim(), nCompanyCode.ToString().PadLeft(8, '0'));
            accountModel.LINKPHONE   = txtLinkPhone.Text.Trim();
            accountModel.EMAIL       = txtEmail.Text.Trim();
            accountModel.ROLEIDS     = strRoles;
            accountModel.STATUS      = ValidatorHelper.ToInt(rbtAccountStatus.SelectedValue, 0);

            bool blSuccess = false;

            if (PageAccountId == 0)
            {
                blSuccess = AccountBusiness.AddAccount(accountModel, logModel);
            }
            else
            {
                blSuccess = AccountBusiness.EditAccount(accountModel, logModel);
            }

            Alert((PageAccountId > 0 ? "修改" : "新增") + "账号" + (blSuccess ? "成功" : "失败,请重试!"));

            ExecScript("parent.__doPostBack('ctl00$MainContent$btnSearch','');");


            #endregion
        }
        /// <summary>
        /// 获取TMS项目的公司账号信息
        /// </summary>
        /// <param name="context"></param>
        /// <param name="xmlDoc"></param>
        /// <param name="sResponse"></param>
        private void GetAccounts(HttpContext context, XmlDocument xmlDoc, ServiceResponse sResponse)
        {
            XmlNode xnAccountName = xmlDoc.SelectSingleNode("request/accountname");
            XmlNode xnAccountPwd  = xmlDoc.SelectSingleNode("request/accountpwd");
            XmlNode xnCompanyCode = xmlDoc.SelectSingleNode("request/companyid");

            if (CommonMethod.FinalString(xnAccountName.InnerText).Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数accountname";
                return;
            }
            if (CommonMethod.FinalString(xnAccountPwd.InnerText).Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数accountpwd";
                return;
            }
            if (CommonMethod.FinalString(xnCompanyCode.InnerText).Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数companyid";
                return;
            }

            USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(xnCompanyCode.InnerText.Trim(), xnAccountName.InnerText.Trim(), xnAccountPwd.InnerText.Trim());

            if (accountModel == null)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidUser;
                sResponse.ErrorDesc = "用户名和密码不匹配";
                return;
            }
            if (accountModel.STATUS != int.Parse(ShareEnum.AccountStatus.Normal.ToString("d")))
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidUser;
                sResponse.ErrorDesc = "此用户已停用";
                return;
            }

            USER_SHARE_COMPANYRELATEMODEL companyModel = CompanyBusiness.GetModel(accountModel.COMPANYID);

            //不存在公司信息或 公司编码和传入的编码不一致
            if (companyModel == null || companyModel.COMPANYCODE.ToString() != xnCompanyCode.InnerText.Trim())
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.CompanyNotMatchAccount;
                sResponse.ErrorDesc = "公司信息和账号信息不匹配";
                return;
            }
            if (companyModel.STATUS != int.Parse(ShareEnum.CompanyRelateStatus.Normal.ToString("d")))
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.CompanyStopUse;
                sResponse.ErrorDesc = "此公司已停用";
                return;
            }
            //获取账号信息
            string strWhere = string.Format(" AND COMPANYID={0} ", xnCompanyCode.InnerText.Trim());

            strWhere += string.Format(" AND STATUS={0} ", ShareEnum.AccountStatus.Normal.ToString("d"));
            int           count     = 0;
            DataTable     dt        = AccountBusiness.GetAccountList(0, int.MaxValue, strWhere, out count);
            StringBuilder sbContent = new StringBuilder("<accounts>");

            if (dt != null && dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    sbContent.AppendFormat(@"<accountitem><accountname>{0}</accountname><accountpwd>{1}</accountpwd>
                                                 <truename>{2}</truename><isadmin>{3}</isadmin></accountitem> ",
                                           dr["ACCOUNTNAME"], dr["ACCOUNTPWD"], dr["REALNAME"], dr["ISADMIN"]);
                }
            }

            sbContent.Append("</accounts>");
            sResponse.Result = sbContent.ToString();
        }
        /// <summary>
        /// 危险品,运管项目公司和账号自动注册接口(临时用)
        /// </summary>
        /// <param name="context"></param>
        /// <param name="xmlDoc"></param>
        /// <param name="sResponse"></param>
        private void AutoRegister(HttpContext context, XmlDocument xmlDoc, ServiceResponse sResponse)
        {
            //传入参数验证
            XmlNode xnCompanyType = xmlDoc.SelectSingleNode("request/companytype");
            XmlNode xnCompanyName = xmlDoc.SelectSingleNode("request/companyname");
            XmlNode xnGroupId     = xmlDoc.SelectSingleNode("request/groupid");
            XmlNode xnGroupIdn    = xmlDoc.SelectSingleNode("request/groupidn");
            XmlNode xnAccountName = xmlDoc.SelectSingleNode("request/accountname");
            XmlNode xnAccountPwd  = xmlDoc.SelectSingleNode("request/accountpwd");
            XmlNode xnRealName    = xmlDoc.SelectSingleNode("request/realname");

            if (xnCompanyType == null || xnCompanyType.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数companytype";
                return;
            }
            if (xnCompanyName == null || xnCompanyName.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数companyname";
                return;
            }
            if (xnGroupId == null || xnGroupId.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数groupid";
                return;
            }
            if (xnGroupIdn == null || xnGroupIdn.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数groupidn";
                return;
            }
            if (xnAccountName == null || xnAccountName.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数accountname";
                return;
            }
            if (xnAccountPwd == null || xnAccountPwd.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数accountpwd";
                return;
            }
            if (xnRealName == null || xnRealName.InnerText.Trim().Length == 0)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                sResponse.ErrorDesc = "缺少传入参数realname";
                return;
            }

            int    ntype      = 0;
            string projectids = "";
            string productids = "";

            switch (xnCompanyType.InnerText.Trim())
            {
            //危险品运输
            case "0":
                ntype      = int.Parse(ShareEnum.CompanyType.PlatCompany.ToString("d"));
                projectids = ",1,21,";    //开通项目,危险品整合 和权限系统
                productids = ",15,2,";    //权限系统维护和危险品运输
                break;

            //运管平台
            case "2":
                ntype      = int.Parse(ShareEnum.CompanyType.YgCompany.ToString("d"));
                projectids = ",1,";    //开通项目,危险品整合 和权限系统
                productids = ",15,";   //权限系统维护
                break;

            default:
                return;
            }

            int ncode     = CompanyBusiness.IsCompanyExists(xnCompanyName.InnerText.Trim(), xnGroupId.InnerText.Trim(), ntype);
            int companyid = PlatFormBusiness.GetYgCompanyId(xnCompanyName.InnerText.Trim());

            if (ncode > 0)
            {
                //判断账号是否存在
                USER_SHARE_ACCOUNTMODEL accountModel1 = AccountBusiness.GetAccountModel(xnAccountName.InnerText.Trim(), ncode.ToString());
                if (accountModel1 != null)
                {
                    //已存在的账号,判断密码是否改动,如果改动,更新密码

                    if (accountModel1.ORIGNALPWD.Trim() != xnAccountPwd.InnerText.Trim())
                    {
                        accountModel1.ORIGNALPWD = xnAccountPwd.InnerText.Trim();
                        accountModel1.ACCOUNTPWD = Enc.Encrypt(xnAccountPwd.InnerText.Trim(), ncode.ToString().PadLeft(8, '0'));
                        //日志信息
                        USER_SHARE_LOGMODEL logModele = new USER_SHARE_LOGMODEL();
                        logModele.LOGID          = CommonBusiness.GetSeqID("S_USER_SHARE_LOG");
                        logModele.OPERATEDATE    = DateTime.Now;
                        logModele.OPERATORID     = 0;
                        logModele.PROJECTID      = 21;
                        logModele.COMPANYID      = ncode;
                        logModele.OPERATETYPE    = int.Parse(ShareEnum.LogType.EditAccount.ToString("d"));
                        logModele.OPERATECONTENT = string.Format("通过自动注册接口更改账号密码,账号名称:{0},公司ID:{1} ", xnAccountName.InnerText.Trim(), accountModel1.COMPANYID);
                        AccountBusiness.EditAccount(accountModel1, logModele);
                    }

                    //之前遗漏了公司Id ,已经注册过的,公司 Id更新进去
                    if (companyid > 0)
                    {
                        CompanyBusiness.UpdateRelateCompanyId(companyid, ncode);
                    }

                    return;
                }
            }
            else
            {
                //公司注册  产品开通

                USER_SHARE_COMPANYRELATEMODEL uscrModel = new USER_SHARE_COMPANYRELATEMODEL();
                ncode                 = CompanyBusiness.GetCompanyCode();
                uscrModel.CID         = CommonBusiness.GetSeqID("S_USER_SHARE_COMPANYRELATE");
                uscrModel.COMPANYID   = companyid;
                uscrModel.COMPANYTYPE = ntype;
                uscrModel.COMPANYNAME = xnCompanyName.InnerText.Trim();
                uscrModel.STATUS      = int.Parse(ShareEnum.CompanyRelateStatus.Normal.ToString("d"));
                uscrModel.GROUPID     = xnGroupId.InnerText.Trim();
                uscrModel.GROUPIDN    = xnGroupIdn.InnerText.Trim();
                uscrModel.PROJECTIDS  = projectids; //开通项目
                uscrModel.PRODUCTIDS  = productids; //开通产品
                uscrModel.CREATEDATE  = DateTime.Now;
                uscrModel.COMPANYCODE = ncode;

                //日志记录
                USER_SHARE_LOGMODEL logModel = new USER_SHARE_LOGMODEL();
                logModel.LOGID          = CommonBusiness.GetSeqID("S_USER_SHARE_LOG");
                logModel.OPERATEDATE    = DateTime.Now;
                logModel.OPERATORID     = 0;
                logModel.PROJECTID      = 21;
                logModel.COMPANYID      = ncode;
                logModel.OPERATETYPE    = int.Parse(ShareEnum.LogType.AddCompanyRelate.ToString("d"));
                logModel.OPERATECONTENT = "通过接口新增公司注册信息,公司名称:" + uscrModel.COMPANYNAME;
                CompanyBusiness.AddCompanyRelate(uscrModel, logModel);
            }

            //账号信息
            USER_SHARE_ACCOUNTMODEL accountModel = new USER_SHARE_ACCOUNTMODEL();

            accountModel.ACCOUNTID   = CommonBusiness.GetSeqID("S_USER_SHARE_ACCOUNT");
            accountModel.ACCOUNTNAME = xnAccountName.InnerText.Trim();
            accountModel.ACCOUNTPWD  = Enc.Encrypt(xnAccountPwd.InnerText.Trim(), ncode.ToString().PadLeft(8, '0'));
            accountModel.COMPANYID   = ncode;
            accountModel.ORIGNALPWD  = xnAccountPwd.InnerText.Trim();
            accountModel.CREATEDATE  = DateTime.Now;
            accountModel.REALNAME    = xnRealName.InnerText.Trim();
            accountModel.EMAIL       = "";
            accountModel.STATUS      = int.Parse(ShareEnum.AccountStatus.Normal.ToString("d"));
            accountModel.ISADMIN     = 0;
            accountModel.CREATORID   = 0;

            //日志信息
            USER_SHARE_LOGMODEL logModel2 = new USER_SHARE_LOGMODEL();

            logModel2.LOGID          = CommonBusiness.GetSeqID("S_USER_SHARE_LOG");
            logModel2.OPERATEDATE    = DateTime.Now;
            logModel2.OPERATORID     = 0;
            logModel2.PROJECTID      = 21;
            logModel2.COMPANYID      = ncode;
            logModel2.OPERATETYPE    = int.Parse(ShareEnum.LogType.AddAccount.ToString("d"));
            logModel2.OPERATECONTENT = string.Format("通过公司自动注册接口注册公司后新增账号信息,账号名称:{0},公司ID:{1} ", xnAccountName.InnerText.Trim(), accountModel.COMPANYID);
            AccountBusiness.AddAccount(accountModel, logModel2);
        }
        /// <summary>
        /// 修改密码
        /// </summary>
        /// <param name="context"></param>
        /// <param name="xmlDoc"></param>
        /// <param name="sResponse"></param>
        private void EditAccountPwd(HttpContext context, XmlDocument xmlDoc, ServiceResponse sResponse)
        {
            XmlNode xnKey       = xmlDoc.SelectSingleNode("request/appkey");
            XmlNode xnAccountId = xmlDoc.SelectSingleNode("request/accountid");
            XmlNode xnOldPwd    = xmlDoc.SelectSingleNode("request/oldpwd");
            XmlNode xnNewPwd    = xmlDoc.SelectSingleNode("request/newpwd");


            USER_SHARE_PROJECTMODEL projectModel = ProjectBusiness.GetProjectModelByKey(xnKey.InnerText.Trim());

            if (projectModel == null)
            {
                sResponse.ErrorType = ShareEnum.ApiResultStatus.KeyErr;
                sResponse.ErrorDesc = "不存在的密钥KEY";
                return;
            }

            else
            {
                //oldpwd参数验证
                if (xnOldPwd == null || xnOldPwd.InnerText.Trim().Length == 0)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                    sResponse.ErrorDesc = "缺少传入参数oldpwd";
                    return;
                }

                //newpwd参数验证
                if (xnNewPwd == null || xnNewPwd.InnerText.Trim().Length == 0)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                    sResponse.ErrorDesc = "缺少传入参数oldpwd";
                    return;
                }

                //账号Id
                int nAccountId = ValidatorHelper.ToInt(xnAccountId.InnerText.Trim(), 0);

                //accountid参数验证
                if (xnAccountId == null || nAccountId <= 0)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                    sResponse.ErrorDesc = "缺少传入参数accountid";
                    return;
                }

                string strAppKey = xnKey.InnerText.Trim();

                string strPwd = xnNewPwd.InnerText.Trim();


                USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(nAccountId);
                if (accountModel == null || accountModel.ACCOUNTPWD != xnOldPwd.InnerText.Trim())
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.OldPassUnCorrect;
                    sResponse.ErrorDesc = "旧密码不正确";
                    return;
                }

                USER_SHARE_COMPANYRELATEMODEL companyModel = CompanyBusiness.GetModel(accountModel.COMPANYID);
                if (companyModel == null)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.CompanyNotMatchAccount;
                    sResponse.ErrorDesc = "公司信息和账号信息不匹配";
                    return;
                }

                //得到原始密码
                string strOrignalPwd = Enc.Decrypt(strPwd, companyModel.COMPANYCODE.ToString().PadLeft(8, '0'));

                //更新账号密码
                if (!AccountBusiness.UpdatePwd(accountModel.ACCOUNTID, strPwd, strOrignalPwd))
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.ExceptionErr;
                    sResponse.ErrorDesc = "更改密码时出现并发错误,请重试!";
                    return;
                }
            }
        }
        /// <summary>
        /// 账号登陆
        /// </summary>
        /// <param name="context"></param>
        /// <param name="xmlDoc"></param>
        /// <param name="sResponse"></param>
        private void AccountLogin(HttpContext context, XmlDocument xmlDoc, ServiceResponse sResponse)
        {
            XmlNode xnKey         = xmlDoc.SelectSingleNode("request/appkey");
            XmlNode xnCompanyCode = xmlDoc.SelectSingleNode("request/companycode");
            XmlNode xnAccountName = xmlDoc.SelectSingleNode("request/accountname");
            XmlNode xnAccountPwd  = xmlDoc.SelectSingleNode("request/accountpwd");

            USER_SHARE_PROJECTMODEL projectModel = null;

            //appkey参数验证
            if (xnKey.InnerText.Trim().Length > 0)
            {
                projectModel = ProjectBusiness.GetProjectModelByKey(xnKey.InnerText.Trim());
                if (projectModel == null)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.KeyErr;
                    sResponse.ErrorDesc = "不存在的密钥KEY";
                    context.Response.Write(sResponse.GetXML());
                    return;
                }
                else
                {
                    //companycode参数验证
                    if (xnCompanyCode == null || xnCompanyCode.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数companycode";
                        return;
                    }

                    if (!CompanyBusiness.IsCompanyCodeExists(xnCompanyCode.InnerText.Trim()))
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidCompanyCode;
                        sResponse.ErrorDesc = "不存在的公司编码信息";
                        return;
                    }

                    //accountpwd参数验证
                    if (xnAccountPwd == null || xnAccountPwd.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数accountpwd";
                        return;
                    }

                    //accountname参数验证
                    if (xnAccountName == null || xnAccountName.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数accountname";
                        return;
                    }

                    string strAppKey      = xnKey.InnerText.Trim();
                    string strCompanyCode = xnCompanyCode.InnerText.Trim();
                    string strAccountName = xnAccountName.InnerText.Trim();

                    string strPwd = xnAccountPwd.InnerText.Trim();

                    USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(strCompanyCode, strAccountName, strPwd);

                    if (accountModel == null)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidUser;
                        sResponse.ErrorDesc = "用户名和密码不匹配";
                        return;
                    }
                    if (accountModel.STATUS != int.Parse(ShareEnum.AccountStatus.Normal.ToString("d")))
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidUser;
                        sResponse.ErrorDesc = "此用户已停用";
                        return;
                    }

                    USER_SHARE_COMPANYRELATEMODEL companyModel = CompanyBusiness.GetModel(accountModel.COMPANYID);

                    //不存在公司信息或 公司编码和传入的编码不一致
                    if (companyModel == null || companyModel.COMPANYCODE.ToString() != strCompanyCode)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.CompanyNotMatchAccount;
                        sResponse.ErrorDesc = "公司信息和账号信息不匹配";
                        return;
                    }
                    if (companyModel.STATUS != int.Parse(ShareEnum.CompanyRelateStatus.Normal.ToString("d")))
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.CompanyStopUse;
                        sResponse.ErrorDesc = "此公司已停用";
                        return;
                    }
                    StringBuilder sbContent = new StringBuilder();
                    sbContent.AppendFormat("<accountid>{0}</accountid>", accountModel.ACCOUNTID);
                    sbContent.AppendFormat("<truename>{0}</truename>", accountModel.REALNAME);
                    sbContent.AppendFormat("<companyid>{0}</companyid>", companyModel.COMPANYID);
                    sbContent.AppendFormat("<companyname>{0}</companyname>", companyModel.COMPANYNAME);
                    sbContent.AppendFormat("<sharecompanyid>{0}</sharecompanyid>", companyModel.SHARECOMPANYID);
                    sbContent.AppendFormat("<sharecompanyname>{0}</sharecompanyname>", companyModel.COMPANYNAME);
                    sbContent.AppendFormat("<productids>{0}</productids>", companyModel.PRODUCTIDS);
                    sbContent.AppendFormat("<groupid>{0}</groupid>", companyModel.GROUPID);
                    sbContent.AppendFormat("<groupname>{0}</groupname>", companyModel.COMPANYNAME);
                    sbContent.AppendFormat("<groupidn>{0}</groupidn>", companyModel.GROUPIDN);
                    sbContent.Append("<accountmenu>");
                    //账户拥有的菜单返回
                    DataTable dt = CompanyFunBusiness.GetAccountFunMenu(accountModel.ACCOUNTID, accountModel.ISADMIN, projectModel.PROJECTID, accountModel.COMPANYID);
                    if (dt != null && dt.Rows.Count > 0)
                    {
                        foreach (DataRow dr in dt.Rows)
                        {
                            sbContent.AppendFormat(@"<menuitem><menuid>{0}</menuid><name>{1}</name>
                                                 <linkurl>{2}</linkurl><parentid>{3}</parentid><sortnum>{4}</sortnum>
                                                <desc>{5}</desc></menuitem>", dr["FMID"], dr["CFANOTHERNAME"],
                                                   dr["CFPAGEURL"], dr["CFPARENTID"], dr["CFSORTNUM"], dr["CFDESC"]);
                        }
                    }

                    sbContent.Append("</accountmenu>");
                    sResponse.Result = sbContent.ToString();
                }
            }
        }
        /// <summary>
        /// 新开通账号
        /// </summary>
        /// <param name="context"></param>
        /// <param name="xmlDoc"></param>
        /// <param name="sResponse"></param>
        private void AddAccount(HttpContext context, XmlDocument xmlDoc, ServiceResponse sResponse)
        {
            XmlNode xnKey         = xmlDoc.SelectSingleNode("request/appkey");
            XmlNode xnCompanyCode = xmlDoc.SelectSingleNode("request/companycode");
            XmlNode xnAccountName = xmlDoc.SelectSingleNode("request/accountname");
            XmlNode xnAccountPwd  = xmlDoc.SelectSingleNode("request/accountpwd");
            XmlNode xnRealName    = xmlDoc.SelectSingleNode("request/realname");
            XmlNode xnEmail       = xmlDoc.SelectSingleNode("request/email");
            XmlNode xnCreatorId   = xmlDoc.SelectSingleNode("request/creatorid");

            USER_SHARE_PROJECTMODEL projectModel = null;

            //appkey参数验证
            if (xnKey.InnerText.Trim().Length > 0)
            {
                projectModel = ProjectBusiness.GetProjectModelByKey(xnKey.InnerText.Trim());
                if (projectModel == null)
                {
                    sResponse.ErrorType = ShareEnum.ApiResultStatus.KeyErr;
                    sResponse.ErrorDesc = "不存在的密钥KEY";
                    context.Response.Write(sResponse.GetXML());
                    return;
                }
                else
                {
                    //companycode参数验证
                    if (xnCompanyCode == null || xnCompanyCode.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数companycode";
                        return;
                    }

                    if (!CompanyBusiness.IsCompanyCodeExists(xnCompanyCode.InnerText.Trim()))
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.UnValidCompanyCode;
                        sResponse.ErrorDesc = "不存在的公司编码信息";
                        return;
                    }

                    //accountpwd参数验证
                    if (xnAccountPwd == null || xnAccountPwd.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数accountpwd";
                        return;
                    }

                    //accountname参数验证
                    if (xnAccountName == null || xnAccountName.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数accountname";
                        return;
                    }

                    //判断账号是否重复
                    USER_SHARE_ACCOUNTMODEL accountModel = AccountBusiness.GetAccountModel(xnAccountName.InnerText.Trim(), xnCompanyCode.InnerText.Trim());
                    if (accountModel != null)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.AccountNameExists;
                        sResponse.ErrorDesc = "已经存在此账号,请确认!";
                        return;
                    }

                    //realname参数验证
                    if (xnRealName == null || xnRealName.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数realname";
                        return;
                    }

                    //email参数验证
                    if (xnEmail == null || xnEmail.InnerText.Trim().Length == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数email";
                        return;
                    }

                    //creatorid参数验证
                    if (xnCreatorId == null || xnCreatorId.InnerText.Trim().Length == 0 || ValidatorHelper.ToInt(xnCreatorId.InnerText.Trim(), 0) == 0)
                    {
                        sResponse.ErrorType = ShareEnum.ApiResultStatus.InputParaErr;
                        sResponse.ErrorDesc = "缺少传入参数creatorid";
                        return;
                    }

                    //账号信息
                    accountModel             = new USER_SHARE_ACCOUNTMODEL();
                    accountModel.ACCOUNTID   = CommonBusiness.GetSeqID("S_USER_SHARE_ACCOUNT");
                    accountModel.ACCOUNTNAME = xnAccountName.InnerText.Trim();
                    accountModel.ACCOUNTPWD  = xnAccountPwd.InnerText.Trim();
                    accountModel.COMPANYID   = Convert.ToInt32(xnCompanyCode.InnerText.Trim());
                    accountModel.ORIGNALPWD  = Enc.Decrypt(accountModel.ACCOUNTPWD, accountModel.COMPANYID.ToString().PadLeft(8, '0'));
                    accountModel.CREATEDATE  = DateTime.Now;
                    accountModel.REALNAME    = xnRealName.InnerText.Trim();
                    accountModel.EMAIL       = xnEmail.InnerText.Trim();
                    accountModel.STATUS      = int.Parse(ShareEnum.AccountStatus.Normal.ToString("d"));
                    accountModel.ISADMIN     = 0;
                    accountModel.CREATORID   = Convert.ToInt32(xnCreatorId.InnerText.Trim());

                    //日志信息
                    USER_SHARE_LOGMODEL logModel = new USER_SHARE_LOGMODEL();
                    logModel.LOGID          = CommonBusiness.GetSeqID("S_USER_SHARE_LOG");
                    logModel.OPERATEDATE    = DateTime.Now;
                    logModel.OPERATORID     = accountModel.CREATORID;
                    logModel.PROJECTID      = projectModel.PROJECTID;
                    logModel.COMPANYID      = accountModel.COMPANYID;
                    logModel.OPERATETYPE    = int.Parse(ShareEnum.LogType.AddAccount.ToString("d"));
                    logModel.OPERATECONTENT = string.Format("通过接口新增账号信息,账号名称:{0},公司ID:{1} ", xnAccountName.InnerText.Trim(), accountModel.COMPANYID);

                    if (AccountBusiness.AddAccount(accountModel, logModel))
                    {
                        sResponse.Result = string.Format("<accountid>{0}</accountid>", accountModel.ACCOUNTID);
                    }
                }
            }
        }
Exemplo n.º 14
0
        private void SysLogin(int nAccountId, string strAccount, string strPwd, string strAppKey, string strCompanyCode)
        {
            #region 登录

            USER_SHARE_ACCOUNTMODEL account = null;
            if (nAccountId > 0)
            {
                account = AccountBusiness.GetAccountModel(nAccountId);
            }
            else
            {
                account = AccountBusiness.GetAccountModel(strCompanyCode, strAccount, strPwd);
            }
            if (account == null)
            {
                Alert(nAccountId > 0 ? "不存在此账号!" : "用户名密码不匹配!");
                return;
            }
            else
            {
                if (account.STATUS != int.Parse(ShareEnum.AccountStatus.Normal.ToString("d")))
                {
                    Alert("此账号已无效,请确认!");
                    return;
                }

                USER_SHARE_PROJECTMODEL project = null;
                if (strAppKey.Length > 0)
                {
                    project = ProjectBusiness.GetProjectModelByKey(strAppKey);
                    if (project == null)
                    {
                        Alert("不存在的项目密钥,请确认!");
                        return;
                    }
                    if (project.STATUS == int.Parse(ShareEnum.ProjectStatus.StopUse.ToString("d")))
                    {
                        Alert("此项目已停用,请确认!");
                        return;
                    }
                }

                USER_SHARE_COMPANYRELATEMODEL company = CompanyBusiness.GetModel(account.COMPANYID);

                if (company == null)
                {
                    Alert("不存在的公司信息,请确认!");
                    return;
                }
                if (company.STATUS.ToString() == ShareEnum.CompanyRelateStatus.StopUse.ToString("d"))
                {
                    Alert("此公司信息已无效,请确认!");
                    return;
                }
                if (company.COMPANYCODE.ToString() != strCompanyCode)
                {
                    Alert("公司信息和账号信息不匹配");
                    return;
                }

                int nProjectId = ValidatorHelper.ToInt(CommonMethod.GetConfigValue("SYSPROJECTID"), 0);

                HttpCookie ck = new HttpCookie("USP");
                ck.Values.Add("AccountId", account.ACCOUNTID.ToString());
                ck.Values.Add("RealName", Server.UrlEncode(account.REALNAME));
                ck.Values.Add("ProjectId", project == null ? "0" : project.PROJECTID.ToString());
                ck.Values.Add("CompanyId", account.COMPANYID.ToString());
                ck.Values.Add("GroupId", CommonMethod.FinalString(company.GROUPID));
                ck.Values.Add("CompanyName", Server.UrlEncode(company.COMPANYNAME));
                ck.Values.Add("CompanyCode", company.COMPANYCODE.ToString());
                Response.Cookies.Add(ck);

                //由登录页面进入
                if (strAppKey.Length == 0)
                {
                    //公司编码记录到Cookie
                    HttpCookie ckCode = new HttpCookie("CompanyCode");
                    ckCode.Values.Add("CompanyCode", txtCompanyCode.Text.Trim());
                    Response.Cookies.Add(ckCode);
                }

                //获取菜单
                DataTable dt = CompanyFunBusiness.GetAccountFunMenu(account.ACCOUNTID, account.ISADMIN, nProjectId, account.COMPANYID);
                if (dt != null)
                {
                    DataRow[] rows = dt.Select("PROJECTID=" + nProjectId, "");
                    if (rows != null && rows.Length > 0)
                    {
                        Response.Redirect(rows[0]["CFPAGEURL"].ToString());
                    }
                    else
                    {
                        Alert("您没有此系统权限!");
                        return;
                    }
                }
                else
                {
                    Alert("您没有此系统权限!");
                    return;
                }
            }
            #endregion
        }
Exemplo n.º 15
0
        /// <summary>
        /// 新增账号信息
        /// </summary>
        /// <param name="AccountModel"></param>
        /// <returns></returns>
        public static bool AddAccount(USER_SHARE_ACCOUNTMODEL AccountModel, USER_SHARE_LOGMODEL log)
        {
            bool blSuccess = false;

            StringBuilder strSql = new StringBuilder();

            strSql.Append("insert into USER_SHARE_ACCOUNT(");
            strSql.Append("ACCOUNTID,ACCOUNTNAME,COMPANYID,ACCOUNTPWD,ORIGNALPWD,REALNAME,EMAIL,ROLEIDS,LINKPHONE,CREATEDATE,CREATORID,ISADMIN,STATUS)");
            strSql.Append(" values (");
            strSql.Append(":ACCOUNTID,:ACCOUNTNAME,:COMPANYID,:ACCOUNTPWD,:ORIGNALPWD,:REALNAME,:EMAIL,:ROLEIDS,:LINKPHONE,:CREATEDATE,:CREATORID,:ISADMIN,:STATUS)");
            ParamList param = new ParamList();

            param["ACCOUNTID"]   = AccountModel.ACCOUNTID;
            param["ACCOUNTNAME"] = AccountModel.ACCOUNTNAME;
            param["COMPANYID"]   = AccountModel.COMPANYID;
            param["ACCOUNTPWD"]  = AccountModel.ACCOUNTPWD;
            param["ORIGNALPWD"]  = AccountModel.ORIGNALPWD;
            param["REALNAME"]    = AccountModel.REALNAME;
            param["EMAIL"]       = AccountModel.EMAIL;
            param["ROLEIDS"]     = AccountModel.ROLEIDS;
            param["LINKPHONE"]   = AccountModel.LINKPHONE;
            param["CREATEDATE"]  = AccountModel.CREATEDATE;
            param["CREATORID"]   = AccountModel.CREATORID;
            param["ISADMIN"]     = AccountModel.ISADMIN;
            param["STATUS"]      = AccountModel.STATUS;

            IConnectionProvider connection = ConnectionProviderBuilder.CreateConnectionProvider();

            try
            {
                using (connection)
                {
                    connection.BeginTranscation();
                    //增加账号信息
                    connection.ExecuteNonQuery(strSql.ToString(), param);
                    param.Clear();

                    if (AccountModel.ISADMIN == 1)//初始账号时更新公司关联信息表
                    {
                        string strUpSql = string.Format("UPDATE USER_SHARE_COMPANYRELATE SET ADMINID={0} WHERE COMPANYCODE={1} ",
                                                        AccountModel.ACCOUNTID, AccountModel.COMPANYID);
                        connection.ExecuteNonQuery(strUpSql);
                    }

                    //操作日志
                    strSql = new StringBuilder();
                    strSql.Append("insert into USER_SHARE_LOG(");
                    strSql.Append("LOGID,OPERATETYPE,OPERATORID,PROJECTID,COMPANYID,OPERATECONTENT,OPERATEDATE)");
                    strSql.Append(" values (");
                    strSql.Append(":LOGID,:OPERATETYPE,:OPERATORID,:PROJECTID,:COMPANYID,:OPERATECONTENT,:OPERATEDATE)");

                    param["LOGID"]          = log.LOGID;
                    param["OPERATETYPE"]    = log.OPERATETYPE;
                    param["OPERATORID"]     = log.OPERATORID;
                    param["PROJECTID"]      = log.PROJECTID;
                    param["COMPANYID"]      = log.COMPANYID;
                    param["OPERATECONTENT"] = log.OPERATECONTENT;
                    param["OPERATEDATE"]    = log.OPERATEDATE;
                    connection.ExecuteNonQuery(strSql.ToString(), param);

                    connection.CommitTranscation();
                    blSuccess = true;
                }
            }
            catch (Exception ex)
            {
                connection.RollbackTranscation();
                LogHelper.WriteErr("新增账号信息时发生错误,账号名称:" + AccountModel.ACCOUNTNAME, ex);
            }

            return(blSuccess);
        }
Exemplo n.º 16
0
        /// <summary>
        /// 修改账号信息
        /// </summary>
        /// <param name="AccountModel"></param>
        /// <returns></returns>
        public static bool EditAccount(USER_SHARE_ACCOUNTMODEL AccountModel, USER_SHARE_LOGMODEL log)
        {
            bool blSuccess = false;

            StringBuilder strSql = new StringBuilder();

            strSql.Append("update USER_SHARE_ACCOUNT set ");
            strSql.Append("ACCOUNTNAME=:ACCOUNTNAME,");
            strSql.Append("COMPANYID=:COMPANYID,");
            strSql.Append("ACCOUNTPWD=:ACCOUNTPWD,");
            strSql.Append("ORIGNALPWD=:ORIGNALPWD,");
            strSql.Append("REALNAME=:REALNAME,");
            strSql.Append("EMAIL=:EMAIL,");
            strSql.Append("ROLEIDS=:ROLEIDS,");
            strSql.Append("LINKPHONE=:LINKPHONE,");
            strSql.Append("CREATEDATE=:CREATEDATE,");
            strSql.Append("CREATORID=:CREATORID,");
            strSql.Append("ISADMIN=:ISADMIN,");
            strSql.Append("STATUS=:STATUS");
            strSql.Append(" where ACCOUNTID=:ACCOUNTID ");
            ParamList param = new ParamList();

            param["ACCOUNTID"]   = AccountModel.ACCOUNTID;
            param["ACCOUNTNAME"] = AccountModel.ACCOUNTNAME;
            param["COMPANYID"]   = AccountModel.COMPANYID;
            param["ACCOUNTPWD"]  = AccountModel.ACCOUNTPWD;
            param["ORIGNALPWD"]  = AccountModel.ORIGNALPWD;
            param["REALNAME"]    = AccountModel.REALNAME;
            param["EMAIL"]       = AccountModel.EMAIL;
            param["ROLEIDS"]     = AccountModel.ROLEIDS;
            param["LINKPHONE"]   = AccountModel.LINKPHONE;
            param["CREATEDATE"]  = AccountModel.CREATEDATE;
            param["CREATORID"]   = AccountModel.CREATORID;
            param["ISADMIN"]     = AccountModel.ISADMIN;
            param["STATUS"]      = AccountModel.STATUS;

            IConnectionProvider connection = ConnectionProviderBuilder.CreateConnectionProvider();

            try
            {
                using (connection)
                {
                    connection.BeginTranscation();
                    //修改账号信息
                    connection.ExecuteNonQuery(strSql.ToString(), param);
                    param.Clear();

                    //操作日志
                    strSql = new StringBuilder();
                    strSql.Append("insert into USER_SHARE_LOG(");
                    strSql.Append("LOGID,OPERATETYPE,OPERATORID,PROJECTID,COMPANYID,OPERATECONTENT,OPERATEDATE)");
                    strSql.Append(" values (");
                    strSql.Append(":LOGID,:OPERATETYPE,:OPERATORID,:PROJECTID,:COMPANYID,:OPERATECONTENT,:OPERATEDATE)");

                    param["LOGID"]          = log.LOGID;
                    param["OPERATETYPE"]    = log.OPERATETYPE;
                    param["OPERATORID"]     = log.OPERATORID;
                    param["PROJECTID"]      = log.PROJECTID;
                    param["COMPANYID"]      = log.COMPANYID;
                    param["OPERATECONTENT"] = log.OPERATECONTENT;
                    param["OPERATEDATE"]    = log.OPERATEDATE;
                    connection.ExecuteNonQuery(strSql.ToString(), param);

                    connection.CommitTranscation();
                    blSuccess = true;
                }
            }
            catch (Exception ex)
            {
                connection.RollbackTranscation();
                LogHelper.WriteErr("修改账号信息时发生错误,账号名称:" + AccountModel.ACCOUNTNAME, ex);
            }

            return(blSuccess);
        }