コード例 #1
0
        ///// <summary>
        ///// 根据组织机构ID获取本机及直属下级的监控点
        ///// </summary>
        ///// <param name="organizationId"></param>
        ///// <returns></returns>
        //public static List<MonitorySite> GetAllMonitorySite(Guid organizationId)
        //{
        //    List<MonitorySite> list = new List<MonitorySite>();


        //    using (var db = new AllInOneContext.AllInOneContext())
        //    {
        //        Organization org = db.Organization
        //            .Include(t => t.Center)
        //            .FirstOrDefault(p => p.OrganizationId.Equals(organizationId));
        //        if (org == null || org.Center == null || org.Center.EndPoints == null || org.Center.EndPoints.Count == 0)
        //            return list;
        //        var orgs = db.Organization
        //            .Include(t => t.Center)
        //            .Where(p => p.OrganizationTypeId != null && p.OrganizationFullName.Contains(org.OrganizationFullName));
        //        if (orgs.ToList().Count() == 0)
        //            return list;
        //        foreach (Organization Query in orgs.ToList())
        //        {
        //            string url = string.Format("http://{0}:{1}/Resources/MonitorySite/organizationId={2}", org.Center.EndPoints[0].IPAddress, org.Center.EndPoints[0].Port, Query.OrganizationId);

        //            var handler = new HttpClientHandler() { AutomaticDecompression = DecompressionMethods.GZip };
        //            using (var http = new HttpClient(handler))
        //            {
        //                try
        //                {
        //                    http.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
        //                    var rst = http.GetAsync(url).Result.Content.ReadAsStringAsync().Result;
        //                    var obj = JsonConvert.DeserializeObject<List<MonitorySite>>(rst);
        //                    if (obj.ToList().Count == 0)
        //                        continue;
        //                    //过滤查勤监控点
        //                    var data = obj.ToList().Where(p => p.IsDutycheckSite == true);
        //                    if (data.ToList().Count == 0)
        //                        continue;
        //                    list.AddRange(data.ToList());
        //                }
        //                catch (Exception ex)
        //                {
        //                    Console.WriteLine(ex.Message);
        //                }

        //            }
        //        }
        //    }

        //    return list;
        //}

        /// <summary>
        /// 根据组织机构ID获取本机及直属下级的监控点的总数
        /// </summary>
        /// <param name="organizationId"></param>
        /// <returns></returns>
        public static int GetAllMonitorySite(Guid organizationId)
        {
            int allCount = 0;

            using (var db = new AllInOneContext.AllInOneContext())
            {
                Organization org = db.Organization
                                   .FirstOrDefault(p => p.OrganizationId.Equals(organizationId));
                if (org == null)
                {
                    return(allCount);
                }
                var orgs = db.Organization
                           .Where(p => p.OrganizationTypeId == null && p.OrganizationFullName.Contains(org.OrganizationFullName));
                if (orgs.ToList().Count() == 0)
                {
                    return(allCount);
                }
                List <Organization> list = orgs.ToList();
                foreach (Organization Query in orgs.ToList())
                {
                    allCount = allCount + Query.DutycheckPoints;
                }
            }

            return(allCount);
        }
コード例 #2
0
        public IActionResult GetSystemOptionsByOrganizationID(Guid parentSystemOptionId)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    var data = db.SystemOption
                               .Include(t => t.ApplicationSystemOptions).Include(t => t.ParentSystemOption)
                               .Where(p => p.ParentSystemOption != null && p.ParentSystemOptionId.Equals(parentSystemOptionId))
                               .OrderBy(t => t.SystemOptionCode);

                    if (data.Count() == 0)
                    {
                        return(NoContent());
                    }

                    return(new ObjectResult(data.ToList()));
                }
            }
            catch (DbUpdateException dbEx)
            {
                _logger.LogError("GetSystemOptionsByOrganizationID:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);

                return(BadRequest(new ApplicationException {
                    ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                }));
            }
            catch (System.Exception ex)
            {
                _logger.LogError("GetSystemOptionsByOrganizationID:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #3
0
        public IActionResult Delete(Guid id)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    using (var transaction = db.Database.BeginTransaction())
                    {
                        DutyCheckPackageTimePlan plan = db.DutyCheckPackageTimePlan
                                                        .Include(t => t.Schedule).ThenInclude(t => t.ScheduleCycle).ThenInclude(t => t.DayPeriods).ThenInclude(t => t.TimePeriods)
                                                        .Include(t => t.Schedule).ThenInclude(t => t.ScheduleCycle).ThenInclude(t => t.CycleType)
                                                        .Include(t => t.Organization)
                                                        .FirstOrDefault(p => p.DutyCheckPackageTimePlanId.Equals(id));
                        if (plan == null)
                        {
                            return(NoContent());
                        }

                        db.DutyCheckPackageTimePlan.Remove(plan);
                        db.SaveChanges();

                        transaction.Commit();
                        return(new NoContentResult());
                    }
                }
            }
            catch (System.Exception ex)
            {
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #4
0
 public IActionResult Update([FromBody] Encoder encoder)
 {
     try
     {
         if (encoder == null)
         {
             return(BadRequest());
         }
         using (var db = new AllInOneContext.AllInOneContext())
         {
             db.Encoder.Update(encoder);
             db.SaveChanges();
             //同时更新摄像机IP
             db.Set <Camera>().Include(t => t.IPDevice).Where(t => t.EncoderId.Equals(encoder.EncoderId)).
             ForEachAsync(f => f.IPDevice.EndPointsJson = encoder.DeviceInfo.EndPointsJson).Wait();
             db.SaveChanges();
             return(NoContent());
         }
     }
     catch (DbUpdateException dbEx)
     {
         _logger.LogError("修改编码器异常:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);
         return(BadRequest(new ApplicationException {
             ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
         }));
     }
     catch (System.Exception ex)
     {
         _logger.LogError("修改编码器异常:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #5
0
        public IActionResult Delete(Guid id)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    StaffGroup data = db.StaffGroup.FirstOrDefault(p => p.StaffGroupId == id);
                    if (data == null)
                    {
                        return(NoContent());
                    }
                    db.StaffGroup.Remove(data);
                    db.SaveChanges();
                    return(new NoContentResult());
                }
            }
            catch (DbUpdateException dbEx)
            {
                _logger.LogError("Delete:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);

                return(BadRequest(new ApplicationException {
                    ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                }));
            }
            catch (System.Exception ex)
            {
                _logger.LogError("Delete:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #6
0
 public IActionResult Add([FromBody] DutySchedule model)
 {
     try
     {
         if (model == null)
         {
             return(BadRequest());
         }
         using (var db = new AllInOneContext.AllInOneContext())
         {
             db.DutySchedule.Add(model);
             db.SaveChanges();
             return(Created("", "OK"));
         }
     }
     catch (DbUpdateException dbEx)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
         }));
     }
     catch (System.Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #7
0
 public IEnumerable <EncoderType> GetAllEncoderType()
 {
     using (var db = new AllInOneContext.AllInOneContext())
     {
         return(db.Set <EncoderType>().ToList());
     }
 }
コード例 #8
0
        public IActionResult Update([FromBody] DeviceGroup deviceGroup)
        {
            if (deviceGroup == null)
            {
                return(BadRequest("DeviceGroup object can not be null!"));
            }
            if (ExistsName(deviceGroup.DeviceGroupName, deviceGroup.OrganizationId, deviceGroup.DeviceGroupId))
            {
                return(BadRequest("DeviceGroup name has been used!"));
            }

            using (var db = new AllInOneContext.AllInOneContext())
            {
                try
                {
                    db.Update(deviceGroup);
                    db.SaveChanges();
                    return(NoContent());
                }
                catch (DbUpdateException dbEx)
                {
                    _logger.LogError("更新设备分组异常:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);
                    return(BadRequest(new ApplicationException {
                        ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                    }));
                }
                catch (Exception ex)
                {
                    _logger.LogError("更新设备分组异常:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                    return(BadRequest(new ApplicationException {
                        ErrorCode = "Unknown", ErrorMessage = ex.Message
                    }));
                }
            }
        }
コード例 #9
0
        public IActionResult Get(Guid id)
        {
            if (id == null || id == new Guid())
            {
                return(NoContent());
            }

            using (var db = new AllInOneContext.AllInOneContext())
            {
                Fault Fault = db.Set <Fault>()
                              .Include(t => t.CheckDutySite)
                              .Include(t => t.CheckMan)
                              .Include(t => t.DutyCheckOperation).ThenInclude(t => t.Attachments)
                              .Include(t => t.DutyOrganization)
                              .Include(t => t.FaultType)
                              .FirstOrDefault(p => p.FaultId.Equals(id));

                if (Fault == null)
                {
                    return(NoContent());
                }

                return(new ObjectResult(Fault));
            }
        }
コード例 #10
0
 public IEnumerable <Staff> GetAll()
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             var data = db.Staff
                        .Include(t => t.Application)
                        .Include(t => t.DegreeOfEducation)
                        .Include(t => t.DutyCheckType)
                        .Include(t => t.Fingerprints)
                        .Include(t => t.MaritalStatus)
                        .Include(t => t.Nation)
                        .Include(t => t.Organization)
                        .Include(t => t.Photo)
                        .Include(t => t.PhysiclalStatus)
                        .Include(t => t.PoliticalLandscape)
                        .Include(t => t.PositionType)
                        .Include(t => t.RankType)
                        .Include(t => t.ReignStatus)
                        .Include(t => t.Sex)
                        .Include(t => t.WorkingProperty);
             return(data.ToList());
         }
     }
     catch (Exception ex)
     {
         return(null);
     }
 }
コード例 #11
0
        public IActionResult FuzzySearchByStaffName(string staffName)
        {
            if (staffName == "" || staffName.Length == 0)
            {
                return(BadRequest());
            }

            using (var db = new AllInOneContext.AllInOneContext())
            {
                var data = db.Staff
                           .Include(t => t.Application)
                           .Include(t => t.DegreeOfEducation)
                           .Include(t => t.DutyCheckType)
                           .Include(t => t.Fingerprints)
                           .Include(t => t.MaritalStatus)
                           .Include(t => t.Nation)
                           .Include(t => t.Organization)
                           .Include(t => t.Photo)
                           .Include(t => t.PhysiclalStatus)
                           .Include(t => t.PoliticalLandscape)
                           .Include(t => t.PositionType)
                           .Include(t => t.RankType)
                           .Include(t => t.ReignStatus)
                           .Include(t => t.Sex)
                           .Include(t => t.WorkingProperty)
                           .Where(p => p.StaffName.Contains(staffName));
                if (data == null || data.Count() == 0)
                {
                    return(NoContent());
                }
                return(new ObjectResult(data.ToList()));
            }
        }
コード例 #12
0
 public IActionResult Get(Guid id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             InstitutionsDutyCheckSchedule data = db.InstitutionsDutyCheckSchedule
                                                  //.Include(t => t.Entourages)
                                                  .Include(t => t.InspectedOrganization)
                                                  //.Include(t=>t.InspectionTarget)
                                                  .Include(t => t.Lead)
                                                  .FirstOrDefault(p => p.InstitutionsDutyCheckScheduleId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #13
0
        public IActionResult Add([FromBody] ApplicationCenter model)
        {
            try
            {
                if (model == null)
                {
                    return(BadRequest());
                }
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    db.ApplicationCenter.Add(model);
                    db.SaveChanges();
                    return(Created("", "OK"));
                }
            }
            catch (DbUpdateException dbEx)
            {
                _logger.LogError("新增系统中心异常:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);

                return(BadRequest(new ApplicationException {
                    ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                }));
            }
            catch (System.Exception ex)
            {
                _logger.LogError("新增系统中心异常:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #14
0
        /// <summary>
        /// 同步哨位记录至勤务排班记录
        /// </summary>
        /// <param name="punchLog"></param>
        public static void Synchronization(PunchLog punchLog)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    //取当前记录
                    DutyCheckLog log = db.DutyCheckLog
                                       .Include(t => t.DutyCheckSiteSchedule).ThenInclude(t => t.CheckMan).ThenInclude(t => t.Organization)
                                       .Include(t => t.DutyCheckSiteSchedule).ThenInclude(t => t.CheckMan).ThenInclude(t => t.PositionType)
                                       .Include(t => t.DayPeriod).ThenInclude(t => t.TimePeriods)
                                       .FirstOrDefault(p => p.DutyCheckSiteSchedule != null && p.DutyCheckSiteScheduleId.Equals(punchLog.OnDutyStaff.StaffId) &&
                                                       new DateTime(p.PlanDate.Value.Year, p.PlanDate.Value.Month, p.PlanDate.Value.Day, p.TimePeriod.StartTime.Hour, p.TimePeriod.StartTime.Minute, p.TimePeriod.StartTime.Second) <= punchLog.LogTime &&
                                                       new DateTime(p.PlanDate.Value.Year, p.PlanDate.Value.Month, p.PlanDate.Value.Day, p.TimePeriod.EndTime.Hour, p.TimePeriod.EndTime.Minute, p.TimePeriod.EndTime.Second) >= punchLog.LogTime);

                    //
                    if (log == null)
                    {
                        return;
                    }
                    //同步记录
                    log.MainAppriseId = log.MainAppriseId;
                    log.RecordTime    = punchLog.LogTime;
                    log.StatusId      = new Guid("24AC9875-C463-47B6-8147-5845874C3CAF");

                    db.DutyCheckLog.Update(log);
                    db.SaveChanges();
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine("Synchronization is Exception:" + ex.Message);
            }
        }
コード例 #15
0
 public IActionResult Get(Guid id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             ShiftHandoverLog data = db.ShiftHandoverLog
                                     .Include(t => t.OffGoing)
                                     .Include(t => t.OnComing)
                                     .Include(t => t.Organization)
                                     .Include(t => t.Status)
                                     .FirstOrDefault(p => p.ShiftHandoverLogId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #16
0
ファイル: EventLogController.cs プロジェクト: wpmyj/Server-1
 public IActionResult Get(string id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             EventLog data = db.EventLog
                             .Include(t => t.Application).Include(t => t.EventLevel)
                             .Include(t => t.EventLogType).Include(t => t.EventSource)
                             .Include(t => t.Organization)
                             .FirstOrDefault(p => p.EventLogId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         _logger.LogError("Get:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #17
0
        public IActionResult Get(Guid id)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    DutySchedule data = db.DutySchedule
                                        .Include(t => t.Lister)
                                        .Include(t => t.Organization)
                                        .Include(t => t.Schedule).ThenInclude(t => t.ScheduleCycle).ThenInclude(t => t.DayPeriods).ThenInclude(t => t.TimePeriods)
                                        .Include(t => t.Schedule).ThenInclude(t => t.ScheduleType)
                                        .Include(t => t.DutyScheduleDetails).ThenInclude(t => t.CadreSchedule)
                                        .Include(t => t.DutyScheduleDetails).ThenInclude(t => t.OfficerSchedule)
                                        .Include(t => t.DutyScheduleDetails).ThenInclude(t => t.NetWatcherSchedule).ThenInclude(t => t.Leader)
                                        .Include(t => t.DutyScheduleDetails).ThenInclude(t => t.NetWatcherSchedule).ThenInclude(t => t.Deputy)
                                        .Include(t => t.DutyScheduleDetails).ThenInclude(t => t.NetWatcherSchedule).ThenInclude(t => t.CheckTimePeriod)
                                        .FirstOrDefault(p => p.DutyScheduleId.Equals(id));
                    if (data == null)
                    {
                        return(NoContent());
                    }

                    return(new ObjectResult(data));
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #18
0
 public IActionResult Get(Guid id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             DutyCheckMatter data = db.DutyCheckMatter
                                    .Include(t => t.MatterICO)
                                    .Include(t => t.Organization)
                                    .Include(t => t.VoiceFile)
                                    .FirstOrDefault(p => p.DutyCheckMatterId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #19
0
 public IEnumerable <Encoder> GetAll()
 {
     using (var db = new AllInOneContext.AllInOneContext())
     {
         return(CreateDbQuery(db).ToList());
     }
 }
コード例 #20
0
ファイル: FeedbackController.cs プロジェクト: wpmyj/Server-1
        /// <summary>
        /// 推送反馈信息至上级
        /// </summary>
        /// <param name="Feedback"></param>
        public bool PushFeedback(Fault model)
        {
            if (model == null)
            {
                return(false);
            }
            using (var db = new AllInOneContext.AllInOneContext())
            {
                //查找监控点所在的组织机构
                Organization org = db.Organization
                                   .Include(t => t.Center)
                                   .FirstOrDefault(p => p.OrganizationId.Equals(model.CheckDutySite.Organization.ParentOrganizationId));
                if (org == null || org.Center == null || org.Center.EndPoints == null || org.Center.EndPoints.Count == 0)
                {
                    return(false);
                }


                string url = string.Format("http://{0}:{1}/Paps/Feedback/Broadcast", org.Center.EndPoints[0].IPAddress, org.Center.EndPoints[0].Port);

                var ret = HttpClientHelper.Post(model, url);

                return(ret.Success);
            }
        }
コード例 #21
0
 public IActionResult Add([FromBody] Encoder encoder)
 {
     try
     {
         if (encoder == null)
         {
             return(BadRequest());
         }
         using (var db = new AllInOneContext.AllInOneContext())
         {
             db.Encoder.Add(encoder);
             db.SaveChanges();
             // return CreatedAtRoute("GetById",new { id = encoder.EncoderId }, encoder);
             return(CreatedAtAction("", encoder));
         }
     }
     catch (DbUpdateException dbEx)
     {
         _logger.LogError("添加编码器异常:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);
         return(BadRequest(new ApplicationException {
             ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
         }));
     }
     catch (Exception ex)
     {
         _logger.LogError("添加编码器异常:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #22
0
ファイル: FeedbackController.cs プロジェクト: wpmyj/Server-1
 public IActionResult Get(Guid id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             Feedback data = db.Feedback
                             .Include(t => t.Circular)
                             .Include(t => t.FeedbackOptions)
                             .Include(t => t.FeedbackStaff)
                             .Include(t => t.Fault)
                             .FirstOrDefault(p => p.FeedbackId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #23
0
        public IActionResult Update([FromBody] StaffGroup model)
        {
            try
            {
                if (model == null)
                {
                    return(BadRequest());
                }
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    db.StaffGroup.Update(model);
                    db.SaveChanges();
                    return(new NoContentResult());
                }
            }
            catch (DbUpdateException dbEx)
            {
                _logger.LogError("Update:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);

                return(BadRequest(new ApplicationException {
                    ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                }));
            }
            catch (System.Exception ex)
            {
                _logger.LogError("Update:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #24
0
 private static void RemoveManyToMany(AllInOneContext.AllInOneContext db, Role Role)
 {
     //手动处理RolePermissions 多对多的关系,待找到合适的方法后再调整
     if (Role.RolePermissions != null)
     {
         List <RolePermission> delList = new List <RolePermission>();
         foreach (RolePermission rp in Role.RolePermissions)
         {
             RolePermission del = db.RolePermission
                                  .FirstOrDefault(p => p.PermissionId.Equals(rp.PermissionId) && p.RoleId.Equals(rp.RoleId));
             if (del != null)
             {
                 delList.Add(del);
             }
         }
         db.RolePermission.RemoveRange(delList);
         db.SaveChanges();
     }
     //手动处理UserRole 多对多的关系,待找到合适的方法后再调整
     if (Role.UserManyToRole != null)
     {
         List <UserRole> delList = new List <UserRole>();
         foreach (UserRole rp in Role.UserManyToRole)
         {
             UserRole del = db.UserRole
                            .FirstOrDefault(p => p.UserId.Equals(rp.UserId) && p.RoleId.Equals(rp.RoleId));
             if (del != null)
             {
                 delList.Add(del);
             }
         }
         db.UserRole.RemoveRange(delList);
         db.SaveChanges();
     }
 }
コード例 #25
0
        public IActionResult Get(Guid id)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    SystemOption data = db.SystemOption
                                        .Include(t => t.ApplicationSystemOptions)
                                        .FirstOrDefault(p => p.SystemOptionId.Equals(id));
                    if (data == null)
                    {
                        return(NoContent());
                    }

                    return(new ObjectResult(data));
                }
            }
            catch (Exception ex)
            {
                _logger.LogError("Get:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #26
0
        public IActionResult GetRoleByApplicationID(Guid applicationId)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    var data = db.Role
                               .Include(t => t.RolePermissions).Include(t => t.UserManyToRole)
                               .Include(t => t.Organization).Include(t => t.Application)
                               .Include(t => t.ControlResourcesType)
                               .Where(p => p.Application.ApplicationId.Equals(applicationId));
                    if (data == null)
                    {
                        return(NoContent());
                    }

                    return(new ObjectResult(data.ToList()));
                }
            }
            catch (DbUpdateException dbEx)
            {
                _logger.LogError("GetRoleByApplicationID:Message:{0}\r\n,StackTrace:{1}", dbEx.Message, dbEx.StackTrace);

                return(BadRequest(new ApplicationException {
                    ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
                }));
            }
            catch (System.Exception ex)
            {
                _logger.LogError("GetRoleByApplicationID:Message:{0}\r\n,StackTrace:{1}", ex.Message, ex.StackTrace);
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }
コード例 #27
0
 public IActionResult Update([FromBody] DailyOnDuty model)
 {
     try
     {
         if (model == null)
         {
             return(BadRequest());
         }
         using (var db = new AllInOneContext.AllInOneContext())
         {
             db.DailyOnDuty.Update(model);
             db.SaveChanges();
             return(new NoContentResult());
         }
     }
     catch (DbUpdateException dbEx)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
         }));
     }
     catch (System.Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #28
0
 public IActionResult Add([FromBody] Circular model)
 {
     try
     {
         if (model == null)
         {
             return(BadRequest());
         }
         using (var db = new AllInOneContext.AllInOneContext())
         {
             db.Circular.Add(model);
             db.SaveChanges();
             // 下发通报至下级
             PushCircular(model);
             //
             return(Created("", "OK"));
         }
     }
     catch (DbUpdateException dbEx)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "DBUpdate", ErrorMessage = "数据保存异常:" + dbEx.Message
         }));
     }
     catch (System.Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
コード例 #29
0
 public IActionResult Get(Guid id)
 {
     try
     {
         using (var db = new AllInOneContext.AllInOneContext())
         {
             DutyCheckPackageTimePlan data = db.DutyCheckPackageTimePlan
                                             .Include(t => t.Schedule).ThenInclude(t => t.ScheduleCycle).ThenInclude(t => t.DayPeriods).ThenInclude(t => t.TimePeriods)
                                             .Include(t => t.Schedule).ThenInclude(t => t.ScheduleCycle).ThenInclude(t => t.CycleType)
                                             .Include(t => t.Schedule).ThenInclude(t => t.ScheduleType)
                                             .Include(t => t.Organization)
                                             .FirstOrDefault(p => p.DutyCheckPackageTimePlanId.Equals(id));
             if (data == null)
             {
                 return(NoContent());
             }
             return(new ObjectResult(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(new ApplicationException {
             ErrorCode = "Unknown", ErrorMessage = ex.Message
         }));
     }
 }
コード例 #30
0
        public IActionResult Delete(Guid id)
        {
            try
            {
                using (var db = new AllInOneContext.AllInOneContext())
                {
                    using (var tran = db.Database.BeginTransaction())
                    {
                        DutyCheckGroup group = db.DutyCheckGroup
                                               .Include(t => t.CheckDutySiteSchedules)/*.ThenInclude(t => t.CheckDutySite)*/
                                               .Include(t => t.CheckDutySiteSchedules).ThenInclude(t => t.CheckMan)
                                               .FirstOrDefault(p => p.DutyCheckGroupId.Equals(id));
                        if (group == null)
                        {
                            return(NoContent());
                        }
                        //
                        RemoveLinkage(db, group);
                        //
                        db.DutyCheckGroup.Remove(group);
                        db.SaveChanges();

                        tran.Commit();
                        return(new NoContentResult());
                    }
                }
            }
            catch (System.Exception ex)
            {
                return(BadRequest(new ApplicationException {
                    ErrorCode = "Unknown", ErrorMessage = ex.Message
                }));
            }
        }