public override string ParsePalletID(string palletID) { //throw new NotImplementedException(); if (string.IsNullOrWhiteSpace(palletID)) { return(string.Empty); } if (palletID.Length < 12) { return(string.Empty); } string re = ""; JObject jsonObj = new JObject(new JProperty("电芯型号", ""), new JProperty("料筐内衬类型", ""), new JProperty("料筐内衬PLC值", ""), new JProperty("分容库区", "")); string batteryCata = palletID.Substring(0, 4); jsonObj["电芯型号"] = batteryCata; MesDBAccess.BLL.BatteryCataBll batCataBll = new MesDBAccess.BLL.BatteryCataBll(); MesDBAccess.Model.BatteryCataModel batCataModel = batCataBll.GetModel(batteryCata); if (batCataModel == null) { return(string.Empty); } MesDBAccess.BLL.PalletCataBll palletCataBll = new MesDBAccess.BLL.PalletCataBll(); MesDBAccess.Model.PalletCataModel palletCataModel = palletCataBll.GetModel(batCataModel.palletCataID); if (palletCataModel == null) { return(string.Empty); } jsonObj["料筐内衬类型"] = batCataModel.palletCataID; jsonObj["料筐内衬PLC值"] = palletCataModel.plcDefVal; jsonObj["分容库区"] = batCataModel.fenrongZone; re = jsonObj.ToString(); return(re); }
private void OnAddBatteryCata() { string batteryCata = this.textBox2.Text; if (string.IsNullOrWhiteSpace(batteryCata)) { MessageBox.Show("电芯型号不能为空,请重新输入"); return; } MesDBAccess.BLL.BatteryCataBll batCatBll = new MesDBAccess.BLL.BatteryCataBll(); if (batCatBll.Exists(batteryCata)) { MessageBox.Show(string.Format("电芯型号{0}已经存在", batteryCata)); return; } try { MesDBAccess.Model.BatteryCataModel batCataModel = new MesDBAccess.Model.BatteryCataModel(); batCataModel.batteryCataCode = batteryCata; batCataModel.palletCataID = this.comboBox6.Text; batCataModel.mark = this.textBox1.Text; batCatBll.Add(batCataModel); OnRefreshBatteryCata(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
private void OnModifyBatteryCata() { string batteryCata = this.textBox2.Text; if (string.IsNullOrWhiteSpace(batteryCata)) { MessageBox.Show("电芯型号不能为空,请重新输入"); return; } try { MesDBAccess.BLL.BatteryCataBll batCatBll = new MesDBAccess.BLL.BatteryCataBll(); MesDBAccess.Model.BatteryCataModel batCataModel = batCatBll.GetModel(batteryCata); if (batCataModel == null) { MessageBox.Show(string.Format("电芯型号{0}不存在", batteryCata)); return; } batCataModel.palletCataID = this.comboBox6.Text; batCataModel.mark = this.textBox1.Text; if (batCatBll.Update(batCataModel)) { MessageBox.Show("修改成功!"); OnRefreshBatteryCata(); } else { MessageBox.Show("修改失败!"); } } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
/// <summary> /// 得到一个对象实体 /// </summary> public MesDBAccess.Model.BatteryCataModel DataRowToModel(DataRow row) { MesDBAccess.Model.BatteryCataModel model = new MesDBAccess.Model.BatteryCataModel(); if (row != null) { if (row["batteryCataCode"] != null) { model.batteryCataCode = row["batteryCataCode"].ToString(); } if (row["palletCataID"] != null) { model.palletCataID = row["palletCataID"].ToString(); } if (row["fenrongZone"] != null) { model.fenrongZone = row["fenrongZone"].ToString(); } if (row["mark"] != null) { model.mark = row["mark"].ToString(); } if (row["tag1"] != null) { model.tag1 = row["tag1"].ToString(); } if (row["tag2"] != null) { model.tag2 = row["tag2"].ToString(); } if (row["tag3"] != null) { model.tag3 = row["tag3"].ToString(); } if (row["tag4"] != null) { model.tag4 = row["tag4"].ToString(); } if (row["tag5"] != null) { model.tag5 = row["tag5"].ToString(); } } return(model); }
/// <summary> /// 得到一个对象实体 /// </summary> public MesDBAccess.Model.BatteryCataModel GetModel(string batteryCataCode) { StringBuilder strSql = new StringBuilder(); strSql.Append("select top 1 "); strSql.Append(" batteryCataCode,palletCataID,fenrongZone,mark,tag1,tag2,tag3,tag4,tag5 "); strSql.Append(" from BatteryCata "); strSql.Append(" where batteryCataCode='" + batteryCataCode + "' "); MesDBAccess.Model.BatteryCataModel model = new MesDBAccess.Model.BatteryCataModel(); DataSet ds = DbHelperSQL.Query(strSql.ToString()); if (ds.Tables[0].Rows.Count > 0) { return(DataRowToModel(ds.Tables[0].Rows[0])); } else { return(null); } }
/// <summary> /// 增加一条数据 /// </summary> public bool Add(MesDBAccess.Model.BatteryCataModel model) { StringBuilder strSql = new StringBuilder(); StringBuilder strSql1 = new StringBuilder(); StringBuilder strSql2 = new StringBuilder(); if (model.batteryCataCode != null) { strSql1.Append("batteryCataCode,"); strSql2.Append("'" + model.batteryCataCode + "',"); } if (model.palletCataID != null) { strSql1.Append("palletCataID,"); strSql2.Append("'" + model.palletCataID + "',"); } if (model.fenrongZone != null) { strSql1.Append("fenrongZone,"); strSql2.Append("'" + model.fenrongZone + "',"); } if (model.mark != null) { strSql1.Append("mark,"); strSql2.Append("'" + model.mark + "',"); } if (model.tag1 != null) { strSql1.Append("tag1,"); strSql2.Append("'" + model.tag1 + "',"); } if (model.tag2 != null) { strSql1.Append("tag2,"); strSql2.Append("'" + model.tag2 + "',"); } if (model.tag3 != null) { strSql1.Append("tag3,"); strSql2.Append("'" + model.tag3 + "',"); } if (model.tag4 != null) { strSql1.Append("tag4,"); strSql2.Append("'" + model.tag4 + "',"); } if (model.tag5 != null) { strSql1.Append("tag5,"); strSql2.Append("'" + model.tag5 + "',"); } strSql.Append("insert into BatteryCata("); strSql.Append(strSql1.ToString().Remove(strSql1.Length - 1)); strSql.Append(")"); strSql.Append(" values ("); strSql.Append(strSql2.ToString().Remove(strSql2.Length - 1)); strSql.Append(")"); int rows = DbHelperSQL.ExecuteSql(strSql.ToString()); if (rows > 0) { return(true); } else { return(false); } }
/// <summary> /// 更新一条数据 /// </summary> public bool Update(MesDBAccess.Model.BatteryCataModel model) { StringBuilder strSql = new StringBuilder(); strSql.Append("update BatteryCata set "); if (model.palletCataID != null) { strSql.Append("palletCataID='" + model.palletCataID + "',"); } if (model.fenrongZone != null) { strSql.Append("fenrongZone='" + model.fenrongZone + "',"); } if (model.mark != null) { strSql.Append("mark='" + model.mark + "',"); } else { strSql.Append("mark= null ,"); } if (model.tag1 != null) { strSql.Append("tag1='" + model.tag1 + "',"); } else { strSql.Append("tag1= null ,"); } if (model.tag2 != null) { strSql.Append("tag2='" + model.tag2 + "',"); } else { strSql.Append("tag2= null ,"); } if (model.tag3 != null) { strSql.Append("tag3='" + model.tag3 + "',"); } else { strSql.Append("tag3= null ,"); } if (model.tag4 != null) { strSql.Append("tag4='" + model.tag4 + "',"); } else { strSql.Append("tag4= null ,"); } if (model.tag5 != null) { strSql.Append("tag5='" + model.tag5 + "',"); } else { strSql.Append("tag5= null ,"); } int n = strSql.ToString().LastIndexOf(","); strSql.Remove(n, 1); strSql.Append(" where batteryCataCode='" + model.batteryCataCode + "' "); int rowsAffected = DbHelperSQL.ExecuteSql(strSql.ToString()); if (rowsAffected > 0) { return(true); } else { return(false); } }
/// <summary> /// 是否组盘入库允许 /// </summary> /// <param name="port"></param> /// <param name="palletID"></param> /// <param name="reStr"></param> /// <returns></returns> private bool AsrsCheckinGroupEnabled(AsrsPortalModel port, string palletID, ref string reStr) { int step = 0; if (!port.MesAcc.GetStep(palletID, out step, ref reStr)) { Console.WriteLine("在组盘入库判断过程中,查询托盘步号失败,因为:" + reStr); return(false); } if (port.PortinBufCapacity < 2) { return(true); } else //只有入口最大允许缓存数量大于1时才考虑库区,批次 { if (port.PalletBuffer.Count() > 0) { //1 判断是否同一个库区 string lastPalletID = port.PalletBuffer[0]; string lastCata = lastPalletID.Substring(0, 4); string cata = palletID.Substring(0, 4); int lastStep = 0; if (!port.MesAcc.GetStep(lastPalletID, out lastStep, ref reStr)) { return(false); } string areaLast = port.AsrsCtl.GetAreaToCheckin(lastPalletID, lastStep).ToString(); // AsrsModel.EnumLogicArea.注液高温区.ToString(); // areaLast=SysCfg.SysCfgModel.asrsStepCfg.AsrsAreaSwitch(lastStep); string areaCur = port.AsrsCtl.GetAreaToCheckin(palletID, step).ToString(); //AsrsModel.EnumLogicArea.注液高温区.ToString(); ; // areaCur=SysCfg.SysCfgModel.asrsStepCfg.AsrsAreaSwitch(step); if (areaLast != areaCur) { reStr = string.Format("托盘{0}待进入的立库分区{1},跟当前缓存托盘待进入的分区{2}不同", palletID, areaCur, areaLast); return(false); } if (step > 0) { //2 是否同批 string batchLast = ""; string batch = ""; if (!port.MesAcc.GetTrayCellLotNO(palletID, out batch, ref reStr)) { return(false); } if (!port.MesAcc.GetTrayCellLotNO(lastPalletID, out batchLast, ref reStr)) { return(false); } if (batchLast != batch) { reStr = string.Format("托盘{0} 批次{1},与入口缓存的托盘{2} 批次{3}不同", palletID, batch, lastPalletID, batchLast); return(false); } ////3 是否同型号 //if (port.NodeID == "2011" || port.NodeID == "2015" || port.NodeID == "2019") //{ // if (lastCata != cata) // { // return false; // } //} } else { //空筐,只判断筐子类型 MesDBAccess.BLL.BatteryCataBll batteryCataBll = new MesDBAccess.BLL.BatteryCataBll(); MesDBAccess.Model.BatteryCataModel batCata = batteryCataBll.GetModel(cata); if (batCata == null) { reStr = "不存在的电池型号配置:" + cata; Console.Write(reStr); return(false); } if (batCata.palletCataID == "A筐") { if ((port.NodeID != "2013") && (port.NodeID != "2017")) { return(false); } } else if (batCata.palletCataID == "B筐") { if (port.NodeID != "2021") { return(false); } } else { reStr = "不存在的筐类型配置:" + batCata.palletCataID; return(false); } } return(true); } return(true); } }