using Newtonsoft.Json; using Newtonsoft.Json.Linq; using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Net; using System.Net.Http; using System.Web; using System.Web.Http; using System.Web.Script.Serialization; using VueWebApi.DLL.BLL; using VueWebApi.Models; using VueWebApi.Tools; namespace VueWebApi.Controllers { [RoutePrefix(prefix: "api/BasicSetting")] [ControllerGroup("基础设置","在线接口")] public class BasicSettingController : ApiController { //定义全局信息返回变量 ToMessage mes = new ToMessage(); RedisHelper redis = new RedisHelper(); #region [组织架构查询] /// /// 组织架构查询 /// /// 组织架构代码 /// 组织架构名称 /// 组织类型 /// 创建人员 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "OrganizationSearch")] [HttpGet] public HttpResponseMessage OrganizationSearch(string OrgCode=null, string OrgName=null, string OrgType=null, string UserName=null,int page=0,int rows=0,string prop=null,string order=null) { int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = BasicSettingBLL.OrganizationSearch(OrgCode, OrgName, OrgType, UserName,startNum,endNum,prop,order); return TJson.toJson(mes); } #endregion #region[组织架构查找上级单位] /// /// 组织架构查找上级单位 /// /// 组织编码 /// [Route(template: "PrentOrganization")] [HttpGet] public HttpResponseMessage PrentOrganization(string orgcode) { mes = BasicSettingBLL.PrentOrganization(orgcode); return TJson.toJson(mes); } #endregion #region[组织架构新增编辑] /// /// 组织架构新增编辑 /// /// 提交数据对象 /// [Route(template: "AddUpdateOrganization")] [HttpPost] public HttpResponseMessage AddUpdateOrganization([FromBody] JObject obj) { string OrganType = obj["OrganType"].ToString(); //组织类型 string OrganCode = obj["OrganCode"].ToString(); //组织编码 string OrganName = obj["OrganName"].ToString(); //组织名称 string Operator = obj["Operator"].ToString(); //操作人员 int SupUnit = Convert.ToInt32(obj["SupUnit"].ToString());//上级单位 string OperType = obj["OperType"].ToString(); //操作类型 mes = BasicSettingBLL.AddUpdateOrganization(OrganType, OrganCode, OrganName, Operator, SupUnit, OperType); return TJson.toJson(mes); } #endregion #region[组织架构删除] /// /// 组织架构删除 /// /// 组织id /// [Route(template: "DeleteOrganization")] [HttpPost] public HttpResponseMessage DeleteOrganization(int orgid) { mes = BasicSettingBLL.DeleteOrganization(orgid); return TJson.toJson(mes); } #endregion #region[用户清单查询] /// /// 用户清单查询 /// /// 用户编码 /// 用户名称 /// 所属组织 /// 在职状态 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "UserSearch")] [HttpGet] public HttpResponseMessage UserSearch(string UserCode = null, string UserName = null, string StuOrg = null, string Enable = null, int page = 0, int rows = 0, string prop = null, string order = null) { int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = BasicSettingBLL.UserSearch(UserCode, UserName, StuOrg, Enable, startNum, endNum, prop, order); return TJson.toJson(mes); } #endregion #region[用户所属组织] /// /// 用户所属组织查询 /// /// [Route(template: "UserOrganization")] [HttpGet] public HttpResponseMessage UserOrganization() { mes = BasicSettingBLL.UserOrganization(); return TJson.toJson(mes); } #endregion #region[用户清单新增编辑] /// /// 用户清单新增编辑 /// /// 提交数据对象 /// [Route(template: "AddUpdateUser")] [HttpPost] public HttpResponseMessage AddUpdateUser([FromBody] JObject obj) { string UserId = obj["UserId"].ToString(); //用户id(主键) string UserCode = obj["UserCode"].ToString(); //用户编码 string UserName = obj["UserName"].ToString(); //用户名称 string Enable = obj["Enable"].ToString(); //在职状态 string StuOrg = obj["StuOrg"].ToString(); //选择组织编码 string Mobile = obj["Mobile"].ToString(); //联系方式 string Email = obj["Email"].ToString(); //电子邮箱 string Operator = obj["Operator"].ToString(); //操作人员 string OperType = obj["OperType"].ToString(); //操作类型 mes = BasicSettingBLL.AddUpdateUser(UserId, UserCode, UserName, Enable, StuOrg, Mobile, Email, Operator, OperType); return TJson.toJson(mes); } #endregion #region[用户删除] /// /// 用户删除 /// /// 用户id /// [Route(template: "DeleteUser")] [HttpPost] public HttpResponseMessage DeleteUser(int Userid) { mes = BasicSettingBLL.DeleteUser(Userid); return TJson.toJson(mes); } #endregion #region[用户清单关联角色查询] /// /// 用户清单关联角色查询 /// /// 用户编码 /// [Route(template: "UserAssociationRole")] [HttpGet] public HttpResponseMessage UserAssociationRole(string usercode) { mes = BasicSettingBLL.UserAssociationRole(usercode); return TJson.toJson(mes); } #endregion #region[用户清单关联角色保存] /// /// 用户清单关联角色保存 /// /// 用户编码 /// 提交数据对象 /// [Route(template: "SaveUserAssoctRole")] [HttpPost] public HttpResponseMessage SaveUserAssoctRole(string usercode, List json) { //JavaScriptSerializer Serializer = new JavaScriptSerializer(); //List objs = new List(); //objs = Serializer.Deserialize>(json); mes= BasicSettingBLL.SaveUserAssoctRole(usercode, json); return TJson.toJson(mes); } #endregion #region[用户清单导入] public HttpResponseMessage ImportUserExcel(HttpPostedFileBase files) { string savePath; if (files == null || files.ContentLength <= 0) { mes.code = "300"; mes.Message = "上传文件内容不能为空!"; } else { var username = HttpContext.Current.Request.Cookies["admin"].Value.ToString(); //登录用户名 string filename = Path.GetFileName(files.FileName); int filesize = files.ContentLength;//获取上传文件的大小单位为字节byte string fileEx = System.IO.Path.GetExtension(filename);//获取上传文件的扩展名 int Maxsize = 4000 * 1024;//定义上传文件的最大空间大小为4M string FileType = ".xls,.xlsx";//定义上传文件的类型字符串 if (!FileType.Contains(fileEx)) { mes.code = "300"; mes.Message = "文件类型不对,只能导入xls和xlsx格式的文件!"; } else { if (filesize >= Maxsize) { mes.code = "300"; mes.Message = "上传文件超过4M,不能上传!"; } else { string path = System.Web.HttpContext.Current.Server.MapPath("/File/excel/"); if (Directory.Exists(path) == false)//如果不存在就创建file文件夹 { Directory.CreateDirectory(path); //添加文件夹 } savePath = Path.Combine(path, filename); if (Directory.Exists(savePath) == true) //如果存在重名文件就提示 { mes.code = "300"; mes.Message = "已存在同名文件"; } else { files.SaveAs(savePath); //将选择的文件保存到指定文件夹下 string FilesName = System.Web.HttpContext.Current.Server.MapPath("/File/excel/" + filename); mes = BasicSettingBLL.ImportUserExcel(username,FilesName); } } } } return TJson.toJson(mes); } #endregion #region[角色类型查询] /// /// 角色类型查询 /// /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "RoleTypeSearch")] [HttpGet] public HttpResponseMessage RoleTypeSearch(int page = 0, int rows = 0, string prop = null, string order = null) { int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = BasicSettingBLL.RoleTypeSearch(startNum, endNum, prop, order); return TJson.toJson(mes); } #endregion #region[角色类型新增] /// /// 角色类型新增 /// /// 角色类型提交数据 /// [Route(template: "RoleTypeAdd")] [HttpPost] public HttpResponseMessage RoleTypeAdd(List json) { mes = BasicSettingBLL.RoleTypeAdd(json); return TJson.toJson(mes); } #endregion #region[角色类型删除] /// /// 角色类型删除 /// /// 角色类型编码 /// [Route(template: "RoleTypeDelete")] [HttpPost] public HttpResponseMessage RoleTypeDelete(string RoleTypeCode) { mes = BasicSettingBLL.RoleTypeDelete(RoleTypeCode); return TJson.toJson(mes); } #endregion #region[角色清单查询] /// /// 角色清单查询 /// /// 角色编码 /// 角色名称 /// 角色类型编码 /// 创建人员 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "RoleSearch")] [HttpGet] public HttpResponseMessage RoleSearch(string RoleCode = null, string RoleName = null, string RoleTypeCode = null, string CreateUser = null, int page = 0, int rows = 0, string prop = null, string order = null) { int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = BasicSettingBLL.RoleSearch(RoleCode, RoleName, RoleTypeCode, CreateUser, startNum, endNum, prop, order); return TJson.toJson(mes); } #endregion #region[角色清单新增编辑] /// /// 角色清单新增编辑 /// /// 提交数据对象 /// [Route(template: "AddUpdateRole")] [HttpPost] public HttpResponseMessage AddUpdateRole([FromBody] JObject obj) { string RoleId = obj["RoleId"].ToString(); //角色id(主键) string RoleCode = obj["RoleCode"].ToString(); //角色编码 string RoleName = obj["RoleName"].ToString(); //角色名称 string RoleTypeCode = obj["RoleTypeCode"].ToString(); //角色类型编码 string description = obj["description"].ToString(); //角色描述 var usercode = HttpContext.Current.Request.Cookies["navTabId"].Value.ToString(); string OperType = obj["OperType"].ToString(); //操作类型 mes = BasicSettingBLL.AddUpdateRole(RoleId, RoleCode, RoleName, RoleTypeCode, description, usercode, OperType); return TJson.toJson(mes); } #endregion #region[角色清单删除] /// /// 角色清单删除 /// /// 角色编码 /// [Route(template: "DeleteRole")] [HttpPost] public HttpResponseMessage DeleteRole(string RoleCode) { mes = BasicSettingBLL.DeleteRole(RoleCode); return TJson.toJson(mes); } #endregion #region[角色清单关联用户查询] /// /// 角色清单关联用户查询 /// /// 角色编码 /// 用户编码 /// 用户名称 /// 所属组织编码 /// 关联角色 /// 页码 /// 每页显示条数 /// 排序字段 /// 排序规则 /// [Route(template: "RoleAssociationUser")] [HttpGet] public HttpResponseMessage RoleAssociationUser(string rolecode = null, string usercode = null, string username = null, string orgcode = null,string isrole=null, int page = 0, int rows = 0, string prop = null, string order = null) { int startNum = rows * (page - 1) + 1; //起始记录rowNum int endNum = rows * page; //结束记录 rowNum mes = BasicSettingBLL.RoleAssociationUser(rolecode, usercode, username,orgcode,isrole, startNum, endNum, prop,order); return TJson.toJson(mes); } #endregion #region[角色清单关联用户保存] /// /// 角色清单关联用户保存 /// /// 角色编码 /// 提交数据对象 /// [Route(template: "SaveUserAssoctRole")] [HttpPost] public HttpResponseMessage SaveRoleAssociationUser(string rolecode, List json) { //JavaScriptSerializer Serializer = new JavaScriptSerializer(); //List objs = new List(); //objs = Serializer.Deserialize>(json); mes = BasicSettingBLL.SaveRoleAssociationUser(rolecode, json); return TJson.toJson(mes); } #endregion #region[角色清单关联功能查询] /// /// 用户清单关联功能查询 /// /// 角色编码 /// 操作端分类编码 /// [Route(template: "RoleAssociationRight")] [HttpGet] public HttpResponseMessage RoleAssociationRight(string rolecode,string type) { mes = BasicSettingBLL.RoleAssociationRight(rolecode,type); return TJson.toJson(mes); } #endregion #region[角色清单关联功能保存] /// /// 角色清单关联功能保存 /// /// 角色编码 /// 登录用户编码 /// 提交数据对象 /// [Route(template: "SaveUserAssoctRight")] [HttpPost] public HttpResponseMessage SaveUserAssoctRight(string rolecode,string usercode, List json) { mes = BasicSettingBLL.SaveUserAssoctRight(rolecode, usercode, json); return TJson.toJson(mes); } #endregion } }