/// <summary> /// 没实际批次 /// </summary> /// <param name="lotID"></param> /// <param name="sourceOrderID">源工单ID</param> /// <param name="sourceType"></param> /// <param name="dtSampleDate"></param> /// <param name="creator"></param> /// <param name="samplecount"></param> /// <param name="plancheckitemstring"></param> /// <param name="firscheck"></param> /// <param name="checkType"></param> /// <returns></returns> static public ReturnValue AutoCreateCheckOrder(int defpk, int hutid, string lotid, string sourceOrderID, SampleTypeEnum sampleType, DateTime dtSampleDate, string creator, int samplecount = 1, string plancheckitemstring = "", bool firscheck = true, CheckTypeEnum checkType = CheckTypeEnum.Normal) { if (!string.IsNullOrWhiteSpace(sourceOrderID)) { EncodeCollection <CheckOrder> ec = Encode.EncodeData.GetDatas <CheckOrder>("sourceorderid = '" + sourceOrderID + "'", string.Empty, 1); if (ec.Count > 0) { return(new ReturnValue(true, 1, "检验单已创建")); } } //find lot // EncodeCollection<MMReiptOrder> ecMR = Encode.EncodeData.GetDatas<MMReiptOrder>(string.Format("sitlotid='{0}'", lotID), string.Empty, -1); // MMLot lot = SSIT.Bread.UI.MM.MMCommon.GetLotbyID(lotID); //if (lot != null) //if(ecMR.Count > 0 ) //{ //MMReiptOrder mr = ecMR[0]; //先创建SampleItem CheckOrder si = new CheckOrder { LotID = lotid, HutPK = hutid, DefPK = defpk }; //si.HutID = lot.HutID; si.SampleID = CheckOrder.GetNewCheckID(dtSampleDate); si.CheckQuantity = samplecount; si.PlanCheckDate = si.SampleDate = dtSampleDate.ToString(EncodeConst.DateFormat); //si.CreateType = createType; si.CheckOrderState = CheckOrderStateEnum.Submit; si.SourceOrderID = sourceOrderID; si.SampleType = sampleType; si.Creator = creator; si.CreateTime = dtSampleDate.ToString(EncodeConst.DateTimeFormat); si.PlanCheckItemString = plancheckitemstring; //si.FirstCheck = firscheck; //if(User.CurrentUser != null) //{ // si.ActualInspector = User.CurrentUser.ParamName; //} if (string.IsNullOrWhiteSpace(si.PlanCheckItemString)) { DefinitionCheckItemCombine combine = DefinitionCheckItemCombine.GetItemby(si.DefPK); if (combine != null) { List <int> list = CheckItem.Instance.GetIdList(combine.GetCheckItems()); si.PlanCheckItemString = SSITEncode.Common.STRING.IntListToString(list); } } si.State = DataState.New; //EncodeCollection<SampleItemOrder> ec = new EncodeCollection<SampleItemOrder>(si); ReturnValue rv = Encode.EncodeData.SaveDatas <CheckOrder>(new EncodeCollection <CheckOrder>(si)); if (rv.Success) { rv.ValueString = si.SampleID; //SSIT.SystemManager.DataInterface.MessageContent.CreateNewMessage(BreadInterface.SampleTypeEnum.QMOrder, si.SampleID, creator); } return(rv); // return new ReturnValue(false, -444, "找不到对应批次"); }
static public CheckOrder CreateCheckOrderbySample(SampleOrder sample) { var order = new CheckOrder { State = DataState.New, CreateTime = DateTime.Now.ToString(EncodeConst.DateTimeFormat), CheckOrderID = GetNewCheckID(DateTime.Today), CheckOrderState = CheckOrderStateEnum.Submit, Creator = User.CurrentUser?.ParamName, CheckQuantity = 1, DefPK = sample.DefPK, HutPK = sample.HutPK, LotID = sample.LotID, PlanCheckDate = sample.SampleDate, SampleID = sample.SampleID, SampleType = sample.SampleType, SourceOrderID = sample.SourceOrderID, SampleDate = sample.SampleDate, }; if (string.IsNullOrWhiteSpace(order.PlanCheckItemString)) { DefinitionCheckItemCombine combine = DefinitionCheckItemCombine.GetItemby(order.DefPK); if (combine != null) { List <int> list = CheckItem.Instance.GetIdList(combine.GetCheckItems()); order.PlanCheckItemString = SSITEncode.Common.STRING.IntListToString(list); } } return(order); //ReturnValue rv = Encode.EncodeData.SaveDatas<CheckOrder>(new EncodeCollection<CheckOrder>(order)); //if (rv.Success) //{ // rv.ValueString = order.SampleID; // //SSIT.SystemManager.DataInterface.MessageContent.CreateNewMessage(BreadInterface.SampleTypeEnum.QMOrder, si.SampleID, creator); //} //return rv; }
/// <summary> /// 自定义控件,必须有SetValueChanged ,基类才会自动调用 ,给自定义控件赋值 /// 控件名MMDefPK ,和实体里的MMDefPK属性名一致 /// 加载时会将实体的MMDefPK属性(int类型),在参数e中传递过来 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void DefPK_SetValueChanged(object sender, SSITControls.Common.ValueEventArgs e) { var checkItems = DefinitionCheckItemCombine.GetCheckItemsby((int)e.Value, MMTypEnum.QM);// .GetFirstItem("defpk = " + (int)e.Value); LoadCheckItems(checkItems); }
public void LoadInfo() { rpvCheckCategory.Pages.Clear(); Dictionary <string, EncodeCollection <CheckItem> > dic = new Dictionary <string, EncodeCollection <CheckItem> >(); EncodeCollection <CheckItem> ecCheckItems = null; if (_sampleOrder.GetPlanCheckItemCount <= 0) { //Definition def = SSIT.Bread.UI.MM.MMCommon.GetDefinitionbyID(_sampleOrder.DefinitionID); //MMCheckItemCombine combine = MMCheckItemCombine.Instance.GetItembyKey(_sampleOrder.DefinitionID); DefinitionCheckItemCombine combine = DefinitionCheckItemCombine.GetItemby(_sampleOrder.DefPK); if (combine != null) { ecCheckItems = combine.GetCheckItems(); } } else { EncodeCollection <CheckItem> ec = new EncodeCollection <CheckItem>(); foreach (short id in _sampleOrder.PlanCheckItems) { CheckItem checkitem = CheckItem.Instance.Itemof(id); if (checkitem != null) { ec.Add(checkitem); } } ecCheckItems = ec; } if (ecCheckItems != null) { foreach (CheckItem item in ecCheckItems) { string CheckCategoryName = item.GetCheckCategory(); if (!string.IsNullOrEmpty(CheckCategoryName)) { if (!dic.ContainsKey(CheckCategoryName)) { dic.Add(CheckCategoryName, new EncodeCollection <CheckItem>()); } dic[CheckCategoryName].Add(item); } } } EncodeCollection <CheckData> datas = CheckData.LoadDatasbySampleID(_sampleOrder.SampleID); int maxIndex = 0; if (datas.Count > 0) { foreach (var item in datas) { maxIndex = Math.Max(item.SampleIndex, maxIndex); } } if (maxIndex >= _sampleOrder.CheckQuantity) { _sampleOrder.CheckQuantity = maxIndex; } SetOrderState(); foreach (string key in dic.Keys) { Telerik.WinControls.UI.RadPageViewPage page = new Telerik.WinControls.UI.RadPageViewPage(key); InputGridBase grid = new InputGridBase { Dock = DockStyle.Fill }; page.Controls.Add(grid); if (_sampleOrder != null) { grid.SampleCount = _sampleOrder.CheckQuantity; } page.Tag = grid; rpvCheckCategory.Pages.Add(page); grid.Order = _sampleOrder; grid.Fields = CheckItemsToInputFields(dic[key]); grid.Init(); grid.LoadDatas(datas); //grid.Columns.AutoSize(true); } if (datas.Count > 0) { DataStat(); } }