public async Task <CourseSubscribeInputModel> CapturePaymentAsync(string token) { PayPalEnvironment env = GetPayPalEnvironment(options.CurrentValue); PayPalHttpClient client = new PayPalHttpClient(env); OrdersCaptureRequest request = new(token); request.RequestBody(new OrderActionRequest()); request.Prefer("return=representation"); try { HttpResponse response = await client.Execute(request); Order result = response.Result <Order>(); PurchaseUnit purchaseUnit = result.PurchaseUnits.First(); Capture capture = purchaseUnit.Payments.Captures.First(); // $"{inputModel.CourseId}/{inputModel.UserId}" string[] customIdParts = purchaseUnit.CustomId.Split('/'); int courseId = int.Parse(customIdParts[0]); string userId = customIdParts[1]; return(new CourseSubscribeInputModel { CourseId = courseId, UserId = userId, Paid = new(Enum.Parse <Currency>(capture.Amount.CurrencyCode), decimal.Parse(capture.Amount.Value, CultureInfo.InvariantCulture)), TransactionId = capture.Id, PaymentDate = DateTime.Parse(capture.CreateTime, CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal | DateTimeStyles.AdjustToUniversal), PaymentType = "Paypal" }); }
public ActionResult _AddPurchaseUnit(int id) { PurchaseBasket basket = GetPurchaseBasket(); Stock stock = _stockService.GetStock(id); var ru = new PurchaseUnit { Stock = stock, StockId = id, PurchasedDate = basket.StartDate, //UnitId = basket.PurchasedUnits.NextIndex(c => c.UnitId), RetailCost = stock.Model.RetailPrice, CustomerAccountId = basket.CustomerAccountId }; if ((ru.Stock.ProductLifeCycleStatus.ProductLifeCycleActions & ProductLifeCycleActions.CanBeSold) != ProductLifeCycleActions.CanBeSold) { return(ReturnJsonError("Unit selected is not available. Status is : " + ru.Stock.ProductLifeCycleStatus.Description)); } if (basket.PurchasedUnits.Any(u => u.StockId == id)) { return(ReturnJsonFormSuccess()); } basket.PurchasedUnits.Add(ru); AddContractsToUnits(basket); UpdateBasket(basket); return(ReturnJsonFormSuccess()); }
/// <summary> /// 采购商的经营范围的Code集合 /// </summary> /// <param name="purchaseUnit"></param> /// <returns></returns> public List <string> GetBusinessScopeCodesByPurchaseUnit(PurchaseUnit purchaseUnit) { try { if (purchaseUnit != null) { var gSPLicense = BusinessHandlerFactory.GSPLicenseBusinessHandler .Get(purchaseUnit.GSPLicenseId); if (gSPLicense == null) { return(new List <string>()); } var ids = gSPLicense.GMSPLicenseBusinessScopes.Select(p => p.BusinessScopeId).AsQueryable(); var result = from i in BusinessHandlerFactory.BusinessScopeBusinessHandler.Queryable join j in ids on i.Id equals j select i.Name; //var ids = gSPLicense.GMSPLicenseBusinessScopes.Where(r => r.GSPLicenseId.Equals(gSPLicense.Id)).Select(p => p.BusinessScopeId).AsQueryable(); //var result = from id in ids join j in BusinessHandlerFactory.BusinessScopeBusinessHandler.Queryable on id equals j.Id select j.Name; return(result.ToList()); } else { return(BusinessHandlerFactory.BusinessScopeBusinessHandler.Queryable.Select(p => p.Name).ToList()); } } catch (Exception ex) { return(this.HandleException <List <string> >("获取采购商经营范围失败", ex)); } }
public bool DeletePurchaseUnit(int unitId) { PurchaseUnit pu = GetPurchaseUnit(unitId); TempAccountAsAddPurchaseAccountVM().PurchasedUnits.Remove(pu); return(true); }
/// <summary> /// 采购商的管理分类的Code集合 /// </summary> /// <param name="purchaseUnit"></param> /// <returns></returns> public List <string> GetManageCategoryDetailByPurchaseUnit(PurchaseUnit purchaseUnit) { try { if (purchaseUnit != null) { var gSPLicense = BusinessHandlerFactory.GSPLicenseBusinessHandler .Get(purchaseUnit.GSPLicenseId); if (gSPLicense == null) { return(new List <string>()); } if (gSPLicense.BusinessType != null) { return(gSPLicense.BusinessType.BusinessTypeManageCategoryDetails.Select(p => p.PurchaseManageCategoryDetail.Name).ToList()); } else { return(new List <string>()); } } else { return(BusinessHandlerFactory.PurchaseManageCategoryDetailBusinessHandler.Queryable.Select(p => p.Name).ToList()); } } catch (Exception ex) { return(this.HandleException <List <string> >("获取采购商经营范围失败", ex)); } }
/// <summary> /// 修改一条采购商和审批流程记录 /// </summary> /// <param name="userId"></param> /// <returns></returns public void ModifyPurchaseUnitApproveFlow(PurchaseUnit su, Guid approvalFlowTypeID, Guid userID, string changeNote) { try { if (changeNote.Contains("审批后修改")) { ApprovalFlow af = BusinessHandlerFactory.ApprovalFlowBusinessHandler.GetApproveFlowInstance(approvalFlowTypeID, su.FlowID, userID, changeNote); BusinessHandlerFactory.ApprovalFlowBusinessHandler.Add(af); ApprovalFlowRecord afr = BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.GetApproveFlowRecordInstance(af, userID, changeNote); BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.Add(afr); } if (changeNote.Contains("审批前修改")) { var c = BusinessHandlerFactory.ApprovalFlowBusinessHandler.GetApproveFlowsByFlowID(su.FlowID); if (c.ApprovalFlowTypeId != approvalFlowTypeID || c == null || c.ApprovalFlowTypeId == Guid.Empty) { su.FlowID = Guid.NewGuid(); ApprovalFlow af = BusinessHandlerFactory.ApprovalFlowBusinessHandler.GetApproveFlowInstance(approvalFlowTypeID, su.FlowID, userID, changeNote); BusinessHandlerFactory.ApprovalFlowBusinessHandler.Add(af); ApprovalFlowRecord afr = BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.GetApproveFlowRecordInstance(af, userID, changeNote); BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.Add(afr); } } this.Save(su); this.Save(); } catch (Exception ex) { this.HandleException("修改一条采购商和审批流程记录失败", ex); } }
/// <summary> /// 采购商的经营范围的Code集合 /// </summary> /// <param name="purchaseUnit"></param> /// <returns></returns> public List <string> GetBusinessScopeCodesByPurchaseUnit(PurchaseUnit purchaseUnit) { try { if (purchaseUnit != null) { var gSPLicense = BusinessHandlerFactory.GSPLicenseBusinessHandler .Get(purchaseUnit.GSPLicenseId); if (gSPLicense == null) { return(new List <string>()); } var codes = gSPLicense.GMSPLicenseBusinessScopes.Select(p => p.BusinessScopeCode).AsQueryable(); return(codes.ToList()); } else { return(BusinessHandlerFactory.BusinessScopeBusinessHandler.Queryable.Select(p => p.Name).ToList()); } } catch (Exception ex) { return(this.HandleException <List <string> >("获取采购商经营范围失败", ex)); } }
public ucPurchaseUnit(PurchaseUnit purchaseUnit, bool isEdit) : this() { _purchaseUnit = purchaseUnit; InitEditControl(_purchaseUnit); this._isEditable = isEdit; SetControlIsEdit(isEdit); }
public PurchaseUnitViewModel(PurchaseUnit purchaseUnit) : base(purchaseUnit) { Product = new NameId(purchaseUnit.Product); Status = purchaseUnit.Status; StorePrice = purchaseUnit.StorePrice; UpdatedDate = purchaseUnit.UpdatedDate; Count = purchaseUnit.Count; }
public bool DeletePurchaseUnitContract(int contractId) { Tuple <ServiceContract, PurchaseUnit> tempContratTuple = GetTempPurchaseAccountUnitContractTuple(contractId); ServiceContract contract = tempContratTuple.Item1; PurchaseUnit unit = tempContratTuple.Item2; unit.Contracts.Remove(contract); return(true); }
public void DeletePurchaseUnit(PurchaseUnit purchaseUnit, int toProductLifeCycle, bool refundAmount) { var account = GetAccount(purchaseUnit.CustomerAccountId) as PurchaseAccount; purchaseUnit.Stock.ProductLifeCycleId = toProductLifeCycle; if (refundAmount) { _accountTransactionService.AddAccountTransaction(account.CustomerAccountId, AccountTransactionType.Refund, -purchaseUnit.Total, AccountTransactionInputType.Charge, purchaseUnit.StockId, purchaseUnit.Stock.ManufacturerModel); } _customerAccountRepository.Update(account); }
public void AddContractToPurchaseUnit(PurchaseUnit purhaseUnit, ServiceContract serviceContract) { purhaseUnit.Contracts.Add(serviceContract); if (serviceContract.Charge > 0) { _accountTransactionService.AddAccountTransaction(purhaseUnit.CustomerAccountId, AccountTransactionType.Service, serviceContract.Charge, AccountTransactionInputType.Charge, 0, "Service Contract :" + serviceContract.ContractType.Description); } var account = GetAccount(purhaseUnit.CustomerAccountId); UpdateAccount(account); }
private void dgvUserList_KeyDown(object sender, KeyEventArgs e) { if (dgvUserList.CurrentRow == null) { return; } if (e.KeyCode == Keys.Return) { this.DialogResult = DialogResult.OK; this.Result = purchaseunits[this.dgvUserList.CurrentRow.Index];//返回的数据 this.Close(); } }
public ucPurchaseUnit(Guid flowID) : this() { string msg = string.Empty; if (!DesignMode) { _purchaseUnit = PharmacyDatabaseService.GetPurchaseUnitByFlowID(out msg, flowID); } InitEditControl(_purchaseUnit); this._isEditable = false; SetControlIsEdit(false); //this.textBoxPurchaseDelegater.Text = "CGWTS..."; }
/// <summary> /// 根据Name更新购买单位 /// </summary> /// <param name="name"></param> /// <returns></returns> public bool UpdatePurchaseUnitByName(string name, PurchaseUnit item) { try { PurchaseUnit a = this.Fetch(r => r.Name == name).FirstOrDefault(); if (a != null) { a.Code = item.Code; a.PinyinCode = item.PinyinCode; a.ContactName = item.ContactName; a.ContactTel = item.ContactTel; a.Description = item.Description; a.LegalPerson = item.LegalPerson; a.BusinessScope = item.BusinessScope; a.SalesAmount = item.SalesAmount; a.Fax = item.Fax; a.Email = item.Email; a.WebAddress = item.WebAddress; a.OutDate = item.OutDate; //a.GSPGMPLicCode = item.GSPGMPLicCode; //a.GSPGMPLicOutdate = item.GSPGMPLicOutdate; //a.BusinessLicCode = item.BusinessLicCode; //a.BusinessLicOutdate = item.BusinessLicOutdate; //a.PharmaceuticalTradingLicCode = item.PharmaceuticalTradingLicCode; //a.PharmaceuticalTradingLicOutdate = item.PharmaceuticalTradingLicOutdate; a.GSPLicenseOutDate = item.GSPLicenseOutDate; a.GMPLicenseOutDate = item.GMPLicenseOutDate; a.BusinessLicenseeOutDate = item.BusinessLicenseeOutDate; a.MedicineProductionLicenseOutDate = item.MedicineProductionLicenseOutDate; a.MedicineBusinessLicenseOutDate = item.MedicineBusinessLicenseOutDate; a.InstrumentsProductionLicenseOutDate = item.InstrumentsProductionLicenseOutDate; a.InstrumentsBusinessLicenseOutDate = item.InstrumentsBusinessLicenseOutDate; a.TaxRegistrationCode = item.TaxRegistrationCode; a.LastAnnualDte = item.LastAnnualDte; this.Save(); return(true); } else { throw new BusinessException("不存在单位名称为'" + name + "'的采购商"); } } catch (Exception ex) { this.HandleException("根据名称更新购买单位失败", ex); return(false); } }
/// <summary> /// 采购商的经营范围的Code集合 /// </summary> /// <param name="purchaseUnitGuid"></param> /// <returns></returns> public List <string> GetBusinessScopeCodesByPurchaseUnitGuid(Guid purchaseUnitGuid) { try { PurchaseUnit purchaseUnit = this.Get(purchaseUnitGuid); if (purchaseUnit == null) { throw new Exception("采购商不存在"); } return(GetBusinessScopeCodesByPurchaseUnit(purchaseUnit)); } catch (Exception ex) { return(this.HandleException <List <string> >("根据采购商编号获取采购商经营范围失败", ex)); } }
private Tuple <ServiceContract, PurchaseUnit> GetTempPurchaseAccountUnitContractTuple(int id) { ServiceContract contract = null; PurchaseUnit holdingUnit = null; foreach (PurchaseUnit unit in TempAccountAsAddPurchaseAccountVM().PurchasedUnits) { if (unit.Contracts.Any(c => c.ContractId == id)) { contract = unit.Contracts.Single(c => c.ContractId == id); holdingUnit = unit; break; } } return(new Tuple <ServiceContract, PurchaseUnit>(contract, holdingUnit)); }
/// <summary> /// 选中采购商 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void dgvUserList_CellContentClick(object sender, DataGridViewCellEventArgs e) { var grid = sender as DataGridView; if (e.RowIndex < 0 || grid == null) { return; } //点击选择按钮 if ("选择".Equals(grid.Columns[e.ColumnIndex].Name)) { this.DialogResult = DialogResult.OK; this.Result = purchaseunits[e.RowIndex];//返回的数据 this.Close(); } }
/// <summary> /// 根据Name获取购买单位 /// </summary> /// <param name="name"></param> /// <returns></returns> public PurchaseUnit GetPurchaseUnitByName(string name) { try { PurchaseUnit a = this.Fetch(r => r.Name == name).FirstOrDefault(); if (a != null) { return(a); } else { return(null); } } catch (Exception ex) { this.HandleException("根据名称获取采购商失败 ", ex); return(null); } }
/// <summary> /// 查找购买单位名称是否已存在 /// </summary> /// <param name="name"></param> /// <returns></returns> public bool IsExistPurchaseUnitByName(string name) { try { PurchaseUnit a = this.Fetch(r => r.Name == name).FirstOrDefault(); if (a != null) { return(true); } else { return(false); } } catch (Exception ex) { this.HandleException("根据名称检查采购商是否存在失败", ex); return(false); } }
private void UpdatePurchaseAccountFromBasket(PurchaseBasket basket) { var account = _accountService.GetAccount(basket.CustomerAccountId) as PurchaseAccount; foreach (var unit in basket.PurchasedUnits) { var newUnit = new PurchaseUnit { PurchasedDate = unit.PurchasedDate, RetailCost = unit.RetailCost, DiscountedAmount = unit.DiscountedAmount, StockId = unit.StockId, CustomerAccountId = unit.CustomerAccountId, Contracts = unit.Contracts.Select(c => new ServiceContract { ContractTypeId = c.ContractTypeId, ContractLengthInMonths = c.ContractLengthInMonths, StartDate = c.StartDate, Charge = c.Charge, ExpiryDate = c.ExpiryDate, PaymentPeriodId = c.PaymentPeriodId, }).ToList(), }; account.PurchasedUnits.Add(newUnit); } foreach (var oneOffItem in basket.OneOffItems) { var newOneOffItem = new OneOffItem { Description = oneOffItem.Description, Charge = oneOffItem.Charge, Date = basket.StartDate, Quantity = oneOffItem.Quantity, OneOffTypeId = oneOffItem.OneOffTypeId }; account.OneOffItems.Add(newOneOffItem); } _accountService.UpdateAccount(account); }
public ActionResult _AddPurchaseUnit(int id) { var purchaseAccount = TempAccountAsAddPurchaseAccountVM(); var ru = new PurchaseUnit(); ru.Stock = _stockService.GetStock(id); ru.StockId = id; ru.PurchasedDate = purchaseAccount.StartDate; ru.UnitId = purchaseAccount.PurchasedUnits.NextIndex(c => c.UnitId); ru.RetailCost = ru.Stock.Model.RetailPrice; if (ru.Stock.CustomerAccountId > 0) { return(ReturnJsonError("Unit selected is attached to another account!")); } if (purchaseAccount.PurchasedUnits.Any(u => u.StockId == id)) { return(ReturnJsonFormSuccess()); } purchaseAccount.PurchasedUnits.Add(ru); AddContractsToUnits(purchaseAccount); return(ReturnJsonFormSuccess()); }
/// <summary> /// 新增一条采购商和审批流程记录 /// </summary> /// <param name="userId"></param> /// <returns></returns public void AddPurchaseUnitApproveFlow(PurchaseUnit su, Guid approvalFlowTypeID, Guid userID, string changeNote) { try { //增加采购商记录 this.Add(su); //增加审批流程 ApprovalFlow af = BusinessHandlerFactory.ApprovalFlowBusinessHandler.GetApproveFlowInstance(approvalFlowTypeID, su.FlowID, userID, changeNote); BusinessHandlerFactory.ApprovalFlowBusinessHandler.Add(af); //增加审批流程记录 ApprovalFlowRecord afr = BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.GetApproveFlowRecordInstance(af, userID, changeNote); BusinessHandlerFactory.ApprovalFlowRecordBusinessHandler.Add(afr); this.Save(); } catch (Exception ex) { this.HandleException("新增一条采购商和审批流程记录失败", ex); } }