Пример #1
0
        //复选框改变状态时,同步树和右边的明细列表 joe song 20060328
        private void ConfigTreeView_NodeChecked(object sender, Infragistics.WebUI.UltraWebNavigator.WebTreeNodeCheckedEventArgs e)
        {
            Item2Config ic = e.Node.DataKey as Item2Config;

            BenQGuru.eMES.MOModel.ItemFacade itemFacade = new FacadeFactory(base.DataProvider).CreateItemFacade();
            object[] objs = itemFacade.QueryItem2Config(ic.ItemCode, ic.ItemConfigration, ic.ParentCode, ic.ConfigCode, string.Empty, 0, int.MaxValue);
            if (objs != null)
            {
                foreach (Item2Config item2Config in objs)
                {
                    if (item2Config != null)
                    {
                        item2Config.NeedCheck    = e.Node.Checked?FormatHelper.TRUE_STRING:FormatHelper.FALSE_STRING;
                        item2Config.MaintainUser = this.GetUserCode();

                        itemFacade.UpdateItem2Config(item2Config);
                    }
                }
            }
            string url = this.MakeRedirectUrl("FItem2ConfigMP.aspx",
                                              new string[] { "ITEMCODE", "ITEMCONFIG", "OrgID", "PARENTCODE", "PARENTNAME", "CONFIGCODE", "CONFIGNAME" },
                                              new string[] { ic.ItemCode, ic.ItemConfigration, OrgID.ToString(), ic.ParentCode, ic.ParentName, ic.ConfigCode, ic.ConfigName });

            Page.RegisterStartupScript(Guid.NewGuid().ToString(),
                                       string.Format("<script>window.parent.ConfigFrame.location.replace('{0}');</script>", url)
                                       );
        }
Пример #2
0
        protected override object GetEditObject()
        {
            if (_orderFacade == null)
            {
                _orderFacade = new  FacadeFactory(base.DataProvider).CreateOrderFacade();
            }
            OrderDetail orderDetail = this._orderFacade.CreateNewOrderDetail();

            orderDetail.OrderNumber = this.txtOrderEdit.Text;
            orderDetail.PartnerCode = FormatHelper.PKCapitalFormat(FormatHelper.CleanString(this.txtPartnerCodeEdit.Text));
            orderDetail.ItemCode    = FormatHelper.PKCapitalFormat(FormatHelper.CleanString(this.txtItemEdit.Text));

            ItemFacade itemfacade = new  FacadeFactory(base.DataProvider).CreateItemFacade();
            Object     item       = itemfacade.GetItem(FormatHelper.PKCapitalFormat(FormatHelper.CleanString(this.txtItemEdit.Text)), GlobalVariables.CurrentOrganizations.First().OrganizationID);

            orderDetail.ItemName = (item as Item).ItemName;

            orderDetail.PlanDate     = FormatHelper.TODateInt(this.txtPlanDateEdit.Text);
            orderDetail.PlanQTY      = Convert.ToDecimal(this.txtPlanQTYEdit.Text);
            orderDetail.ActDate      = FormatHelper.TODateInt(this.txtActDateEdit.Text.Trim());
            orderDetail.ActQTY       = Convert.ToDecimal(this.txtActQTYEdit.Text.Trim());
            orderDetail.MaintainUser = this.GetUserCode();

            return(orderDetail);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="domainObject"></param>
        protected override void AddDomainObject(object domainObject)
        {
            ItemFacade itemFacade = new FacadeFactory(base.DataProvider).CreateItemFacade();
            object     obj        = itemFacade.GetItem(((CusItemCodeCheckList)domainObject).ItemCode, GlobalVariables.CurrentOrganizations.First().OrganizationID);

            if (obj == null)
            {
                WebInfoPublish.Publish(this, "$Error_ItemCode_NotCompare", this.languageComponent1);
                return;
            }

            ModelFacade modelFacade = new FacadeFactory(base.DataProvider).CreateModelFacade();

            object[] obj2 = modelFacade.GetModel2ItemByItemCode(((CusItemCodeCheckList)domainObject).ItemCode);
            if (obj2 == null)
            {
                WebInfoPublish.Publish(this, "$Error_ItemCode_NotMaintain_ModelCode", this.languageComponent1);
                return;
            }

            ((CusItemCodeCheckList)domainObject).ModelCode = ((Model2Item)obj2[0]).ModelCode;

            if (_facade == null)
            {
                _facade = new RMAFacade(base.DataProvider);
            }
            this._facade.AddCusItemCodeCheckList((CusItemCodeCheckList)domainObject);
        }
Пример #4
0
        private void UpdateItem2Dimention(SPCItemSpec spcItemSpec, string maxParam, string minParam, bool delete)
        {
            ItemFacade facade = new FacadeFactory(base.DataProvider).CreateItemFacade();
            object     obj    = null;

            obj = facade.GetItem2Dimention(spcItemSpec.ItemCode, maxParam, GlobalVariables.CurrentOrganizations.First().OrganizationID);
            if (obj != null)
            {
                if (delete == false)
                {
                    (obj as Item2Dimention).ParamValue   = spcItemSpec.USL;
                    (obj as Item2Dimention).MaintainUser = this.GetUserCode();
                    facade.UpdateItem2Dimention(obj as Item2Dimention);
                }
                else
                {
                    facade.DeleteItem2Dimention(obj as Item2Dimention);
                }
            }
            else if (delete == false)
            {
                obj = facade.CreateNewItem2Dimention();
                (obj as Item2Dimention).ItemCode       = spcItemSpec.ItemCode;
                (obj as Item2Dimention).ParamName      = maxParam;
                (obj as Item2Dimention).ParamValue     = spcItemSpec.USL;
                (obj as Item2Dimention).MaintainUser   = this.GetUserCode();
                (obj as Item2Dimention).OrganizationID = GlobalVariables.CurrentOrganizations.First().OrganizationID;
                facade.AddItem2Dimention(obj as Item2Dimention);
            }

            obj = facade.GetItem2Dimention(spcItemSpec.ItemCode, minParam, GlobalVariables.CurrentOrganizations.First().OrganizationID);
            if (obj != null)
            {
                if (delete == false)
                {
                    (obj as Item2Dimention).ParamValue   = spcItemSpec.LSL;
                    (obj as Item2Dimention).MaintainUser = this.GetUserCode();
                    facade.UpdateItem2Dimention(obj as Item2Dimention);
                }
                else
                {
                    facade.DeleteItem2Dimention(obj as Item2Dimention);
                }
            }
            else if (delete == false)
            {
                obj = facade.CreateNewItem2Dimention();
                (obj as Item2Dimention).ItemCode       = spcItemSpec.ItemCode;
                (obj as Item2Dimention).ParamName      = minParam;
                (obj as Item2Dimention).ParamValue     = spcItemSpec.LSL;
                (obj as Item2Dimention).MaintainUser   = this.GetUserCode();
                (obj as Item2Dimention).OrganizationID = GlobalVariables.CurrentOrganizations.First().OrganizationID;
                facade.AddItem2Dimention(obj as Item2Dimention);
            }
        }
Пример #5
0
        protected void cmdSave_ServerClick(object sender, System.EventArgs e)
        {
            BenQGuru.eMES.MOModel.MOFacade fac = new FacadeFactory(base.DataProvider).CreateMOFacade();

            Domain.MOModel.DefaultItem2Route dItem2Code = new Domain.MOModel.DefaultItem2Route();
            dItem2Code.ItemCode = ItemCode;


            foreach (Infragistics.WebUI.UltraWebGrid.UltraGridRow row in gridItem2Route.Rows)
            {
                if (row.Selected == true)
                {
                    dItem2Code.RouteCode   = row.Cells[1].Text.Trim().ToUpper();
                    dItem2Code.EAttribute1 = row.Cells[2].Text.Trim().ToUpper();
                    break;
                }
            }
            if (dItem2Code.RouteCode != null && dItem2Code.RouteCode != String.Empty)
            {
                object objOld = fac.GetDefaultItem2Route(ItemCode);
                Domain.MOModel.DefaultItem2Route old = null;
                if (objOld != null)
                {
                    old = objOld as  Domain.MOModel.DefaultItem2Route;
                }
                DataProvider.BeginTransaction();
                try
                {
                    if (old != null)
                    {
                        fac.DeleteDefaultItem2Route(old);
                    }
                    dItem2Code.MDate = FormatHelper.TODateInt(DateTime.Now);
                    dItem2Code.MTime = FormatHelper.TOTimeInt(DateTime.Now);
                    //dItem2Code.m

                    fac.AddDefaultItem2Route(dItem2Code);

                    DataProvider.CommitTransaction();

                    Response.Redirect(this.MakeRedirectUrl("FDefaultItemRouteSP.aspx", new string[] { "ItemCOde" }, new string[] { ItemCode }));
                }
                catch (Exception ex)
                {
                    Log.Error(ex.Message);
                    DataProvider.RollbackTransaction();
                }
                finally
                {
                    ((Common.DomainDataProvider.SQLDomainDataProvider)DataProvider).PersistBroker.CloseConnection();
                }
            }
        }
Пример #6
0
        private void BuildConfigTreeByXML()
        {
            BenQGuru.eMES.MOModel.ItemFacade itemFacade = new FacadeFactory(base.DataProvider).CreateItemFacade();
            string path = this.Request.MapPath("") + @"\Item2Config.xml";

            XmlDocument xmlDoc = new XmlDocument();

            xmlDoc.Load(path);

            /* 添加第一层 */
            XmlNodeList nodeList = xmlDoc.GetElementsByTagName("Category");

            if (nodeList.Count > 0)
            {
                for (int i = 0; i < nodeList.Count; i++)
                {
                    string text = nodeList[i].Attributes["value"].InnerText;
                    string tag  = nodeList[i].Attributes["key"].InnerText;

                    Node node = new Node();
                    node.Text = text;
                    node.Tag  = tag;
                    ConfigTreeView.Nodes[0].Nodes.Add(node);

                    if (nodeList[i].ChildNodes != null && nodeList[i].ChildNodes.Count > 0)
                    {
                        for (int j = 0; j < nodeList[i].ChildNodes.Count; j++)
                        {
                            string text2 = nodeList[i].ChildNodes[j].Attributes["value"].InnerText;
                            string tag2  = nodeList[i].ChildNodes[j].Attributes["key"].InnerText;

                            Node node2 = new Node();
                            node2.CheckBox = CheckBoxes.True;
                            node2.Checked  = itemFacade.IsConfiged(this.ItemCode, this.ItemConfig, tag, tag2);
                            node2.Text     = text2;
                            if (itemFacade.IsMustCheckConfiged(this.ItemCode, this.ItemConfig, tag, tag2))
                            {
                                node2.Style.Font.Bold = true;
                            }
                            node2.Tag         = tag2;
                            node2.TargetFrame = "ConfigFrame";
                            node2.TargetUrl   = this.MakeRedirectUrl("FItem2ConfigMP.aspx",
                                                                     new string[] { "ITEMCODE", "ITEMCONFIG", "OrgID", "PARENTCODE", "PARENTNAME", "CONFIGCODE", "CONFIGNAME" },
                                                                     new string[] { ItemCode, ItemConfig, OrgID.ToString(), tag, text, tag2, text2 });
                            node.Nodes.Add(node2);
                        }
                    }
                }
            }

            /* 根据Category,加载CheckItem */
        }
Пример #7
0
 private void UpdateTestCondion(SPCItemSpec spcItemSpec, bool delete)
 {
     if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.PT_ELECTRIC, true) == 0)
     {
         ItemFacade facade = new FacadeFactory(base.DataProvider).CreateItemFacade();
         object     obj    = facade.GetItem(spcItemSpec.ItemCode, GlobalVariables.CurrentOrganizations.First().OrganizationID);
         if (obj != null)
         {
             (obj as Item).ElectricCurrentMaxValue = spcItemSpec.USL;
             (obj as Item).ElectricCurrentMinValue = spcItemSpec.LSL;
             (obj as Item).MaintainUser            = this.GetUserCode();
             facade.UpdateItem(obj as Item);
         }
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DUTY_RATO, true) == 0)
     {
         OQCFacade facade = new FacadeFactory(base.DataProvider).CreateOQCFacade();
         object    obj    = facade.GetOQCFuncTest(spcItemSpec.ItemCode);
         if (obj != null)
         {
             if (delete == false)
             {
                 (obj as OQCFuncTest).MinDutyRatoMax = spcItemSpec.USL;
                 (obj as OQCFuncTest).MinDutyRatoMin = spcItemSpec.LSL;
                 (obj as OQCFuncTest).MaintainUser   = this.GetUserCode();
                 facade.UpdateOQCFuncTest(obj as OQCFuncTest);
             }
             else
             {
                 (obj as OQCFuncTest).MinDutyRatoMax = 0;
                 (obj as OQCFuncTest).MinDutyRatoMin = 0;
                 (obj as OQCFuncTest).MaintainUser   = this.GetUserCode();
                 facade.UpdateOQCFuncTest(obj as OQCFuncTest);
             }
         }
         else if (delete == false)
         {
             obj = facade.CreateNewOQCFuncTest();
             (obj as OQCFuncTest).ItemCode       = spcItemSpec.ItemCode;
             (obj as OQCFuncTest).MinDutyRatoMax = spcItemSpec.USL;
             (obj as OQCFuncTest).MinDutyRatoMin = spcItemSpec.LSL;
             (obj as OQCFuncTest).MaintainUser   = this.GetUserCode();
             facade.AddOQCFuncTest(obj as OQCFuncTest);
         }
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_BURST_MD, true) == 0)
     {
         OQCFacade facade = new FacadeFactory(base.DataProvider).CreateOQCFacade();
         object    obj    = facade.GetOQCFuncTest(spcItemSpec.ItemCode);
         if (obj != null)
         {
             if (delete == false)
             {
                 (obj as OQCFuncTest).BurstMdFreMax = spcItemSpec.USL;
                 (obj as OQCFuncTest).BurstMdFreMin = spcItemSpec.LSL;
                 (obj as OQCFuncTest).MaintainUser  = this.GetUserCode();
                 facade.UpdateOQCFuncTest(obj as OQCFuncTest);
             }
             else
             {
                 (obj as OQCFuncTest).BurstMdFreMax = 0;
                 (obj as OQCFuncTest).BurstMdFreMin = 0;
                 (obj as OQCFuncTest).MaintainUser  = this.GetUserCode();
                 facade.UpdateOQCFuncTest(obj as OQCFuncTest);
             }
         }
         else if (delete == false)
         {
             obj = facade.CreateNewOQCFuncTest();
             (obj as OQCFuncTest).ItemCode      = spcItemSpec.ItemCode;
             (obj as OQCFuncTest).BurstMdFreMax = spcItemSpec.USL;
             (obj as OQCFuncTest).BurstMdFreMin = spcItemSpec.LSL;
             (obj as OQCFuncTest).MaintainUser  = this.GetUserCode();
             facade.AddOQCFuncTest(obj as OQCFuncTest);
         }
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_FT_FREQUENCY, true) == 0)
     {
         OQCFacade facade = new FacadeFactory(base.DataProvider).CreateOQCFacade();
         object    obj    = facade.GetOQCFuncTestSpec(spcItemSpec.ItemCode, spcItemSpec.GroupSeq);
         if (obj != null)
         {
             if (delete == false)
             {
                 (obj as OQCFuncTestSpec).FreMax       = spcItemSpec.USL;
                 (obj as OQCFuncTestSpec).FreMin       = spcItemSpec.LSL;
                 (obj as OQCFuncTestSpec).MaintainUser = this.GetUserCode();
                 facade.UpdateOQCFuncTestSpec(obj as OQCFuncTestSpec);
             }
             else
             {
                 object objTmp = this._spcFacade.GetSPCItemSpec(spcItemSpec.ItemCode, spcItemSpec.GroupSeq, SPCObjectList.OQC_FT_ELECTRIC);
                 if (objTmp == null)
                 {
                     facade.DeleteOQCFuncTestSpec(obj as OQCFuncTestSpec);
                 }
                 else
                 {
                     (obj as OQCFuncTestSpec).FreMax       = 0;
                     (obj as OQCFuncTestSpec).FreMin       = 0;
                     (obj as OQCFuncTestSpec).MaintainUser = this.GetUserCode();
                     facade.UpdateOQCFuncTestSpec(obj as OQCFuncTestSpec);
                 }
             }
         }
         else if (delete == false)
         {
             obj = facade.CreateNewOQCFuncTestSpec();
             (obj as OQCFuncTestSpec).ItemCode      = spcItemSpec.ItemCode;
             (obj as OQCFuncTestSpec).GroupSequence = spcItemSpec.GroupSeq;
             (obj as OQCFuncTestSpec).FreMax        = spcItemSpec.USL;
             (obj as OQCFuncTestSpec).FreMin        = spcItemSpec.LSL;
             (obj as OQCFuncTestSpec).MaintainUser  = this.GetUserCode();
             facade.AddOQCFuncTestSpec(obj as OQCFuncTestSpec);
         }
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_FT_ELECTRIC, true) == 0)
     {
         OQCFacade facade = new FacadeFactory(base.DataProvider).CreateOQCFacade();
         object    obj    = facade.GetOQCFuncTestSpec(spcItemSpec.ItemCode, spcItemSpec.GroupSeq);
         if (obj != null)
         {
             if (delete == false)
             {
                 (obj as OQCFuncTestSpec).ElectricMax  = spcItemSpec.USL;
                 (obj as OQCFuncTestSpec).ElectricMin  = spcItemSpec.LSL;
                 (obj as OQCFuncTestSpec).MaintainUser = this.GetUserCode();
                 facade.UpdateOQCFuncTestSpec(obj as OQCFuncTestSpec);
             }
             else
             {
                 object objTmp = this._spcFacade.GetSPCItemSpec(spcItemSpec.ItemCode, spcItemSpec.GroupSeq, SPCObjectList.OQC_FT_FREQUENCY);
                 if (objTmp == null)
                 {
                     facade.DeleteOQCFuncTestSpec(obj as OQCFuncTestSpec);
                 }
                 else
                 {
                     (obj as OQCFuncTestSpec).ElectricMax  = 0;
                     (obj as OQCFuncTestSpec).ElectricMin  = 0;
                     (obj as OQCFuncTestSpec).MaintainUser = this.GetUserCode();
                     facade.UpdateOQCFuncTestSpec(obj as OQCFuncTestSpec);
                 }
             }
         }
         else if (delete == false)
         {
             obj = facade.CreateNewOQCFuncTestSpec();
             (obj as OQCFuncTestSpec).ItemCode      = spcItemSpec.ItemCode;
             (obj as OQCFuncTestSpec).GroupSequence = spcItemSpec.GroupSeq;
             (obj as OQCFuncTestSpec).ElectricMax   = spcItemSpec.USL;
             (obj as OQCFuncTestSpec).ElectricMin   = spcItemSpec.LSL;
             (obj as OQCFuncTestSpec).MaintainUser  = this.GetUserCode();
             facade.AddOQCFuncTestSpec(obj as OQCFuncTestSpec);
         }
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_LENGTH, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "LengthMax", "LengthMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_WIDTH, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "WidthMax", "WidthMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_BOARDHEIGHT, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "BoardHeightMax", "BoardHeightMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_HEIGHT, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "HeightMax", "HeightMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_ALLHEIGHT, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "AllHeightMax", "AllHeightMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_LEFT2RIGHT, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "Left2RightMax", "Left2RightMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_LEFT2MIDDLE, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "Left2MiddleMax", "Left2MiddleMin", delete);
     }
     else if (string.Compare(spcItemSpec.ObjectCode, SPCObjectList.OQC_DIM_RIGHT2MIDDLE, true) == 0)
     {
         UpdateItem2Dimention(spcItemSpec, "Right2MiddleMax", "Right2MiddleMin", delete);
     }
 }
Пример #8
0
        private void SetMOStatus(string newStatus)
        {
            if (_facade == null)
            {
                _facade = new MOFacade(base.DataProvider);
            }
            ModelFacade modelFacade = new FacadeFactory(base.DataProvider).CreateModelFacade();
            ArrayList   array       = this.gridHelper.GetCheckedRows();

            if (array.Count > 0)
            {
                ArrayList objs = new ArrayList(array.Count);

                foreach (GridRecord row in array)
                {
                    object obj = this.GetEditObject(row);
                    MO     mo  = null;
                    if (obj != null)
                    {
                        mo              = obj as MO;
                        mo.MOStatus     = newStatus;
                        mo.MaintainUser = this.GetUserCode();

                        if (mo.EAttribute3 == AlertJob.alertJob)
                        {
                            ExceptionManager.Raise(this.GetType(), string.Format("$MOCode = {0}, $MO_STATUS_CHANGE", mo.MOCode));
                            return;
                        }

                        if (newStatus == MOManufactureStatus.MOSTATUS_RELEASE)
                        {
                            string itemCode = mo.ItemCode;
                            object model    = modelFacade.GetModelByItemCode(itemCode);
                            if (model == null)
                            {
                                ExceptionManager.Raise(this.GetType(), string.Format("$Domain_ItemCode = {0}, $Error_Item_Not_Maintain_Model", itemCode));
                                return;
                            }
                            mo.MOReleaseDate = FormatHelper.TODateInt(DateTime.Now);
                            mo.MOReleaseTime = FormatHelper.TOTimeInt(DateTime.Now);


                            SystemSettingFacade systemSettingFacade = new SystemSettingFacade(this.DataProvider);
                            if (mo.MOMemo == null || mo.MOMemo.Trim().Length <= 0)
                            {
                                //如果下发时momemo字段为空,从系统参数中抓取
                                string moMemo = systemSettingFacade.GetParameterAlias("DEFAULT_MO_PRODUCT_TYPE", "MPR");
                                if (moMemo.Trim().Length > 0)
                                {
                                    mo.MOMemo = moMemo.Trim();
                                }
                            }
                            else
                            {
                                //检查是否该值和维护在参数中的一致,包括大小写也需要一致。
                                //如果不一致,则提示:工单类别维护错误,请检查。
                                object[] parameterList = systemSettingFacade.QueryParameter(string.Empty, "MO_PRODUCT_TYPE", int.MinValue, int.MaxValue);
                                bool     found         = false;
                                if (parameterList != null)
                                {
                                    foreach (Domain.BaseSetting.Parameter parameter in parameterList)
                                    {
                                        if (string.Compare(mo.MOMemo, parameter.ParameterAlias, false) == 0)
                                        {
                                            found = true;
                                            break;
                                        }
                                    }
                                }
                                if (!found)
                                {
                                    ExceptionManager.Raise(this.GetType(), "$CS_WrongMOMemo $MOCode=" + mo.MOCode);
                                }
                            }
                        }
                        if (newStatus == MOManufactureStatus.MOSTATUS_INITIAL)
                        {
                            mo.MOReleaseDate = 0;
                            mo.MOReleaseTime = 0;
                        }
                        if (newStatus == MOManufactureStatus.MOSTATUS_CLOSE)
                        {
                            mo.MOActualEndDate = FormatHelper.TODateInt(DateTime.Now);
                        }
                        objs.Add(mo);
                    }
                }

                if (objs.Count == 0)
                {
                    return;
                }


                this._facade.MOStatusChanged((MO[])objs.ToArray(typeof(MO)));

                this.RequestData();
            }
        }
Пример #9
0
        /// <summary>
        /// 判断导入的MO是否有效
        /// </summary>
        /// <param name="obj">导入的MO</param>
        /// <returns>如果有效,返回true,否则,返回false;返回false时,这个MO将不会被导入</returns>
        private bool MODownloadCheck(object obj)
        {
            MO mo = (MO)obj;

            //非空检查
            CheckMODomain(mo);

            if (sysSettingFacade == null)
            {
                sysSettingFacade = new BenQGuru.eMES.BaseSetting.SystemSettingFacade(base.DataProvider);
            }
            object[] parameters = sysSettingFacade.GetParametersByParameterGroup(MOType.GroupType);

            //add by crystal chu 2005/05/08
            if (parameters == null)
            {
                ExceptionManager.Raise(this.GetType().BaseType, "$Error_System_Error");
            }

            if (mo.MOPlanStartDate > mo.MOPlanEndDate)
            {
                // ExceptionManager.Raise(this.GetType().BaseType, "$Error_MOPlanEndDateBigThanMOPlanStartDate");
                mo.EAttribute6 += ";" + this.languageComponent1.GetString("$Error_MOPlanEndDateBigThanMOPlanStartDate");
            }

            bool isParamExist = false;

            foreach (BenQGuru.eMES.Domain.BaseSetting.Parameter parameter in parameters)
            {
                if (mo.MOType == parameter.ParameterCode)
                {
                    isParamExist = true;
                    break;
                }
            }

            if (!isParamExist)
            {
                //ExceptionManager.Raise(this.GetType().BaseType, "$Error_MOType_NotExisted");
                //modified by kathy @20130812 修正提示信息:工单类型不存在
                mo.EAttribute6 += ";" + this.languageComponent1.GetString("$Error_MOType_NotExisted");
            }

            // 检查 ItemCode
            BenQGuru.eMES.MOModel.ItemFacade itemFacade = new ItemFacade(base.DataProvider);
            object item = itemFacade.GetItem(FormatHelper.PKCapitalFormat(FormatHelper.CleanString(mo.ItemCode)), GlobalVariables.CurrentOrganizations.First().OrganizationID);

            if (item == null)
            {
                //ExceptionManager.Raise(this.GetType().BaseType, "$Error_ItemCode_NotExist");
                mo.EAttribute6 += ";" + this.languageComponent1.GetString("$Error_ItemCode_NotExist");
            }

            MOFacade moFacade  = new FacadeFactory(base.DataProvider).CreateMOFacade();
            object   isExistMO = moFacade.GetMO(FormatHelper.PKCapitalFormat(mo.MOCode));

            if (isExistMO != null)
            {
                //  ExceptionManager.Raise(this.GetType().BaseType, "$Error_MO_HasExisted", String.Format("[$MOCode='{0}']", mo.MOCode));
                mo.EAttribute6 += ";" + this.languageComponent1.GetString("$Error_MO_HasExisted");
            }

            return(true);
        }