Esempio n. 1
0
 private void button2_Click(object sender, EventArgs e)
 {
     if (!string.IsNullOrEmpty(textBox1.Text))
     {
         //string PartList = ReadTxtContent(textBox1.Text);
         string Entity = ReadTxtContent(textBox1.Text);
         //List<Part> parts = new List<Part>()
         //{
         //    new Part {PartID=0,ProjectID=0,ShortName="数据测试",Name="116161_Black(4212+4213)_9003_V00",Specification="43.00X15.57X32.46",CreateDate=Convert.ToDateTime("0001-01-01T00:00:00"),ReleaseDate=Convert.ToDateTime("0001-01-01T00:00:00")
         //    ,MaterialName="Unimax",Hardness="HRC54-56",BrandName="南烽",SupplierName="",Memo="",Quantity=1,Enabled=true,Version="00",TotalQty=1,Virtual=true,JobNo="9003",PartNumber="116161-9003"},
         //    //new Part {PartID=0,ProjectID=10,ShortName="Name2",Name="116161_Hot runner_1091_V20",PartListID=0 },
         //};
         //string str = JsonConvert.SerializeObject(parts);
         //List<Part> _parts = JsonConvert.DeserializeObject<List<Part>>(str);
         MGSetting _entity = JsonConvert.DeserializeObject <MGSetting>(Entity);
         //UGParts ugp = new UGParts("localhost", "50187");
         MGInformation mgi = new MGInformation("localhost", "50187");
         //ResponseInfo ri = ugp.SaveParts(_parts);
         int ri = mgi.AddOrUpdateMGDrawing(_entity);
         //string version = "011";
         //version = version.Substring(version.Count()-2,2);
         //MessageBox.Show(version);
     }
     else
     {
         MessageBox.Show("!");
     }
 }
        public MGSetting QueryByTaskID(int TaskID)
        {
            Task      task      = _context.Tasks.Where(t => t.TaskID == TaskID).FirstOrDefault() ?? new Task();
            MGSetting mgsetting = _context.MGSettings.Where(m => m.ID == task.ProgramID).FirstOrDefault() ?? new MGSetting();

            return(mgsetting);
        }
Esempio n. 3
0
 private void button4_Click(object sender, EventArgs e)
 {
     MGSetting _entity = new MGSetting {
         DrawName = "DrawName", CADNames = "CADNames", Qty = 1, ProcessType = 1, Time = 18.20M, FeatureNote = "tttt", Material = "Material", HRC = "HRC", RawSize = "RawSize", Rev = 0, ReleaseFlag = true, MoldName = "111888"
     };
     MGInformation mgi = new MGInformation("localhost", "50187");
     int           ri  = mgi.AddOrUpdateMGDrawing(_entity);
 }
Esempio n. 4
0
 public int AddOrUpdateMGDrawing(MGSetting entity)
 {
     try
     {
         string _url    = "/Task/SaveService_MGCAMSetting";
         string _return = _server.SendObject(_url, "entity", entity);
         return(Convert.ToInt32(_return));
     }
     catch
     {
         return(2);
     }
 }
        public bool DeleteSettingByName(string partname, int rev)
        {
            MGSetting dbentity = _context.MGSettings.Where(m => m.DrawName == partname && m.active).Where(m => m.Rev == rev).FirstOrDefault() ?? new MGSetting();

            if (dbentity.ID > 0)
            {
                dbentity.active     = false;
                dbentity.DeleteDate = DateTime.Now;
                _context.SaveChanges();
                return(true);
            }
            else
            {
                return(false);
            }
        }
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="entity"></param>
        /// <returns>return ID= 成功 -1--已发布 -2--失败 -3--已有更新版本 -4 上一版本没有发布</returns>
        public int Save(MGSetting entity, bool ForUG = true)
        {
            bool IsNew = false;

            try
            {
                MGSetting _dbentity = new MGSetting();
                _dbentity = _context.MGSettings.Where(m => m.DrawName == entity.DrawName && m.active).Where(m => m.Rev == entity.Rev).FirstOrDefault() ?? new MGSetting();
                if (ForUG)
                {
                    if (_dbentity.ReleaseFlag)
                    {
                        return(-1);
                    }
                    MGSetting _dbentity2 = new MGSetting();
                    _dbentity2 = _context.MGSettings.Where(m => m.DrawName == entity.DrawName && m.active).Where(m => m.Rev > entity.Rev).FirstOrDefault() ?? new MGSetting();
                    if (_dbentity2.ID > 0)
                    {
                        return(-3);
                    }
                    _dbentity2 = _context.MGSettings.Where(m => m.DrawName == entity.DrawName && m.active).Where(m => m.Rev < entity.Rev).Where(m => m.ReleaseFlag == false).FirstOrDefault() ?? new MGSetting();
                    if (_dbentity2.ID > 0)
                    {
                        return(-4);
                    }
                }
                #region Add
                if (_dbentity.ID == 0)
                {
                    IsNew = true;
                    entity.LastestFlag = true;
                    entity.ReleaseFlag = false;
                    entity.CreateDate  = DateTime.Now;
                    //NUll值会造成 数据长度溢出问题 datetime2->datetime 类型异常
                    entity.ReleaseDate = DateTime.Parse("1900/1/1");
                    entity.DeleteDate  = DateTime.Parse("1900/1/1");
                    entity.active      = true;
                    entity.State       = (int)MGSettingStatus.新建;
                    _context.MGSettings.Add(entity);
                }
                #endregion
                #region Update
                else
                {
                    _dbentity.CADNames    = entity.CADNames;
                    _dbentity.Qty         = entity.Qty;
                    _dbentity.ProcessType = entity.ProcessType;
                    _dbentity.Time        = entity.Time;
                    _dbentity.FeatureNote = entity.FeatureNote;
                    _dbentity.LastestFlag = true;
                    _dbentity.active      = true;
                    _dbentity.Material    = entity.Material;
                    _dbentity.HRC         = entity.HRC;
                    _dbentity.Rev         = entity.Rev;
                    _dbentity.RawSize     = entity.RawSize;
                    _dbentity.MoldName    = entity.MoldName;
                    _dbentity.State       = entity.State;
                }
                #endregion
                _context.SaveChanges();
                if (IsNew)
                {
                    return(entity.ID);
                }
                else
                {
                    return(_dbentity.ID);
                }
            }
            catch (Exception ex)
            {
                return(-2);
            }
        }
 /// <summary>
 /// 发布MG任务 启用事务
 /// </summary>
 /// <param name="DrawIndex"></param>
 /// <param name="ReleaseBy"></param>
 /// <returns>return value 0 --成功 1--失败 2--已发布</returns>
 public int ReleaseMGDrawing(int DrawIndex, string ReleaseBy, string TaskName, string Memo)
 {
     #region 返回失败代码
     MGSetting dbentity = _context.MGSettings.Where(m => m.ID == DrawIndex).Where(m => m.active == true).FirstOrDefault() ?? new MGSetting();
     if (dbentity.ID == 0 || dbentity.ProcessType == 0)
     {
         return(1);
     }
     MGSetting dbentity2 = _context.MGSettings.Where(m => m.ID == DrawIndex).Where(m => m.active == true).Where(m => m.ReleaseFlag == true).FirstOrDefault() ?? new MGSetting();
     if (dbentity2.ID > 0)
     {
         return(2);
     }
     #endregion
     var tran = _context.Database.BeginTransaction();  //开启事务
     try
     {
         #region 更新 MGSetting
         dbentity.ReleaseFlag = true;
         dbentity.ReleaseDate = DateTime.Now;
         dbentity.ReleaseBy   = ReleaseBy;
         dbentity.State       = (int)MGSettingStatus.已发布但任务未发布;
         #endregion
         User            _userRe  = (_context.Users.Where(u => u.FullName == ReleaseBy).FirstOrDefault() ?? new User());
         User            _userCr  = (_context.Users.Where(u => u.FullName == dbentity.CreateBy).FirstOrDefault() ?? new User());
         MGTypeName      typename = _context.MGTypeNames.Where(m => m.ID == dbentity.ProcessType).FirstOrDefault() ?? new MGTypeName();
         WarehouseRecord whrecord = _context.WarehouseRecords.Where(w => w.Name == dbentity.ItemNO).Where(w => w.Quantity > 0).FirstOrDefault() ?? new WarehouseRecord();
         #region 版本号>0
         if (dbentity.Rev > 0)
         {
             if (IsMGTaskReleasedByName(TaskName))
             {
                 return(2);
             }
             List <MGSetting> mgsettings = _context.MGSettings.Where(m => m.DrawName == dbentity.DrawName).Where(m => m.Rev < dbentity.Rev).ToList();
             if (mgsettings != null && mgsettings.Count > 0)
             {
                 foreach (var ms in mgsettings)
                 {
                     ms.LastestFlag = false;
                 }
             }
             //TaskType->6 铣磨 State->7 外发
             var mgtasks = from t in _context.Tasks
                           join m in _context.MGSettings
                           on t.ProgramID equals m.ID
                           where m.DrawName == dbentity.DrawName && m.Rev < dbentity.Rev && t.TaskType == 6 && t.Enabled == true && (t.State < (int)TaskStatus.完成 && t.State >= (int)TaskStatus.未发布)
                           select t;
             if (mgtasks != null)
             {
                 if (mgtasks.Count() > 0)
                 {
                     foreach (var mgt in mgtasks)
                     {
                         //任务状态设置为 完成
                         mgt.FinishBy   = _userRe.UserID;
                         mgt.FinishTime = DateTime.Now;
                         mgt.State      = (int)TaskStatus.完成;
                         mgt.StateMemo  = string.IsNullOrEmpty(mgt.StateMemo) ? "设定升版,低版本任务关闭。" : mgt.StateMemo + ";设定升版,低版本任务关闭。";
                     }
                 }
             }
         }
         #endregion
         #region 计划时间
         Project      proj = _context.Projects.Where(p => p.MoldNumber == dbentity.MoldName && p.Enabled == true).FirstOrDefault() ?? new Project();
         ProjectPhase ph4  = _context.ProjectPhases.Where(p => p.ProjectID == proj.ProjectID && p.PhaseID == 4).FirstOrDefault() ?? new ProjectPhase(); //M铣床
         ProjectPhase ph7  = _context.ProjectPhases.Where(p => p.ProjectID == proj.ProjectID && p.PhaseID == 7).FirstOrDefault() ?? new ProjectPhase(); //G磨床
         #endregion
         #region 生成加工任务
         int lenNote = typename.Note.Length;
         ////
         var    _noteArry = typename.Note.Split(',');
         double _time     = Convert.ToDouble(Math.Round(dbentity.Time / _noteArry.Length, 1));
         ////
         int?     Process  = null;
         string   str      = "";
         int      strStart = 1;
         DateTime PlanDate = new DateTime(1900, 1, 1);
         for (int i = 1; i <= lenNote; i++)
         {
             if (typename.Note.Substring(i - 1, 1) == "," || i == lenNote)
             {
                 if (typename.Note.Substring(i - 1, 1) == ",")
                 {
                     str = typename.Note.Substring(strStart - 1, i - strStart);
                 }
                 else if (i == lenNote)
                 {
                     str = typename.Note.Substring(strStart - 1, i - strStart + 1);
                 }
                 strStart = i + 1;
             }
             try
             {
                 Process = Convert.ToInt32(str);
             }
             catch { }
             if (Process != null && Process == 0)
             {
                 PlanDate = ph4.PlanFinish;
             }
             else if (Process == 1)
             {
                 PlanDate = ph7.PlanFinish;
             }
             //User user = _context.Users.Where(u => u.FullName == ReleaseBy).FirstOrDefault() ?? new User();
             #region 检索图纸
             string                flag      = _context.SystemConfigs.Where(s => s.SettingName == "2D_Drw_Type").FirstOrDefault().Value ?? "";
             string                DrawType  = flag == "Outside" ? "2D" : "";
             string                sDrawName = TaskName + "_" + DrawType;
             string                DrawName  = "";
             List <CAMDrawing>     _draws    = _context.CAMDrawings.Where(d => d.DrawingName.Contains(sDrawName)).ToList();
             Dictionary <int, int> _dics     = new Dictionary <int, int>();
             if (_draws.Count > 0)
             {
                 foreach (var d in _draws)
                 {
                     int _ver = Convert.ToInt32(d.DrawingName.Substring(d.DrawingName.LastIndexOf('_') + 2, 2));
                     _dics.Add(d.CAMDrawingID, _ver);
                 }
                 Dictionary <int, int> _dics_SortByKey = _dics.OrderByDescending(d => d.Value).ToDictionary(d => d.Key, v => v.Value);
                 DrawName = _draws.Where(d => d.CAMDrawingID == _dics_SortByKey.FirstOrDefault().Key).FirstOrDefault().DrawingName;
             }
             #endregion
             //关键 TaskType->6 铣磨任务; OldID字段用于记录旧表(MG_Task)Process信息-> 0:铣床任务 1:磨床任务
             MGTypeName _mgtype = _context.MGTypeNames.Where(t => t.Note == Process.ToString()).FirstOrDefault() ?? new MGTypeName();
             Task       mgtask  = new Task {
                 TaskName = TaskName, DrawingFile = DrawName, Version = dbentity.Rev, ProgramID = dbentity.ID, Creator = ReleaseBy, CreateTime = DateTime.Now, Enabled = true, Priority = 0, State = (int)TaskStatus.未发布, PrevState = (int)TaskStatus.未发布, Memo = Memo, Quantity = dbentity.Qty, OldID = Convert.ToInt32(Process), PlanTime = PlanDate, StartTime = new DateTime(1900, 1, 1), ProjectID = proj.ProjectID, TaskType = 6, MoldNumber = dbentity.MoldName, HRC = dbentity.HRC, ProcessName = _mgtype.Name, Time = _time, Material = dbentity.Material, Raw = dbentity.RawSize, CAMUser = _userCr.UserID
             };
             if (Process != null)
             {
                 _context.Tasks.Add(mgtask);
             }
         }
         #endregion
         _context.SaveChanges();
         tran.Commit();//提交事务
         return(0);
     }
     catch (Exception ex)
     {
         tran.Rollback();    //回滚
         return(1);
     }
 }
Esempio n. 8
0
        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;
        }
Esempio n. 9
0
        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));
            }
        }