Exemplo n.º 1
0
        /// <summary>
        /// 单独处理ASR订单
        /// </summary>
        public static D_ASRRool ASRChuLi(DAT_Production datps, Data.FirstServerDbcontext firstServerDbcontext)
        {
            try
            {
                List <D_ASRRool> ASRGZ = firstServerDbcontext.D_ASRRool.Where(T => T.IsDeleted == 0).ToList();

                List <D_ASRRool> Mz = new List <D_ASRRool>();
                foreach (var ASRitem in ASRGZ)
                {
                    if (datps.SCYSPD.Substring(0, ASRitem.KCount) == ASRitem.KHJC && datps.WPSXLB == ASRitem.PinLei.Trim())
                    {
                        Mz.Add(ASRitem);
                    }
                }

                var jz = Mz.OrderByDescending(O => O.YouXianJi).First();

                return(jz);
            }
            catch (Exception ex)
            {
                //new Core.JiLuException(datp.SCYSPD, "处理ASR", -100, ex.Message);

                return(null);
            }
        }
Exemplo n.º 2
0
 public S_HandleMarkData(ILogger <S_HandleMarkData> logger, Data.FirstServerDbcontext firstServerDbcontext)
 {
     Logger = logger;
     FirstServerDbcontext = firstServerDbcontext;
 }
Exemplo n.º 3
0
        /// <summary>
        /// 处理洗标数据
        /// </summary>
        /// <returns></returns>
        public string HandlerData(string SCZSBH, Data.FirstServerDbcontext firstServerDbcontext, string BLLink)
        {
            try
            {
                var DATList = firstServerDbcontext.DAT_Production.Where(T => T.SCZSBH == SCZSBH).ToList();

                foreach (var item in DATList)
                {
                    string SCGGDH = item.SCGGDH;


                    DataSet dszdynr = new DataSet();

                    var removeList = firstServerDbcontext.BLZDYNR.Where(T => T.scggdh == SCGGDH).ToList();

                    //如果数据库中有数据  则直接删除
                    if (removeList.Count > 0)
                    {
                        firstServerDbcontext.BLZDYNR.RemoveRange();
                        firstServerDbcontext.SaveChanges();
                    }

                    int BLCodeCount = 0;

                    GetBLCodeSql = string.Format(GetBLCodeSql, SCGGDH);


                    ConnectionConfig LinkConfig = new ConnectionConfig();
                    LinkConfig.ConnectionString = BLLink;

                    LinkConfig.IsAutoCloseConnection = true;//是否自动释放数据库,设为true我们不需要close或者Using的操作,

                    LinkConfig.InitKeyType = InitKeyType.Attribute;

                    LinkConfig.DbType = SqlSugar.DbType.Oracle;
                    List <BLZDYNR> BLCODEList = new List <BLZDYNR>();
                    using (var BLDB = new SqlSugarClient(LinkConfig))
                    {
                        BLCODEList = BLDB.SqlQueryable <BLZDYNR>(GetBLCodeSql).ToList();
                    }

                    foreach (var GYItem in BLCODEList)
                    {
                        GYItem.scggdh = SCGGDH;
                    }


                    if (BLCODEList.Count > 0)
                    {
                        firstServerDbcontext.BLZDYNR.AddRange(BLCODEList);

                        BLCodeCount += firstServerDbcontext.SaveChanges();
                    }


                    Tuple <string, string> tuple = new Tuple <string, string>("获取BL工艺代码并处理数据", $"导入成功,共导入{BLCodeCount}行工艺代码!");

                    #region 处理数据

                    SqlParameter[] Param =
                    {
                        new SqlParameter("@ID",      SqlDbType.VarChar),
                        new SqlParameter("@cRESULT", SqlDbType.VarChar
                                         )
                    };

                    Param[0].Value = item.ID;

                    Param[1].Direction = ParameterDirection.Output;

                    ExecuteNonQueryAsync(firstServerDbcontext, "P_MarkPrint_ProductionNEW", Param);

                    if (item.SCYSPD.Substring(0, 3) == "ASR")
                    {
                        var datobj = item;

                        var xbobj = ASRChuLi(datobj, firstServerDbcontext);

                        if (xbobj != null)
                        {
                            datobj.PrntXBModelCode = xbobj.XBMODEL;

                            firstServerDbcontext.DAT_Production.Update(datobj);

                            firstServerDbcontext.SaveChanges();
                        }
                    }

                    #endregion

                    #region 判断是否是ASR订单  如果是   引入 D_ASRRool表的洗标分配逻辑

                    #endregion
                }

                return("success");
            }
            catch (Exception ex)
            {
                //Core.XinXiJilu.JiLuRiZhi(SCZSBH, "获取BL工艺代码并处理数据", -1, ex.Message);

                return("error:" + ex.Message);
            }
        }