Example #1
0
        /// <summary>
        /// 加载检查信息
        /// </summary>
        private void LoadCheckReasonMemo()
        {
            if (isEdit && infoVM.POItems.Count == 1 && infoVM.POItems[0].ItemSysNo.HasValue)
            {
                serviceFacade.LoadPurchaseOrderItemInfo(infoVM.POItems[0].ItemSysNo.Value.ToString(), (obj, args) =>
                {
                    if (args.FaultsHandle())
                    {
                        return;
                    }
                    PurchaseOrderItemInfo item      = args.Result;
                    Dictionary <string, string> dic = new Dictionary <string, string>();
                    CodeNamePairHelper.GetList("PO", "PartlyReceiveReason", (obj2, args2) =>
                    {
                        if (args2.FaultsHandle())
                        {
                            return;
                        }
                        args2.Result.ForEach(x =>
                        {
                            dic.Add(x.Code, x.Name);
                        });

                        int Quantity           = 0;
                        string ReasonType      = dic.First(a => a.Key == "-1").Value;
                        string CheckReasonMemo = "";
                        bool Message           = false;
                        if (item != null)
                        {
                            if (item.CheckStatus != PurchaseOrdeItemCheckStatus.UnCheck)
                            {
                                Quantity = item.Quantity.Value;
                            }
                            if (item.CheckReasonMemo != null && item.CheckReasonMemo.Trim() != "")
                            {
                                if (dic.Any(a => a.Value != item.CheckReasonMemo.Trim()))
                                {
                                    CheckReasonMemo = item.CheckReasonMemo.Trim();
                                }
                                else
                                {
                                    ReasonType = dic.First(a => a.Value != item.CheckReasonMemo.Trim()).Value;
                                }
                            }
                            //TODO:调用Invoice接口:采购单是否有预付款:
                            //if (QueryProviderFactory.GetQueryProvider<IQueryPO>().GetPayItemByPaySysno(condition.SysNo.Value))
                            //{
                            //    Message = true;
                            //    Quantity = item.Quantity.Value;
                            //}

                            //return Json(new
                            //{
                            //    Quantity = Quantity,
                            //    ReasonType = ReasonType,
                            //    CheckReasonMemo = CheckReasonMemo,
                            //    Message = Message
                            //});

                            this.txtQuantity.Text      = Quantity.ToString();
                            this.txtReasonType.Text    = ReasonType.ToString();
                            this.txtReasonMemo.Text    = CheckReasonMemo;
                            this.lblReasonMessage.Text = (Message == true ? ResPurchaseOrderMaintain.InfoMsg_CheckReason_PrePay : string.Empty);
                        }
                    });
                });
            }
        }