public SubmitEVoucherResponse SubmitEVoucher(SubmitEVoucherRequest _request) { SubmitEVoucherResponse response = new SubmitEVoucherResponse(); _request.BuyType = ""; if (_request.Image != "") { var rawBase64 = _request.Image.Split(','); if (rawBase64.Length >= 2) { _request.Image = rawBase64[1]; } } string validateMsg = ValidateSubmitEVoucher(_request); if (string.IsNullOrEmpty(validateMsg)) { var savedImage = ImageHelper.SaveBase64AsFile(_request.Image); if (!string.IsNullOrEmpty(savedImage.ErrorStatus) || string.IsNullOrEmpty(savedImage.SaveFilePath)) { response.StatusCode = 500; response.ErrorType = "filesave-error"; response.ErrorMessage = savedImage.ErrorStatus; return(response); } if (string.IsNullOrEmpty(_request.VoucherNo)) { //New var newResponse = NewEVoucher(_request, savedImage); return(newResponse); } else { //Update var updateResponse = UpdateEVoucher(_request, savedImage); return(updateResponse); } } else { response.StatusCode = 400; response.ErrorType = "validation-error"; response.ErrorMessage = validateMsg; } return(response); }
public SubmitEVoucherResponse NewEVoucher(SubmitEVoucherRequest _request, SaveImageDTO savedImage) { SubmitEVoucherResponse response = new SubmitEVoucherResponse(); var vList = (from v in db_Evoucher.TblEvouchers select new { v.Id } ).ToList(); int maxNo = 1; if (vList != null && vList.Count > 0) { maxNo = vList.Max(x => x.Id); maxNo++; } TblEvoucher evoucher = new TblEvoucher { BuyType = _request.BuyType, CreatedBy = LoginInformation.UserName, CreatedOn = DateTime.Now, Description = _request.Description, ExpiryDate = _request.ExpiryDate, GiftPerUserLimit = _request.GiftPerUserLimit, MaxLimit = _request.MaxLimit, PaymentMethod = _request.PaymentMethod, SellingDiscount = _request.SellingDiscount ?? 0, SellingPrice = _request.SellingPrice, Status = _request.Status, VoucherAmount = _request.VoucherAmount, Title = _request.Title, VoucherNo = "EV-" + maxNo.ToString().PadLeft(4, '0'), ImagePath = savedImage.SaveFilePath, Quantity = _request.Quantity }; db_Evoucher.TblEvouchers.Add(evoucher); db_Evoucher.SaveChanges(); response.EVoucherNo = evoucher.VoucherNo; return(response); }
public SubmitEVoucherResponse UpdateEVoucher(SubmitEVoucherRequest _request, SaveImageDTO savedImage) { SubmitEVoucherResponse response = new SubmitEVoucherResponse(); var tblEvoucher = (from v in db_Evoucher.TblEvouchers where v.VoucherNo == _request.VoucherNo select v ).FirstOrDefault(); if (tblEvoucher == null) { response.StatusCode = 404; response.ErrorType = "Record-Not Found"; response.ErrorMessage = "No Voucher Found."; return(response); } tblEvoucher.BuyType = _request.BuyType; tblEvoucher.CreatedBy = LoginInformation.UserName; tblEvoucher.CreatedOn = DateTime.Now; tblEvoucher.Description = _request.Description; tblEvoucher.ExpiryDate = _request.ExpiryDate; tblEvoucher.GiftPerUserLimit = _request.GiftPerUserLimit; tblEvoucher.MaxLimit = _request.MaxLimit; tblEvoucher.PaymentMethod = _request.PaymentMethod; tblEvoucher.SellingDiscount = _request.SellingDiscount ?? 0; tblEvoucher.SellingPrice = _request.SellingPrice; tblEvoucher.Status = _request.Status; tblEvoucher.VoucherAmount = _request.VoucherAmount; tblEvoucher.Title = _request.Title; tblEvoucher.ImagePath = savedImage.SaveFilePath; tblEvoucher.Quantity = _request.Quantity; db_Evoucher.SaveChanges(); response.EVoucherNo = tblEvoucher.VoucherNo; return(response); }