/// <summary> /// 数据源:申请单 /// </summary> /// <param name="PRContents"></param> /// <param name="PurchaseItemRepository"></param> /// <param name="CostCenterRepository"></param> /// <param name="PartRepository"></param> public PurchaseContentGridViewModel(List <PRContent> PRContents, IPurchaseItemRepository PurchaseItemRepository, ICostCenterRepository CostCenterRepository, IPartRepository PartRepository, ITaskHourRepository TaskHourRepository) { rows = new List <PurchaseContentGridRowModel>(); string state = ""; foreach (PRContent _content in PRContents) { PurchaseItem _purchaseItem = PurchaseItemRepository.QueryByID(_content.PurchaseItemID); try { state = Enum.GetName(typeof(PurchaseItemStatus), _purchaseItem.State); } catch { state = ""; } String _costcenter; CostCenter _centerObj = CostCenterRepository.QueryByID(_purchaseItem.CostCenterID); if (_centerObj != null) { _costcenter = _centerObj.Name; } else { _costcenter = ""; } string ERPNo = string.Empty; //if (_purchaseItem.PartID > 0) //{ // Part _part = PartRepository.QueryByID(_purchaseItem.PartID); // ERPNo = _part.ERPPartID; //} ERPNo = _content.ERPPartID; SetupTaskStart _setupTask = new SetupTaskStart(); #region 外发内容 if (_content.TaskID > 0) { TaskHour _taskhour = TaskHourRepository.TaskHours.Where(h => h.TaskID == _content.TaskID).OrderByDescending(h => h.TaskHourID).FirstOrDefault(); if (_taskhour != null) { _setupTask.TaskID = _taskhour.TaskID; _setupTask.MachinesName = TaskHourRepository.GetMachineByTask(_taskhour.TaskID) ?? ""; _setupTask.TotalTime = TaskHourRepository.GetTotalHourByTaskID(_taskhour.TaskID); _setupTask.UserName = _taskhour.Operater; _setupTask.MachinesCode = _taskhour.MachineCode; } } #endregion rows.Add(new PurchaseContentGridRowModel(_content, state, _costcenter, ERPNo, _setupTask)); } Page = 1; Total = PRContents.Count(); Records = 500; }
public SetupTaskGridRowModel(SetupTaskStart _setupTask) { cell = new string[13]; cell[0] = _setupTask.TaskID.ToString(); cell[1] = _setupTask.TaskName.ToString(); cell[2] = _setupTask.State; //Enum.GetName(typeof(CNCStatus), _task.State) ?? "-"; cell[3] = _setupTask.MachinesCode; cell[4] = _setupTask.MachinesName; cell[5] = _setupTask.UserName; cell[6] = _setupTask.UserID.ToString(); cell[7] = _setupTask.Qty.ToString(); cell[8] = _setupTask.TotalTime.ToString(); cell[9] = _setupTask.StartTime.ToString("yyyy/MM/dd HH:mm:ss"); cell[10] = _setupTask.FinishTime.ToString("yyyy/MM/dd HH:mm:ss"); cell[11] = _setupTask.SemiTaskFlag; cell[12] = _setupTask.TaskHourID.ToString(); }
public TaskGridRowModel(Task Task, string CAD, string CAM, string Workshop, string QC, string FilePath, string PlanDate, SetupTaskStart _setupTask, CNCMachInfo Machinfo, WEDMSetting wedmsetting, MGSetting mgsetting, string taskType) { Helpers.TaskStatus _status = new Helpers.TaskStatus(); cell = new string[45]; //TaskID cell[0] = Task.TaskID.ToString(); //图纸 if (Task.DrawingFile != "") { cell[1] = "<a onclick='ShowElePDF(" + Task.TaskID.ToString() + ")'>Open</a>"; } //任务名 cell[2] = Task.TaskName; //版本 string _version = Task.Version.ToString(); cell[3] = _version.Length == 1 ? "V0" + _version : "V" + _version; //CAD文档 switch (Task.TaskType) { case 3: //CAD文档 cell[4] = wedmsetting.CADPartName ?? ""; break; case 6: cell[4] = mgsetting.CADNames ?? ""; break; default: cell[4] = ""; break; } //CAD人员FullName cell[5] = CAD; //备注 cell[6] = Task.Memo; switch (Task.TaskType) { case 3: //加工精度 cell[7] = wedmsetting.Precision ?? ""; //特征数量 cell[8] = wedmsetting.FeatureCount.ToString(); //长度 cell[9] = wedmsetting.Length.ToString(); //厚度 cell[10] = wedmsetting.Thickness.ToString(); break; case 6: cell[7] = ""; cell[8] = mgsetting.FeatureNote ?? ""; cell[9] = ""; cell[10] = ""; break; default: cell[7] = ""; cell[8] = ""; cell[9] = ""; cell[10] = ""; break; } //时间 cell[11] = Math.Round(Task.Time, 1).ToString(); //状态 string stateName; stateName = Enum.GetName(typeof(TechnikSys.MoldManager.Domain.Status.TaskStatus), Task.State); cell[12] = stateName; //状态备注 cell[13] = Task.StateMemo; //毛坯(规格) cell[14] = Task.Raw; //型号 cell[15] = Task.Model; if (Machinfo != null) { //表面 cell[16] = Machinfo.Surface; //平动 cell[17] = Machinfo.ObitType; //电极位置 cell[18] = Machinfo.Position; } else { cell[16] = ""; cell[17] = ""; cell[18] = ""; } //R cell[19] = Task.R.ToString(); //F cell[20] = Task.F.ToString(); //数量 cell[21] = Task.Quantity.ToString(); //备料 cell[22] = Task.Prepared.ToString(); //材料 cell[23] = Task.Material; //HRC cell[24] = Task.HRC; //工艺 cell[25] = Task.ProcessName; //实际工时 cell[26] = _setupTask.TotalTime.ToString(); //优先 cell[27] = Task.Priority.ToString(); //创建日期 _dateVal = Task.CreateTime.ToString("yyyy-MM-dd"); cell[28] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //计划日期 cell[29] = (PlanDate == "1900-01-01" || PlanDate == "0001-01-01") ? "-" : PlanDate; //接收日期 _dateVal = Task.AcceptTime.ToString("yyyy-MM-dd"); cell[30] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //发布日期 _dateVal = Task.ReleaseTime.ToString("yyyy-MM-dd"); cell[31] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //开始日期 _dateVal = Task.StartTime.ToString("yyyy-MM-dd"); cell[32] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //结束时间 _dateVal = Task.FinishTime.ToString("yyyy-MM-dd"); cell[33] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //预计日期 _dateVal = Task.ForecastTime.ToString("yyyy-MM-dd");; cell[34] = (_dateVal == "1900-01-01" || _dateVal == "0001-01-01") ? "-" : _dateVal; //CADM人员FullName cell[35] = CAM; //QC点 cell[36] = Task.QCInfoFinish.ToString(); //跑位检查 cell[37] = Task.PositionFinish.ToString(); //QC cell[38] = QC; //加工人员FullName cell[39] = Workshop; //机器号 cell[40] = _setupTask.MachinesName; //操作人员 cell[41] = _setupTask.UserName; cell[42] = taskType; cell[43] = Task.TaskType.ToString(); cell[44] = Task.Creator; }
public TaskGridViewModel(IEnumerable <Task> Tasks, IUserRepository UserRepository, string CAMDrawingPath, ICNCMachInfoRepository MachInfoRepository, IEDMDetailRepository EDMDetailRepository, ITaskRepository TaskRepository, IProjectPhaseRepository ProjectPhaseRepository, IMGSettingRepository MGSettingRepository, IWEDMSettingRepository WEDMSettingRepository, ITaskHourRepository TaskHourRepository , ISystemConfigRepository SystemConfigRepo , ITaskTypeRepository TasktypeRepo , IMachinesInfoRepository MachInfoRepo) { ProjectPhase _phase; string _cad, _cam, _workshop, _qc, _planDate; int _phaseID = 0; rows = new List <TaskGridRowModel>(); List <WEDMSetting> _wedmSettings = WEDMSettingRepository.WEDMSettings.ToList(); List <MGSetting> _mgSettings = MGSettingRepository.MGSettings.ToList(); List <User> _users = UserRepository.Users.ToList(); List <ProjectPhase> _pjPhases = ProjectPhaseRepository.ProjectPhases.ToList(); List <TaskHour> _taskhours = TaskHourRepository.TaskHours.ToList(); List <MachinesInfo> _machineInfos = MachInfoRepo.MachinesInfo.ToList(); List <TaskType> _tasktypes = TasktypeRepo.TaskTypes.ToList(); List <CNCMachInfo> _cncmachInfos = MachInfoRepository.CNCMachInfoes.ToList(); List <Task> _tasks = TaskRepository.Tasks.ToList(); List <EDMDetail> _edmDetails = EDMDetailRepository.EDMDetails.ToList(); foreach (Task _task in Tasks) { WEDMSetting wedmsetting = new WEDMSetting(); MGSetting mgsetting = new MGSetting(); switch (_task.TaskType) { case 1: _phaseID = 8; break; case 2: _phaseID = 9; break; case 3: wedmsetting = _wedmSettings.Where(s => s.ID == _task.ProgramID).FirstOrDefault() ?? new WEDMSetting(); //WEDMSettingRepository.QueryByTaskID(_task.TaskID); _phaseID = 10; break; case 4: _phaseID = 8; break; case 6: mgsetting = _mgSettings.Where(s => s.ID == _task.ProgramID).FirstOrDefault() ?? new MGSetting(); //MGSettingRepository.QueryByTaskID(_task.TaskID); _phaseID = 7; break; } _cad = _task.CADUser > 0 ? (_users.Where(u => u.UserID == _task.CADUser).FirstOrDefault() ?? new User()).FullName : ""; //UserRepository.GetUserByID(_task.CADUser).FullName : ""; _cam = _task.CAMUser > 0? (_users.Where(u => u.UserID == _task.CAMUser).FirstOrDefault() ?? new User()).FullName : ""; //UserRepository.GetUserByID(_task.CAMUser).FullName:""; _workshop = _task.WorkshopUser > 0? (_users.Where(u => u.UserID == _task.WorkshopUser).FirstOrDefault() ?? new User()).FullName : ""; //UserRepository.GetUserByID(_task.WorkshopUser).FullName:""; _qc = _task.QCUser > 0 ? (_users.Where(u => u.UserID == _task.QCUser).FirstOrDefault() ?? new User()).FullName : ""; //UserRepository.GetUserByID(_task.QCUser).FullName : ""; CNCMachInfo _machinfo = GetCNCMachinfo(_task, _cncmachInfos, _tasks, _edmDetails); //GetCNCMachinfo(_task,MachInfoRepository, TaskRepository, EDMDetailRepository); decimal TaskHour = 0; try { _phase = _pjPhases.Where(p => p.ProjectID == _task.ProjectID && p.PhaseID == _phaseID).FirstOrDefault() ?? new ProjectPhase();//ProjectPhaseRepository.GetProjectPhases(_task.ProjectID).Where(p => p.PhaseID == _phaseID).FirstOrDefault(); _planDate = _phase.PlanCFinish == new DateTime(1, 1, 1) ? _phase.PlanFinish.ToString("yyyy-MM-dd") : _phase.PlanCFinish.ToString("yyyy-MM-dd"); } catch { _planDate = "-"; } try { TaskHour = GetTotalHourByTaskID(_taskhours, _task.TaskID);//TaskHourRepository.GetTotalHourByTaskID(_task.TaskID); } catch { TaskHour = 0; } string _machineCode = GetMachineByTask(_taskhours, _machineInfos, _task.TaskID); //TaskHourRepository.GetMachineByTask(_task.TaskID) ?? ""; string Operater = GetOperaterByTaskID(_taskhours, _task.TaskID); //TaskHourRepository.GetOperaterByTaskID(_task.TaskID) ?? ""; SetupTaskStart _setupTask = new SetupTaskStart { TaskID = _task.TaskID, TaskName = _task.TaskName, State = Enum.GetName(typeof(TaskStatus), _task.State), MachinesCode = "", MachinesName = _machineCode, TotalTime = Convert.ToInt32(TaskHour), UserID = 0, UserName = Operater, }; //string _camDrawingPath = string.Empty; if (string.IsNullOrEmpty(CAMDrawingPath)) { if (_task.TaskType == 6) { CAMDrawingPath = SystemConfigRepo.GetTaskDrawingPath("CAD"); } else { CAMDrawingPath = SystemConfigRepo.GetTaskDrawingPath(); } } string taskType = string.Empty; int _mgtype = (_tasktypes.Where(t => t.ShortName == "MG" && t.Enable).FirstOrDefault() ?? new TaskType()).TaskID;//(TasktypeRepo.TaskTypes.Where(t => t.ShortName == "MG" && t.Enable).FirstOrDefault() ?? new TaskType()).TaskID;//6 if (_task.TaskType != _mgtype) { taskType = (_tasktypes.Where(t => t.TaskID == _task.TaskType && t.Enable).FirstOrDefault() ?? new TaskType()).Name;//TasktypeRepo.TaskTypes.Where(t => t.TaskID == _task.TaskType).Select(t => t.Name).FirstOrDefault(); } else { string _typeID = (_mgtype.ToString() + _task.OldID.ToString()); taskType = (_tasktypes.Where(t => t.TaskID == Convert.ToInt32(_typeID) && t.Enable).FirstOrDefault() ?? new TaskType()).Name;//TasktypeRepo.TaskTypes.ToList().Where(t => t.TaskID == Convert.ToInt32(_typeID)).Select(t => t.Name).FirstOrDefault(); } rows.Add(new TaskGridRowModel(_task, _cad, _cam, _workshop, _qc, CAMDrawingPath, _planDate, _setupTask, _machinfo, wedmsetting, mgsetting, taskType)); } }
//外发任务 public PurchaseContentGridRowModel(Task Task, SetupTaskStart _setuptaskStart, string mrPurDate, IProjectPhaseRepository ProjectPhaseRepository, ISteelCAMDrawingRepository SteelDrawingRepo , IWHPartRepository WHPartRepository, IPurchaseTypeRepository PurchaseTypeRepository, double time) { int _phaseID = 0; string _partNum = WHPartRepository.GetwfTaskPartNum(Task.TaskID); cell = new string[28]; cell[0] = ""; cell[1] = "0"; cell[2] = Task.TaskID.ToString(); cell[3] = "0"; //零件名 taskname+processname cell[4] = Task.TaskName + "_" + Task.ProcessName + "(V" + string.Format("{0:00}", Task.Version) + ")"; //数量 if (Task.TaskType == 1) { cell[5] = (Task.R + Task.F).ToString(); } else { //cell[5] = Task.Quantity.ToString(); cell[5] = _setuptaskStart.Qty.ToString(); } ////物料编号 模具号-taskid cell[6] = _partNum;//Task.MoldNumber+"-"+Task.TaskID.ToString(); //规格 cell[7] = Task.Raw; //材料 cell[8] = Task.Material; //硬度 cell[9] = Task.HRC; //零件号 cell[10] = _partNum.Split('-')[1]; cell[11] = ""; cell[12] = _setuptaskStart.MachinesName ?? ""; cell[13] = "true"; cell[14] = "新建"; cell[15] = "0"; cell[16] = mrPurDate ?? Task.PlanTime.ToString("yyyy-MM-dd"); cell[17] = Task.MoldNumber; cell[18] = ""; cell[19] = ""; cell[20] = ""; cell[21] = Task.Memo; cell[22] = _setuptaskStart.UserName ?? ""; cell[23] = _setuptaskStart.MachinesName ?? ""; cell[24] = _setuptaskStart.MachinesCode ?? ""; cell[25] = Task.Quantity.ToString(); int _purchaseType = 0; if (Task.TaskType == 6) { switch (Task.OldID)//0 铣/1 磨/4 全加工/3 车 { case 0: _purchaseType = PurchaseTypeRepository.QueryByName("铣床外发").PurchaseTypeID; break; case 1: _purchaseType = PurchaseTypeRepository.QueryByName("磨床外发").PurchaseTypeID; break; case 3: _purchaseType = PurchaseTypeRepository.QueryByName("车外发").PurchaseTypeID; break; case 4: _purchaseType = PurchaseTypeRepository.QueryByName("全加工外发").PurchaseTypeID; break; default: _purchaseType = PurchaseTypeRepository.QueryByName("铣磨外发").PurchaseTypeID; break; } } else { _purchaseType = PurchaseTypeRepository.PurchaseTypes.ToList().Where(t => Task.TaskType.Equals(Convert.ToInt32(t.TaskType))).FirstOrDefault().PurchaseTypeID; } cell[26] = _purchaseType.ToString(); cell[27] = time.ToString(); }
//编辑PR单 public PurchaseContentGridRowModel(PRContent PRContent, string State, string CostCenter, string ERPNo, SetupTaskStart _setupTask) { cell = new string[27]; cell[0] = PRContent.PRContentID.ToString(); cell[1] = PRContent.PartID.ToString(); cell[2] = PRContent.TaskID.ToString(); cell[3] = PRContent.WarehouseStockID.ToString(); //获取零件短名 string name = PRContent.PartName ?? ""; //name = name.Substring(name.IndexOf('_') + 1, name.LastIndexOf('_') - name.IndexOf('_') - 1); //name = name.Substring(0, name.LastIndexOf('_') - 1); // cell[4] = string.IsNullOrEmpty(name) ? PRContent.PartName : name; cell[5] = PRContent.Quantity.ToString(); cell[6] = PRContent.PartNumber; cell[7] = PRContent.PartSpecification; cell[8] = PRContent.MaterialName; cell[9] = PRContent.Hardness ?? ""; cell[10] = PRContent.JobNo; cell[11] = PRContent.BrandName; cell[12] = PRContent.SupplierName; cell[13] = PRContent.PurchaseDrawing.ToString(); cell[14] = State; cell[15] = PRContent.PurchaseItemID.ToString(); cell[16] = PRContent.RequireTime == new DateTime(1900, 1, 1) ? "-" : PRContent.RequireTime.ToString("yyyy-MM-dd"); cell[17] = PRContent.MoldNumber; cell[18] = PRContent.CostCenterID.ToString(); cell[19] = CostCenter; cell[20] = ERPNo; cell[21] = PRContent.Memo; cell[22] = _setupTask.UserName ?? ""; cell[23] = _setupTask.MachinesName ?? ""; cell[24] = _setupTask.MachinesCode ?? ""; cell[25] = PRContent.Quantity.ToString(); cell[26] = PRContent.PurchaseTypeID.ToString(); }