public bool UpdateEliminateTask(EliminateTask updateTask) { var taskService = new TaskService(); var taskStatusTypeService = new TaskStatusTypeService(); task task = taskService.FindByTaskNumber(updateTask.TaskNumber); if (task == null) { return false; } task.StartTime = updateTask.StartTime; task.EndTime = updateTask.EndTime; task.Memo = updateTask.Memo; new TaskEmployeeService().UpdateByNumberStr(task, updateTask.EmployeeNumber); var pigService = new PigService(); int oldLen = task.task_pig.Count+task.task_pigsty.Count; int newLen = updateTask.EliminateTaskDetail.Count; int leastLength = oldLen < newLen ? oldLen : newLen; for (int i = 0; i < leastLength; i++) { if (updateTask.EliminateTaskDetail[i].Pig!=null) task.task_pig.ElementAt(i).PigId = pigService.FindByRfid(updateTask.EliminateTaskDetail[i].Pig).Id; else task.task_pigsty.ElementAt(i).PigstyId = long.Parse(updateTask.EliminateTaskDetail[i].Pigsty); } var taskPigService = new TaskPigService(); for (int i = leastLength; i < oldLen; i++) { if (task.task_pig.Count>0) taskPigService.Delete(taskPigService.Find(task.task_pig.ElementAt(i).Id)); else if (task.task_pigsty.Count > 0) taskPigService.Delete(taskPigService.Find(task.task_pigsty.ElementAt(i).Id)); } for (int i = leastLength; i < newLen; i++) { if (updateTask.EliminateTaskDetail[i].Pig!=null) task.task_pig.Add(new task_pig { PigId = pigService.FindByRfid(updateTask.EliminateTaskDetail[i].Pig).Id }); else task.task_pigsty.Add(new task_pigsty { PigstyId = long.Parse(updateTask.EliminateTaskDetail[i].Pigsty) }); } try { task.TaskStatusId = long.Parse(updateTask.Status); taskService.Update(task); return true; } catch (Exception) { return false; } }
public bool UpdateTransferTask(TransferTask updateTask) { var taskService = new TaskService(); task task = taskService.FindByTaskNumber(updateTask.TaskNumber); if (task == null) { return false; } task.StartTime = updateTask.StartTime; task.EndTime = updateTask.EndTime; task.Memo = updateTask.Memo; new TaskEmployeeService().UpdateByNumberStr(task, updateTask.EmployeeNumber); var pigService = new PigService(); List<long> pigList = (from taskDetail in updateTask.TransferFrom from pig in taskDetail.Pig.Split(',') select pigService.FindByNumber(pig).Id).ToList(); int oldLen = task.task_pig.Count; int newLen = pigList.Count; int leastLength = oldLen < newLen ? oldLen : newLen; for (int i = 0; i < leastLength; i++) { task.task_pig.ElementAt(i).PigId = pigList[i]; } var transferTaskPigService = new TaskPigService(); for (int i = leastLength; i < oldLen; i++) { transferTaskPigService.Delete(transferTaskPigService.Find(task.task_pig.ElementAt(i).Id)); } for (int i = leastLength; i < newLen; i++) { task.task_pig.Add(new task_pig { PigId = pigList[i] }); } var pigstyService = new PigstyService(); List<long> pigstyList = (from taskDetail in updateTask.TransferTo from pigsty in taskDetail.Pigsty.Split(',') select pigstyService.FindByNumber(int.Parse(pigsty)).First( m => m.PigHouseId == long.Parse(taskDetail.PigHouse)).Id).ToList(); oldLen = task.task_pigsty.Count; newLen = pigstyList.Count; leastLength = oldLen < newLen ? oldLen : newLen; for (int i = 0; i < leastLength; i++) { task.task_pigsty.ElementAt(i).PigstyId = pigstyList[i]; } var taskPigstyService = new TaskPigstyService(); for (int i = leastLength; i < oldLen; i++) { taskPigstyService.Delete(taskPigstyService.Find(task.task_pigsty.ElementAt(i).Id)); } for (int i = leastLength; i < newLen; i++) { task.task_pigsty.Add(new task_pigsty { PigstyId = pigstyList[i] }); } taskService.Update(task); return true; }
/// <summary> /// 删除指定任务编号的任务 /// </summary> /// <param name="taskNumber">任务编号</param> /// <returns>返回删除是否成功</returns> public bool DeleteTask(string taskNumber) { task task = FindByTaskNumber(taskNumber); if (task == null || new FeedService().FindByTaskId(task.Id).Count > 0 || new FodderTakeService().FindByTaskId(task.Id).Count > 0 || new TransferService().FindByTaskId(task.Id).Count > 0 || new PreventionService().FindByTaskId(task.Id).Count > 0 || new InspectionService().FindByTaskId(task.Id).Count > 0 || new SaleService().FindByTaskId(task.Id).Count > 0) { return false; } var cureMethodService = new CureMethodService(); cure_task_course cureCourse = task.cure_task_course.FirstOrDefault(); if (cureCourse != null && cureMethodService.FindByCureTaskCourseId(cureCourse.Id).Count > 0) { return false; } var saleTaskQualityService = new SaleTaskQualityService(); foreach (sale_task_quality delItem in task.sale_task_quality) { saleTaskQualityService.Delete(saleTaskQualityService.Find(delItem.Id)); } var transferTaskPigService = new TaskPigService(); foreach (task_pig transferTaskPig in task.task_pig) { transferTaskPigService.Delete(transferTaskPigService.Find(transferTaskPig.Id)); } var taskIntervalCycleService = new TaskIntervalCycleService(); foreach (task_interval_cycle item in task.task_interval_cycle) { taskIntervalCycleService.Delete(taskIntervalCycleService.Find(item.Id)); } var taskPigstyService = new TaskPigstyService(); var feedTaskQualityService = new FeedTaskQualityService(); foreach (task_pigsty item in task.task_pigsty) { foreach (feed_task_quality delItem in item.feed_task_quality) { feedTaskQualityService.Delete(feedTaskQualityService.Find(delItem.Id)); } taskPigstyService.Delete(taskPigstyService.Find(item.Id)); } var taskEmployeeService = new TaskEmployeeService(); foreach (task_employee item in task.task_employee) { taskEmployeeService.Delete(taskEmployeeService.Find(item.Id)); } var cureTaskCourseService = new CureTaskCourseService(); var cureTaskMethodService = new CureTaskMethodService(); var cureTaskMedicineService = new CureTaskMedicineService(); foreach (cure_task_course cureTaskCourse in task.cure_task_course) { foreach (cure_task_method cureTaskMethod in cureTaskCourse.cure_task_method) { foreach (cure_task_medicine cureTaskMedicine in cureTaskMethod.cure_task_medicine) { cureTaskMedicineService.Delete(cureTaskMedicineService.Find(cureTaskMedicine.Id)); } cureTaskMethodService.Delete(cureTaskMethodService.Find(cureTaskMethod.Id)); } cureTaskCourseService.Delete(cureTaskCourseService.Find(cureTaskCourse.Id)); } var taskPreventionService = new TaskPreventionService(); foreach (task_prevention taskPrevention in task.task_prevention) { taskPreventionService.Delete(taskPreventionService.Find(taskPrevention.Id)); } var taskPigHouseService = new TaskPigHouseService(); foreach (task_pighouse taskPighouse in task.task_pighouse) { taskPigHouseService.Delete(taskPigHouseService.Find(taskPighouse.Id)); } var taskRepository = new TaskRepository(); taskRepository.Delete(taskRepository.Find(task.Id)); return true; }
public bool UpdateCureTask(CureTask updateTask) { var taskService = new TaskService(); task task = taskService.FindByTaskNumber(updateTask.TaskNumber); if (task == null) { return false; } task.StartTime = updateTask.StartTime; task.EndTime = updateTask.EndTime; task.Memo = updateTask.Memo; new TaskEmployeeService().UpdateByNumberStr(task, updateTask.EmployeeNumber); var pigService = new PigService(); List<long> pigList = (from taskDetail in updateTask.CureDetail from pig in taskDetail.Pig.Split(',') select pigService.FindByNumber(pig).Id).ToList(); int oldLen = task.task_pig.Count; int newLen = pigList.Count; int leastLen = oldLen < newLen ? oldLen : newLen; for (int i = 0; i < leastLen; i++) { task.task_pig.ElementAt(i).PigId = pigList[i]; } var taskPigService = new TaskPigService(); for (int i = leastLen; i < oldLen; i++) { taskPigService.Delete(taskPigService.Find(task.task_pig.ElementAt(i).Id)); } for (int i = leastLen; i < newLen; i++) { task.task_pig.Add(new task_pig { PigId = pigList[i] }); } oldLen = task.cure_task_course.Count; newLen = updateTask.CureCourse.Count; leastLen = oldLen < newLen ? oldLen : newLen; var cureTaskMedicineService = new CureTaskMedicineService(); var cureTaskMethodService = new CureTaskMethodService(); for (int i = 0; i < leastLen; i++) { CureCourse cureCourse = updateTask.CureCourse[i]; task.cure_task_course.ElementAt(i).Order = cureCourse.CureOrder; task.cure_task_course.ElementAt(i).Time = cureCourse.CureTime; int oldLen2 = task.cure_task_course.ElementAt(i).cure_task_method.Count; int newLen2 = cureCourse.CureMethod.Count; int leastLen2 = oldLen2 < newLen2 ? oldLen2 : newLen2; for (int j = 0; j < leastLen2; j++) { task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).CureTypeId = long.Parse(cureCourse.CureMethod[j].CureType); int oldLen3 = task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).cure_task_medicine.Count; int newLen3 = cureCourse.CureMethod[j].CureMedicine.Count; int leastLen3 = oldLen3 < newLen3 ? oldLen3 : newLen3; for (int k = 0; k < leastLen3; k++) { Medicine medicine = cureCourse.CureMethod[j].CureMedicine[k]; if (medicine.Quality <= 0) { continue; } task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).cure_task_medicine.ElementAt(k) .MedicineId = long.Parse(medicine.MedicineName); task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).cure_task_medicine.ElementAt(k) .Quality = medicine.Quality; task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).cure_task_medicine.ElementAt(k) .UnitId = long.Parse(medicine.Unit); } for (int k = leastLen; k < oldLen3; k++) { cureTaskMedicineService.Delete( cureTaskMedicineService.Find( task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j).cure_task_medicine. ElementAt(k).Id)); } for (int k = leastLen; k < newLen3; k++) { Medicine medicine = cureCourse.CureMethod[j].CureMedicine[k]; if (medicine.Quality <= 0) { continue; } task.cure_task_course.ElementAt(i) .cure_task_method.ElementAt(j) .cure_task_medicine.Add(new cure_task_medicine { MedicineId = long . Parse (medicine . MedicineName), Quality = medicine . Quality, UnitId = long . Parse (medicine . Unit) }); } } for (int j = leastLen2; j < oldLen2; j++) { cure_task_method cureTaskMethod = task.cure_task_course.ElementAt(i).cure_task_method.ElementAt(j); foreach (cure_task_medicine cureTaskMedicine in cureTaskMethod.cure_task_medicine) { cureTaskMedicineService.Delete(cureTaskMedicineService.Find(cureTaskMedicine.Id)); } cureTaskMethodService.Delete(cureTaskMethodService.Find(cureTaskMethod.Id)); } for (int j = leastLen2; j < newLen2; j++) { CureMethod cureMethod = cureCourse.CureMethod[j]; var medicineList = new Collection<cure_task_medicine>(); foreach (Medicine medicine in cureMethod.CureMedicine.Where(medicine => !(medicine.Quality <= 0))) { medicineList.Add(new cure_task_medicine { MedicineId = long.Parse(medicine.MedicineName), Quality = medicine.Quality, UnitId = long.Parse(medicine.Unit) }); } task.cure_task_course.ElementAt(i).cure_task_method.Add(new cure_task_method { CureTypeId = long.Parse(cureMethod.CureType), cure_task_medicine = medicineList }); } } var cureTaskCourseService = new CureTaskCourseService(); for (int i = leastLen; i < oldLen; i++) { foreach (cure_method cureMethod in task.cure_task_course.ElementAt(i).cure_method) { foreach (cure_medicine cureMedicine in cureMethod.cure_medicine) { cureTaskMedicineService.Delete(cureTaskMedicineService.Find(cureMedicine.Id)); } cureTaskMethodService.Delete(cureTaskMethodService.Find(cureMethod.Id)); } cureTaskCourseService.Delete(cureTaskCourseService.Find(task.cure_task_course.ElementAt(i).Id)); } for (int i = leastLen; i < newLen; i++) { var methodList = new Collection<cure_task_method>(); CureCourse cureCourse = updateTask.CureCourse[i]; foreach (CureMethod cureMethod in cureCourse.CureMethod) { var medicineList = new Collection<cure_task_medicine>(); foreach (Medicine medicine in cureMethod.CureMedicine.Where(medicine => !(medicine.Quality <= 0))) { medicineList.Add(new cure_task_medicine { MedicineId = long.Parse(medicine.MedicineName), Quality = medicine.Quality, UnitId = long.Parse(medicine.Unit) }); } methodList.Add(new cure_task_method { CureTypeId = long.Parse(cureMethod.CureType), cure_task_medicine = medicineList }); } task.cure_task_course.Add(new cure_task_course { Order = cureCourse.CureOrder, Time = cureCourse.CureTime, cure_task_method = methodList }); } taskService.Update(task); return true; }
public PreventionDiseaseTask GetPreventionDiseaseTask(string taskNumber) { var taskService = new TaskService(); task task = taskService.FindByTaskNumber(taskNumber); if (task == null) { return null; } var taskEmployeeService = new TaskEmployeeService(); List<task_pigsty> taskPigsties = task.task_pigsty.ToList(); var checkTask = new PreventionDiseaseTask { TaskNumber = task.TaskNumber, StartTime = task.StartTime, EndTime = task.EndTime, EmployeeName = taskEmployeeService.GetEmployeeNames(task.Id), EmployeeNumber = taskEmployeeService.GetEmployeeNumbers(task.Id), Status = task.task_status_type.Name, Memo = task.Memo }; task_prevention taskPrevention = task.task_prevention.FirstOrDefault(); if (taskPrevention != null) { checkTask.DiseaseName = taskPrevention.prevention_type.Name; checkTask.Medicine.MedicineName = new MedicineService().Find(taskPrevention.prevention_type.MedicineId).Name; checkTask.Medicine.Quality = taskPrevention.prevention_type.Quality; checkTask.Medicine.Unit = new UnitService().Find(taskPrevention.prevention_type.UnitId).Name; } var pigHouseService = new PigHouseService(); var taskPigstyService = new TaskPigstyService(); var taskPigService = new TaskPigService(); List<TaskDetail> details = taskPigstyService.GetPigHouseIds(taskPigsties).Select(pigHouseid => new TaskDetail { PigHouse = pigHouseService . Find (pigHouseid) . pig_house_type . Name + pigHouseService . Find (pigHouseid) . Number, Pigsty = taskPigstyService . GetPigstyNums (task .Id, pigHouseid), Pig = taskPigService.GetMumPigBypigStys( taskPigstyService.GetPigstyNums(task.Id, pigHouseid) , pigHouseid) }).ToList(); foreach (var munPigHouseId in taskPigService.GetPigHouseByMum(task.Id)) { details.Add(new TaskDetail() { PigHouse = pigHouseService.Find(munPigHouseId).pig_house_type.Name+pigHouseService.Find(munPigHouseId).Number, Pigsty = taskPigService.GetPigstyNumsByMum(task.Id, munPigHouseId), Pig = "母猪" }); } if (details.Count != 0) { checkTask.Taskdetails = details; } return checkTask; }