Exemple #1
0
 /// <summary>
 /// DelOperatorRole
 /// </summary>
 /// <param name="vo"></param>
 /// <returns></returns>
 public int DelOperatorRole(EntityDefOperatorRole vo)
 {
     using (BizDictionary biz = new BizDictionary())
     {
         return(biz.DelOperatorRole(vo));
     }
 }
Exemple #2
0
 /// <summary>
 /// DelOperRole
 /// </summary>
 internal void DelOperRole()
 {
     if (Viewer.gvRole.FocusedRowHandle < 0)
     {
         return;
     }
     if (DialogBox.Msg("是否删除?", MessageBoxIcon.Question) == DialogResult.Yes)
     {
         EntityDefOperatorRole vo = DataSourceOperRole[Viewer.gvRole.FocusedRowHandle];
         if (vo != null)
         {
             using (ProxyDictionary proxy = new ProxyDictionary())
             {
                 if (proxy.Service.DelOperatorRole(vo) > 0)
                 {
                     LoadOperRole(vo.operCode);
                     DialogBox.Msg("删除成功!");
                 }
                 else
                 {
                     DialogBox.Msg("删除失败。");
                 }
             }
         }
     }
 }
Exemple #3
0
        /// <summary>
        /// NewOperRole
        /// </summary>
        internal void NewOperRole()
        {
            EntityCodeOperator vo = GetOperOrig();

            if (vo == null)
            {
                DialogBox.Msg("请先保存职工主信息。");
                return;
            }
            frmNew frm = new frmNew(EntityTools.ConvertToDataTable <EntityCodeRole>(DataSourceRole), "roleCode", "roleCode", "roleName");

            if (frm.ShowDialog() == DialogResult.OK)
            {
                if (frm.lstNo.Count > 0)
                {
                    foreach (int index in frm.lstNo)
                    {
                        EntityDefOperatorRole vo1 = new EntityDefOperatorRole();
                        vo1.operCode = vo.operCode;
                        vo1.roleCode = DataSourceRole[index].roleCode;
                        using (ProxyDictionary proxy = new ProxyDictionary())
                        {
                            if (proxy.Service.SaveOperatorRole(vo1) < 0)
                            {
                                DialogBox.Msg("保存职工所属角色失败。");
                                return;
                            }
                        }
                    }
                    LoadOperRole(vo.operCode);
                }
            }
        }
Exemple #4
0
        /// <summary>
        /// GetEmpRoleList
        /// </summary>
        /// <returns></returns>
        public Dictionary <string, List <string> > GetEmpRoleList()
        {
            Dictionary <string, List <string> > data = new Dictionary <string, List <string> >();
            SqlHelper svc = null;

            try
            {
                EntityDefOperatorRole vo = new EntityDefOperatorRole();
                svc = new SqlHelper(EnumBiz.onlineDB);
                DataTable dt = svc.Select(new EntityDefOperatorRole());
                if (dt != null)
                {
                    string        empId     = string.Empty;
                    string        roleID    = string.Empty;
                    List <string> lstRoleID = null;
                    foreach (DataRow dr in dt.Rows)
                    {
                        empId  = dr[EntityTools.GetFieldName(vo, EntityDefOperatorRole.Columns.operCode)].ToString();
                        roleID = dr[EntityTools.GetFieldName(vo, EntityDefOperatorRole.Columns.roleCode)].ToString();
                        if (data.ContainsKey(empId))
                        {
                            data[empId].Add(roleID);
                        }
                        else
                        {
                            lstRoleID = new List <string>()
                            {
                                roleID
                            };
                            data.Add(empId, lstRoleID);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                ExceptionLog.OutPutException(Function.GetExceptionCaption(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType.FullName, System.Reflection.MethodBase.GetCurrentMethod().Name, ex.Message));
            }
            finally
            {
                svc = null;
            }
            return(data);
        }
Exemple #5
0
        /// <summary>
        /// 获取登录者信息
        /// </summary>
        /// <param name="strEmpNo"></param>
        /// <param name="loginVo"></param>
        /// <param name="hospitalVo"></param>
        /// <returns></returns>
        public void GetLoginInfo(string strEmpNo, ref EntityLogin loginVo, ref EntityHospital hospitalVo)
        {
            string    SQL      = string.Empty;
            string    strValue = string.Empty;
            DataTable dtResult = null;

            loginVo    = new EntityLogin();
            hospitalVo = new EntityHospital();

            SqlHelper svc = new SqlHelper(EnumBiz.onlineDB);

            IDataParameter[] objParamArr = null;
            try
            {
                EntityCodeOperator voEmp = new EntityCodeOperator();
                voEmp.disable  = "F";
                voEmp.operCode = strEmpNo;
                List <EntityCodeOperator> lstEmployee = EntityTools.ConvertToEntityList <EntityCodeOperator>(svc.Select(voEmp, new List <string> {
                    EntityCodeOperator.Columns.disable, EntityCodeOperator.Columns.operCode
                }));
                if (lstEmployee != null && lstEmployee.Count == 1)
                {
                    voEmp = lstEmployee[0];
                    EntityPlusOperator voEmpPlus = new EntityPlusOperator();
                    voEmpPlus.operCode = strEmpNo;
                    List <EntityPlusOperator> lstEmpPlus = EntityTools.ConvertToEntityList <EntityPlusOperator>(svc.Select(voEmpPlus, new List <string> {
                        EntityPlusOperator.Columns.operCode
                    }));
                    if (lstEmpPlus != null && lstEmpPlus.Count > 0)
                    {
                        voEmpPlus = lstEmpPlus[0];
                    }

                    bool blnLock = false;
                    if (voEmp.acctStatus.ToString() == "1")
                    {
                        blnLock = true;
                        if (voEmp.acctLockDate != null)
                        {
                            strValue = SysParameter(72);
                            int intTemp = 24;//默认24小时后自动解锁
                            if (!string.IsNullOrEmpty(strValue))
                            {
                                intTemp = Function.Int(strValue);
                            }

                            if (intTemp != 0)
                            {
                                DateTime dtmLock = voEmp.acctLockDate.Value;
                                DateTime dtmNow  = DateTime.Now;
                                if (dtmNow.Subtract(dtmLock).TotalHours >= intTemp)
                                {
                                    blnLock = false;
                                    Dictionary <string, object> dicSet = new Dictionary <string, object>();
                                    dicSet.Add(EntityCodeOperator.Columns.acctStatus, 0);
                                    dicSet.Add(EntityCodeOperator.Columns.acctLockDate, null);
                                    Dictionary <string, object> dicWhere = new Dictionary <string, object>();
                                    dicWhere.Add(EntityCodeOperator.Columns.operCode, strEmpNo);
                                    svc.Commit(svc.GetUpdateParm(voEmp, dicSet, dicWhere));
                                }
                            }
                        }
                    }

                    //loginVo.EmpId = voEmp.Empid.ToString();
                    loginVo.EmpNo   = voEmp.operCode;
                    loginVo.EmpName = voEmp.operName;
                    //loginVo.Sex = voEmpPlus.Sex;
                    loginVo.Birthday = voEmpPlus.birth;
                    //loginVo.IdCard = voEmpPlus.Idcard;
                    loginVo.Tel  = voEmpPlus.tel;
                    loginVo.Addr = voEmpPlus.addr;
                    //loginVo.IdentityFlag = voEmp.Identity;
                    loginVo.AdminlevelCode = voEmpPlus.dutyCode;
                    loginVo.TechLevelCode  = voEmpPlus.rankCode;
                    //loginVo.SignKeyID = voEmp.Signdigital;
                    if (!string.IsNullOrEmpty(voEmp.pwd))
                    {
                        loginVo.Pwd = voEmp.pwd; //ESCryptography.Decrypt(voEmp.pwd);
                    }
                    else
                    {
                        loginVo.Pwd = string.Empty;
                    }
                    loginVo.LoginTime = svc.ServerTime().ToString("yyyy-MM-dd HH:mm:ss");
                    if (!string.IsNullOrEmpty(voEmpPlus.clsCode) && voEmpPlus.clsCode.Trim() == "01")
                    {
                        loginVo.EmpFlag = 1;
                    }
                    else if (!string.IsNullOrEmpty(voEmpPlus.clsCode) && voEmpPlus.clsCode.Trim() == "02")
                    {
                        loginVo.EmpFlag = 2;
                    }
                    else
                    {
                        loginVo.EmpFlag = 3;
                    }
                    loginVo.clsCode = voEmpPlus.clsCode.Trim();
                    // 是否管理员
                    if (loginVo.EmpNo.Trim() == "00")
                    {
                        loginVo.IsAdmin = true;
                    }
                    //if (voEmp.Pwdusedate == null)
                    //    loginVo.PwdUseDate = null;
                    //else
                    //    loginVo.PwdUseDate = Convert.ToDateTime(voEmp.Pwdusedate.Value);
                    loginVo.AcctLock = blnLock;

                    #region 职称改从code_rank取值
                    //EntityCommonDic voComm = new EntityCommonDic();
                    //voComm.Status = 1;
                    //voComm.Classid = 1;
                    //voComm.Itemcode = loginVo.TechLevelCode;
                    //List<EntityCommonDic> lstComm = EntityTools.ConvertToEntityList<EntityCommonDic>(svc.Select(voComm, new List<string> { EntityCommonDic.Columns.Status, EntityCommonDic.Columns.Classid, EntityCommonDic.Columns.Itemcode }));
                    //if (lstComm.Count > 0)
                    //{
                    //    loginVo.TechLevelName = lstComm[0].Itemname;
                    //}

                    EntityCodeRank rankVo = new EntityCodeRank();
                    rankVo.rankCode = loginVo.TechLevelCode;
                    List <EntityCodeRank> lstRank = EntityTools.ConvertToEntityList <EntityCodeRank>(svc.Select(rankVo, new List <string> {
                        EntityCodeRank.Columns.rankCode
                    }));
                    if (lstRank.Count > 0)
                    {
                        loginVo.TechLevelName = lstRank[0].rankName;
                    }
                    #endregion

                    string strIDArr = string.Empty;
                    //DataTable dtTemp = null;
                    //if (loginVo.EmpFlag == 1 || loginVo.EmpFlag == 3)
                    //{
                    SQL                  = @"select b.defaultflag as defaultflag,
                                   null          as deptid,
                                   a.dept_code   as deptcode,
                                   a.dept_name   as deptname,
                                   a.py_code     as pycode,
                                   a.wb_code     as wbcode
                              from code_department a
                             inner join defDeptemployee b
                                on a.dept_code = b.deptcode
                             where b.opercode = ?";
                    objParamArr          = svc.CreateParm(1);
                    objParamArr[0].Value = loginVo.EmpNo;
                    dtResult             = svc.GetDataTable(SQL, objParamArr);
                    if (dtResult.Rows.Count > 0)
                    {
                        EntityCodeDepartment deptVo = null;
                        loginVo.lstDept = new List <EntityCodeDepartment>();
                        foreach (DataRow dr in dtResult.Rows)
                        {
                            deptVo = new EntityCodeDepartment();
                            //deptVo.Deptid = Function.Int(dr["deptid"]);
                            deptVo.deptCode = dr["deptcode"].ToString();
                            deptVo.deptName = dr["deptname"].ToString();
                            deptVo.pyCode   = dr["pycode"].ToString().ToUpper();
                            deptVo.wbCode   = dr["wbcode"].ToString().ToUpper();
                            loginVo.lstDept.Add(deptVo);
                            if (Function.Int(dr["defaultflag"]) == 1)
                            {
                                //loginVo.DeptID = Function.Int(deptVo.Deptid);
                                loginVo.DeptName = deptVo.deptName;
                                loginVo.DeptCode = dr["deptcode"].ToString();

                                //                                    SQL = @"select b.areaid,
                                //                                                   b.areaname,
                                //                                                   b.pycode,
                                //                                                   b.wbcode,
                                //                                                   '' as c_code
                                //                                              from defDeptarea a
                                //                                              left join dicArea b
                                //                                                on a.areaid = b.areaid
                                //                                             where a.deptid = ?";

                                //                                    objParamArr = svc.CreateParm(1);
                                //                                    objParamArr[0].Value = deptVo.Deptid;
                                //                                    dtTemp = svc.GetDataTable(SQL, objParamArr);
                                //                                    if (dtTemp != null && dtTemp.Rows.Count > 0)
                                //                                    {
                                //                                        loginVo.AreaID = Function.Int(dtTemp.Rows[0]["areaid"]);
                                //                                        loginVo.AreaName = dtTemp.Rows[0]["areaname"].ToString();
                                //                                        loginVo.DeptCode_zy = dtTemp.Rows[0]["c_code"].ToString();
                                //                                    }
                            }
                            //strIDArr += dr["deptid"].ToString() + ",";
                        }

                        //                            SQL = @"select distinct b.areaid, b.areaname, b.pycode, b.wbcode
                        //                                      from defDeptarea a, dicArea b
                        //                                     where a.areaid = b.areaid
                        //                                       and a.deptid in (" + strIDArr.Substring(0, strIDArr.Length - 1) + ")";
                        //                            dtResult = svc.GetDataTable(SQL);
                        //                            if (dtResult.Rows.Count > 0)
                        //                            {
                        //                                EntityArea dcAreaInfo = null;
                        //                                loginVo.lstArea = new List<EntityArea>();
                        //                                foreach (DataRow dr in dtResult.Rows)
                        //                                {
                        //                                    dcAreaInfo = new EntityArea();
                        //                                    dcAreaInfo.Areaid = Function.Int(dr["areaid"]);
                        //                                    dcAreaInfo.Areaname = dr["areaname"].ToString();
                        //                                    dcAreaInfo.Pycode = dr["pycode"].ToString();
                        //                                    dcAreaInfo.Wbcode = dr["wbcode"].ToString();
                        //                                    loginVo.lstArea.Add(dcAreaInfo);
                        //                                }
                        //                            }
                        //                        }
                        //                    }
                        //                    else if (loginVo.EmpFlag == 2)
                        //                    {
                        //                        SQL = @"select a.defaultflag, b.areaid, b.areaname, b.pycode, b.wbcode
                        //                                  from defDeptemployee a, dicArea b
                        //                                 where a.deptid = b.areaid
                        //                                   and a.attrflag = 2
                        //                                   and a.empid = ?";
                        //                        objParamArr = svc.CreateParm(1);
                        //                        objParamArr[0].Value = loginVo.EmpId;
                        //                        dtResult = svc.GetDataTable(SQL, objParamArr);
                        //                        if (dtResult.Rows.Count > 0)
                        //                        {
                        //                            EntityArea dcAreaInfo = null;
                        //                            loginVo.lstArea = new List<EntityArea>();
                        //                            foreach (DataRow dr in dtResult.Rows)
                        //                            {
                        //                                dcAreaInfo = new EntityArea();
                        //                                dcAreaInfo.Areaid = Function.Int(dr["areaid"]);
                        //                                dcAreaInfo.Areaname = dr["areaname"].ToString();
                        //                                dcAreaInfo.Pycode = dr["pycode"].ToString();
                        //                                dcAreaInfo.Wbcode = dr["wbcode"].ToString();
                        //                                loginVo.lstArea.Add(dcAreaInfo);
                        //                                if (Function.Int(dr["defaultflag"]) == 1)
                        //                                {
                        //                                    loginVo.AreaID = Function.Int(dcAreaInfo.Areaid);
                        //                                    loginVo.AreaName = dcAreaInfo.Areaname;

                        //                                    SQL = @"select b.deptid, b.deptname, b.deptcode, b.pycode, b.wbcode
                        //                                              from defDeptarea a, dicDepartment b
                        //                                             where a.deptid = b.deptid
                        //                                               and a.areaid = ?";

                        //                                    objParamArr = svc.CreateParm(1);
                        //                                    objParamArr[0].Value = dcAreaInfo.Areaid;
                        //                                    dtTemp = svc.GetDataTable(SQL, objParamArr);
                        //                                    if (dtTemp != null && dtTemp.Rows.Count > 0)
                        //                                    {
                        //                                        loginVo.DeptID = Function.Int(dtTemp.Rows[0]["deptid"]);
                        //                                        loginVo.DeptName = dtTemp.Rows[0]["deptname"].ToString();
                        //                                        loginVo.DeptCode = dtTemp.Rows[0]["deptcode"].ToString();
                        //                                    }
                        //                                }
                        //                                strIDArr += dr["areaid"].ToString() + ",";
                        //                            }

                        //                            SQL = @"select distinct b.deptid, b.deptcode, b.deptname, b.pycode, b.wbcode
                        //                                      from defDeptarea a, dicDepartment b
                        //                                     where a.deptid = b.deptid
                        //                                       and a.areaid in (" + strIDArr.Substring(0, strIDArr.Length - 1) + ")";
                        //                            dtResult = svc.GetDataTable(SQL);
                        //                            if (dtResult.Rows.Count > 0)
                        //                            {
                        //                                EntityDepartment dcDeptInfo = null;
                        //                                loginVo.lstDept = new List<EntityDepartment>();
                        //                                foreach (DataRow dr in dtResult.Rows)
                        //                                {
                        //                                    dcDeptInfo = new EntityDepartment();
                        //                                    dcDeptInfo.Deptid = Function.Int(dr["deptid"]);
                        //                                    dcDeptInfo.Deptcode = dr["deptcode"].ToString();
                        //                                    dcDeptInfo.Deptname = dr["deptname"].ToString();
                        //                                    dcDeptInfo.Pycode = dr["pycode"].ToString();
                        //                                    dcDeptInfo.Wbcode = dr["wbcode"].ToString();
                        //                                    loginVo.lstDept.Add(dcDeptInfo);
                        //                                }
                        //                            }
                    }
                    //}

                    if (loginVo != null)
                    {
                        EntityDefOperatorRole voRoleEmp = new EntityDefOperatorRole();
                        voRoleEmp.operCode = loginVo.EmpNo;
                        List <EntityDefOperatorRole> lstRoleEmp = EntityTools.ConvertToEntityList <EntityDefOperatorRole>(svc.Select(voRoleEmp, new List <string> {
                            EntityDefOperatorRole.Columns.operCode
                        }));
                        if (lstRoleEmp.Count > 0)
                        {
                            loginVo.lstRoleID = new List <string>();
                            foreach (EntityDefOperatorRole vo in lstRoleEmp)
                            {
                                loginVo.lstRoleID.Add(vo.roleCode);
                            }
                        }
                    }

                    EntityHospital        voHospital  = new EntityHospital();
                    List <EntityHospital> lstHospital = EntityTools.ConvertToEntityList <EntityHospital>(svc.Select(voHospital));
                    if (lstHospital.Count > 0)
                    {
                        hospitalVo = lstHospital[0];
                        GlobalHospital.HospitalName = hospitalVo.Hospitalname;
                    }

                    //密码有效期
                    loginVo.PwdValidDays = Function.Int(SysParameter(2));
                }
                dtResult = null;
            }
            catch (Exception e)
            {
                ExceptionLog.OutPutException(e);
            }
            finally
            {
                svc = null;
            }
        }