1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using UFIDA.U9.BC.BaseData;
- using UFSoft.UBF.Business;
- namespace UFIDA.U9.Cust.Kusi.CJJ.Plugin.BE.RcvRptDoc
- {
- public class UpdateBarCode : 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.Complete.RCVRpt.RcvRptDoc holder = key.GetEntity() as UFIDA.U9.Complete.RCVRpt.RcvRptDoc;
- if (holder == null)
- return;
- #endregion
- //弃审时更新条码库位存储信息
- if (holder.DocState == UFIDA.U9.Complete.Enums.RcvRptDocStateEnum.Opened
- && holder.OriginalData != null
- && holder.OriginalData.DocState == UFIDA.U9.Complete.Enums.RcvRptDocStateEnum.Approved)
- {
- foreach (var line in holder.RcvRptDocLines)
- {
- BarCodeUpdater.Update(line.ID, "UFIDA.U9.Complete.RCVRpt.RcvRptDocLine");
- }
- }
-
- if (holder.Direction.Value == MO.Enums.CompleteRptDirectionEnum.WhShipment.Value)
- {
- //审核时出入库单据审核控制条码仓
- if (holder.DocState == UFIDA.U9.Complete.Enums.RcvRptDocStateEnum.Approved
- && holder.OriginalData != null
- && holder.OriginalData.DocState == UFIDA.U9.Complete.Enums.RcvRptDocStateEnum.Approving)
- {
- foreach (var line in holder.RcvRptDocLines)
- {
- if (line.Wh != null)
- {
- if (line.Wh.DescFlexField.PrivateDescSeg1.ToUpper().Equals("TRUE") && !Base.Context.LoginUser.Contains("PDA"))
- {
- throw new Exception(string.Format("单号{0},{1}行的存储地点为条码管理,请扫码出货。", holder.DocNo, line.LineNum));
- }
- }
- }
- }
- }
- }
- }
- }
|