Ejemplo n.º 1
0
        private void ucPostPayInfo_SearchOrderButtonClick(object sender, RoutedEventArgs e)
        {
            var payInfo = ucPostPayInfo.DataContext as PayInfoVM;

            if (payInfo != null && !string.IsNullOrEmpty(payInfo.SOSysNo))
            {
                btnSave.IsEnabled = false;
                int soSysNo;
                if (int.TryParse(payInfo.SOSysNo, out soSysNo))
                {
                    facade.LoadForEdit(soSysNo, result =>
                    {
                        postpayVM = result;
                        this.LayoutRoot.DataContext = postpayVM;

                        var confirmedOrder = result.ConfirmedOrderList.FirstOrDefault(s => s.SOSysNo == soSysNo);
                        btnSave.IsEnabled  = (confirmedOrder.ConfirmStatus == PostIncomeConfirmStatus.Related);

                        //计算收款单剩余金额并设置提示信息
                        //tblReminAmtPrompMessage.Text = string.Format("提示:收款单剩余金额为{0}元,请注意!",
                        //    ConstValue.Invoice_ToCurrencyString(result.RemainAmt));
                        tblReminAmtPrompMessage.Text = string.Format(ResPostPay.Msg_BillAmountIsZero,
                                                                     ConstValue.Invoice_ToCurrencyString(result.RemainAmt));

                        postpayVM.PayInfo.ValidationErrors.Clear();
                    });
                }
            }
        }
Ejemplo n.º 2
0
        public void LoadForEdit(int soSysNo, Action <PostPayVM> callback)
        {
            string relativeUrl = string.Format("/InvoiceService/PostPay/Load/{0}", soSysNo);

            restClient.Query <PostPayResp>(relativeUrl, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                PostPayVM postpayVM          = new PostPayVM();
                postpayVM.ConfirmedOrderList = args.Result.ConfirmedOrderList.Convert <PostIncomeConfirmInfo, ConfirmedOrderVM, List <ConfirmedOrderVM> >((s, t) =>
                {
                    t.ConfirmStatus = s.Status;
                    t.SOSysNo       = s.ConfirmedSoSysNo;
                })
                                               .Where(w => w.ConfirmStatus != PostIncomeConfirmStatus.Cancel)
                                               .ToList();
                postpayVM.PayInfo = args.Result.SOBaseInfo.Convert <SOBaseInfo, PayInfoVM>((s, t) =>
                {
                    t.SOSysNo        = s.SysNo.ToString();
                    t.PrepayAmt      = s.PrepayAmount ?? 0;
                    t.ReceivableAmt  = s.ReceivableAmount;
                    t.SOTotalAmt     = s.SOTotalAmount;
                    t.GiftCardPayAmt = s.GiftCardPay ?? 0;
                });
                postpayVM.RefundInfo = new RefundInfoVM();
                postpayVM.RemainAmt  = args.Result.RemainAmt;

                callback(postpayVM);
            });
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 创建PostPay
        /// </summary>
        /// <param name="postPayVM"></param>
        /// <param name="callback"></param>
        public void Create(PostPayVM postPayVM, Action callback)
        {
            CheckPostPayReq req = postPayVM.ConvertVM <PostPayVM, CheckPostPayReq>((s, t) =>
            {
                t.IsForceCheck = s.IsForceCheck;
                t.PayReq       = s.PayInfo.ConvertVM <PayInfoVM, PayInfoReqData>();
                t.RefundReq    = s.RefundInfo.ConvertVM <RefundInfoVM, RefundInfoReqData>();
            });
            string relativeUrl = "/InvoiceService/PostPay/Create";

            restClient.Create <object>(relativeUrl, req, (obj, args) =>
            {
                if (args.FaultsHandle())
                {
                    return;
                }
                callback();
            });
        }
Ejemplo n.º 4
0
 private void NewPostPayDataContext()
 {
     postpayVM = new PostPayVM();
     this.LayoutRoot.DataContext = postpayVM;
 }