| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431 |
- using Core.Mes.Client.Comm.Control;
- using Core.Mes.Client.Comm.Server;
- using Core.Mes.Client.Comm.Tool;
- using Core.StlMes.Client.LgResMgt.Mcms.entity;
- using CoreFS.CA06;
- using Infragistics.Win;
- using Infragistics.Win.Misc;
- using Infragistics.Win.UltraWinEditors;
- using Infragistics.Win.UltraWinGrid;
- using Infragistics.Win.UltraWinListView;
- using Infragistics.Win.UltraWinTabControl;
- using Newtonsoft.Json;
- using Newtonsoft.Json.Serialization;
- using NPOI.HSSF.UserModel;
- using NPOI.SS.Formula.Functions;
- using NPOI.SS.UserModel;
- using NPOI.SS.Util;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Diagnostics;
- using System.Drawing;
- using System.IO;
- using System.Linq;
- using System.Timers;
- using System.Windows.Forms;
- using System.Xml.Linq;
- using BorderStyle = NPOI.SS.UserModel.BorderStyle;
- using HorizontalAlignment = NPOI.SS.UserModel.HorizontalAlignment;
- using Timer = System.Timers.Timer;
- namespace Core.StlMes.Client.LgResMgt.Mcms
- {
- public partial class frmLocalTruckScale : FrmBase
- {
- private static readonly string _path = Environment.CurrentDirectory + "\\data\\SerialPort.xml";
- private readonly Timer timer = new Timer();
- private List<CmmInputRecordEntity> _cmmInputRecordEntities;
- private frmMessage _frmMessage;
- private List<CmmRecordTemplateEntity> _templateList;
- private bool canUpdateWt;
- private CmmPoundBaseEntity cmmPoundBase;
- private iCommunication communication;
- private List<CommunicationEntity> CommunicationEntitys = new List<CommunicationEntity>();
- private SerialPortEntity defultPortEntity;
- private bool isLoading = true;
- private List<CmmPoundBaseEntity> poundInfos;
- private Log l = Log.GetInstance();
- public frmLocalTruckScale()
- {
- InitializeComponent();
- IsLoadUserView = true;
- timer.Elapsed += timer_Elapsed;
- timer.Interval = 1*60*1000;
- }
- private void timer_Elapsed(object sender, ElapsedEventArgs e)
- {
- try
- {
- CurrentGrid.SafeRefreshControl(() =>
- {
- var dic = new Dictionary<string, object>();
- if (!string.IsNullOrWhiteSpace(cboPoundList.Text))
- dic.Add("poundNo", cboPoundList.Text);
- dic.Add("validflag", new List<string> {"1"});
- dic.Add("effRemaind", "1");
- List<CmmWeightRecordEntity> list = EntityHelper.GetData<CmmWeightRecordEntity>(
- "com.steering.Mcms.RecordServer.doQueryRecord",
- new object[] {dic},
- ob);
- if ((list != null) && list.Any())
- foreach (
- var ultraGridRow in
- CurrentGrid.Rows.Where(
- p => list.Any(q => q.RecordNo == p.Cells["RecordNo"].Value.ToString2())))
- ultraGridRow.Cells["RecordDate"].Appearance.BackColor = Color.Red;
- });
- GC.Collect();
- }
- catch (Exception)
- {
- }
- }
- protected override void OnLoad(EventArgs e)
- {
- base.OnLoad(e);
- tbFirstWt.Controls.OfType<UltraTabPageControl>()
- .SelectMany(p => p.Controls.OfType<MatInfo>())
- .ToList()
- .ForEach(p => p.ini(ob));
- tbOther.Controls.OfType<UltraTabPageControl>()
- .SelectMany(p => p.Controls.OfType<MatInfo>())
- .ToList()
- .ForEach(p => p.ini(ob));
- matInfo15.ini(ob);
- matInfo16.ini(ob);
- tbWt.Appearance.ForeColor = SystemColors.ControlText;
- ;
- tbFirstWt.Appearance.ForeColor = SystemColors.ControlText;
- ;
- tbScondWt.Appearance.ForeColor = SystemColors.ControlText;
- ;
- tbOther.Appearance.ForeColor = SystemColors.ControlText;
- ;
- defultPortEntity = new SerialPortEntity
- {
- StrBaudRate = XmlHelper.GetXmlData(_path, "StrBaudRate", "9600"),
- StrDataBits = XmlHelper.GetXmlData(_path, "StrDataBits", "8"),
- StrParity = XmlHelper.GetXmlData(_path, "StrParity", "NONE"),
- StrStopBits = XmlHelper.GetXmlData(_path, "StrStopBits", "ONE"),
- PortName = XmlHelper.GetXmlData(_path, "PortName", "COM1")
- };
- poundInfos = EntityHelper.GetData<CmmPoundBaseEntity>(
- "com.steering.Mcms.PoundBaseServer.getPoudInfo",
- new object[] {ValidDataPurviewIds},
- ob);
- var data = XmlHelper.GetXElement(_path, "CommunicationInfo");
- CommunicationEntitys = new List<CommunicationEntity>();
- if (data != null)
- foreach (var xElement in data.Elements())
- {
- var temp = new CommunicationEntity();
- temp.PoundNo = xElement.Name.ToString3().Replace("POUND_", "");
- var type = XmlHelper.GetAttribute(xElement, "type", "1");
- if (type == "1")
- temp.Communication = new SerialPortEntity
- {
- StrBaudRate =
- XmlHelper.GetAttribute(xElement, "StrBaudRate",
- XmlHelper.GetXmlData(_path, "StrBaudRate", "9600")),
- StrDataBits =
- XmlHelper.GetAttribute(xElement, "StrDataBits",
- XmlHelper.GetXmlData(_path, "StrDataBits", "8")),
- StrParity =
- XmlHelper.GetAttribute(xElement, "StrParity",
- XmlHelper.GetXmlData(_path, "StrParity", "NONE")),
- StrStopBits =
- XmlHelper.GetAttribute(xElement, "StrStopBits",
- XmlHelper.GetXmlData(_path, "StrStopBits", "ONE")),
- PortName =
- XmlHelper.GetAttribute(xElement, "PortName",
- XmlHelper.GetXmlData(_path, "PortName", "COM1"))
- };
- else
- temp.Communication = new SocketClient
- {
- Ip = XmlHelper.GetAttribute(xElement, "Ip", ""),
- Port = XmlHelper.GetAttribute(xElement, "Port", "")
- };
- CommunicationEntitys.Add(temp);
- }
- CommunicationEntitys =
- poundInfos.Select(p =>
- {
- var entity = new CommunicationEntity { PoundNo = p.PoundNo};
- var tmplist = CommunicationEntitys.Where(q => q.PoundNo == p.PoundNo).ToList();
- if (tmplist.Any()) entity.Communication = tmplist[0].Communication;
- if (entity.Communication == null) entity.Communication = defultPortEntity;
- return entity;
- }
- ).ToList();
- List<CmmPoundBaseEntity> list = EntityHelper.GetData<CmmPoundBaseEntity>(
- "com.steering.Mcms.PoundBaseServer.getPoudInfo",
- new object[] {new string[] {}},
- ob);
- cboPoundList.DataSource = new List<string> {""}.Concat(list.Select(p => p.PoundNo)).ToList();
- RegStartTime.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd 07:00:00"));
- RegEndTime.Value = DateTime.Parse(DateTime.Now.AddDays(1).ToString("yyyy-MM-dd 07:00:00"));
- LoadRecord();
- /* var source = new AutoCompleteStringCollection();
- source.AddRange( _cmmInputRecordEntity.Where(p => p.RecordType == "1")
- .Select(p => p.RecordValue).ToArray());*/
-
- cboNo.DisplayMember = "PoundNo";
- cboNo.DataSource = poundInfos;
- cboNo.SelectedIndex = -1;
- cboNo.SelectedValueChanged += cboNo_SelectedValueChanged;
- var location = "";
- location = XmlHelper.GetXmlData(_path, "cboNo", "");
- if ("" == location)
- {
- if (cboNo.Items.Count > 0)
- {
- cboNo.SelectedIndex = 0;
- cboPoundList.Text = cboNo.Text;
- }
- }
- else
- {
- cboNo.Text = location;
- }
- LoadRecord();
- LoadTempate();
- }
- private void defultPortEntity_ReceiveData(object sender, object data, string message, DataType datatype,
- byte[] bdata)
- {
- ShowMessage(data, message, datatype);
- }
- private void LoadRecord()
- {
- var dic = new Dictionary<string, object>();
- dic.Add("recordType", new List<string> {"1"});
- List<CmmInputRecordEntity> datas = EntityHelper.GetData<CmmInputRecordEntity>(
- "com.steering.Mcms.InputRecordServer.doQuery",
- new object[] {dic},
- ob);
- txtCar2.DataSource = datas.Where(p => p.RecordType == "1")
- .Select(p => p.RecordValue).Distinct().ToList();
- txtCar2.Text = "";
- dic = new Dictionary<string, object>();
- dic.Add("recordType", new List<string> {"2", "7", "8", "9"});
- _cmmInputRecordEntities = EntityHelper.GetData<CmmInputRecordEntity>(
- "com.steering.Mcms.InputRecordServer.doQuery",
- new object[] {dic},
- ob);
- }
- private void utbConnect_Click(object sender, EventArgs e)
- {
- if (communication == null) return;
- if ((communication != null) && communication.Status)
- {
- communication.Stop();
- }
- else
- {
- communication.Start();
- XmlHelper.SetXmlData(_path, "cboNo", cmmPoundBase.PoundNo);
- if (communication is SerialPortEntity)
- {
- XmlHelper.SetXmlData(_path, "PortName", ((SerialPortEntity) communication).PortName);
- XmlHelper.SetXmlData(_path, "StrBaudRate", ((SerialPortEntity) communication).StrBaudRate);
- }
- }
- }
- private void utbMessage_Click(object sender, EventArgs e)
- {
- _frmMessage = new frmMessage();
- _frmMessage.Show();
- }
- private void ShowMessage(object data, string message, DataType dataType)
- {
- if (dataType == DataType.ReceiveData)
- {
- double wt;
- if (double.TryParse(data.ToString2(), out wt))
- lblWtNow.SafeRefreshControl(() => { lblWtNow.Text = (wt/100d).ToString("0.00") + "t"; });
- }
- else if (dataType == DataType.Open)
- {
- utbConnect.SafeRefreshControl(() => utbConnect.Appearance.ForeColor = Color.Red);
- lblMsg.SafeRefreshControl(
- () =>
- lblMsg.Text =
- communication.Status
- ? (communication is SerialPortEntity ? "已打开" : "已连接")
- : (communication is SerialPortEntity ? "已关闭" : "断开连接"));
- // cboNo.SafeRefreshControl(() => cboNo.Enabled = false);
- }
- else if (dataType == DataType.Close)
- {
- utbConnect.SafeRefreshControl(() => utbConnect.Appearance.ForeColor = Color.Lime);
- lblMsg.SafeRefreshControl(
- () =>
- lblMsg.Text =
- communication.Status
- ? (communication is SerialPortEntity ? "已打开" : "已连接")
- : (communication is SerialPortEntity ? "已关闭" : "断开连接"));
- }
- else if (dataType == DataType.Error)
- {
- MessageBox.Show(message);
- }
- else if (dataType == DataType.ClientReconnect)
- {
- lblMsg.SafeRefreshControl(() => lblMsg.Text = "网络异常,正在重连服务!");
- }
- lblStatus.SafeRefreshControl(() => lblStatus.Text = communication.ToString());
- if ((_frmMessage != null) && !_frmMessage.IsDisposed)
- _frmMessage.SafeShowMsg(message, dataType);
- else
- _frmMessage = null;
- }
- private void utbShowWt_Click(object sender, EventArgs e)
- {
- string.Format("当前重量{0}", lblWt.Text.Replace("t", "吨")).Speak();
- }
- private void lblWtNow_Click(object sender, EventArgs e)
- {
- /* var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.MatOutServer",
- MethodName = "DoTest",
- ServerParams = new object[]
- {
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- */
- lblWt.Text = lblWtNow.Text;
- if (CurrentGrid.ActiveRow != null)
- {
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if ((current == null) || ("" == current.CarNo)) return;
- if ((tbWt.ActiveTab != null) && (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null))
- if (tbScondWt.ActiveTab.Key == "3")
- {
- }
- else if (tbScondWt.ActiveTab.Key == "0")
- {
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) &&
- (tbOther.ActiveTab.Key == "205"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- ShowOutInfo(current.CarNo, wt - fwt);
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) &&
- (tbOther.ActiveTab.Key == "206"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- if (wt - fwt > 0)
- matInfo13.SetWt(wt - fwt);
- // ShowOutInfoGp(current.CarNo, wt - fwt);
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) &&
- (tbOther.ActiveTab.Key == "109"))
- {
- var matInfo = GetMatInfo();
- if (matInfo != null)
- {
- decimal wt, fwt;
- if (decimal.TryParse(lblWt.Text.Replace("t", ""), out wt) &&
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt))
- if (wt - fwt > 0)
- matInfo.SetWt(wt - fwt);
- }
- }
- }
- }
- private void utbShowCarNo_Click(object sender, EventArgs e)
- {
- if ((cbxCar1.SelectedIndex < 0) || string.IsNullOrWhiteSpace(txtCar2.Text)) return;
- string.Format(" {0}", cbxCar1.Text + txtCar2.Text).Speak();
- }
- private void chkGross_CheckedChanged(object sender, EventArgs e)
- {
- tbFirstWt.Visible = chkGross.Checked;
- utbSaveAsT.Visible = chkGross.Checked;
- }
- /// <summary>
- /// 一次称重保存
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void utbSave1_Click(object sender, EventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- if (string.IsNullOrWhiteSpace(txtCar2.Text) || string.IsNullOrWhiteSpace(cbxCar1.Text))
- {
- MessageBox.Show(@"未录入车牌号!");
- return;
- }
- decimal wt;
- if (!decimal.TryParse(lblWt.Text.Replace("t", ""), out wt) || (wt <= 0))
- {
- MessageBox.Show(@"重量异常!");
- return;
- }
- var cmmWeightRecord = new CmmWeightRecordEntityFull();
- if (chkGross.Checked)
- {
- var matInfo = tbFirstWt.ActiveTab.TabPage.Controls.OfType<MatInfo>().FirstOrDefault();
- if (matInfo != null) cmmWeightRecord = matInfo.GetData();
- }
- if ((cmmWeightRecord.RecordNumber == null) && (cmmWeightRecord.MatInfos != null) &&
- cmmWeightRecord.MatInfos.Any())
- {
- MessageBox.Show("支数不能为空!");
- return;
- }
- cmmWeightRecord.CarNo = cbxCar1.Text + txtCar2.Text.ToUpper().Trim();
- cmmWeightRecord.Recoder = UserInfo.GetUserName();
- cmmWeightRecord.RecordType = !chkGross.Checked ? "101" : tbFirstWt.ActiveTab.Key;
- cmmWeightRecord.WtType = chkGross.Checked ? "1" : "0";
- cmmWeightRecord.Validflag = "1";
- cmmWeightRecord.RecordWeight = wt;
- cmmWeightRecord.RecoderLocation = cmmPoundBase.PoundNo;
- cmmWeightRecord.MatType = chkGross.Checked ? tbFirstWt.ActiveTab.Text : "";
- //cmmWeightRecord.Memo = chkSteelCar.Checked ? "钢管" : "";
- if ("102" == cmmWeightRecord.RecordType)
- if ((cmmWeightRecord.RecordNumber == null) || (cmmWeightRecord.RecordNumber <= 0) ||
- (cmmWeightRecord.MatInfos == null) || !cmmWeightRecord.MatInfos.Any()
- || cmmWeightRecord.MatInfos.Any(p => (p.ActCount == null) || (p.ActCount <= 0)))
- {
- MessageBox.Show("支数不能为空!");
- return;
- }
- var list =
- cmmWeightRecordEntityBindingSource.DataSource as List<CmmWeightRecordEntity>;
- if ((list != null) && list.Any(p => p.CarNo == cmmWeightRecord.CarNo))
- if (MessageUtil.ShowYesNoAndQuestion("车牌已经存在皮重,是否继续保存皮重?") == DialogResult.No)
- return;
- var json = JsonConvert.SerializeObject(cmmWeightRecord, Formatting.None, new JsonSerializerSettings
- {ContractResolver = new CamelCasePropertyNamesContractResolver()});
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.LocalTruckScale",
- MethodName = "DoAdd",
- ServerParams = new object[]
- {
- "",
- json
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- if (ccp.ReturnInfo.ToString2().Contains("称重完成"))
- {
- ccp.ReturnInfo.ToString2().Speak();
- lblWt.Text = "0.000t";
- LoadRecord();
- Query();
- //ccp.ReturnObject;
- var matInfo = GetMatInfo();
- if (matInfo != null) matInfo.SetDefault(null);
- }
- else
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- }
- }
- /// <summary>
- /// 二次称重
- /// </summary>
- /// <param name="sender"></param>
- /// <param name="e"></param>
- private void btnSave2_Click(object sender, EventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- if (tbScondWt.ActiveTab == null) return;
- if (CurrentGrid.ActiveRow == null)
- {
- MessageBox.Show(@"请选择第一次称重记录");
- return;
- }
- decimal wt;
- if (!decimal.TryParse(lblWt.Text.Replace("t", ""), out wt) || (wt <= 0))
- {
- MessageBox.Show(@"重量异常!");
- return;
- }
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if (current == null) return;
- var key = GetKey();
- CmmWeightRecordEntityFull cmmWeightRecord;
- if ("207" == key)
- {
- cmmWeightRecord = new CmmWeightRecordEntityFull();
- cmmWeightRecord.WtType = "0";
- }
- else
- {
- var matInfo = GetMatInfo();
- if (matInfo == null) return;
- cmmWeightRecord = matInfo.GetData();
- cmmWeightRecord.WtType = "1";
- if ((cmmWeightRecord.RecordNumber == null) && (cmmWeightRecord.MatInfos != null) &&
- cmmWeightRecord.MatInfos.Any())
- {
- MessageBox.Show("数量不能为空!");
- return;
- }
- }
- var hookWtStr = "";
- if (key == "201")
- {
- if ((cmmWeightRecord.MatInfos == null) || !cmmWeightRecord.MatInfos.Any())
- {
- MessageBox.Show("无配送单信息!");
- return;
- }
- if (cmmWeightRecord.MatInfos.Any(p => p.ActWeight == null))
- {
- MessageBox.Show("有炉号没有钩子称重量!");
- return;
- }
- var hookWt = cmmWeightRecord.MatInfos.Select(p => (decimal) p.ActWeight).Sum();
- hookWtStr = hookWt.ToString();
- decimal NetWt;
- decimal wt2, wt1;
- if (decimal.TryParse(lblWt.Text.Replace("t", ""), out wt2) &&
- decimal.TryParse(current.RecordWeight.ToString3(), out wt1))
- {
- NetWt = wt2 - wt1;
- }
- else
- {
- MessageBox.Show("数据异常!");
- return;
- }
- if (NetWt <= 0)
- {
- MessageBox.Show("净重小于0!");
- return;
- }
- cmmWeightRecord.RealWt = NetWt;
- if (Math.Abs(NetWt - hookWt)*1000/NetWt >= 5)
- {
- var msg = " 净重与钩子称 误差超过千分之5";
- msg.Speak();
- if (
- MessageUtil.ShowYesNoAndQuestion(" 净重: " + NetWt + "t 钩子称重量: " + hookWt + "t 磅差 " +
- (NetWt - hookWt) + "t 误差超过千分之5, 请确认是否继续保存 ?") ==
- DialogResult.No)
- return;
- }
- }
- cmmWeightRecord.Recoder = UserInfo.GetUserName();
- cmmWeightRecord.RecordType = GetKey();
- cmmWeightRecord.Validflag = "2";
- cmmWeightRecord.RecordWeight = wt;
- cmmWeightRecord.RecoderLocation = cmmPoundBase.PoundNo;
- cmmWeightRecord.CarNo = current.CarNo;
- cmmWeightRecord.MatType = GetMatType();
- if (("208" == cmmWeightRecord.RecordType) &&
- ((cmmWeightRecord.MatInfos == null) || !cmmWeightRecord.MatInfos.Any()))
- {
- MessageBox.Show(@"无废品出库信息,无法保存!");
- return;
- }
- if (("201" == cmmWeightRecord.RecordType) &&
- ((cmmWeightRecord.MatInfos == null) || !cmmWeightRecord.MatInfos.Any()))
- {
- MessageBox.Show(@"无装车单信息,无法保存!");
- return;
- }
- var json = JsonConvert.SerializeObject(cmmWeightRecord, Formatting.None,
- new JsonSerializerSettings {ContractResolver = new CamelCasePropertyNamesContractResolver()});
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.LocalTruckScale",
- MethodName = "DoAdd",
- ServerParams = new object[]
- {
- current.RecordNo,
- hookWtStr,
- json
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- if (ccp.ReturnInfo.ToString2().Contains("称重完成"))
- {
- decimal wt2;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt2);
- lblWt.Text = "0.000t";
- var result = ccp.ReturnInfo.ToString2().Split('|');
- result[0].Speak();
- if (result.Length > 1)
- if ((key == "201") && (wt2 > 50) && (MessageUtil.ShowYesNoAndQuestion("称重完成! 毛重超过50吨, 是否继续打印磅单?") ==
- DialogResult.No))
- {
- }
- else
- {
- Print(result[1]);
- }
- LoadRecord();
- Query();
- Query2();
- //TODO 打印
- var matInfo = GetMatInfo();
- if (matInfo != null) matInfo.SetDefault(null);
- }
- else
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- }
- }
- private void Print(string resultNo, bool spilt = false)
- {
- var strurl =
- "http://172.16.2.145/WebReport/ReportServer?reportlet=" +
- (spilt ? "RepThCattyListCut" : "RepThCattyList") +
- ".cpt&RESULT_NO=" +
- resultNo;
- var fre = new FrmRepBrower(ob, strurl)
- {
- Size = new Size(900,
- 500)
- };
- fre.Show();
- }
- private void Print2(string resultNo, bool spilt = false)
- {
- var strurl =
- "http://172.16.2.145/WebReport/ReportServer?reportlet=" +
- (spilt ? "RepThCattyListCut" : "RepThCattyList") +
- ".cpt&RESULT_NO=" +
- resultNo;
- System.Diagnostics.Process.Start(strurl);
- //var fre = new FrmRepBrower(ob, strurl)
- //{
- // Size = new Size(900,
- // 500)
- //};
- //fre.Show();
- }
- private void frmLocalTruckScale_FormClosed(object sender, FormClosedEventArgs e)
- {
- if ((communication != null) && communication.Status)
- communication.Stop();
- timer.Stop();
- }
- private void Query()
- {
- var dic = new Dictionary<string, object>();
- if (!string.IsNullOrWhiteSpace(cboPoundList.Text))
- dic.Add("poundNo", cboPoundList.Text);
- dic.Add("validflag", new List<string> {"1"});
- cmmWeightRecordEntityBindingSource.DataSource = EntityHelper.GetData<CmmWeightRecordEntity>(
- "com.steering.Mcms.RecordServer.doQueryRecord",
- new object[] {dic},
- ob);
- Comm.RefreshAndAutoSize(CurrentGrid);
- }
- private void LoadTempate()
- {
- /* if (cmmPoundBase == null)
- return;
- */
- _templateList = EntityHelper.GetData<CmmRecordTemplateEntity>(
- "com.steering.Mcms.TemplateServer.doQueryTempate",
- new object[] {""},
- ob);
- tbFirstWt_SelectedTabChanged(null, null);
- }
- private void utbSaveAsT_Click(object sender, EventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- if (tbWt.ActiveTab == null) return;
- var matInfo = GetMatInfo();
- if (matInfo != null)
- {
- var cmmWeightRecord = matInfo.GetData();
- string projectName;
- using (var fractureInfo = new ProjectName("模板名"))
- {
- fractureInfo.ShowDialog();
- if (fractureInfo.DialogResult != DialogResult.OK) return;
- projectName = fractureInfo.ProjectNameStr;
- }
- var template = new CmmRecordTemplateEntity
- {
- CreateUser = UserInfo.GetUserName(),
- TemplateKey = GetKey(),
- TemplateLocation = cmmPoundBase.PoundNo,
- TemplateXml = cmmWeightRecord.ToString(),
- TemplateName = projectName
- };
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.TemplateServer",
- MethodName = "DoSaveTemplateNo",
- ServerParams = new object[]
- {
- JsonConvert.SerializeObject(template, Formatting.None, new JsonSerializerSettings
- {ContractResolver = new CamelCasePropertyNamesContractResolver()})
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("保存成功!"))
- LoadTempate();
- }
- }
- }
- private MatInfo GetMatInfo()
- {
- MatInfo matInfo = null;
- if (tbWt.ActiveTab == null) return null;
- if ((tbWt.ActiveTab.Key == "1") && (tbFirstWt.ActiveTab != null))
- matInfo = tbFirstWt.ActiveTab.TabPage.Controls.OfType<MatInfo>().FirstOrDefault();
- else if ((tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "1") &&
- (tbOther.ActiveTab != null))
- matInfo = tbOther.ActiveTab.TabPage.Controls.OfType<MatInfo>().FirstOrDefault();
- else if ((tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "3"))
- matInfo = matInfo15;
- else if ((tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "0"))
- matInfo = matInfo16;
- return matInfo;
- }
- private MatInfo GetMatInfoByKey(string key)
- {
- MatInfo matInfo = null;
- foreach (var ultraTab in tbFirstWt.Tabs)
- {
- var matinfo = ultraTab.TabPage.Controls.OfType<MatInfo>().Where(p => p.Key == key).ToList();
- if (matinfo.Any()) return matinfo[0];
- }
- foreach (var ultraTab in tbOther.Tabs)
- {
- var matinfo = ultraTab.TabPage.Controls.OfType<MatInfo>().Where(p => p.Key == key).ToList();
- if (matinfo.Any()) return matinfo[0];
- }
- if (key == "201") return matInfo16;
- return matInfo;
- }
- private void utbDelete_Click(object sender, EventArgs e)
- {
- var matInfo = GetMatInfo();
- if (matInfo != null) matInfo.DeleteRow();
- }
- private void utbClear_Click(object sender, EventArgs e)
- {
- var matInfo = GetMatInfo();
- if (matInfo != null) matInfo.Clear();
- }
- private void tbFirstWt_SelectedTabChanged(object sender, SelectedTabChangedEventArgs e)
- {
- LoadTem();
- var matInfo = GetMatInfo();
- if (matInfo != null) matInfo.Clear();
- if (CurrentGrid.ActiveRow != null)
- {
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if ((current == null) || ("" == current.CarNo)) return;
- if ((tbWt.ActiveTab != null) && (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null))
- if (tbScondWt.ActiveTab.Key == "3")
- {
- }
- else if (tbScondWt.ActiveTab.Key == "0")
- {
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) &&
- (tbOther.ActiveTab.Key == "205"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- ShowOutInfo(current.CarNo, wt - fwt);
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) &&
- (tbOther.ActiveTab.Key == "206"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- if (wt - fwt > 0)
- matInfo13.SetWt(wt - fwt);
- //ShowOutInfoGp(current.CarNo, wt - fwt);
- }
- else
- {
- if (matInfo != null)
- {
- decimal wt, fwt;
- if (decimal.TryParse(lblWt.Text.Replace("t", ""), out wt) &&
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt))
- if (wt - fwt > 0)
- matInfo.SetWt(wt - fwt);
- }
- }
- }
- utbSelect.Visible = (tbWt.ActiveTab != null) && (tbWt.ActiveTab.Key == "1") && (tbFirstWt.ActiveTab != null) &&
- (tbFirstWt.ActiveTab.Key == "102");
- utbSelect2.Visible = utbSelect.Visible;
- }
- private void LoadTem()
- {
- if (_templateList == null) return;
- var key = GetKey();
- if (string.IsNullOrWhiteSpace(key)) return;
- if ((_cmmInputRecordEntities != null) && _cmmInputRecordEntities.Any())
- {
- var matInfo = GetMatInfo();
- if (matInfo != null)
- matInfo.iniMatName(
- _cmmInputRecordEntities.Where(
- p => (p.RecordKey == key) || string.IsNullOrWhiteSpace(p.RecordKey)).ToList());
- }
- lvTemplate.Items.Clear();
- lvTemplate.Items.AddRange(_templateList.Where(p => CheckShowKey(p.TemplateKey, key))
- .Select(p =>
- {
- var
- temp =
- new UltraListViewItem(p.TemplateName, null, null) {Key = p.TemplateNo};
- try
- {
- temp.Tag =
- XmlHelper.FromXElement<CmmWeightRecordEntityFull>(XElement.Parse(p.TemplateXml));
- }
- catch (Exception)
- {
- // ignored
- }
- return temp;
- }
- ).
- ToArray()
- );
- }
- private string GetKey()
- {
- return tbWt.ActiveTab.Key == "1"
- ? (tbFirstWt.ActiveTab == null ? "" : tbFirstWt.ActiveTab.Key)
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "1") &&
- (tbOther.ActiveTab != null)
- ? tbOther.ActiveTab.Key
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "0")
- ? "201"
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) &&
- (tbScondWt.ActiveTab.Key == "2")
- ? "207"
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) &&
- (tbScondWt.ActiveTab.Key == "3")
- ? "208"
- : "";
- }
- private string GetMatType()
- {
- return tbWt.ActiveTab.Key == "1"
- ? ""
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "1") &&
- (tbOther.ActiveTab != null)
- ? tbOther.ActiveTab.Text
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) && (tbScondWt.ActiveTab.Key == "0")
- ? "钢管发运"
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) &&
- (tbScondWt.ActiveTab.Key == "2")
- ? ""
- : (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null) &&
- (tbScondWt.ActiveTab.Key == "3")
- ? "其它内转"
- : "";
- }
- private void lvTemplate_MouseClick(object sender, MouseEventArgs e)
- {
- var listView = sender as UltraListView;
- if (e.Button == MouseButtons.Right)
- {
- var itemAtPoint = lvTemplate.ItemFromPoint(e.Location);
- if (itemAtPoint != null)
- {
- lvTemplate.ContextMenuStrip = listViewMenuStrip;
- ISelectionManager selectionManager = listView;
- if (selectionManager != null) selectionManager.SelectItem(itemAtPoint, true);
- itemAtPoint.Activate();
- }
- }
- }
- private void deleteTemplate_Click(object sender, EventArgs e)
- {
- if (lvTemplate.ActiveItem == null) return;
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.TemplateServer",
- MethodName = "DoDeleteTemplate",
- ServerParams = new object[]
- {
- lvTemplate.ActiveItem.Key,
- UserInfo.GetUserName()
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("删除成功!"))
- LoadTempate();
- }
- }
- private void CurrentGrid_AfterRowActivate(object sender, EventArgs e)
- {
- CurrentGrid.ActiveRow.RowSelectorAppearance.BackColor = Color.LightGreen;
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if ((current == null) || ("" == current.CarNo)) return;
- if ((tbWt.ActiveTab != null) && (tbWt.ActiveTab.Key == "2") && (tbScondWt.ActiveTab != null))
- if (tbScondWt.ActiveTab.Key == "3")
- ShowWasteInfo(current.CarNo);
- else if (tbScondWt.ActiveTab.Key == "0")
- ShowLoadvehicleInfo(current.CarNo);
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) && (tbOther.ActiveTab.Key == "205"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- ShowOutInfo(current.CarNo, wt - fwt);
- }
- else if ((tbScondWt.ActiveTab.Key == "1") && (tbOther.ActiveTab != null) && (tbOther.ActiveTab.Key == "206"))
- {
- decimal wt, fwt;
- decimal.TryParse(lblWt.Text.Replace("t", ""), out wt);
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt);
- if (wt - fwt > 0)
- matInfo13.SetWt(wt - fwt);
- //ShowOutInfoGp(current.CarNo, wt - fwt);
- }
- else
- {
- var matInfo = GetMatInfo();
- if (matInfo != null)
- {
- decimal wt, fwt;
- if (decimal.TryParse(lblWt.Text.Replace("t", ""), out wt) &&
- decimal.TryParse(current.RecordWeight.ToString3(), out fwt))
- if (wt - fwt > 0)
- matInfo.SetWt(wt - fwt);
- }
- }
- }
- // 显示废品信息
- public void ShowWasteInfo(string carNo)
- {
- var cmmWeightRecordEntityFull = new CmmWeightRecordEntityFull();
- var dt = ServerHelper.GetData("com.steering.Mcms.MatOutServer.doQueryWasteInfo", new object[] {carNo}, ob);
- if ((dt != null) && (dt.Rows.Count > 0))
- {
- cmmWeightRecordEntityFull.ShippersName = dt.Rows[0]["STORAGE_NAME_FROM"].ToString2();
- cmmWeightRecordEntityFull.LoadvehicleNo = dt.Rows[0]["OUTSTOCK_DOC"].ToString2();
- cmmWeightRecordEntityFull.ReceiveName = dt.Rows[0]["STORAGE_NAME_TO"].ToString2();
- cmmWeightRecordEntityFull.RecordNumber = decimal.Parse(dt.Rows[0]["ACT_COUNT"].ToString3());
- cmmWeightRecordEntityFull.MatName = "废品管";
- foreach (DataRow dtcRow in dt.Rows)
- {
- var cmmWeightMatEntity = new CmmWeightMatEntity
- {
- Produccode = dtcRow["PRODUCCODE"].ToString2(),
- Producname = dtcRow["PRODUCNAME"].ToString2(),
- Gradecode = dtcRow["GRADECODE"].ToString2(),
- Gradename = dtcRow["GRADENAME"].ToString2(),
- Steelcode = dtcRow["STEELCODE"].ToString2(),
- Steelname = dtcRow["STEELNAME"].ToString2(),
- ActLenTemp = dtcRow["ACT_LEN_MIN"].ToString3() + "-" +
- dtcRow["ACT_LEN_MAX"].ToString3(),
- ActWeight = decimal.Parse(dtcRow["ACT_WEIGHT"].ToString3()),
- ActCount = decimal.Parse(dtcRow["ACT_COUNT"].ToString3()),
- JudgeStoveNo = dtcRow["JUDGE_STOVE_NO"].ToString2(),
- ActDimater = decimal.Parse(dtcRow["ACT_DIMATER"].ToString3()),
- ActHeight = decimal.Parse(dtcRow["ACT_HEIGHT"].ToString3())
- };
- cmmWeightRecordEntityFull.MatInfos.Add(cmmWeightMatEntity);
- }
- }
- matInfo15.SetDefault(cmmWeightRecordEntityFull);
- }
- //显示装车单信息
- public void ShowLoadvehicleInfo(string carNo)
- {
- var cmmWeightRecordEntityFull = new CmmWeightRecordEntityFull();
- var dt = ServerHelper.GetData("com.steering.Mcms.LoadVehicleServer.doQueryLoadvehicleInfo",
- new object[] {carNo}, ob);
- if ((dt != null) && (dt.Rows.Count > 0))
- {
- cmmWeightRecordEntityFull.ShippersName = dt.Rows[0]["BASENAME"].ToString2();
- cmmWeightRecordEntityFull.LoadvehicleNo = dt.Rows[0]["LOADVEHICLE_NO"].ToString2();
- cmmWeightRecordEntityFull.ReceiveName = dt.Rows[0]["RECEIV_NM"].ToString2();
- cmmWeightRecordEntityFull.RecordNumber = decimal.Parse(dt.Rows[0]["STACKING_PIECE"].ToString3());
- cmmWeightRecordEntityFull.ShippersName = dt.Rows[0]["BASENAME"].ToString2();
- cmmWeightRecordEntityFull.OrderName = dt.Rows[0]["CUSTOMER_NM"].ToString2();
- cmmWeightRecordEntityFull.MatName = "钢管";
- cmmWeightRecordEntityFull.MatInfos = new List<CmmWeightMatEntity>();
- var dtc = ServerHelper.GetData("com.steering.Mcms.LoadVehicleServer.doQueryLoadvehicleMatInfo",
- new object[] {cmmWeightRecordEntityFull.LoadvehicleNo}, ob);
- if ((dtc != null) && (dtc.Rows.Count > 0))
- foreach (DataRow dtcRow in dtc.Rows)
- {
- var cmmWeightMatEntity = new CmmWeightMatEntity
- {
- StorageNo = dtcRow["STORAGE_NO"].ToString2(),
- StorageName = dtcRow["STORAGE_NAME"].ToString2(),
- StoveNo = dtcRow["STOVE_NO"].ToString2(),
- OrderNo = dtcRow["ORDER_NO"].ToString2(),
- OrderSeq = dtcRow["ORDER_SEQ"].ToString2(),
- OrderSeqNo = dtcRow["ORDER_SEQ_NO"].ToString2(),
- ProOrderNo = dtcRow["ORDER_NO"].ToString2() + "/" +
- dtcRow["ORDER_SEQ"].ToString2(),
- Produccode = dtcRow["PRODUCCODE"].ToString2(),
- Producname = dtcRow["PRODUCNAME"].ToString2(),
- StdCode = dtcRow["STD_CODE"].ToString2(),
- StdName = dtcRow["STD_NAME"].ToString2(),
- Gradecode = dtcRow["GRADECODE"].ToString2(),
- Gradename = dtcRow["GRADENAME"].ToString2(),
- Steelcode = dtcRow["STEELCODE"].ToString2(),
- Steelname = dtcRow["STEELNAME"].ToString2(),
- SpecCode = dtcRow["SPEC_CODE"].ToString2(),
- SpecName = dtcRow["SPEC_NAME"].ToString2(),
- ModelCode = dtcRow["MODEL_CODE"].ToString2(),
- ModelDesc = dtcRow["MODEL_DESC"].ToString2(),
- ActLenMin = decimal.Parse(dtcRow["ACT_LEN_MIN"].ToString3()),
- ActLenMax = decimal.Parse(dtcRow["ACT_LEN_MAX"].ToString3()),
- ActLenTemp = dtcRow["ACT_LEN_MIN"].ToString3() + "-" +
- dtcRow["ACT_LEN_MAX"].ToString3(),
- ActCount = decimal.Parse(dtcRow["ACT_COUNT"].ToString3()),
- JudgeStoveNo = dtcRow["JUDGE_STOVE_NO"].ToString2(),
- ActDimater = decimal.Parse(dtcRow["ACT_DIMATER"].ToString3()),
- ActHeight = decimal.Parse(dtcRow["ACT_HEIGHT"].ToString3())
- };
- cmmWeightRecordEntityFull.MatInfos.Add(cmmWeightMatEntity);
- }
- try
- {
- var dth = ServerHelper.GetData("com.steering.Mcms.LoadVehicleServer.doQueryHook",
- new object[] {cmmWeightRecordEntityFull.LoadvehicleNo}, ob);
- if ((dth != null) && (dth.Rows.Count > 0))
- foreach (DataRow dthRow in dth.Rows)
- {
- var total = double.Parse(dthRow["HOOK_WEIGHT"].ToString3());
- double num = int.Parse(cmmWeightRecordEntityFull.MatInfos.Where(
- p => p.JudgeStoveNo == dthRow["JUDGE_STOVE_NO"].ToString2())
- .Select(p => p.ActCount)
- .Sum()
- .ToString3());
- var perWt = Math.Round(total/num, 3);
- var list = cmmWeightRecordEntityFull.MatInfos.Where(
- p => p.JudgeStoveNo == dthRow["JUDGE_STOVE_NO"].ToString2()).ToList();
- for (var i = 0; i < list.Count; i++)
- if (i == 0)
- list[i].ActWeight =
- decimal.Parse(
- (total - perWt*(num - double.Parse(list[i].ActCount.ToString3()))).ToString3
- ());
- else
- list[i].ActWeight =
- decimal.Parse(
- (perWt*double.Parse(list[i].ActCount.ToString3())).ToString3());
- }
- }
- catch (Exception)
- {
- }
- }
- else
- {
- cmmWeightRecordEntityFull = null;
- }
- matInfo16.SetDefault(cmmWeightRecordEntityFull);
- }
- public void ShowOutInfo(string carNo, decimal nutWt)
- {
- var cmmWeightRecordEntityFull = new CmmWeightRecordEntityFull();
- var dt = ServerHelper.GetData("com.steering.Mcms.MatOutServer.doQueryOutInfo", new object[] {carNo}, ob);
- if ((dt != null) && (dt.Rows.Count > 0) && ((dt.Rows[0]["STORAGE_NAME_D"].ToString2() == "天津钢管制造有限公司") || ((dt.Rows[0]["STORAGE_NAME_TO"].ToString2() == "天淮室外成品库" || dt.Rows[0]["STORAGE_NAME_TO"].ToString2() == "天淮室内成品库") && dt.Rows[0]["OUTSTOCK_PLAN_NO"].ToString2() == "1"))) // 调整 只有去天津和天淮室外成品库 才带出出库记录 2021.3.15
- {
- cmmWeightRecordEntityFull.ShippersName = dt.Rows[0]["STORAGE_NAME_D"].ToString2() == "天津钢管制造有限公司" ? "江苏天淮钢管有限公司" : dt.Rows[0]["STORAGE_NAME_FROM"].ToString2();
- cmmWeightRecordEntityFull.LoadvehicleNo = dt.Rows[0]["OUTSTOCK_DOC"].ToString2();
- cmmWeightRecordEntityFull.ReceiveName = dt.Rows[0]["STORAGE_NAME_TO"].ToString2();
- cmmWeightRecordEntityFull.OrderName = dt.Rows[0]["STORAGE_NAME_D"].ToString2();
- cmmWeightRecordEntityFull.RecordNumber =
- dt.AsEnumerable().Select(p => decimal.Parse(p["ACT_COUNT"].ToString3())).Sum();
- decimal.Parse(dt.Rows[0]["ACT_COUNT"].ToString3());
- cmmWeightRecordEntityFull.MatName = dt.Rows[0]["STORAGE_NAME_D"].ToString2() == "天津钢管制造有限公司"
- ? "调拨钢管"
- : "内转钢管";
- cmmWeightRecordEntityFull.MatInfos = new List<CmmWeightMatEntity>();
- var totalWt = dt.AsEnumerable().Select(p => decimal.Parse(p["ACT_WEIGHT"].ToString3())).Sum();
- var perWt = nutWt/totalWt;
- var remainWt = nutWt;
- for (var i = 0; i < dt.Rows.Count; i++)
- {
- var dtcRow = dt.Rows[i];
- var cmmWeightMatEntity = new CmmWeightMatEntity
- {
- Produccode = dtcRow["PRODUCCODE"].ToString2(),
- Producname = dtcRow["PRODUCNAME"].ToString2(),
- Gradecode = dtcRow["GRADECODE"].ToString2(),
- Gradename = dtcRow["GRADENAME"].ToString2(),
- Steelcode = dtcRow["STEELCODE"].ToString2(),
- Steelname = dtcRow["STEELNAME"].ToString2(),
- ActLenTemp = dtcRow["ACT_LEN_MIN"].ToString3() + "-" +
- dtcRow["ACT_LEN_MAX"].ToString3(),
- ActWeight = i == dt.Rows.Count - 1 ? remainWt : Math.Round(decimal.Parse(dtcRow["ACT_WEIGHT"].ToString3())*perWt, 3),
- ActCount = decimal.Parse(dtcRow["ACT_COUNT"].ToString3()),
- JudgeStoveNo = dtcRow["JUDGE_STOVE_NO"].ToString2(),
- ActDimater = decimal.Parse(dtcRow["ACT_DIMATER"].ToString3()),
- ActHeight = decimal.Parse(dtcRow["ACT_HEIGHT"].ToString3())
- };
- l.WriteLog(3, "车号:" + carNo + " nutWt:" + nutWt + " remainWt:" + remainWt + " totalWt:" + totalWt + "perWt:"+ perWt);
- remainWt = remainWt - (decimal) cmmWeightMatEntity.ActWeight;
- cmmWeightRecordEntityFull.MatInfos.Add(cmmWeightMatEntity);
- }
- matInfo12.SetDefault(cmmWeightRecordEntityFull);
- }
- else
- {
- if (nutWt > 0)
- matInfo12.SetWt(nutWt);
- }
- }
- public void ShowOutInfoGp(string carNo, decimal nutWt)
- {
- var cmmWeightRecordEntityFull = new CmmWeightRecordEntityFull();
- var dt = ServerHelper.GetData("com.steering.Mcms.MatOutServer.doQueryOutInfoGp", new object[] {carNo}, ob);
- if ((dt != null) && (dt.Rows.Count > 0))
- {
- cmmWeightRecordEntityFull.ShippersName = dt.Rows[0]["STORAGE_NAME_FROM"].ToString2();
- cmmWeightRecordEntityFull.LoadvehicleNo = dt.Rows[0]["OUTSTOCK_DOC"].ToString2();
- cmmWeightRecordEntityFull.ReceiveName = dt.Rows[0]["STORAGE_NAME_TO"].ToString2();
- cmmWeightRecordEntityFull.RecordNumber =
- dt.AsEnumerable().Select(p => decimal.Parse(p["ACT_COUNT"].ToString3())).Sum();
- decimal.Parse(dt.Rows[0]["ACT_COUNT"].ToString3());
- cmmWeightRecordEntityFull.MatName = "内转钢坯";
- cmmWeightRecordEntityFull.MatInfos = new List<CmmWeightMatEntity>();
- var perWt = Math.Round(nutWt/(decimal) cmmWeightRecordEntityFull.RecordNumber, 3);
- var remainWt = nutWt;
- for (var i = 0; i < dt.Rows.Count; i++)
- {
- var dtcRow = dt.Rows[i];
- var cmmWeightMatEntity = new CmmWeightMatEntity
- {
- Steelcode = dtcRow["GRADECODE"].ToString2(),
- Steelname = dtcRow["GRADENAME"].ToString2(),
- ActLenTemp = dtcRow["ACT_LEN"].ToString3(),
- ActWeight =
- i == dt.Rows.Count - 1 ? remainWt : decimal.Parse(dtcRow["ACT_COUNT"].ToString3())*perWt,
- ActCount = decimal.Parse(dtcRow["ACT_COUNT"].ToString3()),
- JudgeStoveNo = dtcRow["JUDGE_STOVE_NO"].ToString2(),
- ActDimater = decimal.Parse(dtcRow["DIMATER"].ToString3()),
- ActHeight = decimal.Parse(dtcRow["HEIGHT"].ToString3())
- };
- remainWt = remainWt - perWt;
- cmmWeightRecordEntityFull.MatInfos.Add(cmmWeightMatEntity);
- }
- matInfo13.SetDefault(cmmWeightRecordEntityFull);
- }
- else
- {
- if (nutWt > 0)
- matInfo13.SetWt(nutWt);
- }
- }
- private void tbScondWt_SelectedTabChanged(object sender, SelectedTabChangedEventArgs e)
- {
- if (CurrentGrid.ActiveRow != null)
- {
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if (current != null)
- if (tbScondWt.ActiveTab.Key == "3")
- ShowWasteInfo(current.CarNo);
- else if (tbScondWt.ActiveTab.Key == "0")
- ShowLoadvehicleInfo(current.CarNo);
- }
- LoadTem();
- }
- private void utnQuery_Click(object sender, EventArgs e)
- {
- Query2();
- }
- private void Query2()
- {
- var dic = new Dictionary<string, object>();
- if (chkTim.Checked)
- {
- dic.Add("time", RegStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss"));
- dic.Add("time1", RegEndTime.Value.ToString("yyy-MM-dd HH:mm:ss"));
- }
- dic.Add("carNo", uteCarNo.Text);
- dic.Add("matType", uceQueryCarType.Text);
- dic.Add("resultNo", utePound.Text);
- dic.Add("orderName", uteOrder.Text);
- dic.Add("shippersName", uteShippersName.Text);
- dic.Add("receiveName", uteReceiveName.Text);
- dic.Add("memo", uteMemo.Text);
- dic.Add("validflag", new List<string> {"1"});
- dic.Add("judgeStoveNo", uteJudgeStoveNo.Text);
- List<CmmWeightResultEntity> list = EntityHelper.GetData<CmmWeightResultEntity>(
- "com.steering.Mcms.ResultServer.doQuery",
- new object[] {dic},
- ob);
- lblCount.Text = string.Format("共{0}条记录", list.Count);
- QueryBS.DataSource = list;
- Comm.RefreshAndAutoSize(ugData);
- }
- private void tbMain_SelectedTabChanged(object sender, SelectedTabChangedEventArgs e)
- {
- if (tbMain.SelectedTab.Key == "1")
- Query();
- else
- Query2();
- }
- private void utbReset_Click(object sender, EventArgs e)
- {
- RegStartTime.Value = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd 07:00:00"));
- RegEndTime.Value = DateTime.Parse(DateTime.Now.AddDays(1).ToString("yyyy-MM-dd 07:00:00"));
- uteCarNo.Text = "";
- uceQueryCarType.Text = "";
- utePound.Text = "";
- uteOrder.Text = "";
- uteShippersName.Text = "";
- uteReceiveName.Text = "";
- uteMemo.Text = "";
- uteJudgeStoveNo.Text = "";
- }
- private void btnDelete_Click(object sender, EventArgs e)
- {
- if (ugData.ActiveRow == null) return;
- var ub = sender as UltraButton;
- if (ub == null) return;
- var data = ugData.ActiveRow.ListObject as CmmWeightResultEntity;
- if (data == null) return;
- ("是否" + ub.Text + " 车辆 " + data.CarNo + " 的过磅单?").Speak();
- if (MessageUtil.ShowYesNoAndQuestion("是否" + ub.Text + " 车牌[" + data.CarNo + "]过磅单?") == DialogResult.No)
- return;
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.LocalTruckScale",
- MethodName = "DoDeleteResult",
- ServerParams = new object[]
- {
- data.ResultNo,
- UserInfo.GetUserName(),
- "重过" == ub.Text ? "2" : "1"
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.Equals("操作成功!"))
- {
- Query2();
- Query();
- }
- }
- }
- private void cboNo_SelectedValueChanged(object sender, EventArgs e)
- {
- lblWtNow.Text = "0.00t";
- if (cboNo.SelectedIndex < 0) return;
- cmmPoundBase = cboNo.SelectedItem as CmmPoundBaseEntity;
- if (communication != null)
- {
- if (communication.Status) utbConnect_Click(null, null);
- communication.ReceiveData -= defultPortEntity_ReceiveData;
- }
- communication = null;
- if (cboNo.SelectedIndex < 0) return;
- var list = CommunicationEntitys.Where(p => p.PoundNo == cmmPoundBase.PoundNo).ToList();
- if (list.Any())
- communication = list[0].Communication;
- if (communication == null) communication = defultPortEntity;
- communication.ReceiveData += defultPortEntity_ReceiveData;
- CmmBaseProtocolEntity cmmBaseProtocol = null;
- if (cmmPoundBase != null)
- {
- List<CmmBaseProtocolCEntity> protocols = EntityHelper.GetData<CmmBaseProtocolCEntity>(
- "com.steering.Mcms.ProcotolServer.getProcotolId",
- new object[] {cmmPoundBase.PoundProtocolId},
- ob);
- if ((protocols != null) && protocols.Any())
- cmmBaseProtocol = new CmmBaseProtocolEntity
- {
- ProtocolId = cmmPoundBase.PoundProtocolId,
- ListC = protocols
- };
- cboPoundList.Text = cmmPoundBase.PoundNo;
- }
- communication.ChangeProtocol(new TruckScaleProtocol(cmmBaseProtocol));
- utbConnect_Click(null, null);
- }
- private void btnSetting_Click(object sender, EventArgs e)
- {
- if (communication != null)
- {
- if (communication.Status) utbConnect_Click(null, null);
- communication.ReceiveData -= defultPortEntity_ReceiveData;
- }
- using (var communicationSetting = new CommunicationSetting(CommunicationEntitys))
- {
- if (communicationSetting.ShowDialog() == DialogResult.OK)
- {
- CommunicationEntitys = communicationSetting.Entitys;
- var xElementRoot = new XElement("CommunicationInfo");
- foreach (var communicationEntity in CommunicationEntitys)
- {
- var temp = new XElement("POUND_" + communicationEntity.PoundNo);
- var type = communicationEntity.Communication is SerialPortEntity ? "1" : "2";
- temp.SetAttributeValue("type", type);
- if (type == "1")
- {
- temp.SetAttributeValue("StrBaudRate",
- ((SerialPortEntity) communicationEntity.Communication).StrBaudRate);
- temp.SetAttributeValue("StrDataBits",
- ((SerialPortEntity) communicationEntity.Communication).StrDataBits);
- temp.SetAttributeValue("StrParity",
- ((SerialPortEntity) communicationEntity.Communication).StrParity);
- temp.SetAttributeValue("StrStopBits",
- ((SerialPortEntity) communicationEntity.Communication).StrStopBits);
- temp.SetAttributeValue("PortName",
- ((SerialPortEntity) communicationEntity.Communication).PortName);
- }
- else
- {
- temp.SetAttributeValue("Ip",
- ((SocketClient) communicationEntity.Communication).Ip);
- temp.SetAttributeValue("Port",
- ((SocketClient) communicationEntity.Communication).Port);
- }
- xElementRoot.Add(temp);
- }
- XmlHelper.SetXElement(_path, xElementRoot,true);
- }
- }
- communication = null;
- cboNo_SelectedValueChanged(null, null);
- }
- private void lvTemplate_ItemDoubleClick(object sender, ItemDoubleClickEventArgs e)
- {
- var matInfo = GetMatInfo();
- if ((matInfo != null) && matInfo.AddNew) matInfo.SetDefault(e.Item.Tag as CmmWeightRecordEntityFull, e.Item.Text);
- }
- private void cboPoundList_SelectedValueChanged(object sender, EventArgs e)
- {
- Query();
- }
- private void delete_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if ((current == null) || ("" == current.CarNo)) return;
- if (MessageUtil.ShowYesNoAndQuestion("是否删除" + current.CarNo + " 过磅记录?") == DialogResult.No)
- return;
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.RecordServer",
- MethodName = "DoUpdateRecord",
- ServerParams = new object[]
- {
- current.RecordNo
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- if (ccp.ReturnInfo.ToString2().Contains("操作成功"))
- Query();
- else
- MessageUtil.ShowTips(ccp.ReturnInfo);
- }
- private void ugData_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- var data = e.Row.ListObject as CmmWeightResultEntity;
- if (data == null) return;
- if (data.RecordType2 == "201") e.Row.Appearance.BackColor = Color.ForestGreen;
- }
- private void uteCarNo_KeyPress(object sender, KeyPressEventArgs e)
- {
- if (e.KeyChar == 13)
- Query2();
- }
- private void utnUpdate_Click(object sender, EventArgs e)
- {
- if (ugData.ActiveRow == null)
- {
- MessageBox.Show("请选择需要修改磅单记录!");
- return;
- }
- var cmm = ugData.ActiveRow.ListObject as CmmWeightResultEntity;
- var matInfo = GetMatInfoByKey("101" == cmm.RecordType1 ? cmm.RecordType2 : cmm.RecordType1);
- if (matInfo == null)
- {
- MessageBox.Show("该类型不允许修改!");
- return;
- }
- using (var frmUpdate = new FrmUpdate(ob, cmm, "101" == cmm.RecordType1
- ? cmm.RecordNo2
- : cmm.RecordNo1, canUpdateWt)
- {
- ColumnsM = matInfo.ColumnsM,
- ColumnsC = matInfo.ColumnsC
- })
- {
- frmUpdate.ShowDialog();
- if (frmUpdate.DialogResult == DialogResult.OK)
- Query2();
- }
- }
- private void utbPrint_Click(object sender, EventArgs e)
- {
- if (ugData.ActiveRow == null) return;
- var data = ugData.ActiveRow.ListObject as CmmWeightResultEntity;
- if (data == null) return;
- if ((data.RecordType2 == "201") && (data.GrossWt != null) && (data.GrossWt > 50) && (MessageUtil.ShowYesNoAndQuestion("毛重超过50吨, 是否继续打印磅单?") ==
- DialogResult.No))
- {
- }
- else
- {
- Print(data.ResultNo);
- }
- }
- private void utbPrintSingle_Click(object sender, EventArgs e)
- {
- if (ugData.ActiveRow == null) return;
- var data = ugData.ActiveRow.ListObject as CmmWeightResultEntity;
- if (data == null) return;
- if ((data.RecordType2 == "205") || (data.RecordType2 == "201") || (data.RecordType2 == "200"))
- if ((data.RecordType2 == "201") && (data.GrossWt != null) && (data.GrossWt > 50) && (MessageUtil.ShowYesNoAndQuestion("毛重超过50吨, 是否继续打印磅单?") ==
- DialogResult.No))
- {
- }
- else
- {
- Print(data.ResultNo, true);
- }
- }
- private void unExcel_Click(object sender, EventArgs e)
- {
- var hssfworkbook = new HSSFWorkbook();
- var sheet = hssfworkbook.CreateSheet("磅房统计");
- var index = 0;
- SetHead(sheet, hssfworkbook, index++);
- SetHeadRow(sheet, hssfworkbook
- , new List<string> {"磅房号", "称重类型", "物资名称", "物资数量", "称重次数", "物资净重"},
- new List<int> {9, 15, 25, 15, 15, 15},
- index++
- );
- setData(sheet, hssfworkbook, ref index);
- SetSumm(sheet, index, hssfworkbook);
- sheet.ForceFormulaRecalculation = true;
- hssfworkbook.GetCreationHelper().CreateFormulaEvaluator().EvaluateAll();
- using (var saveFileDialog1 = new SaveFileDialog())
- {
- saveFileDialog1.FileName = "磅房统计" + DateTime.Now.ToString("yyMMdd");
- saveFileDialog1.Filter = "Excel文件(*.xls)|*.xls";
- if (saveFileDialog1.ShowDialog() == DialogResult.OK)
- {
- var sFullName = saveFileDialog1.FileName;
- var ms = new MemoryStream();
- hssfworkbook.Write(ms);
- using (var fs = new FileStream(saveFileDialog1.FileName, FileMode.Create, FileAccess.Write))
- {
- var bArr = ms.ToArray();
- fs.Write(bArr, 0, bArr.Length);
- fs.Flush();
- }
- var p = new ProcessStartInfo(sFullName);
- p.WorkingDirectory = Path.GetDirectoryName(sFullName);
- Process.Start(p);
- }
- }
- }
- private void SetSumm(ISheet sheet, int index, HSSFWorkbook hssfworkbook)
- {
- var IRow = sheet.CreateRow(index);
- IRow.Height = 20*20;
- var Icell1 = IRow.CreateCell(1);
- Icell1.SetCellValue("合计");
- var style = CenterStyle(hssfworkbook);
- var font = ContextFont(hssfworkbook);
- style.SetFont(font);
- style.BorderTop = BorderStyle.Medium;
- style.BorderBottom = BorderStyle.Medium;
- style.BorderLeft = BorderStyle.Medium;
- style.BorderRight = BorderStyle.Thin;
- //将新的样式赋给单元格
- Icell1.CellStyle = style;
- var Icell12 = IRow.CreateCell(2);
- var style12 = CenterStyle(hssfworkbook);
- style12.SetFont(font);
- style12.BorderTop = BorderStyle.Medium;
- style12.BorderBottom = BorderStyle.Medium;
- style12.BorderLeft = BorderStyle.Thin;
- style12.BorderRight = BorderStyle.Thin;
- //将新的样式赋给单元格
- Icell12.CellStyle = style12;
- var Icell13 = IRow.CreateCell(3);
- var style13 = CenterStyle(hssfworkbook);
- style13.SetFont(font);
- style13.BorderTop = BorderStyle.Medium;
- style13.BorderBottom = BorderStyle.Medium;
- style13.BorderLeft = BorderStyle.Thin;
- style13.BorderRight = BorderStyle.Thin;
- //将新的样式赋给单元格
- Icell13.CellStyle = style13;
- //合并单元格
- sheet.AddMergedRegion(new CellRangeAddress(index, index, 1, 3));
- var list = new List<string>();
- for (var i = 2; i < index; i++)
- list.Add(i + 1 + "");
- var Icell2 = IRow.CreateCell(4);
- if (list.Any())
- {
- Icell2.SetCellType(CellType.Formula);
- Icell2.SetCellFormula(string.Format("SUM({0})", string.Join(",", list.Select(p => "E" + p).ToList())));
- hssfworkbook.GetCreationHelper().CreateFormulaEvaluator().EvaluateFormulaCell(Icell2);
- }
- var style2 = numStyle(hssfworkbook);
- var font2 = ContextFont(hssfworkbook);
- style2.SetFont(font2);
- style2.BorderTop = BorderStyle.Medium;
- style2.BorderBottom = BorderStyle.Medium;
- style2.BorderLeft = BorderStyle.Thin;
- style2.BorderRight = BorderStyle.Thin;
- //将新的样式赋给单元格
- Icell2.CellStyle = style2;
- var Icell3 = IRow.CreateCell(5);
- if (list.Any())
- {
- Icell3.SetCellType(CellType.Formula);
- Icell3.SetCellFormula(string.Format("SUM({0})", string.Join(",", list.Select(p => "F" + p).ToList())));
- hssfworkbook.GetCreationHelper().CreateFormulaEvaluator().EvaluateFormulaCell(Icell3);
- }
- var style3 = numStyle(hssfworkbook);
- var font3 = ContextFont(hssfworkbook);
- style3.SetFont(font3);
- style3.BorderTop = BorderStyle.Medium;
- style3.BorderBottom = BorderStyle.Medium;
- style3.BorderLeft = BorderStyle.Thin;
- style3.BorderRight = BorderStyle.Thin;
- //将新的样式赋给单元格
- Icell3.CellStyle = style3;
- var Icell4 = IRow.CreateCell(6);
- if (list.Any())
- {
- Icell4.SetCellType(CellType.Formula);
- Icell4.SetCellFormula(string.Format("SUM({0})", string.Join(",", list.Select(p => "G" + p).ToList())));
- hssfworkbook.GetCreationHelper().CreateFormulaEvaluator().EvaluateFormulaCell(Icell4);
- }
- var style4 = numStyle(hssfworkbook);
- var font4 = ContextFont(hssfworkbook);
- style4.SetFont(font4);
- style4.BorderTop = BorderStyle.Medium;
- style4.BorderBottom = BorderStyle.Medium;
- style4.BorderLeft = BorderStyle.Thin;
- style4.BorderRight = BorderStyle.Medium;
- //将新的样式赋给单元格
- Icell4.CellStyle = style4;
- }
- private void setData(ISheet sheet, HSSFWorkbook hssfworkbook, ref int index)
- {
- var index1 = index;
- var data = QueryBS.DataSource as List<CmmWeightResultEntity>;
- if ((data != null) && data.Any())
- data.GroupBy(p => new {p.RecoderLocation2, p.MatName, p.MatType})
- .Select(p => new
- {
- p.Key.MatName,
- p.Key.MatType,
- p.Key.RecoderLocation2,
- count = p.Count(),
- num = int.Parse(p.Select(q => q.MatNum ?? 0).Sum().ToString3()),
- wt = double.Parse(p.Select(q => q.NetWt).Sum().ToString3())
- }).ToList()
- .ForEach(
- p =>
- {
- var IRow = sheet.CreateRow(index1++);
- IRow.Height = 20*20;
- for (var i = 0; i < 6; i++)
- {
- var Icell = IRow.CreateCell(i + 1);
- if (i <= 2)
- {
- Icell.SetCellType(CellType.String);
- Icell.SetCellValue(
- i == 0
- ? p.RecoderLocation2
- : i == 1
- ? p.MatType
- : p.MatName);
- }
- else
- {
- Icell.SetCellType(CellType.Numeric);
- if (i == 3)
- Icell.SetCellValue(p.num);
- if (i == 4)
- Icell.SetCellValue(p.count);
- if (i == 5)
- Icell.SetCellValue(p.wt);
- }
- ;
- var style = i <= 2 ? textStyle(hssfworkbook) : numStyle(hssfworkbook);
- style.BorderTop = BorderStyle.Thin;
- style.BorderBottom = BorderStyle.Thin;
- style.BorderLeft = i == 0 ? BorderStyle.Medium : BorderStyle.Thin;
- style.BorderRight = i == 5 ? BorderStyle.Medium : BorderStyle.Thin;
- var font = ContextFont(hssfworkbook);
- //使用SetFont方法将字体样式添加到单元格样式中
- style.SetFont(font);
- //将新的样式赋给单元格
- Icell.CellStyle = style;
- }
- }
- );
- index = index1;
- }
- private void SetHeadRow(ISheet sheet, HSSFWorkbook hssfworkbook, List<string> name, List<int> columsWidth,
- int rowIndex)
- {
- var IRow = sheet.CreateRow(rowIndex);
- IRow.Height = 20*20;
- for (var i = 0; i < name.Count; i++)
- {
- sheet.SetColumnWidth(i + 1, columsWidth[i]*256);
- var Icell = IRow.CreateCell(i + 1);
- Icell.SetCellValue(name[i]);
- var style = CenterStyle(hssfworkbook);
- style.BorderTop = BorderStyle.Medium;
- style.BorderBottom = BorderStyle.Medium;
- style.BorderLeft = BorderStyle.Medium;
- style.BorderRight = BorderStyle.Medium;
- var font = ContextFont(hssfworkbook);
- //使用SetFont方法将字体样式添加到单元格样式中
- style.SetFont(font);
- //将新的样式赋给单元格
- Icell.CellStyle = style;
- }
- }
- private void SetHead(ISheet sheet, HSSFWorkbook hssfworkbook, int rowindex)
- {
- var IRow = sheet.CreateRow(rowindex);
- IRow.Height = 50*20;
- var Icell = IRow.CreateCell(1);
- Icell.SetCellValue("磅房统计");
- var style = CenterStyle(hssfworkbook);
- var font = TitleFont(hssfworkbook);
- //使用SetFont方法将字体样式添加到单元格样式中
- style.SetFont(font);
- //将新的样式赋给单元格
- Icell.CellStyle = style;
- //合并单元格
- sheet.AddMergedRegion(new CellRangeAddress(0, 0, 1, 6));
- }
- private static IFont TitleFont(HSSFWorkbook hssfworkbook)
- {
- //新建一个字体样式对象
- var font = hssfworkbook.CreateFont();
- font.FontName = "宋体";
- font.FontHeightInPoints = 30;
- //设置字体加粗样式
- font.Boldweight = (short) FontBoldWeight.Bold;
- return font;
- }
- private static IFont ContextFont(HSSFWorkbook hssfworkbook)
- {
- //新建一个字体样式对象
- var font = hssfworkbook.CreateFont();
- font.FontName = "宋体";
- font.FontHeightInPoints = 12;
- //设置字体加粗样式
- font.Boldweight = (short) FontBoldWeight.Bold;
- return font;
- }
- private ICellStyle CenterStyle(HSSFWorkbook hssfworkbook)
- {
- var style = hssfworkbook.CreateCellStyle();
- //设置单元格的样式:水平对齐居中
- style.Alignment = HorizontalAlignment.Center;
- style.VerticalAlignment = VerticalAlignment.Center;
- return style;
- }
- private ICellStyle textStyle(HSSFWorkbook hssfworkbook)
- {
- var style = hssfworkbook.CreateCellStyle();
- //设置单元格的样式:水平对齐居中
- style.Alignment = HorizontalAlignment.Left;
- style.VerticalAlignment = VerticalAlignment.Center;
- return style;
- }
- private ICellStyle numStyle(HSSFWorkbook hssfworkbook)
- {
- var style = hssfworkbook.CreateCellStyle();
- //设置单元格的样式:水平对齐居中
- style.Alignment = HorizontalAlignment.Right;
- style.VerticalAlignment = VerticalAlignment.Center;
- return style;
- }
- private void CurrentGrid_InitializeLayout(object sender, InitializeLayoutEventArgs e)
- {
- }
- private void CurrentGrid_DoubleClickCell(object sender, DoubleClickCellEventArgs e)
- {
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- if ((current == null) || ("" == current.CarNo)) return;
- foreach (var cbxCar1Item in cbxCar1.Items)
- if (current.CarNo.StartsWith(cbxCar1Item.ToString2().Trim()))
- {
- cbxCar1.SelectedItem = cbxCar1Item;
- txtCar2.Text = current.CarNo.Replace(cbxCar1Item.ToString2().Trim(), "").Trim();
- }
- if (!tbWt.Tabs["2"].Selected)
- {
- tbWt.Tabs["2"].Selected = true;
- if (current.RecordType != "101")
- tbScondWt.Tabs["2"].Selected = true;
- else
- tbScondWt_SelectedTabChanged(null, null);
- }
- }
- private void utbExport_Click(object sender, EventArgs e)
- {
- GridHelper.ulGridToExcel(ugData, "称重记录");
- }
- private void utbExport2_Click(object sender, EventArgs e)
- {
- GridHelper.ulGridToExcel(CurrentGrid, "称重记录");
- }
- private void cbxCar1_SelectedValueChanged(object sender, EventArgs e)
- {
- txtCar2.Focus();
- if (cbxCar1.Text.Trim() == "厂内")
- txtCar2.Text = "自用车";
- }
- private void splitContainer2_SplitterMoved(object sender, SplitterEventArgs e)
- {
- if (isLoading) return;
- XmlHelper.SetXmlData(_path, "splitContainer2", splitContainer2.SplitterDistance);
- }
- private void splitContainer1_SplitterMoved(object sender, SplitterEventArgs e)
- {
- if (isLoading) return;
- XmlHelper.SetXmlData(_path, "splitContainer1", splitContainer1.SplitterDistance);
- }
- private void frmLocalTruckScale_Shown(object sender, EventArgs e)
- {
- timer.Start();
- splitContainer1.SplitterDistance = XmlHelper.GetXmlData(_path, "splitContainer1",
- splitContainer1.SplitterDistance);
- splitContainer2.SplitterDistance = XmlHelper.GetXmlData(_path, "splitContainer2",
- splitContainer2.SplitterDistance);
- var x = new FontConverter();
- CurrentGrid.Font =
- x.ConvertFromString(XmlHelper.GetXmlData(_path, CurrentGrid.Name, x.ConvertToString(CurrentGrid.Font)))
- as Font;
- ugData.Font =
- x.ConvertFromString(XmlHelper.GetXmlData(_path, ugData.Name, x.ConvertToString(ugData.Font))) as Font;
- isLoading = false;
- CurrentGrid.DisplayLayout.Bands[0].Columns["RecordType"].EditorComponent = uceType2;
- CurrentGrid.DisplayLayout.Bands[0].Columns["RecordNo"].EditorComponent = delete;
- CurrentGrid.DisplayLayout.Bands[0].Columns["CarNo"].EditorComponent = uteEdit;
- Query();
- Query2();
- try
- {
- if (toolMenu == null) return;
- if (toolMenu.Toolbars[0].Tools.Exists("UpdateWt"))
- canUpdateWt = true;
- toolMenu.Visible = false;
- }
- catch (Exception ex)
- {
- }
- }
- private void CurrentGrid_KeyPress(object sender, KeyPressEventArgs e)
- {
- }
- private void CurrentGrid_KeyDown(object sender, KeyEventArgs e)
- {
- if (e.KeyCode == Keys.F5)
- using (var dr = new FontDialog {Font = (sender as Control).Font})
- {
- if (dr.ShowDialog() == DialogResult.OK)
- {
- (sender as Control).Font = dr.Font;
- var x = new FontConverter();
- var font = x.ConvertToString(dr.Font);
- // t = x.ConvertFromString(s) as Font;
- XmlHelper.SetXmlData(_path, (sender as Control).Name, font);
- }
- }
- }
- private void txtCar2_TextChanged(object sender, EventArgs e)
- {
- foreach (var currentGridRow in CurrentGrid.Rows)
- if (currentGridRow.Cells["CarNo"].Value.ToString2() == cbxCar1.Text + txtCar2.Text.Trim())
- if (!tbWt.Tabs["2"].Selected)
- {
- tbWt.Tabs["2"].Selected = true;
- currentGridRow.Activated = true;
- if (currentGridRow.Cells["RecordType"].Value.ToString2() != "101")
- tbScondWt.Tabs["2"].Selected = true;
- else
- tbScondWt_SelectedTabChanged(null, null);
- return;
- }
- tbWt.Tabs["1"].Selected = true;
- }
- private void uteEdit_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- string carNo;
- using (var update = new UpdateCar {CarNo = current.CarNo})
- {
- var result = update.ShowDialog();
- if (result != DialogResult.OK) return;
- carNo = update.CarNo;
- }
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.RecordServer",
- MethodName = "DoUpdateCarNo",
- ServerParams = new object[]
- {
- current.RecordNo,
- carNo
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.ToString2().Contains("操作成功"))
- Query();
- }
- }
- public bool CheckShowKey(string key1, string key2)
- {
- if (key1 == key2) return true;
- if (((key1 == "107") && (key2 == "204")) || ((key2 == "107") && (key1 == "204"))) return true;
- if (((key1 == "108") && (key2 == "205")) || ((key2 == "108") && (key1 == "205"))) return true;
- if (((key1 == "206") && (key2 == "206")) || ((key2 == "109") && (key1 == "206"))) return true;
- return false;
- }
- private void txtCar2_KeyPress(object sender, KeyPressEventArgs e)
- {
- if ((e.KeyChar >= 97) && (e.KeyChar <= 122))
- e.KeyChar = (char) (e.KeyChar - 32);
- }
- private void CurrentGrid_InitializeRow(object sender, InitializeRowEventArgs e)
- {
- var cmmWeightRecord = e.Row.ListObject as CmmWeightRecordEntity;
- if (cmmWeightRecord == null) return;
- if ((cmmWeightRecord.EffRemaind != null) && (cmmWeightRecord.EffRemaind <= 1))
- e.Row.Cells["RecordDate"].Appearance.BackColor = Color.Red;
- }
- private void utbSelect_Click(object sender, EventArgs e)
- {
- using (var BlankPredictionSelect = new BlankPredictionSelect(ob, matInfo3.GetData()))
- {
- if (BlankPredictionSelect.ShowDialog() == DialogResult.OK)
- matInfo3.UpdateData(new CmmWeightRecordEntityFull
- {
- MatName = "连铸圆坯",
- ShippersName = BlankPredictionSelect.ShipperName,
- RecordNumber = BlankPredictionSelect.ListMatNo == null ? null : BlankPredictionSelect.ListMatNo.Sum(p => p.ActCount),
- ReceiveName = "江苏天淮钢管有限公司",
- Memo = BlankPredictionSelect.Memo,
- MatInfos =
- BlankPredictionSelect.ListMatNo ?? new List<CmmWeightMatEntity> {new CmmWeightMatEntity()}
- });
- }
- }
- private void uteChangeType_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- string type;
- string name;
- using (var changeType = new ChangeType {Type = current.RecordType})
- {
- var result = changeType.ShowDialog();
- if (result != DialogResult.OK) return;
- type = changeType.Type;
- name = changeType.TypeName;
- }
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.RecordServer",
- MethodName = "DoUpdateType",
- ServerParams = new object[]
- {
- current.RecordNo,
- type,
- name
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.ToString2().Contains("成功"))
- Query();
- }
- }
- private void ugData_AfterRowRegionScroll(object sender, RowScrollRegionEventArgs e)
- {
- var dex = e.RowScrollRegion.FirstRow;
- dex.Activate();
- }
- private void CurrentGrid_AfterRowRegionScroll(object sender, RowScrollRegionEventArgs e)
- {
- /* UltraGridRow dex = e.RowScrollRegion.FirstRow;
- dex.Activate();*/
- }
- private void ugData_AfterRowActivate(object sender, EventArgs e)
- {
- ugData.ActiveRow.RowSelectorAppearance.BackColor = Color.LightGreen;
- }
- private void ugData_BeforeRowDeactivate(object sender, CancelEventArgs e)
- {
- ugData.ActiveRow.RowSelectorAppearance.ResetBackColor();
- }
- private void CurrentGrid_BeforeRowDeactivate(object sender, CancelEventArgs e)
- {
- CurrentGrid.ActiveRow.RowSelectorAppearance.ResetBackColor();
- }
- private void utbSelect2_Click(object sender, EventArgs e)
- {
- var carNo = cbxCar1.Text + txtCar2.Text.ToUpper().Trim();
- var cmmWeightRecordEntityFull = new CmmWeightRecordEntityFull();
- var dt = ServerHelper.GetData("com.steering.Mcms.MatOutServer.doQueryOutInfoGp", new object[] {carNo}, ob);
- if ((dt != null) && (dt.Rows.Count > 0) && (dt.Rows[0]["STORAGE_NAME_D"].ToString2() == "天津钢管制造有限公司"))
- {
- cmmWeightRecordEntityFull.ShippersName = "天津钢管制造有限公司";
- cmmWeightRecordEntityFull.LoadvehicleNo = dt.Rows[0]["OUTSTOCK_DOC"].ToString2();
- cmmWeightRecordEntityFull.ReceiveName = "江苏天淮钢管有限公司";
- cmmWeightRecordEntityFull.RecordNumber =
- dt.AsEnumerable().Select(p => decimal.Parse(p["ACT_COUNT"].ToString3())).Sum();
- decimal.Parse(dt.Rows[0]["ACT_COUNT"].ToString3());
- cmmWeightRecordEntityFull.MatName = "连铸圆坯";
- cmmWeightRecordEntityFull.MatInfos = new List<CmmWeightMatEntity>();
- for (var i = 0; i < dt.Rows.Count; i++)
- {
- var dtcRow = dt.Rows[i];
- var cmmWeightMatEntity = new CmmWeightMatEntity
- {
- JudgeStoveNoOld = dtcRow["STOVE_NO"].ToString2(),
- JudgeStoveNo = dtcRow["JUDGE_STOVE_NO"].ToString2(),
- ActDimater = decimal.Parse(dtcRow["DIMATER"].ToString3()),
- ActLenTemp = dtcRow["ACT_LEN"].ToString3(),
- ActCount = decimal.Parse(dtcRow["ACT_COUNT"].ToString3()),
- DocumentNo = dtcRow["OUTSTOCK_DOC"].ToString2(),
- ProOrderNo = dtcRow["ORDER_NO"].ToString2(),
- OrderNo = dtcRow["ORDER_NO"].ToString2(),
- OrderSeq = dtcRow["ORDER_SEQ"].ToString2(),
- OrdNoPk = dtcRow["ORD_PK"].ToString2(),
- Produccode = dtcRow["PRODUCCODE"].ToString2(),
- Producname = dtcRow["PRODUCNAME"].ToString2(),
- Gradecode = dtcRow["GRADECODE"].ToString2(),
- Gradename = dtcRow["GRADENAME"].ToString2(),
- Steelcode = dtcRow["GRADECODE"].ToString2(),
- Steelname = dtcRow["GRADENAME"].ToString2()
- };
- cmmWeightRecordEntityFull.MatInfos.Add(cmmWeightMatEntity);
- }
- matInfo3.SetDefault(cmmWeightRecordEntityFull);
- }
- else
- {
- MessageBox.Show("未找到该车的出库记录!");
- }
- }
- private void uctMemo_EditorButtonClick(object sender, EditorButtonEventArgs e)
- {
- if (cmmPoundBase == null)
- {
- MessageBox.Show(@"无磅房权限");
- return;
- }
- var current = CurrentGrid.ActiveRow.ListObject as CmmWeightRecordEntity;
- string Memo;
- using (var update = new ChangeMemo { Memo = current.Memo })
- {
- var result = update.ShowDialog();
- if (result != DialogResult.OK) return;
- Memo = update.Memo;
- }
- var ccp = new CoreClientParam
- {
- ServerName = "com.steering.Mcms.RecordServer",
- MethodName = "DoUpdateMemo",
- ServerParams = new object[]
- {
- current.RecordNo,
- Memo
- }
- };
- ccp = ExecuteNonQuery(ccp, CoreInvokeType.Internal);
- if (ccp.ReturnCode != -1)
- {
- MessageUtil.ShowTips(ccp.ReturnInfo);
- if (ccp.ReturnInfo.ToString2().Contains("操作成功"))
- Query();
- }
- }
- private void ultraButton2_Click(object sender, EventArgs e)
- {
- if (ugData.ActiveRow == null) return;
- var data = ugData.ActiveRow.ListObject as CmmWeightResultEntity;
- if (data == null) return;
- if ((data.RecordType2 == "201") && (data.GrossWt != null) && (data.GrossWt > 50) && (MessageUtil.ShowYesNoAndQuestion("毛重超过50吨, 是否继续打印磅单?") ==
- DialogResult.No))
- {
- }
- else
- {
- Print2(data.ResultNo);
- }
- }
- }
- }
|