/// <summary>
        ///     更新任务的人员
        /// </summary>
        /// <param name="task">任务类</param>
        /// <param name="numbers">员工名字的字符串数组</param>
        public void UpdateByNumber(task task, string[] numbers)
        {
            int oldLen = task.task_employee.Count;
            int newLen = numbers.Length;
            int leastLength = oldLen < newLen ? oldLen : newLen;

            var employeeService = new EmployeeService();
            var taskEmployeeService = new TaskEmployeeService();

            for (int i = 0; i < leastLength; i++)
            {
                task_employee updateitem = taskEmployeeService.FindByTaskId(task.Id)[i];
                updateitem.EmployeeId = employeeService.FindByNumber(numbers[i]).Id;
                taskEmployeeService.Update(updateitem);
            }

            for (int i = leastLength; i < oldLen; i++)
            {
                taskEmployeeService.Delete(taskEmployeeService.Find(task.task_employee.ElementAt(i).Id));
            }

            for (int i = leastLength; i < newLen; i++)
            {
                taskEmployeeService.Insert(new task_employee
                                               {
                                                   TaskId = task.Id,
                                                   EmployeeId = employeeService.FindByNumber(numbers[i]).Id
                                               });
            }
        }
 /// <summary>
 ///     查看转栏信息
 /// </summary>
 /// <param name="taskNumber">任务编号</param>
 /// <returns></returns>
 public TransferPigstyInfo CheckTransferPigstyInfo(string taskNumber)
 {
     var checkTransferPigstyInfo = new TransferPigstyInfo
                                       {TransferPigstyInfoDetail = new List<TransferPigstyInfoDetail>()};
     var taskEmployee = new TaskEmployeeService();
     var taskService = new TaskService();
     var transferService = new TransferService();
     task transferPigstyTask = taskService.FindByTaskNumber(taskNumber);
     if (transferPigstyTask != null)
     {
         checkTransferPigstyInfo.TaskNumber = taskNumber;
         checkTransferPigstyInfo.EmployeeName = taskEmployee.GetEmployeeNames(transferPigstyTask.Id);
         transfer firstOrDefault = transferService.FindByTaskId(transferPigstyTask.Id).FirstOrDefault();
         if (firstOrDefault != null)
             checkTransferPigstyInfo.Meno = firstOrDefault.Memo;
         foreach (
             transfer transfer in
                 transferService.FindByTaskId(transferPigstyTask.Id).OrderByDescending(m => m.Time))
         {
             transfer lastPigsty = transferService.GetLastTransfer(transfer.PigId, transferPigstyTask.Id);
             if (lastPigsty != null && lastPigsty.pigsty.Id != transfer.pigsty.Id)
                 checkTransferPigstyInfo.TransferPigstyInfoDetail.Add(new TransferPigstyInfoDetail
                                                                          {
                                                                              SourcePigHouse =
                                                                                  lastPigsty.pigsty.pig_house.
                                                                                             pig_house_type.Name +
                                                                                  lastPigsty.pigsty.pig_house.
                                                                                             Number,
                                                                              SourcePigsty =
                                                                                  lastPigsty.pigsty.Number + "",
                                                                              Pig = transfer.pig.Number,
                                                                              TargetPigHouse =
                                                                                  transfer.pigsty.pig_house.
                                                                                           pig_house_type.Name +
                                                                                  transfer.pigsty.pig_house.
                                                                                           Number,
                                                                              TargetPigsty =
                                                                                  transfer.pigsty.Number + "",
                                                                              TransferPigstyTime = transfer.Time
                                                                          });
             else
                 checkTransferPigstyInfo.TransferPigstyInfoDetail.Add(new TransferPigstyInfoDetail
                                                                          {
                                                                              SourcePigHouse = "",
                                                                              SourcePigsty = "",
                                                                              Pig = transfer.pig.Number,
                                                                              TargetPigHouse =
                                                                                  transfer.pigsty.pig_house.
                                                                                           pig_house_type.Name +
                                                                                  transfer.pigsty.pig_house.
                                                                                           Number,
                                                                              TargetPigsty =
                                                                                  transfer.pigsty.Number + "",
                                                                              TransferPigstyTime = transfer.Time
                                                                          });
         }
     }
     return checkTransferPigstyInfo;
 }
Example #3
0
        /// <summary>
        /// 获得指定任务人员的姓名和编号
        /// </summary>
        /// <param name="tasktypeid">任务类型id</param>
        /// <returns>返回指定任务人员的姓名和编号</returns>
        public string GetFeedTaskEmployeeNameAndNumber(long tasktypeid)
        {
            int i;
            var stremployeenumber = new StringBuilder();
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();
            List<task> tasks = taskService.FindByTaskTypeId(tasktypeid);
            List<task_employee> taskEmployees =
                tasks.SelectMany(task => taskEmployeeService.FindByTaskId(task.Id)).ToList();

            for (i = 0; i < taskEmployees.Count - 1; i++)
            {
                stremployeenumber.Append(taskEmployees[i].employee.Number + ":" + taskEmployees[i].employee.Name + ",");
            }
            stremployeenumber.Append(taskEmployees[i].employee.Number + ":" + taskEmployees[i].employee.Name);
            return stremployeenumber.ToString();
        }
Example #4
0
        public InspectTask GetInspectTask(string taskNumber)
        {
            var taskService = new TaskService();
            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }
            var taskEmployeeService = new TaskEmployeeService();
            var taskPigHouseService = new TaskPigHouseService();
            var checkTask = new InspectTask
                                {
                                    TaskNumber = task.TaskNumber,
                                    StartTime = task.StartTime,
                                    EndTime = task.EndTime,
                                    EmployeeName = taskEmployeeService.GetEmployeeNames(task.Id),
                                    EmployeeNumber = taskEmployeeService.GetEmployeeNumbers(task.Id),
                                    PigHouse = taskPigHouseService.GetPigHouseTypeAndNumsByTaskId(task.Id),
                                    PigHouseId = taskPigHouseService.GetPigHouseIds(task.Id),
                                    Status = task.task_status_type.Name,
                                    Memo = task.Memo
                                };

            List<TaskCycle> taskCycle = task.task_interval_cycle.Select(taskCycleitem => new TaskCycle
                                                                                             {
                                                                                                 FirstExecuteDate
                                                                                                     =
                                                                                                     taskCycleitem
                                                                                                     .
                                                                                                     FirstExecuteDate,
                                                                                                 CycleDays
                                                                                                     =
                                                                                                     taskCycleitem
                                                                                                     .
                                                                                                     CycleDays
                                                                                             }).ToList();
            if (taskCycle.Count != 0)
            {
                checkTask.InspectTaskCycle = taskCycle;
            }
            return checkTask;
        }
Example #5
0
 /// <summary>
 ///     治疗任务的姓名的下拉列表框
 /// </summary>
 /// <returns></returns>
 public IEnumerable<SelectListItem> GetCureTaskEmployee()
 {
     var taskService = new TaskService();
     var tasktypeService = new TaskTypeService();
     var taskEmployeeService = new TaskEmployeeService();
     long curetaskid = tasktypeService.FindByName("治疗").Id;
     List<task> tasks = taskService.FindByTaskTypeId(curetaskid);
     List<task_employee> taskEmployees =
         tasks.SelectMany(task => taskEmployeeService.FindByTaskId(task.Id)).ToList();
     if (taskEmployees.Count >= 2)
     {
         for (int i = 0; i < taskEmployees.Count; i++)
         {
             task_employee employee = taskEmployees[i];
             for (int j = i + 1; j < taskEmployees.Count; j++)
             {
                 if (taskEmployees[j].employee.Name.Equals(employee.employee.Name))
                 {
                     taskEmployees.Remove(taskEmployees[j]);
                 }
             }
         }
     }
     IEnumerable<SelectListItem> feedTaskEmployeelist = taskEmployees.Select(taskEmployee => new SelectListItem
                                                                                                 {
                                                                                                     Text =
                                                                                                         taskEmployee
                                                                                                         .
                                                                                                         employee
                                                                                                         .Name,
                                                                                                     Value =
                                                                                                         taskEmployee
                                                                                                             .
                                                                                                             employee
                                                                                                             .Id +
                                                                                                         string.
                                                                                                             Empty,
                                                                                                 })
                                                                     .OrderBy(m => m.Text);
     return feedTaskEmployeelist;
 }
Example #6
0
        /// <summary>
        ///     查看销售任务
        /// </summary>
        /// <param name="taskNumber">任务编号</param>
        /// <returns></returns>
        public SaleTask GetSaleTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();
            var pigTypeService = new PigTypeService();

            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }

            var customerService = new CustomerService();
            var checkTask = new SaleTask
                                {
                                    TaskNumber = task.TaskNumber,
                                    StartTime = task.StartTime,
                                    EndTime = task.EndTime,
                                    EmployeeName = taskEmployeeService.GetEmployeeNames(task.Id),
                                    EmployeeNumber = taskEmployeeService.GetEmployeeNumbers(task.Id),
                                    Customer = customerService.Find(task.CustomerId).Name,
                                    Status = task.task_status_type.Name,
                                    Memo = task.Memo
                                };

            List<SaleDetail> saleDetailList = task.sale_task_quality.Select(item => new SaleDetail
                                                                                        {
                                                                                            PigType =
                                                                                                pigTypeService.Find(
                                                                                                    item.PigTypeId).Name,
                                                                                            Price = item.Price,
                                                                                            Quantity = item.Quality
                                                                                        }).ToList();

            if (saleDetailList.Count != 0)
            {
                checkTask.SaleDetailList = saleDetailList;
            }
            return checkTask;
        }
 /// <summary>
 ///     根据任务id找到人员名字
 /// </summary>
 /// <param name="taskId">任务id</param>
 /// <returns>人员名字的字符串</returns>
 public string GetTaskEmployee(int taskId)
 {
     var taskEmployeeService = new TaskEmployeeService();
     return taskEmployeeService.GetEmployeeNames(taskId);
 }
        /// <summary>
        ///     根据id返回是否有喂饲任务
        /// </summary>
        /// <param name="employeeId">人员id</param>
        /// <returns>返回是否有喂饲任务</returns>
        public string GetFeedTaskById(long employeeId)
        {
            var tasktypeService = new TaskTypeService();
            var taskEmployeeService = new TaskEmployeeService();
            var taskIntervalCycleService = new TaskIntervalCycleService();
            int taskflag = 0;

            var taskService = new TaskService();
            List<task_employee> alltask = taskEmployeeService.FindByEmployeeId(employeeId);
            //根据任务id找到任务类型,若是当天的喂饲任务,记录taskid
            foreach (task_employee task in alltask)
            {
                long tasktypeid = taskService.Find(task.TaskId).TaskTypeId;
                string tasktype = tasktypeService.Find(tasktypeid).Name;
                if (tasktype == "喂饲")
                {
                    List<task_interval_cycle> taskInterval = taskIntervalCycleService.FindByTaskId(task.TaskId);
                    foreach (task_interval_cycle taskinterval in taskInterval)
                    {
                        for (int i = 0; i < 1000; i++)
                        {
                            //根据任务的循环时间匹配是否有当天的任务
                            if (
                                taskinterval.FirstExecuteDate.AddDays(Convert.ToDouble(taskinterval.CycleDays * i))
                                            .
                                             ToShortDateString() == DateTime.Now.ToShortDateString())
                            {
                                taskflag = 1; //标志
                                break;
                            }
                        }
                    }
                }
            }
            if (taskflag == 0)
            {
                return "今天该员工没有喂饲任务";
            }
            return "";
        }
 /// <summary>
 ///     根据id查找当天是否有治疗任务
 /// </summary>
 /// <param name="employeeId">人员id</param>
 /// <returns>返回是否当天有治疗任务</returns>
 public string GetCureTaskById(long employeeId)
 {
     var tasktypeService = new TaskTypeService();
     var taskEmployeeService = new TaskEmployeeService();
     var taskService = new TaskService();
     var cureTaskCourseService = new CureTaskCourseService();
     int taskflag = 0;
     List<task_employee> alltask = taskEmployeeService.FindByEmployeeId(employeeId);
     //根据任务id找到任务类型,若是当天的治疗任务,记录taskid
     foreach (task_employee task in alltask)
     {
         long tasktypeid = taskService.Find(task.TaskId).TaskTypeId;
         string tasktype = tasktypeService.Find(tasktypeid).Name;
         if (tasktype == "治疗")
         {
             //判断当前记录的时间是否和任务中某一个疗程的开始时间相同,若是,则代表当天有治疗任务
             List<cure_task_course> cureTaskCourses = cureTaskCourseService.FindByTaskId(task.TaskId);
             foreach (cure_task_course cureTaskCourse in cureTaskCourses)
             {
                 if (cureTaskCourse.Time.ToShortDateString() == DateTime.Now.ToShortDateString())
                 {
                     taskflag = 1;
                 }
             }
         }
     }
     if (taskflag == 1)
     {
         return "1";
     }
     return "2";
 }
Example #10
0
        /// <summary>
        ///     查看喂食任务
        /// </summary>
        /// <param name="taskNumber">任务编号</param>
        /// <returns></returns>
        public FeedTask GetFeedTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();
            var pigHouseService = new PigHouseService();
            task task = taskService.FindByTaskNumber(taskNumber);
            var feedTaskQualityService = new FeedTaskQualityService();
            if (task == null)
            {
                return null;
            }
            var feedTask = new FeedTask
                               {
                                   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
                               };

            List<FeedTaskDetail> taskDetailList = (from item in feedTaskQualityService.GetPigstyByHouse(task.Id)
                                                   let keys = item.Key.Split('|')
                                                   let pigHouse = pigHouseService.Find(long.Parse(keys[0]))
                                                   let pigsty = item.Value.Remove(item.Value.Length - 1)
                                                   select new FeedTaskDetail
                                                              {
                                                                  PigHouse =
                                                                      pigHouse.pig_house_type.Name + pigHouse.Number,
                                                                  Pigsty = pigsty,
                                                                  Fodder = keys[1]
                                                              }).ToList();
            //var taskDetailList = new List<FeedTaskDetail>();
            //foreach (var item in feedTaskQualityService.GetPigstyByHouse(task.Id))
            //{
            //    string[] keys = item.Key.Split('|');
            //    pig_house pigHouse = pigHouseService.Find(long.Parse(keys[0]));
            //    string pigsty = item.Value.Remove(item.Value.Length - 1);
            //    taskDetailList.Add(new FeedTaskDetail
            //                           {
            //                               PigHouse = pigHouse.pig_house_type.Name + pigHouse.Number,
            //                               Pigsty = pigsty,
            //                               Fodder = keys[1]
            //                           });
            //}

            List<TaskCycle> taskCycleList = task.task_interval_cycle.Select(taskCycleitem => new TaskCycle
                                                                                                 {
                                                                                                     FirstExecuteDate
                                                                                                         =
                                                                                                         taskCycleitem
                                                                                                         .
                                                                                                         FirstExecuteDate,
                                                                                                     CycleDays
                                                                                                         =
                                                                                                         taskCycleitem
                                                                                                         .
                                                                                                         CycleDays
                                                                                                 }).ToList();
            if (taskDetailList.Count > 0)
            {
                feedTask.Feeddetails = taskDetailList;
            }
            if (taskCycleList.Count > 0)
            {
                feedTask.FeedTaskCycle = taskCycleList;
            }

            return feedTask;
        }
Example #11
0
        /// <summary>
        ///     查看喂食任务
        /// </summary>
        /// <param name="taskNumber">任务编号</param>
        /// <returns></returns>
        public AddPigTask GetAddPigTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();

            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }

            var checkTask = new AddPigTask
                                {
                                    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
                                };

            var pigHouseService = new PigHouseService();
            var taskPigstyService = new TaskPigstyService();
            List<task_pigsty> taskPigsties = task.task_pigsty.ToList();
            List<TaskDetail> taskDetailList =
                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),
                                                                                            PigNum =
                                                                                                taskPigstyService
                                                                                                .
                                                                                                GetPigstyCapacitySum
                                                                                                (task
                                                                                                     .Id,
                                                                                                 pigHouseid)
                                                                                        }).ToList();

            if (taskDetailList.Count != 0)
            {
                checkTask.TaskDetails = taskDetailList;
            }

            return checkTask;
        }
Example #12
0
        /// <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;
        }
Example #13
0
        public TransferTask GetTransferTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();

            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }

            var checkTask = new TransferTask
                                {
                                    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
                                };

            var transferService = new TransferService();
            var pigstyDic = new Dictionary<long, StringBuilder>();

            foreach (task_pig item in task.task_pig)
            {
                transfer transfer = transferService.GetLastTransfer(item.PigId, task.Id);
                if (transfer == null)
                {
                    continue;
                }
                long pigsty = transfer.PigstyId;

                if (!pigstyDic.ContainsKey(pigsty))
                {
                    pigstyDic.Add(pigsty, new StringBuilder().Append(transfer.pig.Number));
                }
                else
                {
                    pigstyDic[pigsty].Append("," + transfer.pig.Number);
                }
            }

            var pigHouseService = new PigHouseService();
            var pigstyService = new PigstyService();
            if (pigstyDic.Count != 0)
            {
                List<TaskDetail> transferFromList = (from builder in pigstyDic
                                                     let pigHouse = pigHouseService.FindbyPigstyId(builder.Key)
                                                     select new TaskDetail
                                                                {
                                                                    PigHouse =
                                                                        pigHouse.pig_house_type.Name + pigHouse.Number,
                                                                    Pigsty = pigstyService.Find(builder.Key).Number + "",
                                                                    Pig = builder.Value.ToString()
                                                                }).ToList();

                checkTask.TransferFrom = transferFromList;
            }

            var transferToList = new List<TaskDetail>();
            var pigHouseDic = new Dictionary<string, StringBuilder>();

            foreach (task_pigsty taskPigsty in task.task_pigsty)
            {
                pig_house pigHouse = pigHouseService.FindbyPigstyId(taskPigsty.PigstyId);

                if (pigHouse == null)
                {
                    continue;
                }
                string pigHouseStr = pigHouse.pig_house_type.Name + pigHouse.Number;

                if (!pigHouseDic.ContainsKey(pigHouseStr))
                {
                    pigHouseDic.Add(pigHouseStr, new StringBuilder().Append(taskPigsty.pigsty.Number));
                }
                else
                {
                    pigHouseDic[pigHouseStr].Append("," + taskPigsty.pigsty.Number);
                }
            }

            if (pigHouseDic.Count != 0)
            {
                transferToList.AddRange(pigHouseDic.Select(builder => new TaskDetail
                                                                          {
                                                                              PigHouse = builder.Key,
                                                                              Pigsty = builder.Value.ToString()
                                                                          }));

                checkTask.TransferTo = transferToList;
            }

            return checkTask;
        }
Example #14
0
        /// <summary>
        ///     获得指定任务类型的所有任务
        /// </summary>
        /// <param name="taskTypeId">任务类型Id</param>
        /// <returns>返回任务集合</returns>
        public IEnumerable<Task> GetTaskList(long taskTypeId)
        {
            var taskService = new TaskService();
            var taskStatusTypeService = new TaskStatusTypeService();
            var taskEmployeeService = new TaskEmployeeService();

            IEnumerable<Task> tasklist = taskService.FindByTaskTypeId(taskTypeId).Select(item => new Task
                                                                                                     {
                                                                                                         TaskNumber =
                                                                                                             item.
                                                                                                             TaskNumber,
                                                                                                         EmployeeName =
                                                                                                             taskEmployeeService
                                                                                                             .
                                                                                                             GetEmployeeNames
                                                                                                             (
                                                                                                                 item.Id),
                                                                                                         StartTime =
                                                                                                             item.
                                                                                                             StartTime,
                                                                                                         EndTime =
                                                                                                             item.
                                                                                                             EndTime,
                                                                                                         Status =
                                                                                                             taskStatusTypeService
                                                                                                             .
                                                                                                             Find(
                                                                                                                 item.
                                                                                                                     TaskStatusId)
                                                                                                             .Name,
                                                                                                         Memo =
                                                                                                             item.Memo
                                                                                                     });
            return tasklist;
        }
Example #15
0
        public PagedList<Task> GetTaskPagedList(long taskTypeId, int pageIndex, int pageSize, string check,
            int searchItem)
        {
            var taskService = new TaskService();
            var taskStatusTypeService = new TaskStatusTypeService();
            var taskEmployeeService = new TaskEmployeeService();

            PagedList<task> tasks = taskService.GetTaskPagedList(taskTypeId, pageIndex, pageSize, check, searchItem);

            IEnumerable<Task> taskList =
                tasks.Select(item => new Task
                                         {
                                             TaskNumber =
                                                 item.
                                                 TaskNumber,
                                             EmployeeName =
                                                 taskEmployeeService
                                                 .
                                                 GetEmployeeNames
                                                 (
                                                     item.Id),
                                             StartTime =
                                                 item.
                                                 StartTime,
                                             EndTime =
                                                 item.
                                                 EndTime,
                                             Status =
                                                 taskStatusTypeService
                                                 .
                                                 Find(
                                                     item.
                                                         TaskStatusId)
                                                 .Name,
                                             Memo =
                                                 item.Memo
                                         });

            return new PagedList<Task>(taskList, pageIndex, pageSize,
                                       tasks.TotalItemCount);
        }
        public ActionResult NewTransferPigstyInfo()
        {
            if (Session["CheckFeed"] == null || !(bool) Session["AddTransferPigstyInfo"] ||
                !(bool) Session["CheckTransferPigstyInfo"])
            {
                Response.Write("<script>history.go(0);</script>");
                return View("Error");
            }

            var newTransferPigstyInfo = new TransferPigstyInfo();
            var taskEmployee = new TaskEmployeeService();
            IEnumerable<SelectListItem> taskNumberList = newTransferPigstyInfo.GetTaskNumberSelect(TaskTypeId);
            if (!taskNumberList.Any())
            {
                const string returnstring = "任务为空,请先添加任务";
                Response.Write("<script language='JavaScript'>alert('" + returnstring + ".');history.go(-1);</script>");
                return Content("");
            }
            SelectListItem firstOrDefault = newTransferPigstyInfo.GetTaskNumberSelect(TaskTypeId).FirstOrDefault();
            if (firstOrDefault != null)
                newTransferPigstyInfo.EmployeeName = taskEmployee.GetEmployeeNames(long.Parse(firstOrDefault.Value));
            ViewData["pigsty"] = new ListService().GetFirstPigstyList();
            ViewData["pighouse"] = new ListService().GetPigHouseList();
            ViewData["pig"] = new ListService().GetFirstPigList();
            ViewData["taskNumber"] = newTransferPigstyInfo.GetTaskNumberSelect(TaskTypeId);

            ViewBag.Title = "新建转栏信息";
            return View(newTransferPigstyInfo);
        }
        public MedicineTakeModel GetCureTaskByEmployeeId(long employeeId)
        {
            var medicineTakeModel = new MedicineTakeModel();

            var tasktypeService = new TaskTypeService();
            var taskEmployeeService = new TaskEmployeeService();
            var taskService = new TaskService();
            var cureTaskMethodService = new CureTaskMethodService();
            var cureTaskCourseService = new CureTaskCourseService();
            var cureTaskMedicineService = new CureTaskMedicineService();
            int taskflag = 0;
            long employeeTaskId = 0;
            long cureCourseId = 0;
            List<task_employee> alltask = taskEmployeeService.FindByEmployeeId(employeeId);
            //根据任务id找到任务类型,若是当天的治疗任务,记录taskid
            foreach (task_employee task in alltask)
            {
                long tasktypeid = taskService.Find(task.TaskId).TaskTypeId;
                string tasktype = tasktypeService.Find(tasktypeid).Name;
                if (tasktype == "治疗")
                {
                    //判断当前记录的时间是否和任务中某一个疗程的开始时间相同,若是,则代表当天有治疗任务
                    List<cure_task_course> cureTaskCourses = cureTaskCourseService.FindByTaskId(task.TaskId);
                    foreach (cure_task_course cureTaskCourse in cureTaskCourses)
                    {
                        if (cureTaskCourse.Time.ToShortDateString() == DateTime.Now.ToShortDateString())
                        {
                            taskflag = 1;
                            employeeTaskId = task.TaskId;
                            cureCourseId = cureTaskCourse.Id;
                            medicineTakeModel.TaskCourseId = cureCourseId;
                        }
                    }
                }
            }
            if (taskflag == 1)
            {
                List<cure_task_method> cureTaskMethods = cureTaskMethodService.FindByCureTaskCourseId(cureCourseId);
                var cureDetails = new List<CureDetail>();
                CureDetail cureDetail = null;
                medicineTakeModel.CureTaskType = cureDetails;
                foreach (cure_task_method cureTaskMethod in cureTaskMethods)
                {
                    cureDetail = new CureDetail();
                    cureDetail.CureType = cureTaskMethod.cure_type.Name;
                    cureDetails.Add(cureDetail);
                    var cureMedicineDetails = new List<CureMedicineDetail>();
                    cureDetail.CureMedicineDetail = cureMedicineDetails;
                    CureMedicineDetail cureMedicineDetail = null;
                    List<cure_task_medicine> cureTaskMedicines =
                        cureTaskMedicineService.FindByCureTaskMethodId(cureTaskMethod.Id);
                    foreach (cure_task_medicine cureTaskMedicine in cureTaskMedicines)
                    {
                        cureMedicineDetail = new CureMedicineDetail();
                        cureMedicineDetail.Medicine = cureTaskMedicine.medicine.Name;
                        cureMedicineDetail.Quality = cureTaskMedicine.Quality;
                        cureMedicineDetail.Unit = cureTaskMedicine.unit.Name;
                        cureMedicineDetails.Add(cureMedicineDetail);
                    }
                }

                medicineTakeModel.TaskNumber = taskService.Find(employeeTaskId).TaskNumber;
                List<task_employee> allemployees = taskEmployeeService.FindByTaskId(employeeTaskId);
                int i;
                string reAllEmployeeName = "";
                for (i = 0; i < allemployees.Count - 1; i++)
                {
                    reAllEmployeeName = reAllEmployeeName + allemployees[i].employee.Name + ",";
                }
                reAllEmployeeName = reAllEmployeeName + allemployees[i].employee.Name;
                medicineTakeModel.EmloyeeName = reAllEmployeeName;
            }
            return medicineTakeModel;
        }
Example #18
0
        public FodderTakeModel GetFodderDetail(FodderTakeModel model)
        {
            //初始化
            var newFodderDetails = new List<FodderDetail>();
            //var newFodderDetail=new FodderDetail();
            //newFodderDetails.Add(newFodderDetail);
            model.TaskDetail = newFodderDetails;

            var pigstyService = new PigstyService();
            var tasktypeService = new TaskTypeService();
            var taskEmployeeService = new TaskEmployeeService();
            var taskpigstyservice = new TaskPigstyService();
            var feedTaskQualityService = new FeedTaskQualityService();
            var taskIntervalCycleService = new TaskIntervalCycleService();
            int taskflag = 0;
            long employeeTaskId = 0;
            var taskService = new TaskService();
            List<task_employee> alltask = taskEmployeeService.FindByEmployeeId(model.ActualEmployeeId);
            //根据任务id找到任务类型,若是当天的喂饲任务,记录taskid
            foreach (task_employee task in alltask)
            {
                long tasktypeid = taskService.Find(task.TaskId).TaskTypeId;
                string tasktype = tasktypeService.Find(tasktypeid).Name;
                if (tasktype == "喂饲")
                {
                    List<task_interval_cycle> taskInterval = taskIntervalCycleService.FindByTaskId(task.TaskId);
                    foreach (task_interval_cycle taskinterval in taskInterval)
                    {
                        for (int i = 0; i < 1000; i++)
                        {
                            //根据任务的循环时间匹配是否有当天的任务
                            if (
                                taskinterval.FirstExecuteDate.AddDays(Convert.ToDouble(taskinterval.CycleDays*i))
                                            .
                                             ToShortDateString() == DateTime.Now.ToShortDateString())
                            {
                                taskflag = 1; //标志
                                employeeTaskId = task.TaskId;
                                break;
                            }
                        }
                    }
                }
            }
            if (taskflag == 1)
            {
                List<task_pigsty> taskPisties = taskpigstyservice.FindByTaskId(employeeTaskId);

                //遍历该任务的所有的猪栏,并将其对应的饲料添加到model.TaskDetail中
                int i;
                foreach (task_pigsty taskPigsty in taskPisties)
                {
                    List<feed_task_quality> taskQuality = feedTaskQualityService.FindByFeedTaskPigstyId(taskPigsty.Id);
                    if (model.TaskDetail.Count == 0)
                    {
                        var fodderDetail = new FodderDetail
                                               {
                                                   FodderTypeName = taskQuality[0].fodder_type.Name,
                                                   //Quality = taskQuality[0].Quality * pigstyService.GetPignumbers(Convert.ToInt64(taskPigsty.PigstyId)),
                                                   //UnitName = taskQuality[0].unit.Name,
                                                   FodderTypeId = taskQuality[0].FodderTypeId,
                                                   //UnitId = taskQuality[0].UnitId
                                               };
                        model.TaskDetail.Add(fodderDetail);
                    }
                    else
                    {
                        int knt = 0; //判断该猪栏的饲料是否跟
                        for (i = 0; i < model.TaskDetail.Count; i++)
                        {
                            if (model.TaskDetail[i].FodderTypeName == taskQuality[0].fodder_type.Name)
                            {
                                //model.TaskDetail[i].Quality = taskQuality[0].Quality*
                                //                              pigstyService.GetPignumbers(
                                //                                  Convert.ToInt64(taskPigsty.PigstyId)) +
                                //                              model.TaskDetail[i].Quality;
                                knt = 1;
                            }
                        }
                        if (knt == 0)
                        {
                            var fodderDetail = new FodderDetail
                                                   {
                                                       FodderTypeName = taskQuality[0].fodder_type.Name,
                                                       //Quality = taskQuality[0].Quality * pigstyService.GetPignumbers(Convert.ToInt64(taskPigsty.PigstyId)),
                                                       //UnitName = taskQuality[0].unit.Name,
                                                       FodderTypeId = taskQuality[0].FodderTypeId,
                                                       //UnitId = taskQuality[0].UnitId
                                                   };
                            model.TaskDetail.Add(fodderDetail);
                        }
                    }
                }
                model.TaskNumber = taskService.Find(employeeTaskId).TaskNumber;
                //任务的全部人员
                List<task_employee> allemployees = taskEmployeeService.FindByTaskId(employeeTaskId);
                string reAllEmployeeName = "";
                for (i = 0; i < allemployees.Count - 1; i++)
                {
                    reAllEmployeeName = reAllEmployeeName + allemployees[i].employee.Name + ",";
                }
                reAllEmployeeName = reAllEmployeeName + allemployees[i].employee.Name;
                model.TaskEmployeeName = reAllEmployeeName;
            }
            return model;
        }
        /// <summary>
        ///     转栏息管理列表
        /// </summary>
        /// <returns></returns>
        public IEnumerable<Info> GetTransferPigstyInfoList()
        {
            var transferService = new TransferService();
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();
            var transferInfoList = new List<Info>();
            IOrderedEnumerable<transfer> transferServiceAll = transferService.FindAll().OrderByDescending(m => m.Time);
            long taskId = 0;
            foreach (transfer transferInfoitem in transferServiceAll)
            {
                if (taskId == transferInfoitem.TaskId || transferInfoitem.task.TaskTypeId == 7) continue;
                transferInfoList.Add(new Info
                                         {
                                             TaskNumber = taskService.Find(transferInfoitem.TaskId).TaskNumber,
                                             EmployeeName =
                                                 taskEmployeeService.GetEmployeeNames(
                                                     taskService.Find(transferInfoitem.TaskId).Id),
                                             Time = transferInfoitem.Time,
                                             Meno = transferInfoitem.Memo
                                         });
                taskId = transferInfoitem.TaskId;
            }

            return transferInfoList;
        }
Example #20
0
        public object GetCureTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();

            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }

            var checkTask = new CureTask
                                {
                                    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
                                };

            var transferService = new TransferService();
            var pigstyDic = new Dictionary<long, StringBuilder>();

            foreach (task_pig item in task.task_pig)
            {
                transfer transfer = transferService.GetLastTransfer(item.PigId, task.Id);
                if (transfer == null)
                {
                    continue;
                }
                long pigsty = transfer.PigstyId;

                if (!pigstyDic.ContainsKey(pigsty))
                {
                    pigstyDic.Add(pigsty, new StringBuilder().Append(transfer.pig.Number));
                }
                else
                {
                    pigstyDic[pigsty].Append("," + transfer.pig.Number);
                }
            }

            var pigHouseService = new PigHouseService();
            var pigstyService = new PigstyService();
            if (pigstyDic.Count != 0)
            {
                checkTask.CureDetail = (from builder in pigstyDic
                                        let pigHouse = pigHouseService.FindbyPigstyId(builder.Key)
                                        select new TaskDetail
                                                   {
                                                       PigHouse =
                                                           pigHouse.pig_house_type.Name + pigHouse.Number,
                                                       Pigsty = pigstyService.Find(builder.Key).Number + "",
                                                       Pig = builder.Value.ToString()
                                                   }).ToList();
            }

            List<CureCourse> courseList = (from cureCourse in task.cure_task_course
                                           let methodList = (from cureMethod in cureCourse.cure_task_method
                                                             let medicineList =
                                                                 cureMethod.cure_task_medicine.Select(
                                                                     cureTaskMedicine => new Medicine
                                                                                             {
                                                                                                 MedicineName =
                                                                                                     cureTaskMedicine.
                                                                                                     medicine.Name,
                                                                                                 Quality =
                                                                                                     cureTaskMedicine.
                                                                                                     Quality,
                                                                                                 Unit =
                                                                                                     cureTaskMedicine.
                                                                                                     unit.Name
                                                                                             }).ToList()
                                                             select new CureMethod
                                                                        {
                                                                            CureMedicine = medicineList,
                                                                            CureType = cureMethod.cure_type.Name
                                                                        }).ToList()
                                           select new CureCourse
                                                      {
                                                          CureOrder = cureCourse.Order,
                                                          CureTime = cureCourse.Time,
                                                          CureMethod = methodList
                                                      }).ToList();

            if (courseList[0].CureMethod.Count != 0 && courseList[0].CureMethod[0].CureMedicine.Count != 0)
            {
                checkTask.CureCourse = courseList;
            }

            return checkTask;
        }
Example #21
0
        /// <summary>
        ///     查看淘汰任务
        /// </summary>
        /// <param name="taskNumber">任务编号</param>
        /// <returns></returns>
        public EliminateTask GetEliminateTask(string taskNumber)
        {
            var taskService = new TaskService();
            var taskEmployeeService = new TaskEmployeeService();

            task task = taskService.FindByTaskNumber(taskNumber);

            if (task == null)
            {
                return null;
            }

            var customerService = new CustomerService();
            var checkTask = new EliminateTask
            {
                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
            };
            var transferService = new TransferService();
            var pigstyDic = new Dictionary<long, StringBuilder>();

            foreach (task_pig item in task.task_pig)
            {
                transfer transfer = transferService.GetLastTransfer(item.PigId, task.Id);
                if (transfer == null)
                {
                    continue;
                }
                long pigsty = transfer.PigstyId;

                if (!pigstyDic.ContainsKey(pigsty))
                {
                    pigstyDic.Add(pigsty, new StringBuilder().Append(transfer.pig.Number));
                }
                else
                {
                    pigstyDic[pigsty].Append("," + transfer.pig.Number);
                }
            }

            foreach (task_pigsty item in task.task_pigsty)
            {

                long pigsty = item.PigstyId;

                    pigstyDic.Add(pigsty, new StringBuilder().Append(""));

            }
            var pigHouseService = new PigHouseService();
            var pigstyService = new PigstyService();
            if (pigstyDic.Count != 0)
            {
                checkTask.EliminateTaskDetail = (from builder in pigstyDic
                                        let pigHouse = pigHouseService.FindbyPigstyId(builder.Key)
                                        select new TaskDetail
                                        {
                                            PigHouse =
                                                pigHouse.pig_house_type.Name + pigHouse.Number,
                                            Pigsty = pigstyService.Find(builder.Key).Number + "",
                                            Pig = builder.Value.ToString()
                                        }).ToList();
            }

            return checkTask;
        }
        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;
        }