Exemplo n.º 1
0
        public void HandleEvent(EIMSInvoiceInfoMessage eventMessage)
        {
            if (eventMessage.IsPage)
            {
                //分页查询返点信息
                InvoiceCriteria msg = new InvoiceCriteria();
                msg.PM             = eventMessage.PMSysNo.ToString();
                msg.VendorNumber   = eventMessage.VendorSysNo.ToString();
                msg.CompanyCode    = eventMessage.CompanyCode;
                msg.ShowLineNumber = eventMessage.PageSize;
                msg.CurrentPage    = eventMessage.PageIndex + 1;
                msg.ReceiveType    = eventMessage.ReceiveType;

                IEIMSInterfaceService service = WCFAdapter <IEIMSInterfaceService> .GetProxy();

                EIMSInvoiceResult result = service.GetEIMSInvoiceListForIPP(msg);

                eventMessage.ResultList = new List <ReturnPointMsg>();
                if (result.EIMSInvoiceList.Count > 0)
                {
                    result.EIMSInvoiceList.ForEach(a =>
                                                   eventMessage.ResultList.Add(new ReturnPointMsg()
                    {
                        SysNo              = a.InvoiceNumber,
                        ReturnPointName    = a.InvoiceName,
                        ReturnPoint        = a.OriginalAmount,
                        RemnantReturnPoint = a.CurrentAmount
                    })
                                                   );
                }
                eventMessage.TotalCount = result.Records;
            }
            else
            {
                //根据sysno查询返点信息
                IEIMSInterfaceService service = WCFAdapter <IEIMSInterfaceService> .GetProxy();

                EIMSInvoiceInfo result = service.GetEIMSInvoiceInfo(eventMessage.InvoiceNumber, eventMessage.CompanyCode);
                eventMessage.Result = new ReturnPointMsg()
                {
                    SysNo              = result.InvoiceNumber,
                    ReturnPointName    = result.InvoiceName,
                    ReturnPoint        = result.OriginalAmount,
                    RemnantReturnPoint = result.CurrentAmount
                };
            }
        }
        public void HandleEvent(EIMSInvoiceInfoForConsignMessage eventMessage)
        {
            IEIMSInterfaceService service = WCFAdapter <IEIMSInterfaceService> .GetProxy();

            EIMSInvoiceInfo result = service.GetEIMSInvoiceInfoByInvoiceNumberAndReceiveType(eventMessage.InvoiceNumber, eventMessage.CompanyCode, eventMessage.ReceiveType);

            if (result != null)
            {
                eventMessage.IsError            = false;
                eventMessage.PM                 = result.PM;
                eventMessage.RemnantReturnPoint = result.CurrentAmount;
                eventMessage.SysNo              = result.InvoiceNumber;
                eventMessage.ReturnPointName    = result.InvoiceName;
                eventMessage.VendorSysNo        = result.VendorNumber;
            }
            else
            {
                eventMessage.IsError = true;
            }
        }
Exemplo n.º 3
0
        public EIMSInvoiceInfo QueryInvoiceList(string invoiceNumber)
        {
            EIMSInvoiceInfo entity = new EIMSInvoiceInfo();

            entity.EIMSList = EIMSListQuery(invoiceNumber);

            string invoiceNumberStr = string.Empty;

            for (int i = 0; i < entity.EIMSList.Count; i++)
            {
                var extend = entity.EIMSList[i].EIMSInvoiceInputExtendList;
                if (extend == null || extend.Count == 0)
                {
                    continue;
                }
                for (int j = 0; j < extend.Count; j++)
                {
                    if (!string.IsNullOrEmpty(invoiceNumberStr))
                    {
                        invoiceNumberStr += ".";
                    }
                    invoiceNumberStr += extend[j].InvoiceNumber;
                }
            }

            EIMSInvoiceEntryQueryFilter filter = new EIMSInvoiceEntryQueryFilter()
            {
                InvoiceNumber = invoiceNumberStr,
                PagingInfo    = new PagingInfo {
                    PageIndex = 0, PageSize = int.MaxValue
                }
            };

            entity.InvoiceInfoList = InvoiceInfoListQuery(filter);

            entity.OldEIMSList = entity.EIMSList;

            return(entity);
        }