コード例 #1
0
        private async Task OnSubmit()
        {
            try
            {
                IsBusy = true;

                RepackRequestModel context = new RepackRequestModel
                {
                    Account     = _packingSlip.Account.Key,
                    Note        = _note,
                    PackingSlip = _packingSlip.Key,
                    RecId       = _packingSlip.RecId.ToLong(),
                    SalesOrder  = _packingSlip.Order.Key,
                };

                var modelList = new List <RepackModel>();
                foreach (var packingSlipWithRePacking in _packingSlip.Lines.Where(p => p.PackingReasonList?.Any() ?? false))
                {
                    var rpackModel = new RepackModel
                    {
                        LineItem = packingSlipWithRePacking.Key,
                        Reasons  = packingSlipWithRePacking.PackingReasonList.Select(p => new PackReason
                        {
                            Action        = p.Action.Key,
                            InventTransId = (int)packingSlipWithRePacking.InventTransId.ToLong(),
                            Quantity      = p.Quantity,
                            Reason        = p.Reason.Key
                        }).ToList()
                    };
                    modelList.Add(rpackModel);
                }

                context.Data = modelList;
                var submitResponse = await Api.RepackPackingSlip(context);

                if (!submitResponse.Successful.GetValueOrDefault())
                {
                    await Alert.DisplayApiCallError(submitResponse.ExceptionMessage, submitResponse.ValidationErrors,
                                                    Translate.Get(nameof(AppResources.CouldNotSubmitRepacking)));

                    return;
                }

                await Nav.Nav.PopAsync();
            }
            catch (Exception e)
            {
                await AlertService.Instance.DisplayError(e);
            }
            finally
            {
                IsBusy = false;
            }
        }
コード例 #2
0
 public async Task <ApiResponseOfString> RepackPackingSlip(RepackRequestModel model)
 {
     return(await AXClient.Instance.RepackPackingSlipAsync(model)
            .ConfigureAwait(false));
 }