/// <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 #2
0
        /// <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="taskId">任务id号</param>
 /// <param name="pigHouseId">猪舍id号</param>
 /// <returns></returns>
 public HashSet<long> GetPigHouseByMum(long taskId)
 {
     var mumPigList=FindByTaskId(taskId);
     var transferService=new TransferService();
     HashSet<long> PigHouseByMum=new HashSet<long>();
     foreach (var mum in mumPigList)
         PigHouseByMum.Add(transferService.FindPositionByPig(mum.PigId).pigsty.PigHouseId);
     return PigHouseByMum;
 }
 /// <summary>
 ///     根据任务猪栏号和猪舍id找猪类型
 /// </summary>
 /// <param name="taskId">猪栏号</param>
 /// <param name="pigHouseId">猪舍id号</param>
 /// <returns></returns>
 public string GetMumPigBypigStys(string pigStyNums, long pigHouseId)
 {
     var transferService = new TransferService();
     var pigstyService=new PigstyService();
     foreach (var pigStyNum in pigStyNums.Split(','))
     {
         var pigSty=pigstyService.GetPigsty(int.Parse(pigStyNum),pigHouseId);
         if(transferService.FindByPigStyByPigType(pigSty.Id).Count>1)return "仔猪";
     }
     return "全部猪";
 }
 /// <summary>
 ///     获取以,隔开的猪栏编号的字符串
 /// </summary>
 /// <param name="taskId">任务id号</param>
 /// <param name="pigHouseId">猪舍id号</param>
 /// <returns></returns>
 public string GetPigstyNumsByMum(long taskId,long pigHouseId)
 {
     StringBuilder pigstyNums = new StringBuilder();
     var mumPigList = FindByTaskId(taskId);
     foreach (var mum in mumPigList)
     {
         var transferService = new TransferService();
         var nowPosition = transferService.FindPositionByPig(mum.PigId);
         if (nowPosition.pigsty.PigHouseId == pigHouseId) pigstyNums.Append(nowPosition .pigsty.Number+ ",");
     }
     return pigstyNums.ToString().Substring(0,pigstyNums.ToString().Length-1);
 }
 /// <summary>
 ///     根据任务编号删除转栏信息
 /// </summary>
 /// <param name="taskNumber">任务编号</param>
 /// <returns></returns>
 public bool DelTransfer(string taskNumber)
 {
     var taskService = new TaskService();
     long taskId = taskService.FindByTaskNumber(taskNumber).Id;
     var transferService = new TransferService();
     foreach (transfer transfer in transferService.FindByTaskId(taskId))
     {
         transferService = new TransferService();
         transferService.Delete(transferService.Find(transfer.Id));
     }
     return true;
 }
Example #7
0
        /// <summary>
        ///     查看销售信息
        /// </summary>
        /// <param name="taskNumber">任务编号</param>
        /// <returns></returns>
        public SalesInfo CheckSalesInfo(string taskNumber)
        {
            var checkSalesInfo = new SalesInfo();
            var salesService = new SaleService();
            checkSalesInfo.SalesInfoPigDetail = new List<Detail>();
            checkSalesInfo.SalesInfoDetail = new List<SalesInfoDetail>();
            var saleTaskQualityService = new SaleTaskQualityService();
            var transferService = new TransferService();
            task task = new TaskService().FindByTaskNumber(taskNumber);
            if (task == null) return null;
            sale sale = salesService.FindByTaskId(task.Id).FirstOrDefault();
            if (sale == null) return null;
            checkSalesInfo.TaskNumber = taskNumber;
            checkSalesInfo.EmployeeName = sale.employee.Name;
            checkSalesInfo.Meno = sale.Memo;
            checkSalesInfo.Customer = task.customer.Name;
            foreach (sale_task_quality saleTaskItem in saleTaskQualityService.FindByTaskId(task.Id))
            {
                checkSalesInfo.SalesInfoDetail.Add(new SalesInfoDetail
                                                       {
                                                           PigType = saleTaskItem.pig_type.Name,
                                                           Price = saleTaskItem.Price,
                                                           Quantity = saleTaskItem.Quality
                                                       });
            }

            foreach (sale_pig salePigItem in sale.sale_pig)
            {
                transfer firstOrDefault =
                    transferService.FindByPigId(salePigItem.PigId).OrderByDescending(m => m.Time).FirstOrDefault();
                if (firstOrDefault != null)
                    if (salePigItem.Time != null)
                        checkSalesInfo.SalesInfoPigDetail.Add(new Detail
                                                                  {
                                                                      PigHouse =
                                                                          firstOrDefault.pigsty.pig_house.pig_house_type
                                                                                        .
                                                                                         Name
                                                                          + firstOrDefault.pigsty.pig_house.Number,
                                                                      Pigsty = firstOrDefault.pigsty.Number + "",
                                                                      Pig = salePigItem.pig.Number,
                                                                      DetailTime = (DateTime) salePigItem.Time
                                                                  });
            }
            return checkSalesInfo;
        }
Example #8
0
 /// <summary>
 ///     根据猪栏id查找猪的数量
 /// </summary>
 /// <param name="pigstyid">猪栏id</param>
 /// <returns>猪的总数</returns>
 public int GetPignumbers(long pigstyid)
 {
     List<transfer> transfers = new TransferService().FindByPigstyId(pigstyid);
     int number = transfers.Count;
     for (int i = 0; i < transfers.Count; i++)
     {
         long compare = transfers[i].PigId;
         for (int j = i + 1; j < transfers.Count; j++)
         {
             if (compare == transfers[j].PigId)
             {
                 number--;
             }
         }
     }
     return number;
 }
Example #9
0
 /// <summary>
 ///     根据猪栏id找猪下拉列表
 /// </summary>
 /// <returns></returns>
 public IEnumerable<SelectListItem> FindPigListByPigstyId(string pigstyId)
 {
     var pigService = new TransferService();
     long id = 0;
     IEnumerable<SelectListItem> pigSelect = new List<SelectListItem>();
     if (long.TryParse(pigstyId, out id))
     {
         var pigIdAndNum = pigService.GetPigIdAndNum(id).Split(',');
         if ( pigIdAndNum[0]!="")
         pigSelect =
             pigIdAndNum.Select(
                 pigstyItem => new SelectListItem
                 {
                     Text = pigstyItem.Split(':')[0] + "",
                     Value = pigstyItem.Split(':')[1] + ""
                 });
     }
     return pigSelect;
 }
Example #10
0
 /// <summary>
 ///     根据生猪编号删除生猪的相关信息
 /// </summary>
 /// <param name="pigNumber"></param>
 /// <returns></returns>
 public bool DelPig(string pigNumber)
 {
     var pigService = new PigService();
     pig pig = pigService.FindByNumber(pigNumber);
     var transferService = new TransferService();
     if (pig.cure_pig.Count > 0 || pig.task_pig.Count > 0 || pig.sale_pig.Count > 0 || pig.pig_weight.Count > 0 ||
         pigService.FindByFemaleParentId(pig.Id).Count > 0 ||
         pigService.FindByMostLikelyMaleParentId(pig.Id).Count > 0 ||
         pigService.FindBySecondLikelyMaleParentId(pig.Id).Count > 0 ||
         pigService.FindByThirdLikelyMaleParentId(pig.Id).Count > 0)
     {
         return false;
     }
     foreach (transfer transfer in transferService.FindByPigId(pig.Id))
     {
         transferService = new TransferService();
         transferService.Delete(transferService.Find(transfer.Id));
     }
     pigService = new PigService();
     pigService.Delete(pigService.Find(pig.Id));
     return true;
 }
Example #11
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;
        }
        /// <summary>
        ///     修改转栏信息
        /// </summary>
        /// <param name="updateTransferPigstyInfo">转栏信息页面类</param>
        /// <returns></returns>
        public bool UpdateTransferPigstyInfo(TransferPigstyInfo updateTransferPigstyInfo)
        {
            var taskService = new TaskService();
            var transferService = new TransferService();
            task transferPigstyTask = taskService.FindByTaskNumber(updateTransferPigstyInfo.TaskNumber);
            int count = 0;
            if (transferPigstyTask != null)
            {
                List<transfer> transferList =
                    transferService.FindByTaskId(transferPigstyTask.Id).OrderByDescending(m => m.Time).ToList();
                for (; count < transferList.Count; count++)
                {
                    //transfer lastPigsty = transferService.GetLastTransfer(transferList[count].PigId,
                    //                                                      transferPigstyTask.Id);
                    if (count < updateTransferPigstyInfo.TransferPigstyInfoDetail.Count)
                    {
                        if (transferList[count] != null)
                        {
                            transfer lastTransfer = transferService.Find(transferList[count].Id);
                            if (updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig == "null")
                                updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig = lastTransfer.PigId + "";

                            if (updateTransferPigstyInfo.TransferPigstyInfoDetail[count].SourcePigsty != null)
                                lastTransfer.PigstyId =
                                    long.Parse(updateTransferPigstyInfo.TransferPigstyInfoDetail[count].SourcePigsty);
                            if (updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig != null)
                                lastTransfer.PigId =
                                    long.Parse(updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig);
                            transferService.Update(lastTransfer);
                        }
                        transferList[count].PigstyId =
                            long.Parse(updateTransferPigstyInfo.TransferPigstyInfoDetail[count].TargetPigsty);
                        if (updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig != null)
                            transferList[count].PigId =
                                long.Parse(updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig);
                        transferList[count].Memo = updateTransferPigstyInfo.Meno;
                        transferService.Update(transferList[count]);
                    }
                    else
                    {
                        transferService = new TransferService();
                        transferService.Delete(transferService.Find(transferList[count].Id));
                    }
                }
                for (; count < updateTransferPigstyInfo.TransferPigstyInfoDetail.Count; count++)
                {
                    transferService.Insert(new transfer
                                               {
                                                   TaskId = transferPigstyTask.Id,
                                                   PigstyId =
                                                       long.Parse(
                                                           updateTransferPigstyInfo.TransferPigstyInfoDetail[count].
                                                               TargetPigsty),
                                                   PigId =
                                                       long.Parse(
                                                           updateTransferPigstyInfo.TransferPigstyInfoDetail[count].Pig),
                                                   Time =
                                                       updateTransferPigstyInfo.TransferPigstyInfoDetail[count].
                                                       TransferPigstyTime,
                                                   Memo = updateTransferPigstyInfo.Meno
                                               });
                }
                return true;
            }
            return false;
        }
Example #13
0
 /// <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;
 }
Example #14
0
        /// <summary>
        ///     查看生猪信息
        /// </summary>
        /// <param name="pigNumber"></param>
        /// <returns></returns>
        public PigInfo CheckPigInfo(string pigNumber)
        {
            var pigService = new PigService();
            pig pig = pigService.FindByNumber(pigNumber);
            if (pig == null) return null;
            var transferService = new TransferService();
            string pigHouse = "";
            string pigsty = "";
            string earNumber = "",
                   rfid = "",
                   femaleParent = "",
                   mostLikelyMaleParent = "",
                   secondLikelyMaleParent = "",
                   thirdLikelyMaleParent = null;
            if (pig.EarNumber != null)
                earNumber = pig.EarNumber + "";
            if (pig.RFID != null)
                rfid = pig.RFID + "";
            if (pig.FemaleParentId != null)
                femaleParent = pigService.Find(pig.FemaleParentId).Number;
            if (pig.MostLikelyMaleParentId != null)
                mostLikelyMaleParent = pigService.Find(pig.MostLikelyMaleParentId).Number;
            if (pig.SecondLikelyMaleParentId != null)
                secondLikelyMaleParent = pigService.Find(pig.SecondLikelyMaleParentId).Number;
            if (pig.ThirdLikelyMaleParentId != null)
                thirdLikelyMaleParent = pigService.Find(pig.ThirdLikelyMaleParentId).Number;
            transfer transfer = transferService.FindByPigId(pig.Id).OrderByDescending(m => m.Time).FirstOrDefault();
            if (transfer != null)
            {
                pigHouse = transfer.pigsty.pig_house.pig_house_type.Name + transfer.pigsty.pig_house.Number;
                pigsty = transfer.pigsty.Number + "";
            }
            string pigState = "";
            var salepig = new SalePigService().FindByPigId(pig.Id).FirstOrDefault();
            if (pig.State == false) pigState = "正常";
            else if (salepig != null)
            {
                if (salepig.sale.SaleType == "销售")
                    pigState = "出售";
                else if (salepig.sale.SaleType == "淘汰") pigState = "淘汰";
                else if (salepig.sale.SaleType == "死亡") pigState = "死亡";
                else pigState = "异常";
            }
            else
                pigState = "异常";
            var pigInfo = new PigInfo
                              {
                                  Number = pigNumber,
                                  EarNumber = earNumber,
                                  Birthday = pig.Birthday,
                                  Rfid = rfid,
                                  PigType = pig.pig_type.Name,
                                  FemaleParentNum = femaleParent,
                                  MostLikelyMaleParentNum = mostLikelyMaleParent,
                                  SecondLikelyMaleParentNum = secondLikelyMaleParent,
                                  ThirdLikelyMaleParentNum = thirdLikelyMaleParent,
                                  Memo = pig.Memo,
                                  PigHouse = pigHouse,
                                  Pigsty = pigsty,
                                  TransferPigstyTime = transfer == null ? new DateTime() : transfer.Time,
                                  state = pigState
                              };

            return pigInfo;
        }
        /// <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 #16
0
 public PagedList<PigInfo> GetpigPageList(PagedList<pig> pigInfos, int pageIndex, int pageSize)
 {
     var pigService = new PigService();
     var pigList = new List<PigInfo>();
     var salePigService = new SalePigService();
     var transferService = new TransferService();
     foreach (pig pig in pigInfos)
     {
         //transfer transfer = transferService.FindByPigId(pig.Id).OrderByDescending(m => m.Time).FirstOrDefault();
         transfer transfer = transferService.FindByPigId(pig.Id).OrderByDescending(m => m.Id).FirstOrDefault();
         string pigHouse = "";
         string pigsty = "";
         string pigState = "";
         if (transfer != null)
         {
             pigHouse = transfer.pigsty.pig_house.pig_house_type.Name + transfer.pigsty.pig_house.Number + "舍";
             pigsty = transfer.pigsty.Number + "";
         }
         var salepig = salePigService.FindByPigId(pig.Id).FirstOrDefault();
         if (pig.State == false) pigState = "正常";
         else if (salepig != null)
         {
             if (salepig.sale.SaleType == "销售")
                 pigState = "出售";
             else if (salepig.sale.SaleType == "淘汰") pigState = "淘汰";
             else if (salepig.sale.SaleType == "死亡") pigState = "死亡";
             else pigState = "异常";
         }
         else
             pigState = "异常";
         pigList.Add(new PigInfo
                         {
                             Number = pig.Number,
                             Rfid = pig.RFID,
                             EarNumber = pig.EarNumber == null ? "" : pig.EarNumber.ToString(),
                             Birthday = pig.Birthday,
                             PigType = pig.pig_type.Name,
                             Memo = pig.Memo,
                             PigHouse = pigHouse,
                             Pigsty = pigsty,
                             state = pigState
                         });
     }
     return new PagedList<PigInfo>(pigList, pageIndex, pageSize, pigInfos.TotalItemCount);
 }
Example #17
0
        //猪栏内的猪类型
        public JsonResult getPigstyTypes(string pigstys,string pigHouseId)
        {
            HashSet<SelectListItem>pigStyType=new HashSet<SelectListItem>();
             TransferService transferService= new TransferService();
            var pigstyService = new PigstyService();
            var  pigTypeService=new PigTypeService();
            pigStyType.Add(new SelectListItem(){
                     Text="全部猪",Value="0",Selected=true
                    });
            foreach(var str in pigstys.Split(',')){
            var pigSty=pigstyService.GetPigsty(int.Parse(str),long.Parse(pigHouseId));
              var   pigTypeIdList =transferService.FindByPigStyByPigType(pigSty.Id);
                foreach(var id in pigTypeIdList){
                    var name=pigTypeService.Find(id).Name;
                    pigStyType.Add(new SelectListItem(){
                     Text=name,Value=id+""
                    });
                }
            }

            return Json(pigStyType, JsonRequestBehavior.AllowGet);
        }
Example #18
0
 /// <summary>
 ///     猪栏id为1的猪下拉列表
 /// </summary>
 /// <returns></returns>
 public IEnumerable<SelectListItem> GetFirstPigList()
 {
     var pigHouseService = new PigHouseService();
     var pigstyService = new PigstyService();
     var transferService = new TransferService();
     var pigSelect = new List<SelectListItem>();
     pig_house pigHouse = pigHouseService.FindAll().FirstOrDefault();
     if (pigHouse != null)
     {
         pigsty pigsty = pigstyService.FindByPigHouseId(pigHouse.Id).FirstOrDefault();
         if (pigsty != null)
         {
             string[] strPig = transferService.GetPigIdAndNum(pigsty.Id).Split(',');
             if (strPig[0] != "")
                 pigSelect.AddRange(
                     strPig.Select(strPigItem => strPigItem.Split(':')).Select(pig => new SelectListItem
                                                                                          {
                                                                                              Text = pig[1],
                                                                                              Value = pig[0]
                                                                                          }).OrderBy(m => m.Text));
         }
     }
     return pigSelect;
 }
        public bool NewPreventionDiseaseTask(PreventionDiseaseTask newTask, long taskTypeId, string createEmployee)
        {
            var employeeService = new EmployeeService();

            var task = new task
                           {
                               TaskNumber = newTask.TaskNumber,
                               StartTime = newTask.StartTime,
                               EndTime = newTask.EndTime,
                               CreateTime = DateTime.Now,
                               CreateEmployeeId = employeeService.FindByNumber(createEmployee).Id,
                               TaskStatusId = 1,
                               TaskTypeId = taskTypeId,
                               Memo = newTask.Memo,
                           };

            foreach (string employeeNumber in newTask.EmployeeNumber.Split(','))
            {
                task.task_employee.Add(new task_employee {EmployeeId = employeeService.FindByNumber(employeeNumber).Id});
            }

            var pigstyService = new PigstyService();
            var transferService = new TransferService();
            foreach (TaskDetail detail in newTask.Taskdetails)
            {
                string[] pigstyNum = detail.Pigsty.Split(new[] {','});
                long pighouseid = long.Parse(detail.PigHouse);
                foreach (string pigstydetail in pigstyNum)
                {
                    var taskPigsty = new task_pigsty();
                    int number = int.Parse(pigstydetail);
                    if (detail.Pig == "2") {
                        taskPigsty.PigstyId = pigstyService.GetPigsty(number, pighouseid).Id;
                       var  munPigList=transferService.FindByMunPig(taskPigsty.PigstyId);

                       foreach (var munPig in munPigList)
                           task.task_pig.Add(new task_pig() {
                               PigId = munPig.PigId
                             });
                    }
                    else
                    {
                        taskPigsty.PigstyId = pigstyService.GetPigsty(number, pighouseid).Id;
                        task.task_pigsty.Add(taskPigsty);
                    }
                }
            }

            task.task_prevention.Add(new task_prevention
                                         {
                                             PreventionTypeId = long.Parse(newTask.DiseaseName)
                                         });

            var taskService = new TaskService();
            taskService.Insert(task);

            return true;
        }
Example #20
0
        /// <summary>
        ///     添加生猪
        /// </summary>
        /// <param name="newPigInfo"></param>
        /// <returns></returns>
        public bool CreatePigInfo(PigInfo newPigInfo)
        {
            var pigService = new PigService();
            var transferService = new TransferService();
            var taskStatusTypeService = new TaskStatusTypeService();
            var taskService = new TaskService();
            if (newPigInfo == null) return false;
            long? earNumber = null,
                  femaleParentId = null,
                  mostLikelyMaleParentId = null,
                  secondLikelyMaleParentId = null,
                  thirdLikelyMaleParentId = null;
            if (newPigInfo.EarNumber != null)
                earNumber = long.Parse(newPigInfo.EarNumber);

            if (newPigInfo.FemaleParentNum != null)
                femaleParentId = long.Parse(newPigInfo.FemaleParentNum);
            if (newPigInfo.MostLikelyMaleParentNum != null)
                mostLikelyMaleParentId = long.Parse(newPigInfo.MostLikelyMaleParentNum);
            if (newPigInfo.SecondLikelyMaleParentNum != null)
                secondLikelyMaleParentId = long.Parse(newPigInfo.SecondLikelyMaleParentNum);
            if (newPigInfo.ThirdLikelyMaleParentNum != null)
                thirdLikelyMaleParentId = long.Parse(newPigInfo.ThirdLikelyMaleParentNum);
            if (newPigInfo.TaskNumber == null) return false;
            pigService.Insert(new pig
                                  {
                                      Number = newPigInfo.Number,
                                      EarNumber = earNumber,
                                      Birthday = newPigInfo.Birthday,
                                      RFID = newPigInfo.Rfid,
                                      PigTypeId = long.Parse(newPigInfo.PigType),
                                      FemaleParentId = femaleParentId,
                                      MostLikelyMaleParentId = mostLikelyMaleParentId,
                                      SecondLikelyMaleParentId = secondLikelyMaleParentId,
                                      ThirdLikelyMaleParentId = thirdLikelyMaleParentId,
                                      Memo = newPigInfo.Memo,
                                      State = true
                                  });
            if (newPigInfo.TaskNumber != null)
            {
                transferService.Insert(new transfer
                                           {
                                               TaskId = long.Parse(newPigInfo.TaskNumber),
                                               PigId = pigService.FindByNumber(newPigInfo.Number).Id,
                                               PigstyId = long.Parse(newPigInfo.Pigsty),
                                               Time = newPigInfo.TransferPigstyTime
                                           });
            }

            pigService = new PigService();

            task_status_type taskStatusType = taskStatusTypeService.FindByName("已完成");
            task task = taskService.Find(long.Parse(newPigInfo.TaskNumber));
            if (taskStatusType != null && task != null)
            {
                task.TaskStatusId = taskStatusType.Id;
                taskService.Update(task);
            }
            return true;
        }
Example #21
0
        /// <summary>
        ///     查看生猪个体转栏记录
        /// </summary>
        /// <param name="pigNumber"></param>
        /// <param name="pageIndex"> </param>
        /// <param name="pageSize"> </param>
        /// <returns></returns>
        public PigInfo CheckTransferPigstyRecord(string pigNumber, int pageIndex, int pageSize)
        {
            var pigService = new PigService();
            pig pig = pigService.FindByNumber(pigNumber);
            if (pig == null) return null;
            var transferPigsty = new TransferService();
            var transferInfos = new List<TransferPigstyInfoDetail>();
            List<transfer> transferPigstyList = transferPigsty.FindByPigId(pig.Id).OrderBy(m => m.Time).ToList();
            transfer transfer = transferPigstyList.LastOrDefault();

            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
                              };
            transferInfos.Add(new TransferPigstyInfoDetail
                                  {
                                      SourcePigHouse = "",
                                      SourcePigsty = "",
                                      TargetPigHouse =
                                          transferPigstyList[0].pigsty.pig_house.pig_house_type.Name
                                          + transferPigstyList[0].pigsty.pig_house.Number,
                                      TargetPigsty = transferPigstyList[0].pigsty.Number + "",
                                      TransferPigstyTime = transferPigstyList[0].Time
                                  });
            for (int i = 0; i < transferPigstyList.Count() - 1; i++)
            {
                transferInfos.Add(new TransferPigstyInfoDetail
                                      {
                                          SourcePigHouse =
                                              transferPigstyList[i].pigsty.pig_house.pig_house_type.Name
                                              + transferPigstyList[i].pigsty.pig_house.Number,
                                          SourcePigsty = transferPigstyList[i].pigsty.Number + "",
                                          TargetPigHouse =
                                              transferPigstyList[i + 1].pigsty.pig_house.pig_house_type.
                                                                        Name
                                              + transferPigstyList[i + 1].pigsty.pig_house.Number,
                                          TargetPigsty = transferPigstyList[i + 1].pigsty.Number + "",
                                          TransferPigstyTime = transferPigstyList[i + 1].Time
                                      });
            }
            pigInfo.TransferPigstyRecord =
                new PagedList<TransferPigstyInfoDetail>(transferInfos.OrderBy(m => m.TransferPigstyTime).ToList(),
                                                        pageIndex, pageSize)
                    {
                        Capacity = transferInfos.Count,
                        CurrentPageIndex = pageIndex,
                        PageSize = pageSize,
                        TotalItemCount = transferInfos.Count
                    };
            return pigInfo;
        }
Example #22
0
        /// <summary>
        ///     查看生猪个体防疫记录
        /// </summary>
        /// <param name="pigNumber"></param>
        /// <param name="pageIndex"> </param>
        /// <param name="pageSize"> </param>
        /// <returns></returns>
        public PigInfo CheckPreventionRecord(string pigNumber, int pageIndex, int pageSize)
        {
            var pigService = new PigService();
            pig pig = pigService.FindByNumber(pigNumber);
            var transferPigsty = new TransferService();
            var taskPreventionService = new TaskPreventionService();
            var preventionService = new PreventionService();
            var preventionInfos = new List<PreventionInfo>();
            var salePigService = new SalePigService();
            List<transfer> transferPigstyList = transferPigsty.FindByPigId(pig.Id).OrderBy(m => m.Time).ToList();
            transfer transfer = transferPigstyList.LastOrDefault();
            sale_pig salePig = salePigService.FindByPigId(pig.Id).FirstOrDefault();
            DateTime? temp = null;
            string pigHouse = "", pigsty = "";
            if (transfer != null)
            {
                pigHouse = transfer.pigsty.pig_house.pig_house_type.Name + transfer.pigsty.pig_house.Number;
                pigsty = transfer.pigsty.Number + "";
            }
            if (salePig != null)
            {
                temp = salePig.Time;
            }
            var pigInfo = new PigInfo
                              {
                                  Number = pigNumber,
                                  Birthday = pig.Birthday,
                                  PigType = pig.pig_type.Name,
                                  PigHouse = pigHouse,
                                  Pigsty = pigsty
                              };
                if (transferPigstyList.Count == 1)
                {
                    foreach (prevention preventionItem in
                        preventionService.FindByPistyId(transferPigstyList[0].PigstyId).Where(
                            m => m.Time > transferPigstyList[0].Time))
                    {
                        if (temp != null) if (temp > preventionItem.Time) continue;
                        task_prevention firstOrDefault =
                            taskPreventionService.FindByTaskId(preventionItem.TaskId).FirstOrDefault();
                        if (firstOrDefault != null)
                            preventionInfos.Add(new PreventionInfo
                                                    {
                                                        DiseaseName = firstOrDefault.prevention_type.Name,
                                                        Medicine = firstOrDefault.prevention_type.medicine.Name,
                                                        Time = preventionItem.Time
                                                    });
                    }
                }
                for (int i = 0; i < transferPigstyList.Count; i++)
                {
                    DateTime startTime = transferPigstyList[i].Time;
                    DateTime endTime = DateTime.Now;
                    if (i + 1 < transferPigstyList.Count)
                        endTime = transferPigstyList[i + 1].Time;
                    foreach (prevention preventionItem in
                        preventionService.FindByPistyId(transferPigstyList[i].PigstyId).Where(
                            m => m.Time > startTime && m.Time < endTime))
                    {
                        if (temp != null) if (temp > preventionItem.Time) continue;
                        task_prevention firstOrDefault =
                            taskPreventionService.FindByTaskId(preventionItem.TaskId).FirstOrDefault();
                        if (firstOrDefault != null)
                            preventionInfos.Add(new PreventionInfo
                                                    {
                                                        DiseaseName = firstOrDefault.prevention_type.Name,
                                                        Medicine = firstOrDefault.prevention_type.medicine.Name,
                                                        Time = preventionItem.Time
                                                    });
                    }
                }

            pigInfo.PreventionRecord =
                new PagedList<PreventionInfo>(preventionInfos.OrderByDescending(m => m.Time).ToList(), pageIndex,
                                              pageSize)
                    {
                        Capacity = preventionInfos.Count,
                        PageSize = pageSize,
                        CurrentPageIndex = pageIndex,
                        TotalItemCount = preventionInfos.Count
                    };
            return pigInfo;
        }
Example #23
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 #24
0
        /// <summary>
        ///     更新修改生猪信息
        /// </summary>
        /// <param name="updatePigInfo"></param>
        /// <param name="pigNumber"> </param>
        /// <returns></returns>
        public bool UpdatePigInfo(PigInfo updatePigInfo, string pigNumber)
        {
            var pigService = new PigService();
            var transferService = new TransferService();
            if (updatePigInfo == null) return false;
            long? earNumber = null,
                  femaleParentId = null,
                  mostLikelyMaleParentId = null,
                  secondLikelyMaleParentId = null,
                  thirdLikelyMaleParentId = null;
            if (updatePigInfo.EarNumber != null)
                earNumber = long.Parse(updatePigInfo.EarNumber);

            if (updatePigInfo.FemaleParentNum != null)
                femaleParentId = long.Parse(updatePigInfo.FemaleParentNum);
            if (updatePigInfo.MostLikelyMaleParentNum != null)
                mostLikelyMaleParentId = long.Parse(updatePigInfo.MostLikelyMaleParentNum);
            if (updatePigInfo.SecondLikelyMaleParentNum != null)
                secondLikelyMaleParentId = long.Parse(updatePigInfo.SecondLikelyMaleParentNum);
            if (updatePigInfo.ThirdLikelyMaleParentNum != null)
                thirdLikelyMaleParentId = long.Parse(updatePigInfo.ThirdLikelyMaleParentNum);
            pig pig = pigService.FindByNumber(pigNumber);
            if (pig == null) return false;
            transfer firstTranfer = transferService.FindByPigId(pig.Id).OrderBy(m => m.Time).FirstOrDefault();
            if (firstTranfer != null)
            {
                firstTranfer.PigstyId = long.Parse(updatePigInfo.Pigsty);
                transferService.Update(firstTranfer);
            }
            else
                return false;
            pig.Number = updatePigInfo.Number;
            pig.EarNumber = earNumber;
            pig.Birthday = updatePigInfo.Birthday;
            pig.RFID = updatePigInfo.Rfid;
            pig.PigTypeId = long.Parse(updatePigInfo.PigType);
            pig.FemaleParentId = femaleParentId;
            pig.MostLikelyMaleParentId = mostLikelyMaleParentId;
            pig.SecondLikelyMaleParentId = secondLikelyMaleParentId;
            pig.ThirdLikelyMaleParentId = thirdLikelyMaleParentId;
            pig.Memo = updatePigInfo.Memo;
            pigService.Update(pig);
            return true;
        }
Example #25
0
        /// <summary>
        ///     根据猪栏编号来找该栏猪的id和编号
        /// </summary>
        /// <param name="pid">猪栏编号</param>
        /// <returns>返回猪id和编号字符串</returns>
        public string GetPig(int pid)
        {
            var transferService = new TransferService();

            return transferService.GetPigIdAndNum(pid);
        }
        /// <summary>
        ///     新建转栏信息
        /// </summary>
        /// <param name="newTransferPigstyInfo">转栏信息页面类</param>
        /// <returns>是否成功</returns>
        public bool CreateTransferPigstyInfo(TransferPigstyInfo newTransferPigstyInfo)
        {
            if (newTransferPigstyInfo == null) return false;
            var transferService = new TransferService();
            var taskStatusTypeService = new TaskStatusTypeService();
            var taskService = new TaskService();
            foreach (TransferPigstyInfoDetail transferPigstyInfoDetail in newTransferPigstyInfo.TransferPigstyInfoDetail
                )
            {
                transferService.Insert(new transfer
                                           {
                                               TaskId = long.Parse(newTransferPigstyInfo.TaskNumber),
                                               PigstyId = long.Parse(transferPigstyInfoDetail.TargetPigsty),
                                               PigId = long.Parse(transferPigstyInfoDetail.Pig),
                                               Time = transferPigstyInfoDetail.TransferPigstyTime,
                                               Memo = newTransferPigstyInfo.Meno
                                           });
            }
            task_status_type taskStatusType = taskStatusTypeService.FindByName("已完成");
            task task = taskService.Find(long.Parse(newTransferPigstyInfo.TaskNumber));
            if (taskStatusType != null && task != null)
            {
                task.TaskStatusId = taskStatusType.Id;
                taskService.Update(task);
            }

            return true;
        }
Example #27
0
 /// <summary>
 ///     全部生猪列表
 /// </summary>
 /// <returns></returns>
 //public PagedList<PigInfo> GetPigList(int pageIndex, int pageSize)
 //{
 //    //return GetALLPigList(pageIndex, pageSize);
 //    var pigService = new PigService();
 //    var pigList = new List<PigInfo>();
 //    var salePigService = new SalePigService();
 //    var transferService = new TransferService();
 //    PagedList<pig> pigInfos = pigService.FindByPigPage(pageIndex, pageSize);
 //    foreach (pig pig in pigInfos)
 //    {
 //        //transfer transfer = transferService.FindByPigId(pig.Id).OrderByDescending(m => m.Time).FirstOrDefault();
 //        transfer transfer = transferService.FindByPigId(pig.Id).OrderByDescending(m => m.Id).FirstOrDefault();
 //        string pigHouse = "";
 //        string pigsty = "";
 //        string pigState="";
 //        if (transfer != null)
 //        {
 //            pigHouse = transfer.pigsty.pig_house.pig_house_type.Name + transfer.pigsty.pig_house.Number+"舍";
 //            pigsty = transfer.pigsty.Number + "";
 //        }
 //        if (pig.State == false) pigState = "正常";
 //        else if (salePigService.FindByPigId(pig.Id) != null) pigState = "出售";
 //        else
 //            pigState = "异常";
 //        pigList.Add(new PigInfo
 //                        {
 //                            Number=pig.Number,
 //                            Rfid=pig.RFID,
 //                            EarNumber = pig.EarNumber == null ? "" : pig.EarNumber.ToString(),
 //                            Birthday = pig.Birthday,
 //                            PigType = pig.pig_type.Name,
 //                            Memo = pig.Memo,
 //                            PigHouse = pigHouse,
 //                            Pigsty = pigsty,
 //                            state=pigState
 //                        });
 //    }
 //    return new PagedList<PigInfo>(pigList, pageIndex, pageSize, pigInfos.TotalItemCount);
 //}
 public PagedList<PigInfo> GetPigList(int pageIndex, int pageSize)
 {
     var pigService = new PigService();
     var pigList = new List<PigInfo>();
     var salePigService = new SalePigService();
     var transferService = new TransferService();
     PagedList<pig> pigInfos = pigService.FindByPigPage(pageIndex, pageSize);
     PagedList<transfer> transferList = transferService.FindByAllPage(pageIndex, pageSize);
     foreach (transfer tranfer in transferList)
     {
         pig pig = pigService.Find(tranfer.PigId);
         string pigState = "";
         var salepig = salePigService.FindByPigId(pig.Id).FirstOrDefault();
         if (pig.State == false) pigState = "正常";
         else if (salepig != null)
         {
             if (salepig.sale.SaleType=="销售")
             pigState = "出售";
             else if (salepig.sale.SaleType == "淘汰") pigState = "淘汰";
             else if (salepig.sale.SaleType == "死亡") pigState = "死亡";
             else pigState = "异常";
         }
         else
             pigState = "异常";
         pigList.Add(new PigInfo
                         {
                             Number = pig.Number,
                             Rfid = pig.RFID,
                             EarNumber = pig.EarNumber == null ? "" : pig.EarNumber.ToString(),
                             Birthday = pig.Birthday,
                             PigType = pig.pig_type.Name,
                             Memo = pig.Memo,
                             PigHouse =
                                 tranfer.pigsty.pig_house.pig_house_type.Name + tranfer.pigsty.pig_house.Number +
                                 "舍",
                             Pigsty = tranfer.pigsty.Number + "",
                             state = pigState
                         });
     }
     return new PagedList<PigInfo>(pigList, pageIndex, pageSize, pigInfos.TotalItemCount);
 }
Example #28
0
 /// <summary>
 ///     查看生猪个体喂食记录
 /// </summary>
 /// <param name="pigNumber"></param>
 /// <param name="pageIndex"> </param>
 /// <param name="pageSize"> </param>
 /// <returns></returns>
 public PigInfo CheckFeedRecord(string pigNumber, int pageIndex, int pageSize)
 {
     var pigService = new PigService();
     var salePigService = new SalePigService();
     pig pig = pigService.FindByNumber(pigNumber);
     var transferPigsty = new TransferService();
     var feedService = new FeedService();
     List<transfer> transferPigstyList = transferPigsty.FindByPigId(pig.Id).OrderBy(m => m.Time).ToList();
     transfer transfer = transferPigstyList.LastOrDefault();
     var feedInfos = new List<FodderTakeDetail>();
     string pigHouse = "", pigsty = "";
     DateTime? temp = null;
     sale_pig salePig = salePigService.FindByPigId(pig.Id).FirstOrDefault();
     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
                       };
     if (salePig != null)
     {
         temp = salePig.Time;
     }
     if (transferPigstyList.Count == 1)
     {
         foreach (feed feedItem in
             feedService.FindByPigstyId(transferPigstyList[0].PigstyId).Where(
                 m => m.Time > transferPigstyList[0].Time))
         {
             if (temp != null) if (feedItem.Time > temp) continue;
             feedInfos.Add(new FodderTakeDetail
                               {
                                   FodderType =
                                       feedItem.task.task_pigsty.FirstOrDefault(
                                           m => m.PigstyId == feedItem.PigstyId)
                                               .feed_task_quality.FirstOrDefault()
                                               .fodder_type.Name,
                                   TakeTime = feedItem.Time
                               });
         }
     }
     for (int i = 0; i < transferPigstyList.Count - 1; i++)
     {
         DateTime startTime = transferPigstyList[i].Time;
         DateTime endTime = transferPigstyList[i + 1].Time;
         foreach (feed feedItem in
             feedService.FindByPigstyId(transferPigstyList[i].PigstyId).Where(
                 m => m.Time > startTime && m.Time < endTime))
         {
             if (temp != null) if (feedItem.Time > temp) continue;
             feedInfos.Add(new FodderTakeDetail
                               {
                                   // FodderType = feedItem.task.fodder_take.Where(m => m.Time > startTime && m.Time < endTime).FirstOrDefault().fodder_type.Name,
                                   FodderType =
                                       feedItem.task.task_pigsty.FirstOrDefault(
                                           m => m.PigstyId == feedItem.PigstyId)
                                               .feed_task_quality.FirstOrDefault()
                                               .fodder_type.Name,
                                   TakeTime = feedItem.Time
                               });
         }
     }
     pigInfo.FeedRecord = new PagedList<FodderTakeDetail>(feedInfos.OrderByDescending(m => m.TakeTime).ToList(),
                                                          pageIndex, pageSize)
                              {
                                  Capacity = feedInfos.Count,
                                  CurrentPageIndex = pageIndex,
                                  PageSize = pageSize,
                                  TotalItemCount = feedInfos.Count
                              };
     return pigInfo;
 }
Example #29
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;
        }
Example #30
0
 /// <summary>
 ///     查找对应条件的生猪
 /// </summary>
 /// <param name="checkInput">搜索内容</param>
 /// <param name="choseid">条件号</param>
 /// <returns></returns>
 public PagedList<PigInfo> GetPigList(string checkInput, string choseid, int pageIndex, int pageSize)
 {
     var pigService = new PigService();
     var transferService = new TransferService();
     long earnum;
     switch (choseid)
     {
         case "1":
             if (checkInput != "") //RFID
             {
                 return GetpigPageList(pigService.FindByPigPageByRfid(checkInput.Trim(), pageIndex, pageSize),
                                       pageIndex, pageSize);
             }
             else
                 return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
         case "2":
             if (checkInput != "") //耳号
             {
                 if (long.TryParse(checkInput.Trim(), out earnum))
                     return GetpigPageList(pigService.FindByPigPageByEarNum(earnum, pageIndex, pageSize),
                                           pageIndex, pageSize);
                 else
                     return new PagedList<PigInfo>(new List<PigInfo>(), pageIndex, pageSize, 0);
             }
             else
                 return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
         case "3":
             if (checkInput != "") //猪类型
                 return
                     GetpigPageList(pigService.FindByPigPageByType(long.Parse(checkInput), pageIndex, pageSize),
                                    pageIndex, pageSize);
             else
                 return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
         case "4":
             if (checkInput != "") //猪舍猪栏
             {
                 string[] checkStrs = checkInput.Split('+');
                 if (checkStrs.Length > 0)
                 {
                     if (checkStrs.Length > 1 && checkStrs[1] != "")
                         return
                             GetpigPageList(
                                 transferService.FindByPigstyPage(long.Parse(checkStrs[1]), pageIndex, pageSize),
                                 pageIndex, pageSize);
                     else
                         return
                             GetpigPageList(
                                 transferService.FindByPigHousePage(long.Parse(checkStrs[0]), pageIndex, pageSize),
                                 pageIndex, pageSize);
                 }
                 else return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
             }
             else
                 return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
         case "5":
             if (checkInput != "") //生猪状态
                 return
                     GetpigPageList(
                        pigService.FindByPigPageByType(checkInput, pageIndex, pageSize),
                         pageIndex, pageSize);
             else
                 return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
         default:
             return GetpigPageList(pigService.FindByPigPage(pageIndex, pageSize), pageIndex, pageSize);
     }
 }