| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713 |
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Windows.Forms;
- using CoreFS.CA06;
- using Pur.Entity;
- using Core.Mes.Client.Comm.Control;
- using Pur.Entity.ck;
- using Infragistics.Win.UltraWinGrid;
- using System.Collections;
- using Core.Mes.Client.Comm.Tool;
- using com.hnshituo.pur.vo;
- using Core.Mes.Client.Comm.Server;
- using com.hnshituo.ck;
- using Pur.Pop_upWindow;
- using Infragistics.Win.UltraWinEditors;
- using Pur.configure;
- using Infragistics.Win;
- using Pur.Entity.configureEntity;
- namespace Pur.ck
- {
- public partial class ExcDeliveryManagNew : FrmPmsBase
- {
- private ArrayList list1 = new ArrayList();
- private string v_Mic="";
- private string v_Mic_desc="";
- private DataTable dt_addItem = new DataTable();
- private String fileName="";
- public ExcDeliveryManagNew()
- {
- InitializeComponent();
- this.IsLoadUserView = true;
- }
- private void ExcDeliveryManagNew_Load(object sender, EventArgs e)
- {
- txt_judgeTypeHY.SelectedIndex = 0;
- ck_Ctime.Checked = true;
- txt_CreateTimeS.Value = DateTime.Now.AddMonths(-1);
- txt_CreateTimeS.Enabled = true;
- txt_CreateTimeE.Value = Convert.ToDateTime(DateTime.Now.ToShortDateString()).AddHours(23).AddMinutes(59);
- txt_CreateTimeE.Enabled = true;
- txt_status.SelectedIndex = 1;//默认待收货状态
- ultraGrid2.DisplayLayout.Bands[0].Columns["CHK"].Hidden = true;
- GridHelper.SetExcludeColumnsActive(ultraGrid1.DisplayLayout.Bands[0], new string[] { "CHK" });
- GridHelper.SetExcludeColumnsActive(ultraGrid3.DisplayLayout.Bands[0], new string[] {"REMARK", "JUDGETYPE" });
- GridHelper.SetExcludeColumnsActive(ultraGrid4.DisplayLayout.Bands[0], new string[] {});
- GridHelper.SetExcludeColumnsActive(ultraGrid2.DisplayLayout.Bands[0], new string[] { "CHK", "RECQTY", "carNum", "shipQty", "checkMsg","meteringFlag","pcFlag"});
- //
- this.ultraGrid2.DisplayLayout.ValueLists.Add("checkList1");
- this.ultraGrid2.DisplayLayout.ValueLists["checkList1"].ValueListItems.Add("否", "否");
- this.ultraGrid2.DisplayLayout.ValueLists["checkList1"].ValueListItems.Add("是", "是");
- this.ultraGrid2.DisplayLayout.ValueLists["checkList1"].DisplayStyle = ValueListDisplayStyle.DisplayText;
- this.ultraGrid2.DisplayLayout.Bands[0].Columns["meteringFlag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- this.ultraGrid2.DisplayLayout.Bands[0].Columns["meteringFlag"].ValueList = this.ultraGrid2.DisplayLayout.ValueLists["checkList1"];
- this.ultraGrid2.DisplayLayout.Bands[0].Columns["pcFlag"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- this.ultraGrid2.DisplayLayout.Bands[0].Columns["pcFlag"].ValueList = this.ultraGrid2.DisplayLayout.ValueLists["checkList1"];
-
- ultraExpandableGroupBox4.Expanded = true;
- ultraExpandableGroupBox3.Expanded = true;
-
- ultraGrid3.DisplayLayout.Bands[0].Columns["JUDGETYPECODE"].EditorComponent = ultraJUDGE_TYPE;
- ultraGrid3.DisplayLayout.Bands[0].Columns["JUDGETYPECODE"].Style = Infragistics.Win.UltraWinGrid.ColumnStyle.DropDownList;
- Get_ExcSubM();
- }
- #region toolbar工具栏
- /// <summary>
- /// 菜单栏
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="ToolbarKey"></param>
- public override void ToolBar_Click(object sender, string ToolbarKey)
- {
- switch (ToolbarKey)
- {
- case "Query":
- Get_ExcSubM();
- break;
- case "doPrint":
- doPrint();
- break;
- case "Close":
- this.Close();
- break;
- case "conFirmation":// 初检完成
- setRecList();
- break;
- case "cancelConFirmation":// 取消初检
- cancelRecList();
- break;
- case "QuitRec"://退货
- QuitRec();
- break;
- case "doSplit"://拆分入库
- doSplit();
- break;
- case "Delete"://delete'
- doDeleteBill();
- break;
- }
- }
- /// <summary>
- /// 删除
- /// </summary>
- private void doDeleteBill()
- {
- if (list1.Count <= 0)
- {
- MessageUtil.ShowTips("请勾选需退货的送货单头");
- return;
- }
- String[] ls = (String[])list1.ToArray(typeof(string));
- String str1 = String.Join(";", ls);
- if (str1.ToLower().Contains("rb"))
- {
- if (MessageUtil.ShowYesNoAndQuestion("选择的送货单[" + str1 + "]中存在让步接收单,确定删除?") != DialogResult.Yes)
- {
- return;
- }
- }
- else
- {
- if (MessageUtil.ShowYesNoAndQuestion("确定删除送货单:" + str1 + "?") != DialogResult.Yes)
- {
- return;
- }
- }
- CoreResult cr = this.execute<CoreResult>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "delete_bill", new object[] { list1,UserInfo.GetUserID(),UserInfo.GetUserName()});
- if (cr.Resultcode == 0)
- {
- MessageUtil.ShowTips("操作成功");
- Get_ExcSubM();
- return;
- }
- else
- {
- MessageUtil.ShowTips("操作失败" + cr.Resultmsg);
- return;
- }//this.UseWaitCursor
- }
- /// <summary>
- /// 拆分入库
- /// </summary>
- private void doSplit()
- {
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择送货单行进行操作!");
- return;
- }
- UltraGridRow row = ultraGrid2.ActiveRow;
- String strDeliverySubLineSqe = row.GetCellValue("deliverySubLineSqe").ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("选择待拆分的送货单行号为空");
- return;
- }
- frmPopDeliverySubSplit FPRD = new frmPopDeliverySubSplit(this.ob, strDeliverySubLineSqe);
- FPRD.ShowDialog();
- if (FPRD.tips == "1")
- {
- doQuerySubLineByList(list1);
- return;
- }
- }
- /// <summary>
- /// 退货
- /// </summary>
- private void QuitRec()
- {
- if (list1.Count <= 0)
- {
- MessageUtil.ShowTips("请勾选需退货的送货单头");
- return;
- }
- String[] ls = (String[])list1.ToArray(typeof(string));
- String str1 = String.Join(";", ls);
- if (MessageUtil.ShowYesNoAndQuestion("确定对勾选的送货单:" + str1 + "进行全部退货操作?") != DialogResult.Yes)
- {
- return;
- }
- CoreResult cr = this.execute<CoreResult>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "QuitRec", new object[] { list1 });
- if (cr.Resultcode == 0)
- {
- MessageUtil.ShowTips("操作成功");
- Get_ExcSubM();
- return;
- }
- else
- {
- MessageUtil.ShowTips("操作失败" + cr.Resultmsg);
- return;
- }//this.UseWaitCursor
- }
- /// <summary>
- /// 取消初检
- /// </summary>
- private void cancelRecList()
- {
- ultraGrid2.UpdateData();
- ArrayList al = new ArrayList();
- for (int j = 0; j < ultraGrid2.Rows.Count; j++)
- {
- ExcDeliverySubC EdC = new ExcDeliverySubC();
- EdC.DeliverySubId = ultraGrid2.ActiveRow.Cells["DeliverySubId"].Value.ToString();
- EdC.DeliverySubLineSqe = ultraGrid2.Rows[j].Cells["DELIVERYSUBLINESQE"].Value.ToString();//送货通知单行号
- //校验数据
- if (testDeliveryStatus(EdC.DeliverySubLineSqe, 2,"","") == false)
- {
- return;
- }
- EdC.Status = "1";
- EdC.CreateName = UserInfo.GetUserName();
- EdC.CreateUserid = UserInfo.GetUserID();
- EdC.CreateTime = DateTime.Now;
- al.Add(EdC);
- }
- if (list1.Count <= 0)
- {
- MessageUtil.ShowTips("请勾选需取消初检的送货单头");
- return;
- }
- String[] ls = (String[])list1.ToArray(typeof(string));
- String str1 = String.Join(";", ls);
- if (MessageUtil.ShowYesNoAndQuestion("确定对选择的送货单:" + str1 + "进行取消初检操作?") != DialogResult.Yes)
- {
- return;
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "checkBill", new object[] { al });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("取消初检失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("操作成功");
- Get_ExcSubM();
- }
- /// <summary>
- /// 初检完成
- /// </summary>
- private void setRecList()
- {
- double b_INNUM = 0; //收货量
- ultraGrid2.UpdateData();
- ArrayList al = new ArrayList();
- for (int j = 0; j < ultraGrid2.Rows.Count; j++)
- {
- ExcDeliverySubC EdC = new ExcDeliverySubC();
- ExcDeliverySubM subMOld = new ExcDeliverySubM();
- double.TryParse(ultraGrid2.ActiveRow.Cells["shipQty"].Value.ToString().Trim(), out b_INNUM);
- String strSubSqe = ultraGrid2.ActiveRow.Cells["deliverySubLineSqe"].Value.ToString();
- EdC = this.GetJsonService().execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { strSubSqe });
- //交货量差控制
- //if (testDeliveryQtyCtrl(subMOld, EdC, b_INNUM) == false)
- //{
- // return;
- //}
- EdC.DeliverySubId = ultraGrid2.ActiveRow.Cells["DeliverySubId"].Value.ToString();
- EdC.DeliverySubLineSqe = ultraGrid2.Rows[j].Cells["DELIVERYSUBLINESQE"].Value.ToString();//送货通知单行号
- EdC.CarNum = ultraGrid2.Rows[j].Cells["carNum"].Value.ToString();
- EdC.Status = "2";
- EdC.ShipQty = Math.Round(ultraGrid2.Rows[j].Cells["shipQty"].Value.ToString() == "" ? 0 : double.Parse(ultraGrid2.Rows[j].Cells["shipQty"].Value.ToString()),3);
- EdC.ReceivedQty = Math.Round(ultraGrid2.Rows[j].Cells["RECQTY"].Value.ToString() == "" ? 0 : double.Parse(ultraGrid2.Rows[j].Cells["RECQTY"].Value.ToString()),3);//待处置量
- EdC.CarNum = ultraGrid2.Rows[j].Cells["CarNum"].Value == null ? "" : ultraGrid2.Rows[j].Cells["CarNum"].Value.ToString();
- EdC.Remark = ultraGrid2.Rows[j].Cells["checkMsg"].Value == null ? "" : ultraGrid2.Rows[j].Cells["checkMsg"].Value.ToString();
- EdC.CreateName = UserInfo.GetUserName();
- EdC.CreateUserid = UserInfo.GetUserID();
- EdC.CreateTime = DateTime.Now;
- EdC.MeteringFlag = ultraGrid2.Rows[j].Cells["meteringFlag"].Value.ToString().Trim() == "是" ? "1" : "0";
- EdC.PcFlag = ultraGrid2.Rows[j].Cells["pcFlag"].Value.ToString().Trim()=="是"?"1":"0";
- //校验数据
- if (testDeliveryStatus(EdC.DeliverySubLineSqe, 1, EdC.MeteringFlag, EdC.PcFlag) == false)
- {
- return;
- }
- //if (EdC.ShipQty < EdC.ReceivedQty)
- //{
- // MessageUtil.ShowTips("送货单行:" + EdC.DeliverySubLineSqe + "的实送数量需大于待处置量数量");
- // return;
- //}
- //if (EdC.ShipQty == EdC.ReceivedQty)
- //{
- // MessageUtil.ShowTips("送货单行:" + EdC.DeliverySubLineSqe + "的实送数量等于处置量数量,该送货单行将标识为异常单。若存在异常量,请及时进行异常单处理");
- // return;
- //}
- if (EdC.ReceivedQty > 0 && String.IsNullOrEmpty(EdC.Remark))
- {
- MessageUtil.ShowTips("若送货单行:" + EdC.DeliverySubLineSqe + "存在待处置物料,请输入待处置原因或意见");
- return;
- }
- al.Add(EdC);
- }
- if (list1.Count <= 0)
- {
- MessageUtil.ShowTips("请勾选送货单头");
- return;
- }
- if (al.Count <= 0)
- {
- MessageUtil.ShowTips("无可初检送货单行");
- return;
- }
- String[] ls = (String[])list1.ToArray(typeof(string));
- String str1 = String.Join(";", ls);
- if (MessageUtil.ShowYesNoAndQuestion("确定对已勾选的送货单:" + str1 + "进行初检操作?若存在待处置量,请及时进行异常单处置。") != DialogResult.Yes)
- {
- return;
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "checkBill", new object[] { al });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("初检失败 " + crt.Resultmsg);
- return;
- }
- MessageUtil.ShowTips("已完成初检");
- Get_ExcSubM();
-
- }
- private DateTime setCreateTimeEnd(Object value)
- {
- DateTime time = Convert.ToDateTime(value);
- DateTime endtime = new DateTime(time.Year, time.Month, time.Day, 23, 59, 59);
- return endtime;
- }
- #region 交货量差控制
- private bool testDeliveryQtyCtrl(ExcDeliverySubM subMOld, ExcDeliverySubC EdC, double b_INNUM)
- {
- String strSupp = subMOld.SuppCode;
- String strItemCode = EdC.ItemCode;
- Entity_SuppGrade grade = new Entity_SuppGrade();
- grade.SuppCode = strSupp;
- grade.ItemCode = strItemCode;
-
- double qty = (double)EdC.Qty;
- List<Entity_SuppGrade> listGrade = this.execute<List<Entity_SuppGrade>>("com.hnshituo.pur.configure.service.SuppGradeService", "find", new object[] { grade, 0, 0 });//添加操作
- if (listGrade != null && listGrade.Count >= 1)
- {
- grade = listGrade[0];
- if (grade.DelvryRangeTpe == "0")
- {
- return true;
- }
- else if (grade.DelvryRangeTpe == "1")//绝对值
- {
- double maxQty = (double)grade.DelvryRangeMax + qty;
- double minQty = qty - (double)grade.DelvryRangeMin;
- if (b_INNUM > maxQty)
- {
- MessageUtil.ShowTips("供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的入库量已经超出交货量上限为:" + maxQty);
- return false;
- }
- if (b_INNUM < minQty)
- {
- MessageUtil.ShowTips("供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的入库量已经超出交货量下限为:" + minQty);
- return false;
- }
- }
- else if (grade.DelvryRangeTpe == "2")//百分比
- {
- double maxQty = Math.Round(qty * (1 + (double)grade.DelvryRangeMax / 100), 3);
- double minQty = Math.Round(qty * (1 - (double)grade.DelvryRangeMax / 100), 3);
- if (b_INNUM > maxQty)
- {
- MessageUtil.ShowTips("供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的入库量已经超出交货量上限为:" + maxQty);
- return false;
- }
- if (b_INNUM < minQty)
- {
- MessageUtil.ShowTips("供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的入库量已经超出交货量下限为:" + minQty);
- return false;
- }
- }
- else if (grade.DelvryRangeTpe == "2") //不允许
- {
- if (b_INNUM != qty)
- {
- MessageUtil.ShowTips("供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的入库量不允许有交货量差,入库量和和要求送货量必须一致");
- return false;
- }
- }
- else
- {
- MessageUtil.ShowTips("请维护供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的交货量差方式");
- return false;
- }
- }
- else
- {
- MessageUtil.ShowTips("请维护供应商:" + subMOld.SuppName + "的物料:" + EdC.ItemName + "的交货量差");
- return false;
- }
- return true;
- }
- #endregion
- /// <summary>
- /// 查询
- /// </summary>
- private void Get_ExcSubM()
- {
- try
- {
- this.Cursor = Cursors.WaitCursor;
- list1.Clear();
- dataTable1.Clear();
- dataTable4.Clear();
- dataTable2.Clear();
- clearSampleTabHY();
- Hashtable map = new Hashtable();
- map.Add("deliverySubId", txt_deliverySubId.Text.Trim());
- map.Add("orderId", txt_OrderId.Text.Trim());
- map.Add("supperId", txt_suppCode.Text.Trim());
- map.Add("validDataPurviewIds", this.ValidDataPurviewIds);
- if (ck_Ctime.Checked && !string.IsNullOrEmpty(txt_CreateTimeS.Text))
- {
- map.Add("createTimeBegin", Convert.ToDateTime(txt_CreateTimeS.Value).ToString());
- }
- if (ck_Ctime.Checked && !string.IsNullOrEmpty(txt_CreateTimeE.Text))
- {
- map.Add("createTimeEnd", setCreateTimeEnd(txt_CreateTimeE.Value));
- }
- if (txt_status.SelectedIndex != -1)
- {
- map.Add("statusCJ", txt_status.Value.ToString().Trim());
- }
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "doQueryDeliverySubMList", new object[] { map });
- GridHelper.CopyDataToDatatable(dt, dataTable1, true);
- GridHelper.RefreshAndAutoSize(ultraGrid1);
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("查询送货单主表数据失败:" + ex.Message);
- }
- finally
- {
- this.Cursor = Cursors.Default;
- }
- }
- /// <summary>
- /// 打印检化验委托单
- /// </summary>
- private void doPrint()
- {
- try
- {
- this.Cursor = Cursors.WaitCursor;
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择发货单行进行操作!");
- return;
- }
- String strDeliverySubLineSqe = ultraGrid2.ActiveRow.GetCellValue("deliverySubLineSqe").ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单行号为空");
- }
- ExcDeliverySubC dsc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { strDeliverySubLineSqe });
- if (!String.IsNullOrEmpty(dsc.CheckNo))
- {
- string strurl = "";
- DataTable dt = ServerHelper.GetData("com.hnshituo.pur.configure.service.impl.CoreBaseInfoNew.doQuery", new Object[] { "1223" }, this.ob);
- DataRow[] drArr = dt.Select("validflag='1'");
- if (drArr.Length != 1)
- {
- MessageUtil.ShowTips("基础数据维护错误:报表系统需维护有效的Ip且只能维护一个有效ip!");
- return;
- }
- String TipsEnv = drArr[0]["baseName"].ToString();
- String strUrlPort = "http://172.54.10.42:8080";//报表系统IP
- String[] str = strUrlPort.Split(':');
- String strUrl = str[0] + ":" + str[1];
- if (ob.MainUrl.StartsWith(strUrl))
- {
- //测试环境
- if (TipsEnv == "2")
- {
- strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrderDev.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- }
- //生产环境
- else
- {
- strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrder.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- }
- }
- else
- {
- //测试环境
- if (TipsEnv == "2")
- {
- strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrderDev.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- }
- //生产环境
- else
- {
- strurl = strUrlPort + "/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrder.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- }
- }
- //if (ob.MainUrl.StartsWith("http://127.0.0.1"))
- //{
- // strurl = "http://localhost:8075/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrderDev.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- //}
- //else
- //{
- // strurl = "http://localhost:8075/webroot/decision/view/report?viewlet=RepPurMatCheckTaskOrderDev.cpt&op=view" + "&CHECK_NO=" + dsc.CheckNo;
- //}
- FrmRepExcel fBug = new FrmRepExcel(ob, strurl);
- fBug.AutoSize = true;
- fBug.MaximumSize = new Size(Screen.PrimaryScreen.WorkingArea.Width, Screen.PrimaryScreen.WorkingArea.Height);
- fBug.WindowState = FormWindowState.Maximized;
- fBug.Text = "TPCO理化检验任务单";
- fBug.Show();
- }
- else
- {
- MessageUtil.ShowTips("暂未绑定送检号!");
- }
- }
- finally
- {
- this.Cursor = Cursors.Default;
- }
- }
- #endregion
- #region 界面事件
- /// <summary>
- /// grid1选择事件控制
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid1_CellChange(object sender, CellEventArgs e)
- {
- try
- {
- list1.Clear();
- ultraGrid1.UpdateData();
- String noticeId = "";
- int i = 0;
- if (e.Cell.Column.Key == "CHK")
- {
- clearSampleTabHY();
- dataTable2.Clear();
- dataTable4.Clear();
- dataSet3.Clear();
- dataSet4.Clear();
- foreach (UltraGridRow row in ultraGrid1.Rows)
- {
- if (Convert.ToBoolean(row.GetCellValue("CHK")) == true)
- {
- String strDeliverySubId = row.Cells["DeliverySubId"].Value.ToString();
- String strnoticeId = row.Cells["noticeId"].Value.ToString();
- if (!String.IsNullOrEmpty(strDeliverySubId))
- {
- if (i == 0)
- {
- noticeId = strnoticeId;
- }
- else
- {
- if (noticeId != strnoticeId)
- {
- MessageUtil.ShowTips("请选择同通知单下送货单进行操作!");
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- }
- list1.Add(strDeliverySubId);
- i = i + 1;
- }
- }
- }
- dataTable2.Rows.Clear();
- }
- if (list1.Count > 0)
- {
- doQuerySubLineByList(list1);
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("查询送货单行信息失败:" + ex.Message);
- }
- }
- /// <summary>
- /// grid2组批事件控制
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_CellChange(object sender, CellEventArgs e)
- {
- if (ck_isBatch.Checked)
- {
- if (e.Cell.Column.Key == "CHK")
- {
- txt_carNumHY.Clear();
- ultraGrid2.UpdateData();
- int i = 0;
- double qtySum = 0;
- string noticeId = "";
- string batchNo = "";
- String itemUnique = "";
- String SubLineId = "";
- String orderId = "";
- StringBuilder carNumCol = new StringBuilder("");
- dataSet3.Clear();
- dataSet4.Clear();
- foreach (UltraGridRow row in ultraGrid2.Rows)
- {
- if (Convert.ToBoolean(row.GetCellValue("CHK")) == true)
- {
- double dbQty = Convert.ToDouble(row.GetCellValue("qty"));
- String strcarNum = row.Cells["carNum"].Value.ToString();
- String strnoticeId = row.Cells["noticeId"].Value.ToString();
- String strBatchNo = row.Cells["batchNo"].Value.ToString();
- String strOrderId = row.Cells["orderId"].Value.ToString();
- String stritemUnique = row.Cells["itemUnique"].Value.ToString();
- String strDeliverySubLineSqe = row.GetCellValue("deliverySubLineSqe").ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单行号为空");
- }
- if (testSubC(strDeliverySubLineSqe) == false)
- {
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- qtySum = qtySum + dbQty;
- if (i == 0)
- {
- noticeId = strnoticeId;
- itemUnique = stritemUnique;
- SubLineId = strDeliverySubLineSqe;
- batchNo = strBatchNo;
- orderId = strOrderId;
- }
- else
- {
- if (strnoticeId != noticeId)
- {
- MessageUtil.ShowTips("请选择同通知单物料进行操作!");
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- if (batchNo != strBatchNo)
- {
- MessageUtil.ShowTips("请选择同生产批次进行操作!");
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- if (itemUnique != stritemUnique)
- {
- MessageUtil.ShowTips("请选择同物料进行操作!");
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- if (orderId != strOrderId)
- {
- MessageUtil.ShowTips("请选择同合同物料进行操作!");
- e.Cell.Row.Cells["CHK"].Value = !Convert.ToBoolean(e.Cell.Row.GetCellValue("CHK"));
- return;
- }
- }
- if (!String.IsNullOrEmpty(strcarNum))
- {
- if (carNumCol.Length > 1)
- {
- carNumCol.Append(",").Append(strcarNum);
- }
- else
- {
- carNumCol.Append(strcarNum);
- }
- }
- else
- {
- MessageUtil.ShowTips("供应商未填写车号,请填写车号!");
- }
- i = i + 1;
- }
- }
- if (i <= 0)
- {
- return;
- }
- clearSampleTabHY();
- ExcDeliverySubC dsc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { SubLineId });
- if (dsc != null)
- {
- //检化验数据加载
- if (!String.IsNullOrEmpty(dsc.CheckNo))
- {
- String strCheckNo = dsc.CheckNo;
- if (String.IsNullOrEmpty(strCheckNo))
- {
- //待检检验项目
- queryItemList(dsc);
- }
- else
- {
- //已委托检验项目
- querySampleList(strCheckNo);
- }
- GridHelper.RefreshAndAutoSize(ultraGrid3);
- }
- //加载合同附件
- getOrderAppend(dsc.DeliverySubLineSqe, "");
- }
- txt_carNumHY.Text = carNumCol.ToString();
- txt_QtyHY.Text = qtySum + "";
- ck_pcFlag.Checked = dsc.PcFlag == null ? false : (dsc.PcFlag == "1" ? true : false);
- txt_UOM.Text = dsc.ItemUom;
- if (ck_pcFlag.Checked)
- {
- ck_pcFlag.Enabled = false;
- }
- else
- {
- ck_pcFlag.Enabled = true;
- }
- }
- }
- }
-
- /// <summary>
- /// 激活行
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void ultraGrid2_AfterRowActivate(object sender, EventArgs e)
- {
- //根据物送货单行的检验编号查询
- try
- {
- if (ck_isBatch.Checked)
- {
- return;
- }
- ultraGrid2.UpdateData();
- clearSampleTabHY();
- dataSet3.Clear();
- dataSet4.Clear();
- String strDeliverySubLineSqe = ultraGrid2.ActiveRow.GetCellValue("deliverySubLineSqe").ToString().Trim();
- String strDeliverySubId = ultraGrid2.ActiveRow.Cells["DeliverySubId"].Value.ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubId))
- {
- MessageUtil.ShowTips("送货单号为空");
- }
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单行号为空");
- }
- ExcDeliverySubM dsm = this.execute<ExcDeliverySubM>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "findById", new object[] { strDeliverySubId });
- ExcDeliverySubC dsc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { strDeliverySubLineSqe });
- if (dsc != null && dsm != null)
- {
- //检化验数据加载
- String strCheckNo = dsc.CheckNo;
- if (String.IsNullOrEmpty(strCheckNo))
- {
- //待检检验项目
- queryItemList(dsc);
- }
- else
- {
- //已委托检验项目
- querySampleList(strCheckNo);
- }
-
- GridHelper.RefreshAndAutoSize(ultraGrid3);
- //加载附件
- getOrderAppend(strDeliverySubLineSqe, "");
- if (!ck_isBatch.Checked)
- {
- txt_carNumHY.Text = dsc.CarNum;
- txt_QtyHY.Text = dsc.Qty + "";
- ck_pcFlag.Checked = dsc.PcFlag == null ? false : (dsc.PcFlag == "1" ? true : false);
- txt_UOM.Text = dsc.ItemUom;
- if (ck_pcFlag.Checked)
- {
- ck_pcFlag.Enabled = false;
- }
- else
- {
- ck_pcFlag.Enabled = true;
- }
- txt_CheckNo.Text = dsc.CheckNo;
- }
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips(ex.Message);
- }
- }
- //创建时间输入控制
- private void ck_Ctime_CheckedChanged(object sender, EventArgs e)
- {
- txt_CreateTimeS.Enabled = ck_Ctime.Checked;
- txt_CreateTimeE.Enabled = ck_Ctime.Checked;
- }
- private void ck_isBatch_CheckedChanged(object sender, EventArgs e)
- {
- dataTable4.Clear();
- dataTable6.Clear();
- clearSampleTabHY();
- foreach (UltraGridRow row in ultraGrid2.Rows)
- {
- row.Cells["CHK"].Value = false;
- }
- if (ck_isBatch.Checked)
- {
- ultraGrid2.DisplayLayout.Bands[0].Columns["CHK"].Hidden = false;
- label5.Text = "组批车号";
- label8.Text = "组批重量";
- }
- else
- {
- ultraGrid2.DisplayLayout.Bands[0].Columns["CHK"].Hidden = true;
- label5.Text = "车 号";
- label8.Text = "重 量";
- }
- }
- #endregion
- #region 界面按钮
- //检化验委托发送
- private void tbn_sendCheck_Click(object sender, EventArgs e)
- {
- ultraGrid2.UpdateData();
- ultraGrid3.UpdateData();
- List<ExcDeliverySubC> listSubC = new List<ExcDeliverySubC>();
- List<CheckconsignDetail> listDetail = new List<CheckconsignDetail>();
- StringBuilder carNumCol = new StringBuilder("");
- if (ck_isBatch.Checked)
- {
- foreach (UltraGridRow row in ultraGrid2.Rows)
- {
- if (Convert.ToBoolean(row.GetCellValue("CHK")) == true)
- {
- String strDeliverySubLineSqe = row.GetCellValue("deliverySubLineSqe").ToString().Trim();
- String strDeliverySubId = row.Cells["DeliverySubId"].Value.ToString().Trim();
- String strCarNum = row.Cells["CarNum"].Value.ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubId))
- {
- MessageUtil.ShowTips("送货单号为空");
- row.Activated = true;
- return;
- }
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单行号为空");
- row.Activated = true;
- return;
- }
- if (String.IsNullOrEmpty(strCarNum))
- {
- MessageUtil.ShowTips("送货单行:" + strDeliverySubLineSqe + "车号为空,请输入车号");
- row.Activated = true;
- return;
- }
- if (testSubC(strDeliverySubLineSqe) == false)
- {
- return;
- }
- ExcDeliverySubC subC = new ExcDeliverySubC();
- subC.DeliverySubLineSqe = strDeliverySubLineSqe;
- subC.CarNum = strCarNum;
- listSubC.Add(subC);
- if (carNumCol.Length > 1)
- {
- carNumCol.Append(",").Append(strCarNum);
- }
- else
- {
- carNumCol.Append(strCarNum);
- }
- }
- }
- if (listSubC.Count <= 0)
- {
- MessageUtil.ShowTips("请选择待检物料进行组批检化验!");
- return;
- }
- }
- else
- {
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择待检送货单行进行操作!");
- return;
- }
- String strDeliverySubLineSqe = ultraGrid2.ActiveRow.GetCellValue("deliverySubLineSqe").ToString().Trim();
- String strDeliverySubId = ultraGrid2.ActiveRow.Cells["DeliverySubId"].Value.ToString().Trim();
- String strCarNum = ultraGrid2.ActiveRow.Cells["CarNum"].Value.ToString().Trim();
- if (String.IsNullOrEmpty(strDeliverySubId))
- {
- MessageUtil.ShowTips("送货单号为空");
- return;
- }
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单行号为空");
- return;
- }
- if (String.IsNullOrEmpty(strCarNum))
- {
- MessageUtil.ShowTips("送货单行:" + strDeliverySubLineSqe + "车号为空,请输入车号");
- return;
- }
- if (testSubC(strDeliverySubLineSqe) == false)
- {
- return;
- }
- ExcDeliverySubC subC = new ExcDeliverySubC();
- subC.DeliverySubLineSqe = strDeliverySubLineSqe;
- subC.CarNum = strCarNum;
- listSubC.Add(subC);
- if (carNumCol.Length > 1)
- {
- carNumCol.Append(",").Append(strCarNum);
- }
- else
- {
- carNumCol.Append(strCarNum);
- }
- }
- CoreResult re = new CoreResult();
- ExcDeliverySubC dsc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { listSubC[0].DeliverySubLineSqe });
- ExcDeliverySubM dsm = this.execute<ExcDeliverySubM>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "findById", new object[] { dsc.DeliverySubId });
- if (dsm == null)
- {
- MessageUtil.ShowTips("未发现送货单:" + dsc.DeliverySubId + "信息记录!");
- return;
- }
-
- CheckconsignBaseinfo baseInfo = new CheckconsignBaseinfo();
- if (!StringUtil.IsDouble(txt_QtyHY.Text.Trim()))
- {
- MessageUtil.ShowTips("请输入大于0的有效数量!");
- txt_QtyHY.Focus();
- return;
- }
- //if (String.IsNullOrEmpty(v_Mic_desc) || String.IsNullOrEmpty(v_Mic) || String.IsNullOrEmpty(txt_std.Text.Trim()))
- //{
- // MessageUtil.ShowTips("检验标准不能为空");
- // txt_QtyHY.Focus();
- // return;
- //}
- if (String.IsNullOrEmpty(txt_std.Text.Trim()))
- {
- if (MessageUtil.ShowYesNoAndQuestion("系统未维护该物料检验标准,确定继续发送?") != DialogResult.Yes)
- {
- return;
- }
- }
- baseInfo.CarNo = carNumCol.ToString();
- //baseInfo.StandardsCode = dsc.ItemStandardsCode;
- // baseInfo.StandardsId = dsc.ItemStandardsId;
- baseInfo.ProductStd = dsc.ItemStandardsCode;
- baseInfo.ProductStdId = dsc.ItemStandardsId;
- baseInfo.SendDept = UserInfo.GetDepartment();
- baseInfo.SuppName = dsm.SuppName;
- baseInfo.ArriveStationTime = ((DateTime)dsm.PlanedDeliveryDate).ToString("yyyy/MM/dd");
- baseInfo.CheckCount = "0";
- baseInfo.Weight = txt_QtyHY.Text.Trim();
- baseInfo.MicDesc = v_Mic_desc;
- baseInfo.Mic = v_Mic;
- baseInfo.IsFg ="0";
- baseInfo.ConsignDept = UserInfo.GetDepartment();
- baseInfo.ConsignName = UserInfo.GetUserName();
- baseInfo.FilePosition = "Pms/ZBS/" + dsc.DeliverySubLineSqe + "/";
- baseInfo.ConsignTime = DateTime.Now;
- baseInfo.DataType = "0";//默认供应部
- baseInfo.Validflag = "1";
- baseInfo.WeightUnit = dsc.WeightUnit;
- baseInfo.GetSampleStdDesc = txt_GETSAMPLESTDDETAIL.Text.Trim(); ;
- baseInfo.GetSampleStd = txt_GETSAMPLESTD.Text.Trim();
- baseInfo.ZbsIsExist = "1";
- baseInfo.IsJudge = "0";
- baseInfo.IsUpload = "0";
- baseInfo.ItemCode = dsc.ItemCode;
- baseInfo.ItemName = dsc.ItemName;
- baseInfo.OrderNo = dsc.OrderId;
- if (txt_judgeTypeHY.SelectedIndex == -1)
- {
- MessageUtil.ShowTips("请选择委托类型");
- txt_judgeTypeHY.Focus();
- return;
- }
- baseInfo.JudgeTypeCode = txt_judgeTypeHY.Value.ToString().Trim();
- baseInfo.JudgeType = txt_judgeTypeHY.Text.Trim();
- //检验项目
- foreach (UltraGridRow row in ultraGrid3.Rows)
- {
- CheckconsignDetail detail = new CheckconsignDetail();
- String strBatchNo = String.IsNullOrEmpty(dsc.BatchNo) ? dsc.NoticeId : dsc.BatchNo;
- String strMatCode = row.GetCellValue("MATCODE").ToString().Trim();
- String strMatName = row.GetCellValue("MATNAME").ToString().Trim();
- String strRemark = row.GetCellValue("REMARK").ToString().Trim();
- String StdminSign = row.GetCellValue("STDMINSIGN").ToString();
- String Stdmin = row.GetCellValue("STDMIN").ToString();
- String Stdmax = row.GetCellValue("STDMAX").ToString();
- String StdmaxSign = row.GetCellValue("STDMAXSIGN").ToString();
- //DET.CheckCycle = ur.Cells["CHECKCYCLE"].Text.Trim();
- String JudgeType = row.GetCellValue("JUDGETYPECODE").ToString();
- String JudgeTYpeCode = row.Cells["JUDGETYPECODE"].Text.Trim();
- //String strZbsValue = row.GetCellValue("ZBSVALUE").ToString().Trim();
- detail.BatchNo = strBatchNo;
- detail.MatCode = strMatCode;
- detail.MatName = strMatName;
- detail.Stdmax=
- detail.Flag = "0";//待发送
- detail.Remark = strRemark;
- detail.Stdmax = Stdmax;
- detail.StdmaxSign = StdmaxSign;
- detail.Stdmin = Stdmin;
- detail.StdminSign = StdminSign;
- detail.JudgeType = JudgeType;
- detail.JudgeTypeCode = JudgeTYpeCode;
- //detail.ZbsValue = strZbsValue;
- listDetail.Add(detail);
- }
- if (listDetail.Count <= 0)
- {
- MessageUtil.ShowTips("未维护检验项目,请维护检验基础信息或者新增检验项目");
- return;
- }
- if (MessageUtil.ShowYesNoAndQuestion("确定为物料:" + dsc.ItemCode + "新增检验委托?") != DialogResult.Yes)
- {
- return;
- }
- re = this.execute<CoreResult>("com.hnshituo.pur.ck.service.CheckconsignDetailService", "insert_detail1", new object[] { baseInfo, listDetail, listSubC });
- if (re.Resultcode == 0)
- {
- MessageUtil.ShowTips("操作成功,新增检验单:" + re.Resultmsg);
- //重新加载送货单行
- doQuerySubLineByList(list1);
- CkClassCommon.doActiveSelRow(ultraGrid2, "deliverySubLineSqe", listSubC[0].DeliverySubLineSqe);
- //重新加载检验项目
- ExcDeliverySubC dsc1 = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { listSubC[0].DeliverySubLineSqe });
- if (!String.IsNullOrEmpty(re.Resultmsg))
- {
- dataTable4.Clear();
- querySampleList(dsc1.CheckNo);
- }
- }
- else
- {
- MessageUtil.ShowTips("操作失败:" + re.Resultmsg);
- }
- }
- #endregion
- #region 公共用函数
- private bool testSubC(string strDeliverySubLineSqe)
- {
- ExcDeliverySubC dsc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { strDeliverySubLineSqe });
- if (dsc == null)
- {
- MessageUtil.ShowTips("未发现送货单行:" + strDeliverySubLineSqe + "信息记录,可能已被删除,或请刷新界面重试");
- return false;
- }
- if (dsc.Validflag != "1")
- {
- MessageUtil.ShowTips("送货单行:" + strDeliverySubLineSqe + "信息记录可能已被删除,或请刷新界面重试");
- return false;
- }
- if (!String.IsNullOrEmpty(dsc.CheckNo))
- {
- MessageUtil.ShowTips("送货单行:" + strDeliverySubLineSqe + "已生成检化验委托,无需重复操作!");
- return false;
- }
- return true;
- }
- //按照送货单集合查送货单
- private void doQuerySubLineByList(ArrayList list)
- {
- clearSampleTabHY();
- dataTable2.Clear();
- dataTable4.Clear();
- dataSet3.Clear();
- dataSet4.Clear();
- //this.Cursor = Cursors.WaitCursor;
- ExcDeliverySubC EdSc = new ExcDeliverySubC();
- EdSc.Col = (string[])list.ToArray(typeof(string));
- EdSc.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "Query_C", new object[] { EdSc });
- GridHelper.CopyDataToDatatable(dt, dataTable2, true);
- for (int i = 0; i < dataTable2.Rows.Count; i++)
- {
- if (dataTable2.Rows[i]["shipQty"] == DBNull.Value)
- {
- dataTable2.Rows[i]["shipQty"] = dataTable2.Rows[i]["QTY"];
- }
- else
- {
- if (Convert.ToDouble(dataTable2.Rows[i]["shipQty"].ToString().Trim()) <= 0)
- {
- dataTable2.Rows[i]["shipQty"] = dataTable2.Rows[i]["QTY"];
- }
- }
- }
- GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid2, new UltraGridColumn[] { ultraGrid2.DisplayLayout.Bands[0].Columns["checkMsg"], ultraGrid2.DisplayLayout.Bands[0].Columns["CHK"] });
- }
- //查询送货单行信息
- private void doQuerySubLine(String strDeliverySubId)
- {
- if (String.IsNullOrEmpty(strDeliverySubId))
- {
- MessageUtil.ShowTips("送货单号为空");
- }
- clearSampleTabHY();
- dataTable2.Clear();
- dataTable4.Clear();
- this.Cursor = Cursors.WaitCursor;
- ExcDeliverySubC EdSc = new ExcDeliverySubC();
- EdSc.DeliverySubId = strDeliverySubId;
- EdSc.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "Query_C", new object[] { EdSc });
- GridHelper.CopyDataToDatatable(dt, dataTable2, true);
- GridHelper.RefreshAndAutoSizeExceptColumns(ultraGrid2, new UltraGridColumn[] { ultraGrid2.DisplayLayout.Bands[0].Columns["checkMsg"] });
- }
- //读取待检检验项目
- private void queryItemList(ExcDeliverySubC dsc)
- {
- if (dsc.MeteringFlag == "1")
- {
- OrderCStdBaseinfo baseInfo = new OrderCStdBaseinfo();
- baseInfo.OrderLineSqe = dsc.OrderLineSqe;
- baseInfo.Validflag = "1";
- List<OrderCStdBaseinfo> list_baseInfo = this.execute<List<OrderCStdBaseinfo>>("com.hnshituo.pur.order.service.OrderCStdBaseinfoService", "find", new object[] { baseInfo, 0, 0 });
- if (list_baseInfo != null && list_baseInfo.Count > 0)
- {
- String mic = list_baseInfo[0].Mic;
- String micDesc = list_baseInfo[0].MicDesc;
- String std = list_baseInfo[0].StandardsCode;
- txt_std.Text = std;
- txt_statusHY.Text = "待发送";
- v_Mic = mic;
- v_Mic_desc = micDesc;
- txt_GETSAMPLESTD.Text = list_baseInfo[0].GetSampleStd;
- txt_GETSAMPLESTDDETAIL.Text = list_baseInfo[0].GetSampleStdDesc;
- txt_UOM.Text = dsc.ItemUom;
- //开始查询检验项目明细
- OrderCStdDetail detail = new OrderCStdDetail();
- detail.OrderLineSqe = dsc.OrderLineSqe;
- detail.Validflag = "1";
- DataTable list_detail = this.execute<DataTable>("com.hnshituo.pur.order.service.OrderCStdDetailService", "find", new object[] { detail, 0, 0 });
- GridHelper.CopyDataToDatatable(list_detail, dataTable4, true);
- }
- else
- {
- txt_std.Text = "";
- txt_statusHY.Text = "请维护检验标准";
- }
- }
- else
- {
- txt_std.Text = "";
- txt_statusHY.Text = "";
- }
- }
- //读取已生成检验鲜项目从表数据
- private void querySampleList(String strCheckNo)
- {
- try
- {
- CheckconsignBaseinfo tempbaseInfo = new CheckconsignBaseinfo();
- tempbaseInfo.CheckNo = strCheckNo;
- tempbaseInfo.Validflag = "1";
- List<CheckconsignBaseinfo> ListBaseInfo = this.execute<List<CheckconsignBaseinfo>>("com.hnshituo.pur.ck.service.CheckconsignBaseinfoService", "find", new object[] { tempbaseInfo,0,0});
- if (ListBaseInfo.Count() <= 0)
- {
- txt_statusHY.Text = "已作废";
- }
- else
- {
- CheckconsignBaseinfo baseInfo = ListBaseInfo[0];
- txt_statusHY.Text = "已发送";
- txt_std.Text = baseInfo.StandardsCode;
- v_Mic = baseInfo.Mic;
- v_Mic_desc = baseInfo.MicDesc;
- txt_GETSAMPLESTD.Text = baseInfo.GetSampleStd;
- txt_GETSAMPLESTDDETAIL.Text = baseInfo.GetSampleStdDesc;
- CheckconsignDetail detail = new CheckconsignDetail();
- detail.CheckNo = strCheckNo;
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.ck.service.CheckconsignDetailService", "find", new object[] { detail,0,0});
- GridHelper.CopyDataToDatatable(dt, dataTable4, true);
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("查询检验项目失败:" + ex.Message);
- }
- }
- //清空jhy编辑区
- private void clearSampleTabHY()
- {
- txt_std.Clear();
- txt_carNumHY.Clear();
- txt_QtyHY.Clear();
- txt_CheckNo.Clear();
- ck_pcFlag.Checked = false;
- ck_pcFlag.Enabled = true;
- txt_statusHY.Clear();
- v_Mic="";
- v_Mic_desc="";
- dt_addItem.Clear();
- txt_UOM.Clear();
- txt_GETSAMPLESTD.Clear();
- txt_GETSAMPLESTDDETAIL.Clear();
- txt_addItemHY.Clear();
- txt_addItemRemark.Clear();
- dt_addItem.Clear();
- }
- /// <summary>
- /// 校验检验号是否可以作废
- /// </summary>
- /// <param name="strCheckNo"></param>
- /// <returns></returns>
- private bool testSampleNo(string strCheckNo)
- {
- CheckconsignDetail detail = new CheckconsignDetail();
- detail.CheckNo = strCheckNo;
- List<CheckconsignDetail> list = this.execute<List<CheckconsignDetail>>("com.hnshituo.pur.ck.service.CheckconsignDetailService", "find", new object[] { detail, 0, 0 });
- if (list != null)
- {
- if (list.Count > 0)
- {
- foreach (CheckconsignDetail det in list)
- {
- if (det.Flag != "-1")
- {
- MessageUtil.ShowTips("该检化验项委托可能已发送,不能作废!");
- return false;
- }
- }
- }
- else
- {
- MessageUtil.ShowTips("未发现检化验号:" + strCheckNo + "检验项明细!");
- return false;
- }
- }
- else
- {
- MessageUtil.ShowTips("未发现检化验号:" + strCheckNo + "检验项明细!");
- return false;
- }
- return true;
- }
- /// <summary>
- /// 初检或者取消初检校验
- /// </summary>
- /// <param name="deliverySubId"></param>
- /// <param name="p"></param>
- /// <returns></returns>
- private bool testDeliveryStatus(String deliverySubId, int p,String meterFlag,String PcFlag)
- {
- if (String.IsNullOrEmpty(deliverySubId))
- {
- MessageUtil.ShowTips("送货单行号为空,无法校验数据有效性");
- return false;
- }
- ExcDeliverySubC subc = this.execute<ExcDeliverySubC>("com.hnshituo.pur.ck.service.ExcDeliverySubCService", "findById", new object[] { deliverySubId });
- if (subc == null)
- {
- MessageUtil.ShowTips("未发现送货单行:" + deliverySubId + " 信息记录,可能已作废,或请刷新界面重试");
- return false;
- }
- if (subc.Validflag != "1")
- {
- MessageUtil.ShowTips("未发现送货单行:" + deliverySubId + " 信息记录,可能已作废,或请刷新界面重试");
- return false;
- }
- String testStatus = subc.Status;
- if (String.IsNullOrEmpty(subc.DeliverySubId))
- {
- MessageUtil.ShowTips("未找到送货单行的头信息");
- return false;
- }
- ExcDeliverySubM subM = this.execute<ExcDeliverySubM>("com.hnshituo.pur.ck.service.ExcDeliverySubMService", "findById", new object[] { subc.DeliverySubId });
- if (subM == null)
- {
- MessageUtil.ShowTips("未发现送货单:" + subc.DeliverySubId + " 信息记录,可能已作废,或请刷新界面重试");
- return false;
- }
- if (subM.Validflag != "1")
- {
- MessageUtil.ShowTips("未发现送货单:" + subc.DeliverySubId + " 信息记录,可能已作废,或请刷新界面重试");
- return false;
- }
- if (subM.Status != "1")
- {
- MessageUtil.ShowTips("送货单:" + subc.DeliverySubId + " 可能已经收货完成,或请刷新界面重试");
- return false;
- }
- //完成初检校验
- if (p == 1)
- {
- if (testStatus != "1")
- {
- MessageUtil.ShowTips("送货单行:" + deliverySubId + " 可能已经初检完成,或请刷新界面重试");
- return false;
- }
- if (meterFlag == "1")
- {
- if (subc.Ismeter == "0")
- {
- MessageUtil.ShowTips("物料:" + subc .ItemName+ " 为计重物料,请先计量");
- return false;
- }
- }
- if (PcFlag == "1")
- {
- if (String.IsNullOrEmpty(subc.CheckNo))
- {
- MessageUtil.ShowTips("物料:" + subc.ItemName + " 为检化验物料,请生成检化验委托并做好取样和检验准备");
- return false;
- }
- }
- }
- //取消初检校验
- else if (p == 2)
- {
- if (testStatus != "2" && testStatus != "3")
- {
- MessageUtil.ShowTips("送货单行:" + deliverySubId + " 可能还未完成初检或已经(待检)入库,或请刷新界面重试");
- return false;
- }
- }
- else
- {
- MessageUtil.ShowTips("未知参数:" + p);
- return false;
- }
- return true;
- }
- #endregion
- #region 新增检验项处理
- private void btn_add_item_Click(object sender, EventArgs e)
- {
- if (dt_addItem==null||dt_addItem.Rows.Count <= 0)
- {
- MessageUtil.ShowTips("请选择新增检验项目");
- return;
- }
- if (dt_addItem.Rows.Count > 0)
- {
- dt_addItem.Columns.Add("remark", typeof(string));
- dt_addItem.Columns.Add("judgeType", typeof(string));
-
- }
- foreach (DataRow row in dt_addItem.Rows)
- {
- row["remark"] ="[新增项]"+txt_addItemRemark.Text.ToString();
- row["judgeType"] = txt_judgeTypeHY.Value.ToString().Trim();
- }
- GridHelper.CopyDataToDatatable(dt_addItem, dataTable4, false);
- GridHelper.RefreshAndAutoSize(ultraGrid3);
- txt_addItemHY.Clear();
- txt_addItemRemark.Clear();
- dt_addItem.Clear();
- }
- private void txt_addItemHY_EditorButtonClick(object sender, Infragistics.Win.UltraWinEditors.EditorButtonEventArgs e)
- {
- WinMatItemsSelect frm = new WinMatItemsSelect(this.ob);
- frm.ShowDialog();
- dt_addItem = frm.DtSelectItems;
- if (dt_addItem == null)
- {
- return;
- }
- StringBuilder itemCol = new StringBuilder("");
- foreach(DataRow row in dt_addItem.Rows)
- {
- //row["remark"] ="[新增项]"+txt_addItemRemark.Text.ToString();
- String strItemName = row["MATNAME"].ToString();
- if (!String.IsNullOrEmpty(strItemName))
- {
- if (itemCol.Length >=1)
- {
- itemCol.Append(";").Append(strItemName);
- }
- else
- {
- itemCol.Append(strItemName);
- }
- }
- }
- txt_addItemHY.Text = itemCol.ToString();
- }
- private void btn_deleteItem_Click(object sender, EventArgs e)
- {
- ultraGrid3.UpdateData();
- if (ultraGrid3.ActiveRow == null)
- {
- MessageUtil.ShowTips("请选择检验项目进行删除");
- return;
- }
- UltraGridRow uge=ultraGrid3.ActiveRow;
- if (String.IsNullOrEmpty(uge.GetCellValue("flag").ToString().Trim()))
- {
- uge.Delete();
- }
- else
- {
- MessageUtil.ShowTips("非新增项不允许删除");
- return;
- }
- }
- #endregion
- #region 附件处理
- private void craftImg_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- try
- {
- UltraGridRow row = ultraGrid4.ActiveRow;
- string filePathOld = row.GetValue("certPathOld");
- if (e.Button.Key.ToLower().Equals("select"))
- {
- FrmPopFileShow down = new FrmPopFileShow(this.ob, filePathOld);
- down.DeleteButton.Visible = false;
- down.ShowDialog();
- //String path = Environment.CurrentDirectory + "\\Tmp\\" + filePathOld;
- // System.Diagnostics.Process.Start(path);
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("操作失败:" + ex);
- }
- }
- private void txt_certPath_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- try
- {
- if (e.Button.Key.ToLower().Equals("insert"))
- {
- OpenFileDialog file = new OpenFileDialog();
- file.Multiselect = false;
- DialogResult drStat;
- drStat = file.ShowDialog();
- if (drStat == DialogResult.OK)
- {
- fileName = file.FileName;
- string filena = System.IO.Path.GetFileName(fileName);
- txt_certPath.Text = filena;
- }
- }
- }
- catch (Exception ex)
- {
- MessageUtil.ShowTips("操作失败:" + ex);
- }
- }
- //上传按钮
- private void btn_submitAppend_Click(object sender, EventArgs e)
- {
- if (ultraGrid2.ActiveRow == null)
- {
- MessageUtil.ShowTips("未选择送货单行号");
- return;
- }
- UltraGridRow uge = ultraGrid2.ActiveRow;
- string strDeliverySubLineSqe = uge.Cells["DELIVERYSUBLINESQE"].Value.ToString();//送货通知单行号
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("送货单号为空");
- return;
- }
- //判断是否可以上传
- //if (testStatus(strtaskId, 0) == false)
- //{
- // return;
- //}
- String filena = txt_certPath.Text.ToString().Trim();
- if (String.IsNullOrEmpty(filena) || String.IsNullOrEmpty(fileName))
- {
- MessageUtil.ShowTips("请选择待上传文件");
- return;
- }
- OrderAppend sat = new OrderAppend();
- sat.OrderId = strDeliverySubLineSqe;
- String filePathNew = "Pms/ZBS/" + strDeliverySubLineSqe + "/";
- sat.CertPath = filena;
- sat.CertPathOld = filePathNew + filena;
- sat.CreateUserid = UserInfo.GetUserID();
- sat.CreateName = UserInfo.GetUserName();
- sat.CreateTime = DateTime.Now;
- sat.Validflag = "1";
- sat.CertDesc = txt_CERTDESC.Text.Trim();
- if (GetCraftFileCraftNoCnt(filena, strDeliverySubLineSqe) > 0)
- {
- MessageUtil.ShowTips("送货单行已存在该附件文件:" + filena);
- return;
- }
- List<FileBean> list = new List<FileBean>();
- FileBean bean = new FileBean();
- bean = new FileBean();
- bean.setFileName(filena);
- bean.setPathName(filePathNew);
- bean.setFile(FileHelper.FileToArray(fileName));
- list.Add(bean);
- bool isSuccess = Core.Mes.Client.Comm.Server.FileHelper.Upload(list);
- if (isSuccess)
- {
- //开始写数据库
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.order.service.OrderAppendService", "insert_append", new object[] { sat });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("上传失败:" + crt.Resultmsg);
- }
- else
- {
- MessageUtil.ShowTips("上传成功");
- ClearTab5();
- }
- }
- else
- {
- MessageBox.Show("上传失败");
- }
- //刷新界面并激活当前行
- Relocate(sat);
- }
-
- private void Relocate(OrderAppend sat)
- {
- getOrderAppend(sat.OrderId, sat.CertPath);
- }
- private void getOrderAppend(string p1, string p2)
- {
- dataTable6.Clear();
- OrderAppend append = new OrderAppend();
- append.OrderId = p1;
- append.Validflag = "1";
- DataTable dt = this.execute<DataTable>("com.hnshituo.pur.order.service.OrderAppendService", "find", new object[] { append, 0, 0 });
- GridHelper.CopyDataToDatatable(dt, dataTable6, true);
- GridHelper.RefreshAndAutoSize(ultraGrid4);
- if (!String.IsNullOrEmpty(p2))
- {
- ConfigureClassCommon.doActiveSelRow(ultraGrid4, "CERTPATH", p2);
- }
- }
- /// <summary>
- /// 判断是否之前已提交相同的文件
- /// </summary>
- /// <param name="craftNo"></param>
- /// <returns></returns>
- private int GetCraftFileCraftNoCnt(string CERT_PATH, string orderId)
- {
- OrderAppend sat = new OrderAppend();
- sat.CertPath = CERT_PATH;
- sat.OrderId = orderId;
- sat.Validflag = "1";
- int dt = this.execute<int>("com.hnshituo.pur.order.service.OrderAppendService", "count", new object[] { sat });
- return dt;
- }
- /// <summary>
- /// 清空文件上传编辑区
- /// </summary>
- private void ClearTab5()
- {
- txt_certPath.Clear();
- txt_CERTDESC.Clear();
- fileName = "";
- }
- /// <summary>
- /// 删除文件
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btn_deleteAppend_Click(object sender, EventArgs e)
- {
- UltraGridRow uge = ultraGrid2.ActiveRow;
- if (uge == null)
- {
- MessageUtil.ShowTips("请选择送货单行!");
- return;
- }
- string strDeliverySubLineSqe = uge.Cells["DELIVERYSUBLINESQE"].Value.ToString();//送货通知单行号
- if (String.IsNullOrEmpty(strDeliverySubLineSqe))
- {
- MessageUtil.ShowTips("该送货单行编号为空!");
- return;
- }
- UltraGridRow rowAppend = ultraGrid4.ActiveRow;
- if (rowAppend == null)
- {
- MessageUtil.ShowTips("请选择需删除的附件!");
- return;
- }
- String strAppendID = rowAppend.Cells["ID"].Value.ToString().Trim();
- String strcertPath = rowAppend.Cells["CERTPATH"].Value.ToString().Trim();
- String strCertPathOld = rowAppend.Cells["CERTPATHOLD"].Value.ToString().Trim();
- if (String.IsNullOrEmpty(strAppendID))
- {
- MessageUtil.ShowTips("该送货单行附件编号为空!");
- return;
- }
- if (String.IsNullOrEmpty(strCertPathOld))
- {
- MessageUtil.ShowTips("未获取到送货单行附件地址信息!");
- return;
- }
- //验证送货单是否可以增删改
- if (testOrderAppendStatus(strAppendID, 1) == false)
- {
- return;
- }
- OrderAppend append = new OrderAppend();
- append.Id = strAppendID;
- append.Validflag = "0";
- append.DeleteName = UserInfo.GetUserName();
- append.DeleteTime = DateTime.Now;
- append.DeleteUserid = UserInfo.GetUserID();
- if (MessageUtil.ShowYesNoAndQuestion("确定删除附件:" + strcertPath + "?") != DialogResult.Yes)
- {
- return;
- }
- CoreResult crt = this.execute<CoreResult>("com.hnshituo.pur.order.service.OrderAppendService", "delete_append", new object[] { append });
- if (crt.Resultcode != 0)
- {
- MessageUtil.ShowTips("删除失败!" + crt.Resultmsg);
- return;
- }
- else
- {
- bool isSuccess = Core.Mes.Client.Comm.Server.FileHelper.Delete(strCertPathOld);
- if (isSuccess)
- {
- MessageUtil.ShowTips("删除成功");
- }
- else
- {
- MessageBox.Show("删除成功");
- }
- }
- getOrderAppend(strDeliverySubLineSqe, "");
- }
- /// <summary>
- /// 验证合同条款输入数据的有效性
- /// </summary>
- /// <returns></returns>
- private bool testOrderAppendStatus(String strId, int p)// 验证合同附件
- {
- OrderAppend append = this.execute<OrderAppend>("com.hnshituo.pur.order.service.OrderAppendService", "findById", new object[] { strId });
- if (append == null)
- {
- MessageUtil.ShowTips("未发现附件:" + strId + "信息记录,可能已作废");
- return false;
- }
- if (append.Validflag != "1")
- {
- MessageUtil.ShowTips("附件:" + strId + "信息记录可能已作废");
- return false;
- }
- if (append.CreateUserid != UserInfo.GetUserID())
- {
- MessageUtil.ShowTips("非本人上传附件无权限进行增删改");
- return false;
- }
- if (p == 1)
- {
- }
- else
- {
- MessageUtil.ShowTips("未知参数:" + p + "");
- return false;
- }
- return true;
- }
- #endregion
- }
- }
|