예제 #1
0
 public ActionResult SaveFormY(SafetyworksuperviseEntity entity, [System.Web.Http.FromBody] string dataJson)
 {
     if (dataJson.Length > 0)
     {
         List <SafetyworksuperviseEntity> list = Newtonsoft.Json.JsonConvert.DeserializeObject <List <SafetyworksuperviseEntity> >(dataJson);
         int      s  = 0;
         DateTime dd = DateTime.Now;
         foreach (SafetyworksuperviseEntity data in list)
         {
             s = s + 1;
             data.CreateDate = dd.AddSeconds(s);
             safetyworksupervisebll.SaveForm("", data);
         }
     }
     return(Success("操作成功。"));
 }
예제 #2
0
 /// <summary>
 /// 保存表单(新增、修改)
 /// </summary>
 /// <param name="keyValue">主键值</param>
 /// <param name="entity">实体对象</param>
 /// <returns></returns>
 public void SaveForm(string keyValue, SafetyworksuperviseEntity entity)
 {
     try
     {
         service.SaveForm(keyValue, entity);
         if (entity.FlowState == "1")
         {
             UserBLL    userbll    = new UserBLL();
             UserEntity userEntity = userbll.GetEntity(entity.DutyPersonId);//获取责任人用户信息
             JPushApi.PushMessage(userEntity.Account, entity.DutyPerson, "GZDB001", "例行安全工作", entity.Id);
         }
     }
     catch (Exception)
     {
         throw;
     }
 }
예제 #3
0
        public string ImportData()
        {
            try
            {
                int    error        = 0;
                int    sussceed     = 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);
                    }
                    var    user     = ERCHTMS.Code.OperatorProvider.Provider.Current();
                    string fileName = DateTime.Now.ToString("yyyyMMddHHmmss") + System.IO.Path.GetExtension(file.FileName);
                    string filePath = Server.MapPath("~/Resource/temp/" + fileName);
                    file.SaveAs(filePath);
                    DataTable     dt = ExcelHelper.ExcelImport(filePath);
                    DepartmentBLL deptBll = new DepartmentBLL();
                    UserBLL       userbll = new UserBLL();
                    string        supervisedate = string.Empty;
                    string        worktask = string.Empty; string flowstate = "0";//默认下发
                    string        dutydeptname = string.Empty, dutyperson = string.Empty, superviseperson = string.Empty;
                    string        supervisedeptname = string.Empty, finishdate = string.Empty, remark = string.Empty;
                    string        dutydeptid = string.Empty, dutydeptcode = string.Empty, dutypersonid = string.Empty;
                    string        supervisepersonid = string.Empty, supervisedeptid = string.Empty, supervisedeptcode = string.Empty;
                    int           num                     = 0;
                    List <SafetyworksuperviseEntity> list = new List <SafetyworksuperviseEntity>();
                    for (int i = 0; i < dt.Rows.Count; i++)
                    {
                        object[] vals = dt.Rows[i].ItemArray;
                        if (IsEndRow(vals) == true)
                        {
                            break;
                        }
                        if (i == 0)
                        {
                            supervisedate = vals[1].ToString();//督办时间
                            if (string.IsNullOrEmpty(supervisedate))
                            {
                                falseMessage += "第" + (i + 1) + "行:督办时间不能为空!</br>";
                                error++;
                                continue;
                            }
                        }
                        else if (i == 1)
                        {
                            continue;//第二行是列名,跳过
                        }
                        else
                        {
                            num++;
                            if (!string.IsNullOrEmpty(vals[0].ToString()))
                            {
                                worktask = vals[0].ToString();//重点工作内容
                            }
                            //else {
                            //    falseMessage += "第" + (i + 1) + "行:重点工作内容不能为空!</br>";
                            //    error++;
                            //    continue;
                            //}
                            dutydeptname = vals[1].ToString();//责任单位名称
                            if (string.IsNullOrEmpty(dutydeptname))
                            {
                                falseMessage += "第" + (i + 2) + "行:责任单位名称不能为空!</br>";
                                error++;
                                continue;
                            }

                            var    p1     = string.Empty;
                            var    p2     = string.Empty;
                            bool   isSkip = false;
                            string dname  = string.Empty;
                            //验证所填部门是否存在
                            var array = dutydeptname.Split('/');
                            for (int j = 0; j < array.Length; j++)
                            {
                                if (j == 0)
                                {
                                    var entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "厂级" && x.FullName == array[j].ToString()).FirstOrDefault();
                                    if (entity == null)
                                    {
                                        entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "部门" && x.FullName == array[j].ToString()).FirstOrDefault();
                                        if (entity == null)
                                        {
                                            entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "承包商" && x.FullName == array[j].ToString()).FirstOrDefault();
                                            if (entity == null)
                                            {
                                                falseMessage += "第" + (i + 2) + "行:责任部门与系统的部门信息不匹配!</br>";
                                                error++;
                                                isSkip = true;
                                                break;
                                            }
                                            else
                                            {
                                                dutydeptid   = entity.DepartmentId;
                                                dutydeptcode = entity.EnCode;
                                                dutydeptname = entity.FullName;
                                                p1           = entity.DepartmentId;
                                            }
                                        }
                                        else
                                        {
                                            dutydeptid   = entity.DepartmentId;
                                            dutydeptcode = entity.EnCode;
                                            dutydeptname = entity.FullName;
                                            p1           = entity.DepartmentId;
                                        }
                                    }
                                    else
                                    {
                                        dutydeptid   = entity.DepartmentId;
                                        dutydeptcode = entity.EnCode;
                                        dutydeptname = entity.FullName;
                                        p1           = entity.DepartmentId;
                                    }
                                }
                                else if (j == 1)
                                {
                                    var entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && (x.Nature == "专业" || x.Nature == "承包商" || x.Nature == "分包商") && x.FullName == array[j].ToString() && x.ParentId == p1).FirstOrDefault();
                                    if (entity1 == null)
                                    {
                                        entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "班组" && x.FullName == array[j].ToString() && x.ParentId == p1).FirstOrDefault();
                                        if (entity1 == null)
                                        {
                                            falseMessage += "第" + (i + 2) + "行:责任部门与系统的部门信息不匹配!</br>";
                                            error++;
                                            isSkip = true;
                                            break;
                                        }
                                        else
                                        {
                                            dutydeptid   = entity1.DepartmentId;
                                            dutydeptcode = entity1.EnCode;
                                            dutydeptname = entity1.FullName;
                                            p2           = entity1.DepartmentId;
                                        }
                                    }
                                    else
                                    {
                                        dutydeptid   = entity1.DepartmentId;
                                        dutydeptcode = entity1.EnCode;
                                        dutydeptname = entity1.FullName;
                                        p2           = entity1.DepartmentId;
                                        if (entity1.Nature == "承包商")
                                        {
                                            if (!string.IsNullOrEmpty(p1))
                                            {
                                                var d = departmentBLL.GetEntity(p1);
                                                if (d != null)
                                                {
                                                    dname = d.FullName;
                                                }
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    var entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && (x.Nature == "班组" || x.Nature == "承包商" || x.Nature == "分包商") && x.FullName == array[j].ToString() && x.ParentId == p2).FirstOrDefault();
                                    if (entity1 == null)
                                    {
                                        falseMessage += "第" + (i + 2) + "行:责任部门与系统的部门信息不匹配!</br>";
                                        error++;
                                        isSkip = true;
                                        break;
                                    }
                                    else
                                    {
                                        dutydeptid   = entity1.DepartmentId;
                                        dutydeptcode = entity1.EnCode;
                                        dutydeptname = entity1.FullName;
                                        if (entity1.Nature == "承包商")
                                        {
                                            if (!string.IsNullOrEmpty(p2))
                                            {
                                                var d = departmentBLL.GetEntity(p2);
                                                if (d != null)
                                                {
                                                    dname = d.FullName;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            if (isSkip)
                            {
                                continue;
                            }

                            //dutydeptcode = deptBll.GetDeptCode(dutydeptname, user.OrganizeId);//获取责任单位code
                            //if (string.IsNullOrEmpty(dutydeptcode))
                            //{
                            //    falseMessage += "第" + (i + 1) + "行:责任部门与系统的部门信息不匹配!</br>";
                            //    error++;
                            //    continue;
                            //}
                            //else {
                            //    dutydeptid = deptBll.GetEntityByCode(dutydeptcode).DepartmentId;//获取责任单位id
                            //}
                            dutyperson = vals[2].ToString();//责任人
                            if (string.IsNullOrEmpty(dutyperson))
                            {
                                falseMessage += "第" + (i + 2) + "行:责任人不能为空!</br>";
                                error++;
                                continue;
                            }
                            UserInfoEntity userEntity = userbll.GetUserInfoByName(dutydeptname, dutyperson);
                            if (!string.IsNullOrEmpty(dname))
                            {
                                userEntity = userbll.GetUserInfoByName(dname, dutyperson);
                            }
                            if (userEntity == null)
                            {
                                falseMessage += "第" + (i + 2) + "行:责任人和责任部门信息不匹配!</br>";
                                error++;
                                continue;
                            }
                            else
                            {
                                dutypersonid = userEntity.UserId;
                            }
                            supervisedeptname = vals[4].ToString();//督办部门
                            if (string.IsNullOrEmpty(supervisedeptname))
                            {
                                falseMessage += "第" + (i + 2) + "行:督办部门不能为空!</br>";
                                error++;
                                continue;
                            }

                            p1     = string.Empty;
                            p2     = string.Empty;
                            isSkip = false;
                            dname  = string.Empty;
                            //验证所填部门是否存在
                            array = supervisedeptname.Split('/');
                            for (int j = 0; j < array.Length; j++)
                            {
                                if (j == 0)
                                {
                                    var entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "厂级" && x.FullName == array[j].ToString()).FirstOrDefault();
                                    if (entity == null)
                                    {
                                        entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "部门" && x.FullName == array[j].ToString()).FirstOrDefault();
                                        if (entity == null)
                                        {
                                            entity = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "承包商" && x.FullName == array[j].ToString()).FirstOrDefault();
                                            if (entity == null)
                                            {
                                                falseMessage += "第" + (i + 2) + "行:督办部门与系统的部门信息不匹配!</br>";
                                                error++;
                                                isSkip = true;
                                                break;
                                            }
                                            else
                                            {
                                                supervisedeptid   = entity.DepartmentId;
                                                supervisedeptcode = entity.EnCode;
                                                supervisedeptname = entity.FullName;
                                                p1 = entity.DepartmentId;
                                            }
                                        }
                                        else
                                        {
                                            supervisedeptid   = entity.DepartmentId;
                                            supervisedeptcode = entity.EnCode;
                                            supervisedeptname = entity.FullName;
                                            p1 = entity.DepartmentId;
                                        }
                                    }
                                    else
                                    {
                                        supervisedeptid   = entity.DepartmentId;
                                        supervisedeptcode = entity.EnCode;
                                        supervisedeptname = entity.FullName;
                                        p1 = entity.DepartmentId;
                                    }
                                }
                                else if (j == 1)
                                {
                                    var entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && (x.Nature == "专业" || x.Nature == "承包商" || x.Nature == "分包商") && x.FullName == array[j].ToString() && x.ParentId == p1).FirstOrDefault();
                                    if (entity1 == null)
                                    {
                                        entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && x.Nature == "班组" && x.FullName == array[j].ToString() && x.ParentId == p1).FirstOrDefault();
                                        if (entity1 == null)
                                        {
                                            falseMessage += "第" + (i + 2) + "行:督办部门与系统的部门信息不匹配!</br>";
                                            error++;
                                            isSkip = true;
                                            break;
                                        }
                                        else
                                        {
                                            supervisedeptid   = entity1.DepartmentId;
                                            supervisedeptcode = entity1.EnCode;
                                            supervisedeptname = entity1.FullName;
                                            p2 = entity1.DepartmentId;
                                        }
                                    }
                                    else
                                    {
                                        supervisedeptid   = entity1.DepartmentId;
                                        supervisedeptcode = entity1.EnCode;
                                        supervisedeptname = entity1.FullName;
                                        p2 = entity1.DepartmentId;
                                        if (entity1.Nature == "承包商")
                                        {
                                            if (!string.IsNullOrEmpty(p1))
                                            {
                                                var d = departmentBLL.GetEntity(p1);
                                                if (d != null)
                                                {
                                                    dname = d.FullName;
                                                }
                                            }
                                        }
                                    }
                                }
                                else
                                {
                                    var entity1 = departmentBLL.GetList().Where(x => x.OrganizeId == user.OrganizeId && (x.Nature == "班组" || x.Nature == "承包商" || x.Nature == "分包商") && x.FullName == array[j].ToString() && x.ParentId == p2).FirstOrDefault();
                                    if (entity1 == null)
                                    {
                                        falseMessage += "第" + (i + 2) + "行:督办部门与系统的部门信息不匹配!</br>";
                                        error++;
                                        isSkip = true;
                                        break;
                                    }
                                    else
                                    {
                                        supervisedeptid   = entity1.DepartmentId;
                                        supervisedeptcode = entity1.EnCode;
                                        supervisedeptname = entity1.FullName;
                                        if (entity1.Nature == "承包商")
                                        {
                                            if (!string.IsNullOrEmpty(p2))
                                            {
                                                var d = departmentBLL.GetEntity(p2);
                                                if (d != null)
                                                {
                                                    dname = d.FullName;
                                                }
                                            }
                                        }
                                    }
                                }
                            }
                            if (isSkip)
                            {
                                continue;
                            }


                            //supervisedeptcode = deptBll.GetDeptCode(supervisedeptname, user.OrganizeId);//获取督办部门code
                            //if (string.IsNullOrEmpty(supervisedeptcode))
                            //{
                            //    falseMessage += "第" + (i + 1) + "行:督办部门与系统的部门信息不匹配!</br>";
                            //    error++;
                            //    continue;
                            //}
                            //else
                            //{
                            //    supervisedeptid = deptBll.GetEntityByCode(supervisedeptcode).DepartmentId;//获取责任单位id
                            //}
                            superviseperson = vals[3].ToString();//督办人
                            if (string.IsNullOrEmpty(superviseperson))
                            {
                                falseMessage += "第" + (i + 2) + "行:督办人不能为空!</br>";
                                error++;
                                continue;
                            }
                            userEntity = userbll.GetUserInfoByName(supervisedeptname, superviseperson);
                            if (!string.IsNullOrEmpty(dname))
                            {
                                userEntity = userbll.GetUserInfoByName(dname, superviseperson);
                            }
                            if (userEntity == null)
                            {
                                falseMessage += "第" + (i + 2) + "行:督办人和督办部门信息不匹配!</br>";
                                error++;
                                continue;
                            }
                            else
                            {
                                supervisepersonid = userEntity.UserId;
                            }
                            finishdate = vals[5].ToString();//完成时间
                            if (string.IsNullOrEmpty(finishdate))
                            {
                                falseMessage += "第" + (i + 2) + "行:完成时间不能为空!</br>";
                                error++;
                                continue;
                            }
                            remark = vals[6].ToString();//备注
                            SafetyworksuperviseEntity entityWork = new SafetyworksuperviseEntity()
                            {
                                Id                = Guid.NewGuid().ToString(),
                                SuperviseDate     = string.IsNullOrEmpty(supervisedate) ? DateTime.Now : Convert.ToDateTime(supervisedate + "-01"),
                                WorkTask          = worktask,
                                DutyDeptName      = dutydeptname,
                                DutyDeptId        = dutydeptid,
                                DutyDeptCode      = dutydeptcode,
                                DutyPerson        = dutyperson,
                                DutyPersonId      = dutypersonid,
                                SupervisePerson   = superviseperson,
                                SupervisePersonId = supervisepersonid,
                                SuperviseDeptName = supervisedeptname,
                                SuperviseDeptId   = supervisedeptid,
                                SuperviseDeptCode = supervisedeptcode,
                                FinishDate        = Convert.ToDateTime(finishdate),
                                FlowState         = flowstate,
                                Remark            = remark,
                            };
                            list.Add(entityWork);
                        }
                    }
                    //count = dt.Rows.Count;
                    //message = "共有" + num + "条记录,成功导入" + sussceed + "条,失败" + error + "条";
                    message = "共有" + num + "条记录,失败" + error + "条,请修改后重新导入";
                    if (error > 0)
                    {
                        message += ",错误信息如下:</br>" + falseMessage;
                    }
                    else
                    {
                        try
                        {
                            int      s  = 0;
                            DateTime dd = DateTime.Now;
                            foreach (SafetyworksuperviseEntity item in list)
                            {
                                s = s + 1;
                                item.CreateDate = dd.AddSeconds(s);
                                safetyworksupervisebll.SaveForm("", item);
                                sussceed++;
                            }
                            message = "共有" + num + "条记录,成功导入" + sussceed + "条";
                        }
                        catch (Exception ex)
                        {
                            message = "导入失败:" + ex.Message;
                        }
                    }

                    //删除临时文件
                    System.IO.File.Delete(filePath);
                }
                return(message);
            }
            catch (Exception ex)
            {
                return(ex.Message);
            }
        }
예제 #4
0
 public ActionResult SaveForm(string keyValue, SafetyworksuperviseEntity entity)
 {
     safetyworksupervisebll.SaveForm(keyValue, entity);
     return(Success("操作成功。"));
 }