public string AddDept(string pRequest) { var rd = new APIResponse <AddDeptRD>(); var rdData = new AddDeptRD(); var rp = pRequest.DeserializeJSONTo <APIRequest <AddDeptRP> >(); if (rp.Parameters == null) { throw new ArgumentException(); } if (rp.Parameters != null) { rp.Parameters.Validate(); } var loggingSessionInfo = Default.GetBSLoggingSession(rp.CustomerID, rp.UserID); try { TUnitBLL unitBll = new TUnitBLL(loggingSessionInfo); string typeID = System.Configuration.ConfigurationManager.AppSettings["TypeID"].ToString(); if (!string.IsNullOrEmpty(rp.Parameters.TypeID)) { typeID = rp.Parameters.TypeID; } TUnitEntity[] unitEntityArr = unitBll.Query(new IWhereCondition[] { new EqualsCondition { DateTimeAccuracy = null, FieldName = "customer_id", Value = rp.CustomerID }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "unit_name", Value = rp.Parameters.UnitName }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "type_id", Value = typeID }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "Status", Value = "1" } }, null); if (unitEntityArr != null && unitEntityArr.Length > 0) { rd.ResultCode = 101; rd.Message = rp.Parameters.UnitName + "已存在"; return(rd.ToJSON()); } string unitID = Guid.NewGuid().ToString().Replace("-", ""); TUnitEntity unitEntity = new TUnitEntity { UnitID = unitID, UnitName = rp.Parameters.UnitName, UnitCode = rp.Parameters.UnitCode, UnitContact = rp.Parameters.Leader, UnitRemark = rp.Parameters.DeptDesc, TypeID = typeID, CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), CreateUserID = loggingSessionInfo.CurrentUser.User_Id, ModifyTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), ModifyUserID = loggingSessionInfo.CurrentUser.User_Id, CustomerID = loggingSessionInfo.CurrentUser.customer_id, CUSTOMERLEVEL = 0, Status = "1", StatusDesc = "正常", IfFlag = "1" }; unitBll.Create(unitEntity); rdData.UnitID = unitID; rd.Data = rdData; rd.ResultCode = 0; } catch (Exception ex) { rd.ResultCode = 103; rd.Message = ex.Message; } return(rd.ToJSON()); }
public string Export(LoggingSessionInfo pLoggingSessionInfo, string pPath) { try { string customerID = pLoggingSessionInfo.ClientID; string userID = pLoggingSessionInfo.CurrentUser.User_Id; ////下载保存获取本地路径 //string localPath = string.Empty; //DownloadFile(pPath, "", out localPath); //pPath = localPath; string path = HttpContext.Current.Server.MapPath(@"~"); pPath = path + pPath; #region 读取Excel数据并简单过滤 System.IO.FileInfo exporstFile = new System.IO.FileInfo(pPath); if (!exporstFile.Exists) { return("0|文件不存在"); } //读取Excel DataTable excelTable = ExcelReader.ReadExcelToDataTable(pPath); //return "0|" + excelTable.Rows[0][0]; //过滤空行 DataRow[] drs = excelTable.Select("邮箱<>''"); DataTable dtClone = excelTable.Clone(); foreach (var row in drs) { dtClone.ImportRow(row); } #endregion #region 获取职衔、部门、角色 DataView _dv = dtClone.DefaultView; DataTable jobFuncDT = _dv.ToTable(true, "职衔"); DataTable deptDT = _dv.ToTable(true, "部门"); DataTable roleDT = _dv.ToTable(true, "角色"); #endregion #region 职衔验证 var jobFuncBll = new JobFunctionBLL(pLoggingSessionInfo); var jobFuncList = jobFuncBll.Query(new IWhereCondition[] { new EqualsCondition { DateTimeAccuracy = null, FieldName = "CustomerID", Value = customerID }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "IsDelete", Value = "0" }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "Status", Value = "1" } }, null); foreach (DataRow row in jobFuncDT.Rows) { if (row["职衔"] == null || string.IsNullOrEmpty(row["职衔"].ToString())) { continue; } int count = jobFuncList.Count(job => job.Name == row["职衔"].ToString().Trim()); if (count <= 0) { JobFunctionEntity entity = new JobFunctionEntity { Name = row["职衔"].ToString().Trim(), Description = "", JobFunctionID = Guid.NewGuid(), Status = 1, IsDelete = 0, CustomerID = customerID }; jobFuncBll.Create(entity); //return "0|职衔不存在"; } } #endregion #region 部门验证 string typeID = System.Configuration.ConfigurationManager.AppSettings["TypeID"].ToString(); TUnitBLL deptBll = new TUnitBLL(pLoggingSessionInfo); var deptList = deptBll.Query(new IWhereCondition[] { new EqualsCondition { DateTimeAccuracy = null, FieldName = "customer_id", Value = customerID }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "type_id", Value = typeID }, new EqualsCondition { DateTimeAccuracy = null, FieldName = "Status", Value = "1" } }, null); foreach (DataRow row in deptDT.Rows) { if (row["部门"] == null || string.IsNullOrEmpty(row["部门"].ToString())) { continue; } int count = deptList.Count(dept => dept.UnitName == row["部门"].ToString().Trim()); if (count <= 0) { TUnitEntity unitEntity = new TUnitEntity { UnitID = Guid.NewGuid().ToString().Replace("-", ""), UnitName = row["部门"].ToString().Trim(), UnitCode = "1", UnitContact = "", UnitRemark = "", TypeID = typeID, CreateTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), CreateUserID = pLoggingSessionInfo.CurrentUser.User_Id, ModifyTime = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"), ModifyUserID = pLoggingSessionInfo.CurrentUser.User_Id, CustomerID = pLoggingSessionInfo.CurrentUser.customer_id, CUSTOMERLEVEL = 0, Status = "1", StatusDesc = "正常", IfFlag = "1" }; deptBll.Create(unitEntity); //return "0|部门不存在"; } } #endregion #region 角色验证 RoleService rs = new RoleService(pLoggingSessionInfo); IList <RoleModel> roleList = rs.GetAllRoles(); foreach (DataRow row in roleDT.Rows) { if (row["角色"] == null || string.IsNullOrEmpty(row["角色"].ToString())) { continue; } int count = roleList.Count(role => role.Role_Name == row["角色"].ToString().Trim()); if (count <= 0) { return("0|角色不存在"); } } #endregion return(ExportData(customerID, pLoggingSessionInfo, dtClone, jobFuncList, deptList, roleList)); } catch (Exception ex) { return("0|" + ex.Message); } }