示例#1
0
        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);
        }
示例#2
0
        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());
            }
        }
示例#3
0
        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());
            }
        }
示例#4
0
 /// <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);
 }
示例#5
0
        /// <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);
            }
        }
示例#6
0
        /// <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);
            }
        }
示例#7
0
        /// <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);
            }
        }
示例#8
0
        /// <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);
            }
        }