using SysBaseLibs; using SysDataLibs.TableClass; using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace GSMarketSys.Controllers { public class SysUserController : BaseController { #region SysSetting // GET: SystemModule [CheckPowerFilter] public ActionResult SysUserList() { ViewBag.SelDepartmentID = GetData.Instance.GetSelStr(Departments_info.cDepartmentID, Departments_info.cNames, Tn.Departments, UserSessionInfo.DBConn); ViewBag.SelDutyID = GetData.Instance.GetSelStr(Dutys_info.cDutyID, Dutys_info.cNames, Tn.Dutys, UserSessionInfo.DBConn); ViewBag.SelSystemID = GetData.Instance.GetSelStr(GSSystem_info.cSystemID, GSSystem_info.cSystemName, Tn.GSSystem, " IsLock = 'N' ",UserSessionInfo.DBConn); ViewBag.SelFarmID = GetData.Instance.GetSelStr(Farms_info.cFarmID, Farms_info.cNames, Tn.Farms, UserSessionInfo.DBConn); ViewBag.SelSysGroups = GetData.Instance.GetSelStr(Sys_Groups_info.cGroupID, Sys_Groups_info.cNames, Tn.Sys_Groups, " IsLock = 'N' ", UserSessionInfo.DBConn); ViewBag.SelRegionID = GetData.Instance.GetRegionsTreeList(UserSessionInfo.DBConn); // 如果市场系统的用户进来的话 ,只能创建 非系统的,非高级的 ,市场用户 if (UserSessionInfo.IsMarketSysAccount) { ViewBag.IsMarketSysAccount = "Y"; ViewBag.CurrentRegion = UserSessionInfo.UserInfo.RegionID.Trim(); } if (UserSessionInfo.IsSystem) { ViewBag.IsSystemAccount = "Y"; } return View(); } /// /// 查询系统配置 /// /// public ActionResult GetSysUserListResult() { //string lcSql = " select * from " + Tn.v_viewUsers ; string lcSql = Sys_Users_info.GetUserListSql(UserSessionInfo); string IsLock = Request["IsLock"]; string SystemType = Request["SystemType"]; string IsAdvance = Request["IsAdvance"]; lcSql += " AND " + v_viewUsers_info.cIsLock + " = '" + IsLock + "' AND " + v_viewUsers_info.cSystemType+ " = '"+ SystemType+"' AND " + v_viewUsers_info.cIsAdvance + " = '" + IsAdvance+"' "; lcSql += " order by " + v_viewUsers_info.cIsSystem + " desc ," + v_viewUsers_info.cSystemType + " desc ," + v_viewUsers_info.cRegionID + " ," + v_viewUsers_info.cIsAdvance + " desc "; return Content(GetData.Instance.GetResult(lcSql, UserSessionInfo.DBConn)); } /// /// 修改和增加系统配置 /// /// [CheckPowerFilter] public ActionResult SysUserListOper() { string Type = Request["Type"]??""; string UserCode = Utils.AreaToSQL(Request["UserCode"]).Trim(); if (Type == "Del" || Type == "Restore") { string lcIsLock = Type == "Del" ? "Y" : "N"; if (UserSessionInfo.DBConn.ExcuteSqlTran("update " + Tn.Sys_Users + " set " + Sys_Users_info.cIsLock + "='"+ lcIsLock + "' where " + Sys_Users_info.cUserCode + "='" + UserCode + "'")) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); }else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } string Names = Utils.AreaToSQL(Request["Names"]).Trim(); string Password = Utils.AreaToSQL(Request["Password"]).Trim(); string Age = Utils.AreaToSQL(Request["Age"]).Trim(); string Telephone = Utils.AreaToSQL(Request["Telephone"]).Trim(); string ZIP = Utils.AreaToSQL(Request["ZIP"]).Trim(); string Email = Utils.AreaToSQL(Request["Email"]).Trim(); string Address = Utils.AreaToSQL(Request["Address"]).Trim(); string Info = Utils.AreaToSQL(Request["Info"]).Trim(); string RegionID = Utils.AreaToSQL(Request["RegionID"]).Trim(); string FarmID = Utils.AreaToSQL(Request["FarmID"]).Trim(); string DepartmentID = Utils.AreaToSQL(Request["DepartmentID"]).Trim(); string DutyID = Utils.AreaToSQL(Request["DutyID"]).Trim(); string Sex = Utils.AreaToSQL(Request["Sex"]).Trim(); string SystemID = Utils.AreaToSQL(Request["SystemID"]).Trim(); string IsAdvance = Utils.AreaToSQL(Request["IsAdvance"]).Trim(); string IsSystem = Utils.AreaToSQL(Request["IsSystem"]).Trim(); Sys_Users_info loUserInfo = null; if (Type == "Add") { loUserInfo = new Sys_Users_info(); loUserInfo.Password = Password; } else { loUserInfo = Sys_Users_info.GetUserInfoByUserCode(UserCode); } loUserInfo.UserCode = UserCode; loUserInfo.Names = Names; loUserInfo.Address = Address; loUserInfo.Age = Age; loUserInfo.Telephone = Telephone; loUserInfo.ZIP = ZIP; loUserInfo.Email = Email; loUserInfo.DepartmentID = DepartmentID; loUserInfo.DutyID = DutyID; loUserInfo.SystemID = SystemID; loUserInfo.FarmID = FarmID; loUserInfo.Sex = Sex; loUserInfo.IsLock = "N"; loUserInfo.RegionID = RegionID; loUserInfo.IsSystem = IsSystem; if (loUserInfo.IsSys) { loUserInfo.IsAdvance = "Y"; //如果是系统帐号的话,也同时是高级帐号 }else { loUserInfo.IsAdvance = IsAdvance; } loUserInfo.Info = Info; if (Type == "Add") { string lcErr = ""; loUserInfo.IsAudit = "Y"; if(loUserInfo.InsertRecord(UserSessionInfo,ref lcErr)) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); } else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } else { if (loUserInfo.UpdateRecord(UserSessionInfo)) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); } else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } } public ActionResult GetUserHasGroup() { string UserID = Request["UserID"]; rsQuery loUserGroup = Sys_GroupHasUser_info.GetGroupByUserID(UserID, UserSessionInfo.DBConn); if (loUserGroup!= null && loUserGroup.IsOpened && loUserGroup.RecCount ==1) { return Content(loUserGroup.GetString("ID")); } return Content(""); } public ActionResult UserExistGroup() { string UserID = Request["UserID"]; string GroupID = Request["GroupID"]; if(Sys_GroupHasUser_info.UpdateUserToGroup(UserID, GroupID, UserSessionInfo.DBConn)) { return Content("true"); } else { return Content("false"); } } public ActionResult GetAllMarkets() { string UserID = Request["UserID"]; Sys_Users_info loUser = new Sys_Users_info(UserID, UserSessionInfo.DBConn); string lcSql = " select M.MarketID as MarketID ,M.Names as MarketName,R.Names as RegionName from Markets M,Regions R where M.RegionID=R.RegionId and M.IsLock='0' "; string lcAllMarketId = Markets_info.GetAllMarketIDByRegionId(loUser.RegionID, UserSessionInfo.DBConn); if (loUser.IsMarketSys) lcSql += " and M.MarketID in ( " + lcAllMarketId + ") "; return Content(GetData.Instance.GetResult(lcSql, UserSessionInfo.DBConn)); } public ActionResult GetMarketIdsByUserId() { string lcRetval = ""; string UserID = Request["UserID"]; Markets_info loMarkets = UserHasMarket_info.GetOneMarketIdsByUserId(UserID, UserSessionInfo.DBConn); if (loMarkets != null) lcRetval = loMarkets.MarketID; return Content(lcRetval); } public ActionResult UserExistMarket() { string UserID = Request["UserID"]; string MarketID = Request["MarketID"]; if (UserHasMarket_info.UpdateMarketsOfUser(UserID, MarketID, UserSessionInfo.DBConn)) { return Content("true"); } else { return Content("false"); } } #endregion #region Sys_Group public ActionResult SysGroupView() { ViewBag.SelUserIDs = GetData.Instance.GetSelStr(Sys_Users_info.cUserID, Sys_Users_info.cNames, Tn.Sys_Users, " IsLock = 'N' order by " + Sys_Users_info.cUserID + " desc ", UserSessionInfo.DBConn); return View(); } public ActionResult GetSysGroupList() { string IsLock = Utils.AreaToSQLcs(Request["IsLock"]); if (string.IsNullOrEmpty(IsLock)) IsLock = "N"; return Content(GetData.Instance.GetResult("select * from " + Tn.Sys_Groups + " where IsLock='"+ IsLock + "'", UserSessionInfo.DBConn)); } /// /// 修改和增加系统配置 /// /// [CheckPowerFilter] public ActionResult SysGroupListOper() { string Type = Request["Type"] ?? ""; string GroupID = Utils.AreaToSQL(Request["GroupID"]).Trim(); if (Type == "Del" || Type == "Restore") { string lcIsLock = Type == "Del" ? "Y" : "N"; if (UserSessionInfo.DBConn.ExcuteSqlTran("update " + Tn.Sys_Groups + " set " + Sys_Groups_info.cIsLock + "='" + lcIsLock + "' where " + Sys_Groups_info.cGroupID + "='" + GroupID + "'")) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); } else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } string Names = Utils.AreaToSQL(Request["Names"]).Trim(); string Remark = Utils.AreaToSQL(Request["Remark"]).Trim(); Sys_Groups_info loGroupsInfo = null; if (Type == "Add") { loGroupsInfo = new Sys_Groups_info(); loGroupsInfo.GroupID = GroupID; if (SysDataLibs.AppEnv.IsExistPrKey(Tn.Sys_Groups, Sys_Groups_info.cGroupID, loGroupsInfo.GroupID, UserSessionInfo.DBConn)) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } loGroupsInfo.CreateDate = DateTime.Now.ToString(); loGroupsInfo.CreateUser = UserSessionInfo.UserInfo.UserID; } else { loGroupsInfo = new Sys_Groups_info(GroupID,UserSessionInfo.DBConn); } loGroupsInfo.Names = Names; loGroupsInfo.Remark = Remark; loGroupsInfo.IsLock = "N"; loGroupsInfo.IsSystem = "0"; if (Type == "Add") { if (UserSessionInfo.DBConn.ExecuteSql(loGroupsInfo.InsertSql())) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); } else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } else { if (UserSessionInfo.DBConn.ExecuteSql(loGroupsInfo.UpdateSql())) { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_Success")); } else { return Content(SysRebackDisplayInfo.Instance.GetDisplayValue("Oper_DBError")); } } } public ActionResult GetAllUsers() { string lcSql = "select " + Sys_Users_info.cUserID + " as id," + Sys_Users_info.cNames + " as text from " + Tn.Sys_Users + " where " + Sys_Users_info.cIsLock + "='N' order by " + Sys_Users_info.cUserID + " desc "; rsQuery loQuery = UserSessionInfo.DBConn.OpenQuery(lcSql); return Content(JsonHelper.Instance.Serialize(loQuery.CurrentTable)); } public ActionResult GetUsersByGroupID() { string GroupID = Request["GroupID"]; string sql = "select u." + Sys_Users_info.cUserID + " as 'ID' ,u." + Sys_Users_info.cNames + " as 'text' from " + Tn.Sys_Users + " as u "; sql += " join " + Tn.Sys_GroupHasUser + " as gu on(u." + Sys_Users_info.cUserID + "=gu." + Sys_GroupHasUser_info.cUserID + ") where u." + Sys_Users_info.cIsLock + "='N' and gu." + Sys_GroupHasUser_info.cGroupID + "='" + GroupID + "' "; rsQuery loQuery = UserSessionInfo.DBConn.OpenQuery(sql); string lcRetval = ""; if (loQuery.IsOpened && loQuery.RecCount > 0) { loQuery.MoveFirst(); for(int i = 0; i < loQuery.RecCount; i++) { lcRetval += string.IsNullOrEmpty(lcRetval) ? loQuery.GetString("ID") : ","+ loQuery.GetString("ID"); loQuery.MoveNext(); } } return Content( lcRetval); } public ActionResult GroupHasUsers() { string GroupID = Request["GroupID"]; string Users = Utils.AreaToSQLcs(Request["Users"]); if(Sys_GroupHasUser_info.UpdateUsersToGroup(GroupID, Users, UserSessionInfo.DBConn)) { return Content("true"); }else { return Content("false"); } //return null; } #endregion } }