/// <summary> /// 查看治疗信息 /// </summary> /// <param name="employeename">治疗人员</param> /// <param name="taskNumber">任务编号</param> /// <param name="order">疗程号</param> /// <returns></returns> public CureInfo CheckCureInfo(string employeename, string taskNumber, int order) { var curePigService = new CurePigService(); var cureTaskCourseService = new CureTaskCourseService(); var cureMethodService = new CureMethodService(); var transferService = new TransferService(); var taskService = new TaskService(); var cureMedicineService = new CureMedicineService(); cure_task_course cureTaskCourse = cureTaskCourseService.FindByTaskId(taskService.FindByTaskNumber(taskNumber).Id).FirstOrDefault( m => m.Order == order); var checkCureInfo = new CureInfo { TaskNumber = taskNumber, Order = order, EmployeeName = employeename, CureDetail = new List<CureDetail>(), PigDetail = new List<Detail>() }; if (cureTaskCourse == null) return checkCureInfo; foreach ( cure_pig curePig in curePigService.FindByCureTaskCourseId(cureTaskCourse.Id).Where( m => m.employee.Name.Equals(employeename))) { transfer firstOrDefault = transferService.FindByPigId(curePig.PigId).OrderByDescending(m => m.Time).FirstOrDefault(); if (firstOrDefault != null) checkCureInfo.PigDetail.Add(new Detail { PigHouse = firstOrDefault.pigsty.pig_house.pig_house_type.Name + firstOrDefault.pigsty.pig_house.Number, Pigsty = firstOrDefault.pigsty.Number + "", Pig = firstOrDefault.pig.Number, DetailTime = (DateTime) curePig.CureTime }); } foreach (cure_method cureMethod in cureMethodService.FindByCureTaskCourseId(cureTaskCourse.Id)) { var medicineList = new List<CureMedicineDetail>(); foreach (cure_medicine cureMedicine in cureMedicineService.FindByCureMethoId(cureMethod.Id)) { medicineList.Add(new CureMedicineDetail { Medicine = cureMedicine.medicine.Name, Quality = cureMedicine.Quality, Unit = cureMedicine.unit.Name }); } checkCureInfo.CureDetail.Add(new CureDetail { CureType = cureMethod.cure_type.Name, CureMedicineDetail = medicineList }); } return checkCureInfo; }
/// <summary> /// 查看生猪个体治疗记录 /// </summary> /// <param name="pigNumber"></param> /// <param name="pageIndex"> </param> /// <param name="pageSize"> </param> /// <returns></returns> public PigInfo CheckCureRecord(string pigNumber, int pageIndex, int pageSize) { var pigService = new PigService(); pig pig = pigService.FindByNumber(pigNumber); var curePigService = new CurePigService(); var transferPigsty = new TransferService(); transfer transfer = transferPigsty.FindByPigId(pig.Id).OrderByDescending(m => m.Time).FirstOrDefault(); var cureInfos = new List<CureDetail>(); string pigHouse = "", pigsty = ""; if (transfer != null) { pigHouse = transfer.pigsty.pig_house.pig_house_type.Name + transfer.pigsty.pig_house.Number; pigsty = transfer.pigsty.Number + ""; } var pigInfo = new PigInfo { Number = pigNumber, Birthday = pig.Birthday, PigType = pig.pig_type.Name, PigHouse = pigHouse, Pigsty = pigsty }; foreach (cure_pig curePig in curePigService.FindByPigId(pig.Id)) { foreach (cure_method cureMethod in curePig.cure_task_course.cure_method) { cureInfos.Add(new CureDetail { CureType = cureMethod.cure_type.Name, CureMedicineDetail = cureMethod.cure_medicine.Select( cureMedicine => new CureMedicineDetail {Medicine = cureMedicine.medicine.Name}). ToList(), CureTime = (DateTime) curePig.CureTime }); } } pigInfo.CureRecord = new PagedList<CureDetail>(cureInfos.OrderByDescending(m => m.CureTime).ToList(), pageIndex, pageSize) { Capacity = cureInfos.Count, CurrentPageIndex = pageIndex, PageSize = pageSize, TotalItemCount = cureInfos.Count }; return pigInfo; }
/// <summary> /// 修改治疗信息 /// </summary> /// <param name="newInfo">治疗信息页面类</param> /// <param name="employeename">原人员名字</param> /// <returns></returns> public bool UpdateCureInfo(CureInfo newInfo, string employeename) { var curePigService = new CurePigService(); var cureTaskCourseService = new CureTaskCourseService(); var cureMethodService = new CureMethodService(); var taskService = new TaskService(); int count = 0, j = 0; var cureMedicineService = new CureMedicineService(); cure_task_course cureTaskCourse = cureTaskCourseService.FindByTaskId(taskService.FindByTaskNumber(newInfo.TaskNumber).Id).FirstOrDefault( m => m.Order == newInfo.Order); if (cureTaskCourse == null) return false; //治疗生猪信息更新 foreach (cure_pig curePig in curePigService.FindByCureTaskCourseId(cureTaskCourse.Id)) { if (!curePig.employee.Name.Equals(employeename)) continue; if (count < newInfo.PigDetail.Count) { curePig.EmployeeId = long.Parse(newInfo.EmployeeName); curePig.PigId = long.Parse(newInfo.PigDetail[count].Pig); curePig.CureTime = newInfo.PigDetail[count].DetailTime; curePig.Memo = newInfo.Meno; curePigService.Update(curePig); } else { curePigService = new CurePigService(); curePigService.Delete(curePigService.Find(curePig.Id)); } count++; } for (; count < newInfo.PigDetail.Count; count++) { curePigService.Insert(new cure_pig { CureTaskCourseId = cureTaskCourse.Id, EmployeeId = long.Parse(newInfo.EmployeeName), PigId = long.Parse(newInfo.PigDetail[count].Pig), CureTime = newInfo.PigDetail[count].DetailTime, Memo = newInfo.Meno }); } count = 0; //治疗方式信息更新 foreach (cure_method cureMethod in cureMethodService.FindByCureTaskCourseId(cureTaskCourse.Id)) { j = 0; if (count < newInfo.CureDetail.Count) { cureMethod.CureTypeId = long.Parse(newInfo.CureDetail[count].CureType); cureMethodService.Update(cureMethod); //治疗药物信息更新 foreach (cure_medicine cureMedicine in cureMedicineService.FindByCureMethoId(cureMethod.Id)) { if (j < cureMethod.cure_medicine.Count) { cureMedicine.MedicineId = long.Parse(newInfo.CureDetail[count].CureMedicineDetail[j].Medicine); cureMedicine.Quality = newInfo.CureDetail[count].CureMedicineDetail[j].Quality; cureMedicine.UnitId = long.Parse(newInfo.CureDetail[count].CureMedicineDetail[j].Unit); cureMedicineService.Update(cureMedicine); } else { cureMedicineService = new CureMedicineService(); cureMedicineService.Delete(cureMedicineService.Find(cureMedicine.Id)); } j++; } for (; j < cureMethod.cure_medicine.Count; j++) { cureMedicineService.Insert(new cure_medicine { CureMethodId = cureMethod.Id, MedicineId = long.Parse( newInfo.CureDetail[count].CureMedicineDetail[j]. Medicine), Quality = newInfo.CureDetail[count].CureMedicineDetail[j].Quality, UnitId = long.Parse( newInfo.CureDetail[count].CureMedicineDetail[j].Unit) }); } } else { cureMethodService = new CureMethodService(); cureMedicineService.ClearCureMedicine(cureMethod); cureMethodService.Delete(cureMethodService.Find(cureMethod.Id)); } count++; } for (; count < newInfo.CureDetail.Count; count++) { var cure = new cure_method { CureTaskCourseId = cureTaskCourse.Id, CureTypeId = long.Parse(newInfo.CureDetail[count].CureType) }; foreach (CureMedicineDetail cureMedicineItem in newInfo.CureDetail[count].CureMedicineDetail) { cure.cure_medicine.Add(new cure_medicine { MedicineId = long.Parse(cureMedicineItem.Medicine), Quality = cureMedicineItem.Quality, UnitId = long.Parse(cureMedicineItem.Unit) }); } cureMethodService.Insert(cure); } return true; }
/// <summary> /// 治疗信息列表 /// </summary> /// <returns></returns> public IEnumerable<CureInfo> GetCureInfo() { var curePigService = new CurePigService(); var cureInfoList = new List<CureInfo>(); long employId = 0, taskId = 0; int order = 0; foreach (cure_pig curePig in curePigService.FindAll().OrderByDescending(m => m.CureTime)) { if (taskId == curePig.cure_task_course.TaskId && employId == curePig.EmployeeId && order == curePig.cure_task_course.Order) continue; cureInfoList.Add(new CureInfo { EmployeeName = curePig.employee.Name, TaskNumber = curePig.cure_task_course.task.TaskNumber, Order = curePig.cure_task_course.Order, Meno = curePig.Memo, Time = (DateTime) curePig.CureTime }); taskId = curePig.cure_task_course.TaskId; employId = curePig.EmployeeId; order = curePig.cure_task_course.Order; } return cureInfoList.OrderByDescending(m => m.Time); }
/// <summary> /// 删除治疗信息 /// </summary> /// <param name="employeename">治疗人员</param> /// <param name="taskNumber">任务编号</param> /// <param name="order">疗程号</param> /// <returns></returns> public bool DelCureInfo(string employeename, string taskNumber, int order) { var curePigService = new CurePigService(); var cureTaskCourseService = new CureTaskCourseService(); var cureMethodService = new CureMethodService(); var taskService = new TaskService(); var cureMedicineService = new CureMedicineService(); cure_task_course cureTaskCourse = cureTaskCourseService.FindByTaskId(taskService.FindByTaskNumber(taskNumber).Id).FirstOrDefault( m => m.Order == order); if (cureTaskCourse == null) return false; foreach ( cure_pig curePig in curePigService.FindByCureTaskCourseId(cureTaskCourse.Id).Where( m => m.employee.Name.Equals(employeename))) { foreach (cure_method cureMethod in cureMethodService.FindByCureTaskCourseId(curePig.Id)) { cureMedicineService.ClearCureMedicine(cureMethod); cureMethodService = new CureMethodService(); cureMethodService.Delete(cureMethodService.Find(cureMethod.Id)); } curePigService = new CurePigService(); curePigService.Delete(curePigService.Find(curePig.Id)); } return true; }
/// <summary> /// 新建治疗信息 /// </summary> /// <param name="newInfo"></param> /// <returns></returns> public bool CreateCureInfo(CureInfo newInfo) { var curePigService = new CurePigService(); var cureTaskCourseService = new CureTaskCourseService(); var cureMethodService = new CureMethodService(); var taskStatusTypeService = new TaskStatusTypeService(); var taskService = new TaskService(); cure_task_course cureTaskCourse = cureTaskCourseService.FindByTaskId(long.Parse(newInfo.TaskNumber)).FirstOrDefault( m => m.Order == newInfo.Order); if (cureTaskCourse == null) return false; foreach (Detail detail in newInfo.PigDetail) { curePigService.Insert(new cure_pig { EmployeeId = long.Parse(newInfo.EmployeeName), CureTaskCourseId = cureTaskCourse.Id, PigId = long.Parse(detail.Pig), CureTime = detail.DetailTime, Memo = newInfo.Meno }); } foreach (CureDetail cureDetail in newInfo.CureDetail) { var cureMethod = new cure_method { CureTaskCourseId = cureTaskCourse.Id , CureTypeId = long.Parse(cureDetail.CureType) }; foreach (CureMedicineDetail cureMedicineDetail in cureDetail.CureMedicineDetail) { cureMethod.cure_medicine.Add(new cure_medicine { MedicineId = long.Parse(cureMedicineDetail.Medicine), Quality = cureMedicineDetail.Quality, UnitId = long.Parse(cureMedicineDetail.Unit) }); } cureMethodService.Insert(cureMethod); } task_status_type taskStatusType = taskStatusTypeService.FindByName("正在进行"); task task = taskService.Find(long.Parse(newInfo.TaskNumber)); if (taskStatusType != null && task != null) { task.TaskStatusId = taskStatusType.Id; taskService.Update(task); } return true; }