public int selectdhd() { try { var view = gridView1; if (view.RowCount < 1) { return(0); } QC_Sample_Veh train = view.GetRow(0) as QC_Sample_Veh; string fazhan = train.zpdh; var viewdhd = gridView3; for (int i = 0; i < viewdhd.RowCount; i++) { if (view.IsGroupRow(i)) { continue; } var entity = viewdhd.GetRow(i) as View_arrivebill; if (entity.vdef5 == fazhan) { return(i); } } return(0); } catch { return(0); } }
private void tsmBtnVSLDelete_Click(object sender, EventArgs e) { QC_Sample_Veh veh = curTableSource.Current as QC_Sample_Veh; if (veh != null) { int sampleState = Convert.ToInt32(DbContext.ExecuteScalar("Select SampleState From QC_Sample_Veh where Sample_Veh_ID=" + veh.Sample_Veh_ID)); if (sampleState > 0) { MessageBox.Show("已经组批不能再删除"); return; } if (MessageBox.Show("你确实要删除此数据吗?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK) { if (veh == curData) { CreateSampleVeh(); } veh.SaveIcInfo = true; veh.SaveCheckItems = true; curTableSource.RemoveCurrent(); curTable.Save(); } } }
private void btnOk_Click(object sender, EventArgs e) { _SelectedVeh = this.qCSampleVehBindingSource.Current as QC_Sample_Veh; if (_SelectedVeh != null) { this.DialogResult = DialogResult.OK; this.Close(); } else { MessageBox.Show("没有选中数据"); } }
/// <summary> /// 删除刷卡 /// </summary> private void tsmBtnDeleteCard_Click(object sender, EventArgs e) { int[] selIds = this.gvVehSamples.GetSelectedRows(); if (selIds.Length > 0) { QC_Sample_Veh vehSample = this.gridView1.GetRow(selIds[0]) as QC_Sample_Veh; if (vehSample != null) { currentData.VehSamples.Remove(vehSample); } } else { MessageBox.Show("没有选中的行"); } }
/// <summary> /// 处理读卡 /// </summary> public void HandleCardMessage(Device.CardReader device, string cardId) { QC_IC_Info card = QC_IC_Info.FindByCardId(cardId); if (card == null) { Tb_IC ic = Tb_IC.GetByICNo(cardId); if (ic != null) { MessageBox.Show(string.Format("此卡为车辆卡")); return; } else { MessageBox.Show(string.Format("此卡没有注册")); return; } } if (card.CardType != QC_IC_Info.CardUseType_Veh) { MessageBox.Show("卡的类型不对"); return; } if (card.SampleId > 0) { MessageBox.Show("此卡正在使用"); return; } foreach (var item in currentData.VehSamples) { if (item.CardID == cardId) { MessageBox.Show("此卡已关联" + item.TempID + "号"); return; } } QC_Sample_Veh vsam = new QC_Sample_Veh(); vsam.CardID = cardId; vsam.TempID = currentData.VehSamples.Count + 1; vsam.FetchTime = DateTime.Now; vsam.IcInfo = card; vsam.SaveIcInfo = true; vsam.SampleType = SampleType.校验样; vsam.Sample_JY = true; currentData.VehSamples.Add(vsam); }
/// <summary> /// 从视图读取集中计量火车信息,保存到QC_Sample_Veh表中 /// </summary> public void initdata() { trainData = new DbEntityTable <View_train_to_sample>(); trainData.LoadData(); //没有数据时,返回 if (trainData.Count < 1) { return; } DbEntityTable <QC_Sample_Veh> veh = new DbEntityTable <QC_Sample_Veh>(); foreach (var item in trainData) { QC_Sample_Veh sample = new QC_Sample_Veh(); //物流的主键 sample.FetchPlace = item.matchid; //发站 sample.zpdh = item.FAZHAN; //物料名称 sample.rwdh = item.WLMC; sample.VehNo = item.CPH; sample.CardID = item.HCPH; sample.begintime = item.GROSSTIME; sample.SampleState = Xg.Lab.Sample.SampleState.初始状态; //加入noticebillid sample.NoticeBillId = System.Guid.NewGuid().ToString(); sample.WLLX = "火运"; veh.Add(sample); } veh.Save(); //trans_train_sample = new DbEntityTable<QC_Sample_Veh>(); //foreach (var item in trainData) //{ // QC_Sample_Veh sample = new QC_Sample_Veh(); // sample.Sample_Veh_ID = item.matchid; // sample.FAZHAN = item.FAZHAN; // sample.WLMC = item.WLMC; // sample.VehNo = item.CPH; // sample.CardID = item.HCPH; // sample.begintime = item.GROSSTIME.ToString("yyyy-MM-dd HH:mm:ss"); // sample.SampleState = Xg.Lab.Sample.SampleState.初始状态; // trans_train_sample.Add(sample); //} //trans_train_sample.Save(); }
private void tsmBtnVSLUpdate_Click(object sender, EventArgs e) { QC_Sample_Veh veh = curTableSource.Current as QC_Sample_Veh; if (veh != null) { veh.CheckItems.LoadDataBySampleVehId(veh.Sample_Veh_ID); veh.SaveEnable = false; curData = veh; this.curDataSource.DataSource = curData; btnUnBindCard.Visible = false; } else { MessageBox.Show("没有选中的行"); } }
private void 回传取样信息ToolStripMenuItem_Click(object sender, EventArgs e) { QC_Sample_Veh veh = (QC_Sample_Veh)this.qCSampleVehBindingSource.Current; string strURL = "http://192.168.2.42:7080/MeasureService/qualityInterface/returnsampleflag.do?matchid=" + veh.NoticeBillId + "&sampleunitcode=" + FrmMain.localinfo.workpoint.Code + "&sampleunitname=" + FrmMain.localinfo.workpoint.Name + "&cph=" + veh.VehNo + "&icno=&samplercode=" + LocalInfo.Current.user.ID + "&samplername=" + LocalInfo.Current.user.Name + "&deduction=" + StringTool.FNumVal(veh.KouShui.ToString()) + "&deduction2=" + StringTool.FNumVal(veh.KouZa.ToString()); System.Net.HttpWebRequest request; request = (System.Net.HttpWebRequest)WebRequest.Create(strURL); System.Net.HttpWebResponse response; response = (System.Net.HttpWebResponse)request.GetResponse(); System.IO.StreamReader myreader = new System.IO.StreamReader(response.GetResponseStream(), Encoding.UTF8); string responseText = myreader.ReadToEnd(); myreader.Close(); String str = responseText.Split(',')[0].Substring(responseText.Split(',')[0].Length - 4); if (str == "true") { DbContext.ExeSql("update tb_noticebill_head set status=2 where status=0 and noticebillid=@noticebillid", veh.NoticeBillId); MessageBox.Show("取样信息回传成功"); } }
private void 除错误车辆ToolStripMenuItem_Click(object sender, EventArgs e) { QC_Sample_Veh veh = (QC_Sample_Veh)this.qCSampleVehBindingSource.Current; //string strURL = "http://192.168.2.42:7080/MeasureService/qualityInterface/cancelSampleFlag.do?matchid=" + veh.NoticeBillId + "&samplercode=" + LocalInfo.Current.user.ID + "&samplername=" + LocalInfo.Current.user.Name; //System.Net.HttpWebRequest request; //request = (System.Net.HttpWebRequest)WebRequest.Create(strURL); //System.Net.HttpWebResponse response; //response = (System.Net.HttpWebResponse)request.GetResponse(); //System.IO.StreamReader myreader = new System.IO.StreamReader(response.GetResponseStream(), Encoding.UTF8); //string responseText = myreader.ReadToEnd(); //myreader.Close(); //String str = responseText.Split(',')[0].Substring(responseText.Split(',')[0].Length - 4); //if (str == "true") MessageBox.Show("删除成功"); xycards.LoadDataByWhere("CardID=@CardID and CardType=@CardType", veh.CardID, QC_IC_Info.CardUseType_Veh); foreach (var xy in xycards) { xy.SampleId = 0; xy.Save(); } this.qCSampleVehBindingSource.RemoveCurrent(); vehs.Save(); }
private void CreateSampleVeh() { curData = new QC_Sample_Veh(); this.curDataSource.DataSource = curData; btnUnBindCard.Visible = false; }
private void 组批_Click(object sender, EventArgs e) { this.hjvehs.Save(); if (MessageBox.Show("确实要组批吗?", "提示", MessageBoxButtons.OKCancel) == DialogResult.OK) { Dictionary <string, List <QC_Sample_Veh> > vehFenzu = new Dictionary <string, List <QC_Sample_Veh> >(); vehFenzu.Clear(); foreach (var veh in hjvehs) { if (veh.zp) { string key = veh.MatPK + "_" + veh.SupplierCode; if (vehFenzu.ContainsKey(key)) { vehFenzu[key].Add(veh); } else { vehFenzu.Add(key, new List <QC_Sample_Veh>() { veh }); } } } foreach (var item in vehFenzu) { int xiaotongshu = item.Value.Count; int datongshu = 1; QC_Sample_Veh tempVeh = item.Value[0]; QC_Material matInfo = QC_Material.GetByCode(tempVeh.MatCode); if (matInfo != null) { if (xiaotongshu <= matInfo.BatchNum) { datongshu = 1; } else if (xiaotongshu % matInfo.BatchNum == 0) { datongshu = item.Value.Count / matInfo.BatchNum; } else if (xiaotongshu % matInfo.BatchNum != 0) { datongshu = item.Value.Count / matInfo.BatchNum + 1; } } if (datongshu > xiaotongshu) { datongshu = xiaotongshu; } Dictionary <int, List <int> > fp = FenZu(xiaotongshu, datongshu); foreach (var fpItem in fp) { List <QC_Sample_Veh> vehs = new List <QC_Sample_Veh>(); foreach (var xtHao in fpItem.Value) { QC_Sample_Veh tempVeh2 = item.Value[xtHao]; vehs.Add(tempVeh2); } if (vehs.Count > 0) { QC_Sample_Mix mix = new QC_Sample_Mix(); mix.WpCode = "0083"; mix.MatCode = vehs[0].MatCode; mix.MatPK = vehs[0].MatPK; mix.Mix_Time = DateTime.Now; mix.FangTong_Time = DateTime.Now; mix.ShouTong_Time = DateTime.Now; mix.ShouTong_User = LocalInfo.Current.user.ID; mix.FangTong_User = LocalInfo.Current.user.ID; mix.MixCount = vehs.Count; mix.MixPlanCount = vehs.Count; mix.SupplierCode = vehs[0].SupplierCode; mix.MixUser = LocalInfo.Current.user.ID; mix.SampleState = SampleState.组批完成; mix.SampleType = SampleType.普通样; mix.WLLX = vehs[0].WLLX; mix.CardID = Zhc.Data.DbContext.GetSeq("HB" + DateTime.Now.Date.ToString("yyyyMMdd"), 2); mix.Save(); hjmixs.Add(mix); foreach (var veh in vehs) { veh.Sample_Mix_ID = mix.Sample_Mix_ID; veh.Mix_Time = DateTime.Now; veh.SampleState = SampleState.组批完成; veh.Save(); } QC_Sample_Mix mixpb = new QC_Sample_Mix(); mixpb.MatCode = vehs[0].MatCode; mixpb.MatPK = vehs[0].MatPK; mixpb.WpCode = "0083"; mixpb.WLLX = vehs[0].WLLX; mixpb.Mix_Time = DateTime.Now; mixpb.FangTong_Time = DateTime.Now; mixpb.ShouTong_Time = DateTime.Now; mixpb.ShouTong_User = LocalInfo.Current.user.ID; mixpb.FangTong_User = LocalInfo.Current.user.ID; mixpb.MixCount = vehs.Count; mixpb.MixPlanCount = vehs.Count; mixpb.SupplierCode = vehs[0].SupplierCode; mixpb.MixUser = LocalInfo.Current.user.ID; mixpb.CardID = "PB" + mix.CardID.Remove(0, 2); mixpb.MainSampleMixId = mix.Sample_Mix_ID; mixpb.SampleType = SampleType.破包样; mixpb.SampleState = SampleState.组批完成; mixpb.Save(); } } } PrintZupi(); } }
private void timer1_Tick(object sender, EventArgs e) { mixs.LoadDataByWhere("main.WLLX='石子' and main.SampleState=@SampleState", SampleState.初始状态); qvs.LoadDataByWhere("WLLX='石子' and status=7 order by begintime desc"); for (int j = 0; j < qvs.Count; j++) { bool cunzai = false; for (int m = 0; m < mixs.Count; m++) { if (qvs[j].CUSTCODE == mixs[m].SupplierCode && qvs[j].INVCODE == mixs[m].MatCode) { cunzai = true; QC_Sample_Veh sm = new QC_Sample_Veh(); sm.begintime = qvs[j].begintime; sm.WpCode = FrmMain.localinfo.workpoint.Code; //作业点编码 sm.FetchPerson = LocalInfo.Current.user.ID; //取样人ID sm.VehNo = qvs[j].Cph; //车牌号 sm.NoticeBillId = qvs[j].NoticeId; //磁卡作业单号 // sm.Sample_Mix_ID = 0; //混样ID sm.FetchTime = System.DateTime.Now; //取样时间 // sm.KouShui = StringTool.FNumVal(koushui.Text); // sm.KouZa = StringTool.FNumVal(kouza.Text); sm.WLLX = "石子"; sm.NcDhdBodyId = qvs[j].NcDhdBodyId; //车辆作业单主键 sm.MatCode = qvs[j].INVCODE; //物料编码 sm.MatName = qvs[j].INVNAME; sm.SupplierCode = qvs[j].CUSTCODE; //供应商编码 sm.SupplierName = qvs[j].CUSTNAME; sm.MatPK = qvs[j].PK_INVBASDOC; //物料主键 sm.NcDhdHeadNo = qvs[j].NcDhdHeadNo; //NC到货单 sm.Sample_Mix_ID = mixs[m].Sample_Mix_ID; sm.zpdh = mixs[m].CardID; sm.SampleState = SampleState.初始状态; sm.zptime = DateTime.Now.ToString(); vehs.Add(sm); DbContext.ExeSql("update tb_noticebill_head set status=8 where status=7 and noticebillid=@noticebillid", qvs[j].NoticeId); vehs.Save(); } } if (cunzai == false) { QC_Sample_Mix mix = new QC_Sample_Mix(); mix.WpCode = "0091"; mix.MatCode = qvs[j].INVCODE; mix.MatPK = qvs[j].PK_INVBASDOC; // mix.MixCount = vehs.Count; // mix.MixPlanCount = vehs.Count; mix.SupplierCode = qvs[j].CUSTCODE; mix.MixUser = LocalInfo.Current.user.ID; mix.SampleState = SampleState.初始状态; mix.SampleType = SampleType.普通样; mix.WLLX = qvs[j].WLLX; mix.CardID = Zhc.Data.DbContext.GetSeq("SZ" + DateTime.Now.Date.ToString("yyyyMMdd"), 2); mix.Save(); mixs.Add(mix); QC_Sample_Veh sm = new QC_Sample_Veh(); sm.begintime = qvs[j].begintime; sm.WpCode = FrmMain.localinfo.workpoint.Code; //作业点编码 sm.FetchPerson = LocalInfo.Current.user.ID; //取样人ID sm.VehNo = qvs[j].Cph; //车牌号 sm.NoticeBillId = qvs[j].NoticeId; //磁卡作业单号 // sm.Sample_Mix_ID = 0; //混样ID sm.FetchTime = System.DateTime.Now; //取样时间 // sm.KouShui = StringTool.FNumVal(koushui.Text); // sm.KouZa = StringTool.FNumVal(kouza.Text); sm.WLLX = "石子"; sm.NcDhdBodyId = qvs[j].NcDhdBodyId; //车辆作业单主键 sm.MatCode = qvs[j].INVCODE; //物料编码 sm.MatName = qvs[j].INVNAME; sm.SupplierCode = qvs[j].CUSTCODE; //供应商编码 sm.SupplierName = qvs[j].CUSTNAME; sm.MatPK = qvs[j].PK_INVBASDOC; //物料主键 sm.NcDhdHeadNo = qvs[j].NcDhdHeadNo; //NC到货单 sm.Sample_Mix_ID = mix.Sample_Mix_ID; sm.zpdh = mix.CardID; sm.SampleState = SampleState.初始状态; sm.zptime = DateTime.Now.ToString(); vehs.Add(sm); DbContext.ExeSql("update tb_noticebill_head set status=8 where status=7 and noticebillid=@noticebillid", qvs[j].NoticeId); vehs.Save(); } } }
/// <summary> /// 加载车辆信息 /// </summary> /// <param name="cph"></param> /// <param name="sampleTime"></param> public void LoadBy() { QC_Sample_Veh selectedVeh = null; if (string.IsNullOrEmpty(txtCph.Text.Trim())) { MessageBox.Show("车牌号不能为空"); return; } string cph = txtCph.Text.Trim(); if (dateEdit_SampleTime.EditValue == DBNull.Value) { DlgChe dlg = new DlgChe(cph, DateTime.Now.AddMinutes(-10)); if (dlg.ShowDialog() == DialogResult.OK) { selectedVeh = dlg.SelectedVeh; curData.FetchTime = selectedVeh.FetchTime; } else { return; } } else { DateTime sampleTime = dateEdit_SampleTime.DateTime; if (sampleTime > DateTime.MinValue && sampleTime < DateTime.Now) { DbEntityTable <QC_Sample_Veh> noticeVeh = new DbEntityTable <QC_Sample_Veh>(); noticeVeh.LoadDataByWhere(string.Format("vehno like '%{0}%' ", cph)); if (noticeVeh.Count == 1) { selectedVeh = noticeVeh[0]; } else { DlgChe dlg = new DlgChe(cph, sampleTime); if (dlg.ShowDialog() == DialogResult.OK) { selectedVeh = dlg.SelectedVeh; curData.FetchTime = selectedVeh.FetchTime; } else { return; } } } else { MessageBox.Show("取样时间不在合理范围"); } } if (selectedVeh != null) { curData.VehNo = selectedVeh.VehNo; txtCph.Text = curData.VehNo; //if (selectedVeh.WLLX == "火运") //{ curData.NoticeBillId = selectedVeh.Sample_Veh_ID.ToString(); } curData.NoticeBillId = selectedVeh.NoticeBillId; curData.SupplierCode = selectedVeh.SupplierCode; curData.SupplierName = selectedVeh.SupplierName; curData.MatPK = selectedVeh.MatPK; curData.MatCode = selectedVeh.MatCode; curData.MatName = selectedVeh.MatName; curData.CheckItems.Empty(); DbEntityTable <QC_CheckItem> CheckItemView = new DbEntityTable <QC_CheckItem>(); if (selectedVeh.MatCode == "16911" || selectedVeh.MatCode == "16912") { CheckItemView.LoadDataByWhere("CHECKITEMCODE in ('10001','10120','10011','10012')"); } else { CheckItemView.LoadDataByWhere("CHECKITEMCODE in ('10001','10002','10011','10012')"); } //DbEntityTable<QC_MatCheckItem_View> CheckItemView = new DbEntityTable<QC_MatCheckItem_View>(); //CheckItemView.LoadDataByWhere("MatNCid=@MatNCid", curData.MatPK); foreach (var stdCheckItem in CheckItemView) { QC_MixCheckItem item = new QC_MixCheckItem(); item.CheckItemNcId = stdCheckItem.CheckItemNcId; item.CheckItemCode = stdCheckItem.CheckItemCode; item.CheckItemName = stdCheckItem.CheckItemName; item.CheckItemUnit = stdCheckItem.CheckItemUnit; item.CheckGroupCode = stdCheckItem.CheckGroupCode; //item.CheckGroupName = stdCheckItem.CheckGroupName; //item.CheckGroupType = stdCheckItem.CheckGroupType; //item.CkgShortWord = stdCheckItem.CkgShortWord; item.Sample_Mix_ID = item.Sample_Mix_ID; item.Source = "抽查样"; curData.CheckItems.Add(item); } //SetCheckItems(); MessageBox.Show("加载完成"); } else { MessageBox.Show("没有找到作业单信息"); } }
/// <summary> /// 如果有未打印的任务单,控制必须是同一种物料,同一个到货单 /// </summary> /// <param name="hcph"></param> /// <returns></returns> public bool checkMat() { var view = gridView1; if (view.RowCount < 1) { return(false); } QC_Sample_Veh train = view.GetRow(0) as QC_Sample_Veh; string hc = train.CardID; string mat = train.rwdh; string fz = train.zpdh; bool gouxuan = false; //gridcontrol列表内选择的是同一种物料 for (int i = 0; i < view.RowCount; i++) { if (view.IsGroupRow(i)) { continue; } var entity = view.GetRow(i) as QC_Sample_Veh; if (entity.rwdh != mat && entity.zp) { return(false); } if (entity.zp) { gouxuan = true; } } if (!gouxuan) { return(false); } //选择的发站不一致 if (fazhan != "" && fazhan != fz) { return(false); } ////选择的物料不一致 if (matname != "" && matname != mat) { return(false); } //判断是否是同一张到货单 if (ncdhd != "") { var viewdhd = gridView3; if (viewdhd.RowCount < 1) { return(false); } View_arrivebill dhd = viewdhd.GetFocusedRow() as View_arrivebill; if (ncdhd != dhd.varrordercode) { return(false); } } return(true); }