예제 #1
0
        public static List <DistrictEntity> GetDistrictList(int schoolId)
        {
            var list = new List <DistrictEntity>();

            try
            {
                var apiUrl = Config.UpocCommonUrl + "Common/Index";
                var method = "GetDistrictList";
                var dict   = new Dictionary <string, string>();
                dict.Add("appId", Config.AppId);
                dict.Add("method", method);
                dict.Add("schoolId", schoolId.ToString());
                var sign = Helper.GetSign(dict);
                dict.Add("sign", sign);
                var result = Helper.DoPost(apiUrl, dict);                 //提交post请求
                result = result.Replace("\r\n", "").Replace("\\", "");
                var resultData = Helper.FromJsonTo <Result <List <DistrictEntity> > >(result);
                if (resultData.State == 1 && resultData.Data != null)
                {
                    list = resultData.Data;
                    list.ForEach(t => t.DistrictCode = t.DistrictCode.ToLower());
                    var defaultEntity = new DistrictEntity();
                    defaultEntity.DistrictName = "全部区域";
                    list.Insert(0, defaultEntity);
                    return(list);
                }
                return(list);
            }
            catch (Exception ex)
            {
                return(list);
            }
        }
예제 #2
0
        public BaseApiResponse CheckUniqueDistrict(DistrictEntity model)
        {
            var response = new BaseApiResponse();

            try
            {
                SqlParameter[] param = { new SqlParameter("DistrictID", (object)model.DistrictID ?? (object)DBNull.Value)
                                         ,                              new SqlParameter("DistrictName", (object)model.DistrictName ?? (object)DBNull.Value)
                                         ,                              new SqlParameter("StateID", (object)model.StateId ?? (object)DBNull.Value) };
                var            result = _repository.ExecuteSQL <int>("CheckUniqueDistrict", param).FirstOrDefault();
                if (result == 0)
                {
                    response.Success = false;
                }
                else
                {
                    response.Success = true;
                }
            }
            catch (Exception ex)
            {
                response.Message.Add(ex.Message);
            }
            return(response);
        }
예제 #3
0
 public ActionResult SaveForm(string keyValue, DistrictEntity entity)
 {
     try
     {
         if (entity.LinkToCompany == null)
         {
             entity.LinkToCompany = "";
         }
         if (entity.LinkToCompanyID == null)
         {
             entity.LinkToCompanyID = "";
         }
         entity.DistrictName = entity.DistrictName.Replace("\\", "╲");
         bis_districtbll.SaveForm(keyValue, entity);
         if (!string.IsNullOrEmpty(entity.LinkToCompanyID))
         {
             dsBLL.Update(entity.DistrictID, entity.LinkToCompanyID.TrimEnd(','), entity.DistrictCode, entity.DistrictName, entity.ChargeDeptCode, OperatorProvider.Provider.Current());
         }
         return(Success("操作成功。"));
     }
     catch (Exception ex)
     {
         return(Error(ex.ToString()));
     }
 }
예제 #4
0
        public ActionResult <Api <DistrictDTO> > AddDistrict(DistrictEntity district)
        {
            DistrictDTO dto = _districtService.Save(district);

            Api <DistrictDTO> result = new Api <DistrictDTO>(200, dto, "Success", null);

            return(Ok(result));
        }
예제 #5
0
 /// <summary>
 /// 保存表单(新增、修改)
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void SaveForm(string keyValue, DistrictEntity entity)
 {
     try
     {
         service.SaveForm(keyValue, entity);
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #6
0
 public bool UpdateDistrict(DistrictEntity districtEntity)
 {
     try
     {
         var  district  = Mapper.Map <DistrictEntity, District>(districtEntity);
         bool isEditted = unitOfWork.DistrictRepository.Update(district);
         return(isEditted);
     }
     catch (Exception)
     {
         return(false);
     }
 }
 private List <RevenueFileRecord> ReadRevenueRecords(DistrictEntity district)
 {
     using (var fs = File.OpenRead($"./Imports/{district.Name}_Revenues.csv"))
     {
         using (var textReader = new StreamReader(fs))
         {
             using (var csv = new CsvReader(textReader))
             {
                 csv.Read();
                 csv.ReadHeader();
                 return(csv.GetRecords <RevenueFileRecord>().ToList());
             }
         }
     }
 }
예제 #8
0
        public async Task SeedAsync(DataSeedContext context)
        {
            var provinceE = new ProvinceEntity("Western");
            var districtE = new DistrictEntity("Colombo", provinceE.Id);
            var cityE     = new CityEntity(districtE.Id)
            {
                CityName    = "Delkanda",
                Geolocation = "6.784568:79.546545"
            };

            await ProvinceRepo.InsertAsync(provinceE);

            await DistrictRepo.InsertAsync(districtE);

            await CityRepo.InsertAsync(cityE);
        }
예제 #9
0
 public int AddDistrict(DistrictEntity districtEntity)
 {
     try
     {
         var district    = Mapper.Map <DistrictEntity, District>(districtEntity);
         var newDistrict = unitOfWork.DistrictRepository.Add(district);
         if (newDistrict != null)
         {
             return(newDistrict.DistrictId);
         }
         return(0);
     }
     catch (Exception)
     {
         return(0);
     }
 }
예제 #10
0
        public DistrictDTO Save(DistrictEntity district)
        {
            var transaction = _humanManagerContext.Database.BeginTransaction();

            try
            {
                district = _humanManagerContext.Districts.Add(district).Entity;
                _humanManagerContext.SaveChanges();

                transaction.Commit();
                DistrictDTO dto = _mapper.Map <DistrictDTO>(district);
                return(dto);
            }
            catch
            {
                transaction.Rollback();
                return(null);
            }
        }
예제 #11
0
        private List <FileRecords.ExpenditureFileRecord> ReadExpenditureRecords(DistrictEntity district)
        {
            var totalsSkipped = 0;
            var blanksSkipped = 0;
            var records       = new List <ExpenditureFileRecord>();

            using (var fs = File.OpenRead($"./Imports/{district.Name}_Expenditures.csv"))
            {
                using (var textReader = new StreamReader(fs))
                {
                    using (var csv = new CsvReader(textReader))
                    {
                        csv.Read();
                        csv.ReadHeader();

                        while (csv.Read())
                        {
                            //skip any totals or empty records
                            var firstField = csv.GetField(0);
                            if (string.IsNullOrWhiteSpace(firstField))
                            {
                                blanksSkipped++;
                                continue;
                            }
                            if (firstField.StartsWith("Total", StringComparison.InvariantCultureIgnoreCase))
                            {
                                totalsSkipped++;
                                continue;
                            }

                            var record = csv.GetRecord <ExpenditureFileRecord>();
                            records.Add(record);
                        }
                    }
                }
            }

            Console.WriteLine($"Expenditures - Blank Records: {blanksSkipped}, Totals Skipped: {totalsSkipped}");
            return(records);
        }
예제 #12
0
        public BaseApiResponse InsertDistrict(DistrictEntity model)
        {
            var response = new BaseApiResponse();

            try
            {
                SqlParameter[] param = { new SqlParameter("districtname", (object)model.DistrictName ?? (object)DBNull.Value)
                                         ,                                new SqlParameter("stateid", (object)model.StateId ?? (object)DBNull.Value)
                                         ,                                new SqlParameter("isactive", (object)model.IsActive ?? (object)DBNull.Value)
                                         ,                                new SqlParameter("createdBy", (object)model.CreatedBy ?? (object)DBNull.Value) };
                var            result = _repository.ExecuteSQL <int>("InsertDistrict", param).FirstOrDefault();
                if (result > 0)
                {
                    response.Success = true;
                }
            }
            catch (Exception ex)
            {
                response.Message.Add(ex.Message);
            }
            return(response);
        }
예제 #13
0
        /// <summary>
        /// 保存表单(新增、修改)
        /// </summary>
        /// <param name="keyValue">主键值</param>
        /// <param name="entity">实体对象</param>
        /// <returns></returns>
        public void SaveForm(string keyValue, string DistrictId, string PointList)
        {
            if (!string.IsNullOrEmpty(keyValue))
            {
                Repository <AreagpsEntity> inlogdb = new Repository <AreagpsEntity>(DbFactory.Base());
                AreagpsEntity entity = inlogdb.FindEntity(keyValue);
                entity.PointList = PointList;
                entity.Modify(keyValue);
                this.BaseRepository().Update(entity);
            }
            else
            {
                Repository <DistrictEntity> inlogdb = new Repository <DistrictEntity>(DbFactory.Base());
                DistrictEntity dis = inlogdb.FindEntity(DistrictId);

                AreagpsEntity entity = new AreagpsEntity();
                entity.AreaId    = dis.DistrictID;
                entity.AreaName  = dis.DistrictName;
                entity.PointList = PointList;
                entity.Create();
                this.BaseRepository().Insert(entity);
            }
        }
예제 #14
0
        public string ImportTrainLib()
        {
            try
            {
                if (OperatorProvider.Provider.Current().IsSystem)
                {
                    return("超级管理员无此操作权限");
                }
                string orgId        = OperatorProvider.Provider.Current().OrganizeId;
                int    error        = 0;
                string message      = "请选择格式正确的文件再导入!";
                string falseMessage = "";
                int    count        = HttpContext.Request.Files.Count;
                if (count > 0)
                {
                    HttpPostedFileBase file = HttpContext.Request.Files[0];
                    if (string.IsNullOrEmpty(file.FileName))
                    {
                        return(message);
                    }
                    if (!(file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xls") || file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx")))
                    {
                        return(message);
                    }
                    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(file.FileName);
                    file.SaveAs(Server.MapPath("~/Resource/temp/" + fileName));
                    Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook();
                    wb.Open(Server.MapPath("~/Resource/temp/" + fileName), file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx")?Aspose.Cells.FileFormatType.Excel2007Xlsx:Aspose.Cells.FileFormatType.Excel2003);
                    var sheet = wb.Worksheets[0];
                    if (sheet.Cells[1, 1].StringValue != "工作任务" || sheet.Cells[1, 2].StringValue != "风险等级" || sheet.Cells[1, 3].StringValue != "作业类型" ||
                        sheet.Cells[1, 4].StringValue != "作业岗位" || sheet.Cells[1, 5].StringValue != "任务描述" || sheet.Cells[1, 6].StringValue != "资源准备" ||
                        sheet.Cells[1, 7].StringValue != "作业区域" || sheet.Cells[1, 8].StringValue != "工序" || sheet.Cells[1, 9].StringValue != "潜在危险" || sheet.Cells[1, 10].StringValue != "防范措施")
                    {
                        return(message);
                    }
                    var RiskLibList    = new List <RisktrainlibEntity>();
                    var RiskDetailList = new List <RisktrainlibdetailEntity>();
                    var date           = DateTime.Now;
                    for (int i = 2; i <= sheet.Cells.MaxDataRow; i++)
                    {
                        var entity = new RisktrainlibEntity();
                        entity.Create();
                        entity.WorkTask  = sheet.Cells[i, 1].StringValue;
                        entity.RiskLevel = sheet.Cells[i, 2].StringValue;
                        switch (entity.RiskLevel)
                        {
                        case "重大风险":
                            entity.RiskLevelVal = "1";
                            break;

                        case "较大风险":
                            entity.RiskLevelVal = "2";
                            break;

                        case "一般风险":
                            entity.RiskLevelVal = "3";
                            break;

                        case "低风险":
                            entity.RiskLevelVal = "4";
                            break;

                        default:
                            break;
                        }
                        entity.WorkType    = sheet.Cells[i, 3].StringValue;
                        entity.WorkPost    = sheet.Cells[i, 4].StringValue;
                        entity.WorkDes     = sheet.Cells[i, 5].StringValue;
                        entity.Resources   = sheet.Cells[i, 6].StringValue;
                        entity.WorkArea    = sheet.Cells[i, 7].StringValue;
                        entity.DataSources = "2";
                        if (string.IsNullOrEmpty(sheet.Cells[i, 1].StringValue))
                        {
                            entity.ID = RiskLibList[i - 1 - 2].ID;
                        }
                        RiskLibList.Add(entity);
                    }

                    for (int i = 2; i <= sheet.Cells.MaxDataRow; i++)
                    {
                        var dentity = new RisktrainlibdetailEntity();
                        if (sheet.Cells[i, 8].StringValue.Length > 1000)
                        {
                            falseMessage += "</br>" + "第" + (i + 1) + "行工序字符长度超长,未能导入.";
                            error++;
                            continue;
                        }
                        if (sheet.Cells[i, 9].StringValue.Length > 1000)
                        {
                            falseMessage += "</br>" + "第" + (i + 1) + "行存在风险字符长度超长,未能导入.";
                            error++;
                            continue;
                        }
                        if (sheet.Cells[i, 10].StringValue.Length > 1000)
                        {
                            falseMessage += "</br>" + "第" + (i + 1) + "行管理措施字符长度超长,未能导入.";
                            error++;
                            continue;
                        }
                        dentity.Process  = sheet.Cells[i, 8].StringValue;
                        dentity.AtRisk   = sheet.Cells[i, 9].StringValue;
                        dentity.Controls = sheet.Cells[i, 10].StringValue;
                        dentity.Create();

                        dentity.WorkId = RiskLibList[i - 2].ID;

                        RiskDetailList.Add(dentity);
                    }
                    RiskLibList = RiskLibList.Where(x => x.WorkTask != "").ToList();
                    for (int i = 0; i < RiskLibList.Count; i++)
                    {
                        if (!string.IsNullOrWhiteSpace(RiskLibList[i].WorkType))
                        {
                            var    data     = new DataItemDetailBLL().GetDataItemListByItemCode("'StatisticsType'");
                            string worktype = string.Empty;
                            var    list     = RiskLibList[i].WorkType.Split(',');
                            for (int k = 0; k < list.Length; k++)
                            {
                                var entity = data.Where(x => x.ItemName == list[k].Trim()).FirstOrDefault();
                                if (entity != null)
                                {
                                    if (string.IsNullOrWhiteSpace(worktype))
                                    {
                                        RiskLibList[i].WorkTypeCode += entity.ItemValue + ",";
                                        worktype += entity.ItemName + ",";
                                    }
                                    else
                                    {
                                        if (!worktype.Contains(entity.ItemName))
                                        {
                                            RiskLibList[i].WorkTypeCode += entity.ItemValue + ",";
                                            worktype += entity.ItemName + ",";
                                        }
                                    }
                                }
                                //if (entity != null)
                                //{
                                //    RiskLibList[i].WorkTypeCode += entity.ItemValue + ",";
                                //}
                                //else
                                //{
                                //    RiskLibList[i].WorkType.Replace(list[k], "");
                                //}
                            }
                            if (!string.IsNullOrWhiteSpace(RiskLibList[i].WorkTypeCode))
                            {
                                RiskLibList[i].WorkTypeCode = RiskLibList[i].WorkTypeCode.Substring(0, RiskLibList[i].WorkTypeCode.Length - 1);
                                RiskLibList[i].WorkType     = worktype.Substring(0, worktype.Length - 1);
                            }
                        }
                        if (string.IsNullOrWhiteSpace(RiskLibList[i].WorkArea))
                        {
                            //falseMessage += "</br>" + "第" + (i+1) + "行区域为空,未能导入.";
                            //error++;
                            //continue;
                        }
                        else
                        {
                            DistrictEntity disEntity = districtBLL.GetDistrict(orgId, RiskLibList[i].WorkArea);
                            if (disEntity == null)
                            {
                                //电厂没有该区域则不赋值
                                RiskLibList[i].WorkArea = "";
                            }
                            else
                            {
                                RiskLibList[i].WorkAreaId = disEntity.DistrictID;
                            }
                        }
                    }
                    risktrainlibbll.InsertImportData(RiskLibList, RiskDetailList);
                    //risktrainlibbll.InsertRiskTrainLib(RiskLibList);
                    //risktrainlibdetailbll.InsertRiskTrainDetailLib(RiskDetailList);
                    count    = RiskDetailList.Count;
                    message  = "共有" + count + "条记录,成功导入" + (count - error) + "条,失败" + error + "条";
                    message += "</br>" + falseMessage;
                    //DataTable dt = cells.ExportDataTable(0, 0, cells.MaxDataRow, cells.MaxColumn + 1, true);
                }
                return(message);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }

            //return null;
        }
예제 #15
0
 // POST: api/Districts
 public int Post([FromBody] DistrictEntity state)
 {
     return(1);
 }
예제 #16
0
        public static DataHandler SeedData(decimal accrued = 200, decimal received = 100, decimal percent = 25, decimal rate = 166)
        {
            var district = new DistrictEntity()
            {
                Code = 1,
                Name = "test"
            };

            var street = new StreetEntity()
            {
                DistrictId = district.Id,
                District   = district,
                StreetName = "1",
            };

            var location = new LocationEntity()
            {
                StreetId        = street.Id,
                Street          = street,
                HouseNumber     = "1",
                BuildingCorpus  = "2",
                ApartmentNumber = "3",
            };

            var account = new AccountEntity()
            {
                StreetId   = street.Id,
                Account    = 1,
                LocationId = location.Id,
                Location   = location
            };

            var payment = new PaymentDocumentEntity()
            {
                AccountId   = account.Id,
                Account     = account,
                Accrued     = accrued,
                Received    = received,
                PaymentDate = DateTime.Now
            };

            var defaultRate = new RateEntity()
            {
                Price     = Convert.ToDecimal(ConfigurationManager.AppSettings["DefaultPrice"]),
                IsDefault = true
            };

            var connectionString = ConfigurationManager.ConnectionStrings[ConfigurationManager.AppSettings["ConnectionName"]].ConnectionString;

            using (var dataBase = new ApplicationDbContext(connectionString))
            {
                dataBase.Database.Delete();
                dataBase.Database.Create();

                dataBase.Districts.Add(district);
                dataBase.Streets.Add(street);
                dataBase.Locations.Add(location);
                dataBase.Accounts.Add(account);
                dataBase.PaymentDocuments.Add(payment);
                dataBase.Rates.Add(defaultRate);

                dataBase.SaveChanges();
            }

            return(new DataHandler()
            {
                AccountEntity = account,
                StreetEntity = street,
                LocationEntity = location
            });
        }
예제 #17
0
        public string ImportData(string OrganizeId, string orgName)
        {
            try
            {
                int    error = 0;
                string orgId = OperatorProvider.Provider.Current().OrganizeId;
                if (!string.IsNullOrEmpty(OrganizeId))
                {
                    orgId = OrganizeId;
                }
                string message      = "请选择格式正确的文件再导入!";
                string falseMessage = "";
                int    count        = HttpContext.Request.Files.Count;
                if (count > 0)
                {
                    HttpPostedFileBase file = HttpContext.Request.Files[0];
                    if (string.IsNullOrEmpty(file.FileName))
                    {
                        return(message);
                    }
                    if (!(file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xls") || file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx")))
                    {
                        return(message);
                    }
                    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(file.FileName);
                    file.SaveAs(Server.MapPath("~/Resource/temp/" + fileName));
                    Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook();
                    wb.Open(Server.MapPath("~/Resource/temp/" + fileName));
                    Aspose.Cells.Cells cells = wb.Worksheets[0].Cells;
                    DataTable          dt    = cells.ExportDataTable(0, 0, cells.MaxDataRow + 1, cells.MaxColumn + 1, true);
                    //DataTable dt = ExcelHelper.ExcelImport(Server.MapPath("~/Resource/temp/" + fileName));
                    int order   = 1;
                    var deptBll = new DepartmentBLL();
                    for (int i = 1; i < dt.Rows.Count; i++)
                    {
                        order = i;
                        //区域名称
                        string areaName = dt.Rows[i][0].ToString().Trim();
                        if (string.IsNullOrWhiteSpace(areaName))
                        {
                            falseMessage += "</br>" + "第" + (i + 2) + "行区域名称为空,未能导入.";
                            error++;
                            continue;
                        }
                        //上级区域名称
                        string parentName = dt.Rows[i][1].ToString().Trim();
                        //管控部门名称
                        string deptName = dt.Rows[i][2].ToString().Trim();
                        if (string.IsNullOrWhiteSpace(deptName))
                        {
                            falseMessage += "</br>" + "第" + (i + 2) + "行管控部门名称为空,未能导入.";
                            error++;
                            continue;
                        }
                        //区域负责人
                        string dutyUser = dt.Rows[i][3].ToString().Trim();
                        if (string.IsNullOrWhiteSpace(dutyUser))
                        {
                            falseMessage += "</br>" + "第" + (i + 2) + "行区域负责人名称为空,未能导入.";
                            error++;
                            continue;
                        }
                        DistrictEntity area = new DistrictEntity();
                        area.DistrictName         = areaName;
                        area.ChargeDept           = deptName;
                        area.DisreictChargePerson = dutyUser;
                        area.OrganizeId           = OrganizeId;
                        area.BelongCompany        = orgName;
                        //验证上级区域名称并获取相关信息
                        if (!string.IsNullOrWhiteSpace(parentName))
                        {
                            DataTable dtArea = deptBll.GetDataTable(string.Format("select DistrictId from BIS_DISTRICT where DistrictName='{0}' and organizeid='{1}'", parentName, OrganizeId));
                            if (dtArea.Rows.Count > 0)
                            {
                                area.ParentID = dtArea.Rows[0][0].ToString();
                                dtArea        = deptBll.GetDataTable(string.Format("select count(1) from BIS_DISTRICT where DistrictName='{0}' and organizeid='{1}' and parentid='{2}'", areaName, OrganizeId, area.ParentID));
                                if (dtArea.Rows[0][0].ToString() != "0")
                                {
                                    falseMessage += "</br>" + "第" + (i + 2) + "行区域信息已经存在,未能导入.已存在区域信息:" + areaName;
                                    error++;
                                    continue;
                                }
                            }
                            else
                            {
                                falseMessage += "</br>" + "第" + (i + 2) + "行上级区域名称与系统区域不匹配,未能导入.错误的区域信息:" + parentName;
                                error++;
                                continue;
                            }
                        }
                        else
                        {
                            area.ParentID = "0";
                            DataTable dtArea = deptBll.GetDataTable(string.Format("select count(1) from BIS_DISTRICT where DistrictName='{0}' and organizeid='{1}' and parentid='0'", areaName, OrganizeId));
                            if (dtArea.Rows[0][0].ToString() != "0")
                            {
                                falseMessage += "</br>" + "第" + (i + 2) + "行区域信息已经存在,未能导入.错误的区域信息:" + areaName;
                                error++;
                                continue;
                            }
                        }
                        //验证管控部门并获取相关信息
                        if (!string.IsNullOrWhiteSpace(deptName))
                        {
                            DataTable dtDept = deptBll.GetDataTable(string.Format("select encode,departmentid,MANAGER,MANAGERID,OuterPhone from BASE_DEPARTMENT where fullname='{0}' and organizeid='{1}'", deptName, OrganizeId));
                            if (dtDept.Rows.Count > 0)
                            {
                                area.ChargeDeptCode     = dtDept.Rows[0][0].ToString();
                                area.ChargeDeptID       = dtDept.Rows[0][1].ToString();
                                area.DeptChargePerson   = dtDept.Rows[0][2].ToString();
                                area.DeptChargePersonID = dtDept.Rows[0][3].ToString();
                                area.LinkTel            = dtDept.Rows[0][4].ToString();
                            }
                            else
                            {
                                falseMessage += "</br>" + "第" + (i + 2) + "行管控部门名称与系统部门名称不匹配,错误的部门信息:" + deptName;
                                error++;
                                continue;
                            }
                        }
                        //验证区域负责人并获取相关信息
                        if (!string.IsNullOrWhiteSpace(dutyUser))
                        {
                            DataTable     dtUsers = deptBll.GetDataTable(string.Format("select account from BASE_user where organizeid='{1}' and realname in('{0}') ", dutyUser.Replace(",", "','"), OrganizeId));
                            StringBuilder sb      = new StringBuilder();
                            foreach (DataRow dr in dtUsers.Rows)
                            {
                                sb.AppendFormat("{0},", dr[0].ToString());
                            }
                            string users = sb.ToString().TrimEnd(',');
                            area.DisreictChargePersonID = sb.ToString().TrimEnd(',');
                            if (dutyUser.Split(',').Length != users.Split(',').Length)
                            {
                                falseMessage += "</br>" + "第" + (i + 2) + "行区域负责人信息与系统中人员不匹配,错误信息:" + dutyUser;
                                error++;
                            }
                        }
                        try
                        {
                            bis_districtbll.SaveForm("", area);
                        }
                        catch (Exception ex)
                        {
                            falseMessage += "</br>" + "第" + (i + 2) + "行数据插入出现异常,错误信息:" + Newtonsoft.Json.JsonConvert.SerializeObject(ex);
                            error++;
                        }
                    }
                    count    = dt.Rows.Count - 1;
                    message  = "共有" + count + "条记录,成功导入" + (count - error) + "条,失败" + error + "条";
                    message += "</br>" + falseMessage;
                }

                return(message);
            }
            catch (Exception ex)
            {
                return(Newtonsoft.Json.JsonConvert.SerializeObject(ex));
            }
        }
예제 #18
0
        /// <summary>
        /// 区域树列表
        /// </summary>
        /// <returns>区域树列表</returns>
        public ActionResult GetTreeJson(string orgID = "0", string areaIds = "", string keyword = "", string checkAreaids = "")
        {
            List <DistrictEntity> list         = bis_districtbll.GetList().ToList();
            List <DistrictEntity> districtdata = new List <DistrictEntity>();

            if (!string.IsNullOrEmpty(keyword))
            {
                list = list.Where(t => t.DistrictName.Contains(keyword.Trim())).ToList();
            }
            districtdata = list.OrderBy(a => a.SortCode).ToList();
            if (orgID != "0")
            {
                districtdata = districtdata.Where(a => a.OrganizeId == orgID).ToList();
            }
            if (!string.IsNullOrEmpty(areaIds))
            {
                districtdata = districtdata.Where(t => areaIds.Contains(t.DistrictID)).ToList();
            }
            List <DistrictEntity> list1 = new List <DistrictEntity>();

            foreach (DistrictEntity entity in districtdata)
            {
                string code = string.Empty;
                if (entity.DistrictCode.Length > 5)
                {
                    code = entity.DistrictCode.Substring(0, 6);
                }
                else
                {
                    code = entity.DistrictCode.Substring(0, 3);
                }
                if (districtdata.Where(t => t.DistrictCode == code).Count() == 0)
                {
                    DistrictEntity de = list.Where(t => t.DistrictCode == code).FirstOrDefault();
                    if (de != null)
                    {
                        if (!list1.Contains(de))
                        {
                            list1.Add(de);
                        }
                    }
                }
            }
            districtdata = districtdata.Concat(list1).ToList();
            districtdata = districtdata.OrderBy(t => t.DistrictCode).ThenBy(t => t.SortCode).ToList();
            List <TreeEntity> treeList = new List <TreeEntity>();

            foreach (DistrictEntity item in districtdata)
            {
                int chkState = 0;
                //设置部门默认选中状态
                if (!string.IsNullOrEmpty(checkAreaids))
                {
                    string[] arrids = checkAreaids.Split(',');
                    if (arrids.Contains(item.DistrictID))
                    {
                        chkState = 1;
                    }
                }
                TreeEntity tree        = new TreeEntity();
                bool       hasChildren = districtdata.Count(t => t.ParentID == item.DistrictID) == 0 ? false : true;
                tree.id              = item.DistrictID;
                tree.text            = item.DistrictName.Replace("\\", "╲");
                tree.value           = item.DistrictCode;
                tree.Attribute       = "Code";
                tree.AttributeValue  = item.DistrictCode;
                tree.AttributeA      = "Dept";
                tree.AttributeValueA = item.ChargeDept + "," + item.ChargeDeptCode + "," + item.ChargeDeptID;
                tree.parentId        = string.IsNullOrEmpty(keyword)? item.ParentID:"0";
                tree.isexpand        = false;
                tree.complete        = true;
                tree.hasChildren     = string.IsNullOrEmpty(keyword)? hasChildren:false;
                tree.showcheck       = true;

                tree.checkstate = chkState;
                treeList.Add(tree);
            }
            return(Content(treeList.TreeToJson("0")));
        }
예제 #19
0
        public ActionResult GetCurListJson(string areaId = "", string mode = "", string planId = "", string dataType = "", string objId = "", string areaName = "")
        {
            try
            {
                var curUser = new OperatorProvider().Current();
                List <DistrictEntity> list = new List <DistrictEntity>();
                if (!string.IsNullOrEmpty(objId))
                {
                    list = bis_districtbll.GetOrgList(objId).ToList();
                }
                else
                {
                    list = bis_districtbll.GetList().ToList();
                }
                if (!string.IsNullOrWhiteSpace(areaName))
                {
                    list = list.Where(t => t.DistrictName.Contains(areaName.Trim())).ToList();
                }
                List <DistrictEntity> allList      = bis_districtbll.GetOrgList(curUser.OrganizeId).ToList();
                List <DistrictEntity> districtdata = list;
                if (!curUser.IsSystem && string.IsNullOrEmpty(objId))
                {
                    districtdata = districtdata.Where(p => p.OrganizeId == curUser.OrganizeId).ToList();
                }

                if (string.IsNullOrEmpty(areaId))
                {
                    if (mode == "1")
                    {
                        RiskPlanBLL plan = new RiskPlanBLL();
                        areaId       = plan.GetPlanAreaIds(0, planId);
                        districtdata = districtdata.Where(t => !areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList();

                        List <DistrictEntity> list1 = districtdata.Where(t => t.DistrictCode.Length > 6).ToList();
                        foreach (DistrictEntity entity in list1)
                        {
                            if (entity.DistrictCode.Length >= 6)
                            {
                                string code = entity.DistrictCode.Substring(0, 6);
                                var    d    = districtdata.Where(t => t.DistrictCode == code);
                                if (districtdata.Where(t => t.DistrictCode == code).Count() == 0)
                                {
                                    DistrictEntity de = list.Where(t => t.DistrictCode == code).FirstOrDefault();
                                    if (!districtdata.Contains(de))
                                    {
                                        districtdata.Add(de);
                                    }
                                }
                            }
                        }
                    }
                    //else
                    //{
                    //    districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList();
                    //}
                    List <TreeGridEntity> treeList = new List <TreeGridEntity>();

                    string parentId = "0";
                    if (!string.IsNullOrWhiteSpace(areaName) && districtdata.Count > 0)
                    {
                        districtdata = GetParentId(districtdata, allList);
                        // parentId = districtdata[0].ParentID;
                    }
                    districtdata = districtdata.OrderBy(a => a.DistrictCode).ThenBy(a => a.SortCode).ToList();
                    foreach (DistrictEntity item in districtdata)
                    {
                        TreeGridEntity tree        = new TreeGridEntity();
                        int            count       = districtdata.Count(t => t.DistrictCode.StartsWith(item.DistrictCode));
                        int            count1      = districtdata.Count(t => t.DistrictCode.StartsWith(item.DistrictCode) && t.DistrictCode != item.DistrictCode);
                        bool           hasChildren = count1 == 0 ? false : true;
                        tree.id          = item.DistrictID;
                        tree.parentId    = item.ParentID;
                        tree.expanded    = false;
                        tree.hasChildren = hasChildren;
                        tree.childCount  = count;
                        tree.code        = item.DistrictCode;
                        string itemJson = item.ToJson();
                        tree.entityJson = itemJson;
                        treeList.Add(tree);
                    }
                    return(Content(treeList.TreeJson(parentId)));
                }
                else
                {
                    if (mode == "1")
                    {
                        RiskPlanBLL plan = new RiskPlanBLL();
                        string      ids  = plan.GetPlanAreaIds(0, planId);
                        if (!string.IsNullOrEmpty(ids) && dataType.Equals("0"))
                        {
                            areaId       = ids;
                            districtdata = districtdata.Where(t => !areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList();
                        }
                        else
                        {
                            if (dataType == "0")
                            {
                                districtdata = districtdata.Where(t => t.DistrictID != "0").ToList();
                            }
                            else
                            {
                                districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList();
                            }
                        }
                        List <DistrictEntity> list1 = districtdata.Where(t => t.DistrictCode.Length > 6).ToList();
                        foreach (DistrictEntity entity in list1)
                        {
                            if (entity.DistrictCode.Length >= 6)
                            {
                                string code = entity.DistrictCode.Substring(0, 6);
                                if (districtdata.Where(t => t.DistrictCode == code).Count() == 0)
                                {
                                    DistrictEntity de = list.Where(t => t.DistrictCode == code).FirstOrDefault();
                                    if (!districtdata.Contains(de))
                                    {
                                        districtdata.Add(de);
                                    }
                                }
                            }
                        }
                    }
                    else
                    {
                        districtdata = districtdata.Where(t => areaId.Contains(t.DistrictID) && t.DistrictID != "0").ToList();
                    }
                    districtdata = districtdata.OrderBy(a => a.DistrictCode).ThenBy(a => a.SortCode).ToList();

                    var JsonData = new
                    {
                        rows    = districtdata,
                        total   = 1,
                        page    = 1,
                        records = districtdata.Count
                    };
                    return(Content(JsonData.ToJson()));
                }
            }
            catch (Exception ex)
            {
                return(Error(ex.ToString()));
            }
        }
 private Dictionary <int, BudgetEntity> GetBudgetByFiscalYearMapping(SchoolDbContext dbContext, DistrictEntity district)
 {
     return(dbContext.Set <BudgetEntity>()
            .Where(x => x.DistrictId == district.DistrictId)
            .ToDictionary(x => x.FiscalYearId, x => x));
 }
예제 #21
0
        public string ImportSuppliesData()
        {
            int    error   = 0;
            string message = "请选择格式正确的文件再导入!";

            string falseMessage = "";
            int    count        = HttpContext.Request.Files.Count;

            if (count > 0)
            {
                count = 0;
                HttpPostedFileBase file = HttpContext.Request.Files[0];
                if (string.IsNullOrEmpty(file.FileName))
                {
                    return(message);
                }
                if (!(file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xls") || file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx")))
                {
                    return(message);
                }

                string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(file.FileName);
                file.SaveAs(Server.MapPath("~/Resource/temp/" + fileName));
                Aspose.Cells.Workbook wb = new Aspose.Cells.Workbook();
                wb.Open(Server.MapPath("~/Resource/temp/" + fileName), file.FileName.Substring(file.FileName.IndexOf('.')).Contains("xlsx") ? Aspose.Cells.FileFormatType.Excel2007Xlsx : Aspose.Cells.FileFormatType.Excel2003);
                Operator user = ERCHTMS.Code.OperatorProvider.Provider.Current();

                //判断表头是否正确,以免使用错误模板
                var sheet = wb.Worksheets[0];
                if (sheet.Cells[2, 0].StringValue != "物资类型" || sheet.Cells[2, 1].StringValue != "物资名称" || sheet.Cells[2, 2].StringValue != "规格型号" || sheet.Cells[2, 3].StringValue != "数量" ||
                    sheet.Cells[2, 4].StringValue != "单位" || sheet.Cells[2, 5].StringValue != "存放区域" || sheet.Cells[2, 6].StringValue != "存放地点" || sheet.Cells[2, 7].StringValue != "主要功能")
                {
                    return(message);
                }
                //List<SuppliesEntity> slist = new List<SuppliesEntity>();
                for (int i = 3; i <= sheet.Cells.MaxDataRow; i++)
                {
                    count++;
                    SuppliesEntity entity = new SuppliesEntity();
                    if (string.IsNullOrWhiteSpace(sheet.Cells[i, 1].StringValue))
                    {
                        falseMessage += "</br>" + "第" + (i + 1) + "行物资名称不能为空,未能导入.";
                        error++;
                        continue;
                    }
                    if (string.IsNullOrWhiteSpace(sheet.Cells[i, 3].StringValue))
                    {
                        falseMessage += "</br>" + "第" + (i + 1) + "行数量不能为空,未能导入.";
                        error++;
                        continue;
                    }
                    entity.SUPPLIESTYPENAME = sheet.Cells[i, 0].StringValue;
                    var item = new DataItemDetailBLL().GetDataItemListByItemCode("'MAE_SUPPLIESTYPE'").Where(x => x.ItemName == entity.SUPPLIESTYPENAME).ToList().FirstOrDefault();
                    if (item != null)
                    {
                        entity.SUPPLIESTYPE = item.ItemValue;
                    }
                    entity.SUPPLIESNAME      = sheet.Cells[i, 1].StringValue;
                    entity.Models            = sheet.Cells[i, 2].StringValue;
                    entity.NUM               = Convert.ToInt32(sheet.Cells[i, 3].StringValue);
                    entity.SUPPLIESUNTILNAME = sheet.Cells[i, 4].StringValue;
                    var itemUnit = new DataItemDetailBLL().GetDataItemListByItemCode("'MAE_SUPPLIESUNTIL'").Where(x => x.ItemName == entity.SUPPLIESUNTILNAME).ToList().FirstOrDefault();
                    if (itemUnit != null)
                    {
                        entity.SUPPLIESUNTIL = itemUnit.ItemValue;
                    }
                    if (!string.IsNullOrWhiteSpace(sheet.Cells[i, 5].StringValue))
                    {
                        DistrictEntity district = districtbll.GetDistrict(user.OrganizeId, sheet.Cells[i, 5].StringValue);
                        if (district == null)
                        {
                            falseMessage += "</br>" + "第" + (i + 1) + "行区域不是系统内区域,未能导入.";
                            error++;
                            continue;
                        }
                        else
                        {
                            entity.WorkAreaCode = district.DistrictCode;
                            entity.WorkAreaName = district.DistrictName;
                        }
                    }
                    entity.STORAGEPLACE = sheet.Cells[i, 6].StringValue;
                    entity.MAINFUN      = sheet.Cells[i, 7].StringValue;
                    entity.CREATEDATE   = DateTime.Now;
                    entity.DEPARTID     = user.DeptId;
                    entity.DEPARTNAME   = user.DeptName;
                    entity.USERID       = user.UserId;
                    entity.USERNAME     = user.UserName;
                    entity.SUPPLIESCODE = suppliesbll.GetMaxCode();
                    //entity.Create();
                    suppliesbll.SaveForm(entity.ID, entity);
                    var entityInorOut = new InoroutrecordEntity
                    {
                        USERID            = entity.USERID,
                        USERNAME          = entity.USERNAME,
                        DEPARTID          = entity.DEPARTID,
                        DEPARTNAME        = entity.DEPARTNAME,
                        INOROUTTIME       = DateTime.Now,
                        SUPPLIESCODE      = entity.SUPPLIESCODE,
                        SUPPLIESTYPE      = entity.SUPPLIESTYPE,
                        SUPPLIESTYPENAME  = entity.SUPPLIESTYPENAME,
                        SUPPLIESNAME      = entity.SUPPLIESNAME,
                        SUPPLIESUNTIL     = entity.SUPPLIESUNTIL,
                        SUPPLIESUNTILNAME = entity.SUPPLIESUNTILNAME,
                        NUM          = entity.NUM,
                        STORAGEPLACE = entity.STORAGEPLACE,
                        MOBILE       = entity.MOBILE,
                        SUPPLIESID   = entity.ID,
                        STATUS       = 0
                    };
                    var inoroutrecordbll = new InoroutrecordBLL();
                    inoroutrecordbll.SaveForm("", entityInorOut);

                    //slist.Add(entity);
                }

                message = "共有" + count + "条记录,成功导入" + (count - error) + "条,失败" + error + "条。";
                if (error > 0)
                {
                    message += "</br>" + falseMessage;
                }
            }
            return(message);
        }