123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using UFSoft.UBF.Business;
- namespace UFIDA.U9.Cust.Kusi.CJJ.Plugin.BE.InventSheetLine
- {
- public class DeleteBarCode : UFSoft.UBF.Eventing.IEventSubscriber
- {
- public void Notify(params object[] args)
- {
- #region 从事件参数中取得当前业务实体
- if (args == null || args.Length == 0 || !(args[0] is UFSoft.UBF.Business.EntityEvent))
- return;
- BusinessEntity.EntityKey key = ((UFSoft.UBF.Business.EntityEvent)args[0]).EntityKey;
- if (key == null)
- return;
- UFIDA.U9.InvDoc.InventorySheet.InventSheetLine holder = key.GetEntity() as UFIDA.U9.InvDoc.InventorySheet.InventSheetLine;
- if (holder == null)
- return;
- #endregion
- ////弃审时更新条码库位存储信息
- //if (holder.Status == UFIDA.U9.InvDoc.PrdEndCheck.CheckStatus.Opening
- // && holder.OriginalData != null
- // && holder.OriginalData.Status == UFIDA.U9.InvDoc.PrdEndCheck.CheckStatus.Approved)
- //{
- // foreach (var line in holder.InventSheetLine)
- // {
- // BarCodeUpdater.Update(line.ID, "UFIDA.U9.InvDoc.InventorySheet.InventSheetLine");
- // }
- //}
- using (ISession session = Session.Open())
- {
- UFIDA.U9.BC.BaseData.BarCodeUsed.EntityList tmp = UFIDA.U9.BC.BaseData.BarCodeUsed.Finder.FindAll("UseDocLine.EntityID=@ID and UseDocLine.EntityType=@EntityType order by CreatedOn desc"
- , new UFSoft.UBF.PL.OqlParam[]
- {
- new UFSoft.UBF.PL.OqlParam(holder.ID),
- new UFSoft.UBF.PL.OqlParam("UFIDA.U9.InvDoc.InventorySheet.InventSheetLine")
- });
- if (tmp != null && tmp.Count > 0)
- {
- foreach (var barCodeUsed in tmp)
- {
- string barCodeTmp = barCodeUsed.BarCode;
- barCodeUsed.Remove();
- session.Commit();
- var barCodeUsedTmp = UFIDA.U9.BC.BaseData.BarCodeUsed.Finder.Find(string.Format("BarCode='{0}' order by CreatedOn desc", barCodeTmp));
- string binid = "";
- string bincode = "";
- string binname = "";
- string whid = "";
- string whcode = "";
- string whname = "";
- if (barCodeUsedTmp != null)
- {
- binid = barCodeUsedTmp["Cust4Binid"].ToString();
- bincode = barCodeUsedTmp["Cust4Bincode"].ToString();
- binname = barCodeUsedTmp["Cust4Binname"].ToString();
- whid = barCodeUsedTmp["Cust4Whid"].ToString();
- whcode = barCodeUsedTmp["Cust4Whcode"].ToString();
- whname = barCodeUsedTmp["Cust4Whname"].ToString();
- }
- else
- {
- barCodeUsedTmp = barCodeUsed;
- }
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Binid", binid);
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Bincode", bincode);
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Binname", binname);
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Whcode", whcode);
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Whname", whname);
- barCodeUsedTmp.BarCodeMaster.SetValue("Cust4Whid", whid);
- }
- }
- session.Commit();
- }
- ////审核时出入库单据审核控制条码仓--没有PDA审核,不需要管控,废弃。
- //if (holder.Status == UFIDA.U9.InvDoc.PrdEndCheck.CheckStatus.Approved
- // && holder.OriginalData != null
- // && holder.OriginalData.Status == UFIDA.U9.InvDoc.PrdEndCheck.CheckStatus.Approving)
- //{
- // if (holder.Wh != null)
- // {
- // if (holder.Wh.DescFlexField.PrivateDescSeg1.ToUpper().Equals("TRUE") && !Base.Context.LoginUser.Contains("PDA"))
- // {
- // throw new Exception(string.Format("单号{0}的存储地点为条码管理,请扫码出货。", holder.DocNo));
- // }
- // }
- //}
- }
- }
- }
|