示例#1
0
        public async Task <bool> AddUpdateChangeOfRatesAsync(deposit_changeofrates model)
        {
            try
            {
                if (model.ChangeOfRateId > 0)
                {
                    var itemToUpdate = await _dataContext.deposit_changeofrates.FindAsync(model.ChangeOfRateId);

                    _dataContext.Entry(itemToUpdate).CurrentValues.SetValues(model);
                }
                else
                {
                    await _dataContext.deposit_changeofrates.AddAsync(model);
                }
                return(await _dataContext.SaveChangesAsync() > 0);
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
示例#2
0
        public async Task <ActionResult <ChangeOfRatesRegRespObj> > AddUpDateChangeOfRates([FromBody] AddUpdateChangeOfRatesObj model)
        {
            try
            {
                var user = await _identityServer.UserDataAsync();

                deposit_changeofrates item = null;
                if (model.ChangeOfRateId > 0)
                {
                    item = await _repo.GetChangeOfRatesByIdAsync(model.ChangeOfRateId);

                    if (item == null)
                    {
                        return new ChangeOfRatesRegRespObj
                               {
                                   Status = new APIResponseStatus {
                                       IsSuccessful = false, Message = new APIResponseMessage {
                                           FriendlyMessage = "Item does not Exist"
                                       }
                                   }
                               }
                    }
                    ;
                }

                var domainObj = new deposit_changeofrates();

                domainObj.ChangeOfRateId  = model.ChangeOfRateId > 0 ? model.ChangeOfRateId : 0;
                domainObj.Structure       = model.Structure;
                domainObj.Product         = model.Product;
                domainObj.CurrentRate     = model.CurrentRate;
                domainObj.ProposedRate    = model.ProposedRate;
                domainObj.Reasons         = model.Reasons;
                domainObj.ApproverName    = model.ApproverName;
                domainObj.ApproverComment = model.ApproverComment;
                domainObj.Active          = true;
                domainObj.CreatedOn       = DateTime.Today;
                domainObj.CreatedBy       = user.UserName;
                domainObj.Deleted         = false;
                domainObj.UpdatedOn       = model.ChangeOfRateId > 0 ? DateTime.Today : DateTime.Today;
                domainObj.UpdatedBy       = user.UserName;


                var isDone = await _repo.AddUpdateChangeOfRatesAsync(domainObj);

                return(new ChangeOfRatesRegRespObj
                {
                    ChangeOfRateId = domainObj.ChangeOfRateId,
                    Status = new APIResponseStatus {
                        IsSuccessful = isDone ? true : false, Message = new APIResponseMessage {
                            FriendlyMessage = isDone ? "successful" : "Unsuccessful"
                        }
                    }
                });
            }
            catch (Exception ex)
            {
                var errorCode = ErrorID.Generate(5);
                _logger.Error($"ErrorID : {errorCode} Ex : {ex?.Message ?? ex?.InnerException?.Message} ErrorStack : {ex?.StackTrace}");
                return(new ChangeOfRatesRegRespObj
                {
                    Status = new APIResponseStatus {
                        IsSuccessful = false, Message = new APIResponseMessage {
                            FriendlyMessage = "Error Occurred", TechnicalMessage = ex?.Message, MessageId = errorCode
                        }
                    }
                });
            }
        }