public QRContentGridViewModel(IEnumerable <PurchaseItem> PurchaseItems, IPRContentRepository PRContentRepo)
 {
     rows = new List <QRContentGridRowModel>();
     foreach (PurchaseItem _item in PurchaseItems)
     {
         PRContent _prcontent = PRContentRepo.PRContents.Where(p => p.PurchaseItemID == _item.PurchaseItemID).FirstOrDefault();
         rows.Add(new QRContentGridRowModel(_item, _prcontent));
     }
     Page    = 1;
     Total   = PurchaseItems.Count();
     Records = 500;
 }
Пример #2
0
        public PRListGridViewModel(IEnumerable <PurchaseRequest> Requests,
                                   IUserRepository UsersRepo,
                                   PurchaseRequestStatus Status,
                                   IProjectRepository ProjectRepository,
                                   IPurchaseTypeRepository PurchaseTypeRepository,
                                   IDepartmentRepository DeptRepository,
                                   IPRContentRepository PRContentRepository)
        {
            rows = new List <PRListGridRowModel>();
            string _userName, _reviewUser, _submitUser;
            string _dept;

            #region EF性能优化 360ms --> 40ms
            List <User>         _users    = UsersRepo.Users.ToList();
            List <PurchaseType> _purTypes = PurchaseTypeRepository.PurchaseTypes.ToList();
            List <Department>   _deps     = DeptRepository.Departments.ToList();
            List <PRContent>    _prcs     = PRContentRepository.PRContents.ToList();

            foreach (PurchaseRequest _request in Requests)
            {
                try
                {
                    _userName = UsersRepo.GetUserByID(_request.UserID).FullName;
                }
                catch
                {
                    _userName = "";
                }

                try
                {
                    _reviewUser = _users.Where(u => u.UserID == _request.ReviewUserID).FirstOrDefault().FullName;//UsersRepo.GetUserByID(_request.ReviewUserID).FullName;
                }
                catch
                {
                    _reviewUser = "";
                }

                try
                {
                    _submitUser = _users.Where(u => u.UserID == _request.SubmitUserID).FirstOrDefault().FullName;//UsersRepo.GetUserByID(_request.SubmitUserID).FullName;
                }
                catch
                {
                    _submitUser = "";
                }


                string _type = "";
                try
                {
                    _type = _purTypes.Where(t => t.PurchaseTypeID == _request.PurchaseType).FirstOrDefault().Name;//PurchaseTypeRepository.QueryByID(_request.PurchaseType).Name;
                }
                catch
                {
                    _type = "";
                }
                try
                {
                    _dept = _deps.Where(d => d.DepartmentID == _request.DepartmentID).FirstOrDefault().Name;//DeptRepository.GetByID(_request.DepartmentID).Name;
                }
                catch
                {
                    _dept = "";
                }
                //申请者
                User ApprovalUser = _users.Where(u => u.UserCode == _request.ApprovalERPUserID).FirstOrDefault() ?? new User();                          //UsersRepo.Users.Where(u => u.UserCode == _request.ApprovalERPUserID).FirstOrDefault() ?? new User();
                //ERP料号同步状态
                List <PRContent> prcs          = _prcs.Where(p => p.PurchaseRequestID == _request.PurchaseRequestID).ToList() ?? new List <PRContent>(); //PRContentRepository.QueryByRequestID(_request.PurchaseRequestID).ToList() ?? new List<PRContent>();
                bool             ERPPartStatus = true;
                foreach (var prc in prcs)
                {
                    if (string.IsNullOrEmpty(prc.ERPPartID))
                    {
                        ERPPartStatus = false;
                    }
                }
                rows.Add(new PRListGridRowModel(_request, _userName, _type, _dept, _submitUser, _reviewUser, ApprovalUser.FullName, ERPPartStatus));
            }
            #endregion
            Page    = 1;
            Total   = 100;
            Records = 30;
        }
Пример #3
0
 public WorkHourController(ITaskRepository TaskRepository,
                           IPartRepository PartRepository,
                           IProjectRepository ProjectRepository,
                           IUserRepository UserRepository,
                           ICNCItemRepository CNCItemRepository,
                           IQCInfoRepository QCInfoRepository,
                           IWarehouseStockRepository WarehouseStockRepository,
                           IMachineRepository MachineRepository,
                           ICNCMachInfoRepository CNCMachInfoRepository,
                           ISteelGroupProgramRepository SteelGroupProgramRepository,
                           ISteelProgramRepository SteelProgramRepository,
                           IEDMSettingRepository EDMSettingRepository,
                           IEDMDetailRepository EDMDetailRepository,
                           IQCPointProgramRepository QCPointProgramRepository,
                           ISystemConfigRepository SystemConfigRepository,
                           IQCSteelPointRepository QCSteelPointRepository,
                           ISteelCAMDrawingRepository SteelCAMDrawingRepository,
                           ISteelDrawingCADPartRepository SteelDrawingCADPartRepository,
                           ICAMDrawingRepository CAMDrawingRepository,
                           IProjectPhaseRepository ProjectPhaseRepository,
                           IPOContentRepository POContentRepository,
                           IQCTaskRepository QCTaskRepository,
                           IQCCmmReportRepository QCCmmReportRepository,
                           IQCCmmFileSettingRepository QCCmmFileSettingRepository,
                           IPRContentRepository PRContentRepository,
                           IPurchaseRequestRepository PurchanseRequestRepository,
                           ICharmillRepository CharmillRepository,
                           IEDMTaskRecordRepository EDMTaskRepository,
                           IDepartmentRepository DepartmentRepository,
                           IMGSettingRepository MGSettingRepository,
                           IWEDMSettingRepository WEDMSettingRepository,
                           ITaskHourRepository TaskHourRepository,
                           IMachinesInfoRepository MachinesInfoRepository,
                           ITaskTypeRepository TaskTypeRepositroy,
                           IWH_WorkTypeRepository WorkTypeRepository)
 {
     _taskRepository                = TaskRepository;
     _partRepository                = PartRepository;
     _projectRepository             = ProjectRepository;
     _userRepository                = UserRepository;
     _cncItemRepository             = CNCItemRepository;
     _qcInfoRepository              = QCInfoRepository;
     _whStockRepository             = WarehouseStockRepository;
     _machineRepository             = MachineRepository;
     _machInfoRepository            = CNCMachInfoRepository;
     _steelGroupProgramRepository   = SteelGroupProgramRepository;
     _steelProgramRepository        = SteelProgramRepository;
     _edmSettingRepository          = EDMSettingRepository;
     _edmDetailRepository           = EDMDetailRepository;
     _qcPointProgramRepository      = QCPointProgramRepository;
     _systemConfigRepository        = SystemConfigRepository;
     _qcSteelPointRepository        = QCSteelPointRepository;
     _steelCAMDrawingRepository     = SteelCAMDrawingRepository;
     _steelDrawingCADPartRepository = SteelDrawingCADPartRepository;
     _camDrawingRepository          = CAMDrawingRepository;
     _projectPhaseRepository        = ProjectPhaseRepository;
     _poContentRepository           = POContentRepository;
     _qcTaskRepository              = QCTaskRepository;
     _qcCmmReportRepository         = QCCmmReportRepository;
     _qcCmmFileSettingRepository    = QCCmmFileSettingRepository;
     _prContentRepository           = PRContentRepository;
     _prRepository           = PurchanseRequestRepository;
     _charmillRepository     = CharmillRepository;
     _edmRecordRepository    = EDMTaskRepository;
     _departmentRepository   = DepartmentRepository;
     _mgSettingRepository    = MGSettingRepository;
     _wedmSettingRepository  = WEDMSettingRepository;
     _taskHourRepository     = TaskHourRepository;
     _machinesinfoRepository = MachinesInfoRepository;
     _taskTyprRepository     = TaskTypeRepositroy;
     _workTyprRepository     = WorkTypeRepository;
 }