public List <SalespersonsPerDeal> GetSalespersons(DealRecord deal) { List <SalespersonsPerDeal> salespersons = new List <SalespersonsPerDeal>(); if (deal.salesperson1 != null) { salespersons.Add(new SalespersonsPerDeal { dorID = deal.DORid, Salesperson = context.SalesPersons.Where(sp => sp.ID == deal.salesperson1).FirstOrDefault(), PercentofDeal = deal.salesperson1per }); } else if (deal.salesperson2 != null) { salespersons.Add(new SalespersonsPerDeal { dorID = deal.DORid, Salesperson = context.SalesPersons.Where(sp => sp.ID == deal.salesperson2).FirstOrDefault(), PercentofDeal = deal.salesperson2per }); } else if (deal.salesperson3 != null) { salespersons.Add(new SalespersonsPerDeal { dorID = deal.DORid, Salesperson = context.SalesPersons.Where(sp => sp.ID == deal.salesperson3).FirstOrDefault(), PercentofDeal = deal.salesperson3per }); } return(salespersons); }
public async Task CreateDeviceByAgentAsync(CreateDeviceByAgentInput input) { var device = input.Device.MapTo <Device>(); //获取或者创建所有的领域对象 所有的参数验证 已经在DTO中验证 //设备类型 var deviceType = await _deviceTypeRepository.GetAsync(device.BDeviceTypeId); //租户 var tenant = await _tenantRepository.GetAsync(AbpSession.GetTenantId()); //交易记录 var dealRecord = DealRecord.CreateInstallDeviceDealRecord(AbpSession.GetTenantId(), AbpSession.GetUserId(), deviceType.ServiceCharge); //设置默认参数 device.BIconType = "PlaneCar"; //生成设备Code device.BCode = await _deviceTypeManager.CreateCodeAsync(device, deviceType); //数据节点 device.BNodeId = await _nodeManager.GetNodeIdAsync(device); //默认超速 device.SLimitSpeed = SpartanConsts.DefaultLimitSpeed; //添加设备 CheckErrors(await _deviceManager.CreateAsync(device)); await CurrentUnitOfWork.SaveChangesAsync(); //从租户中扣款 CheckErrors(await _tenantManager.DeductMoneyByInstallDeviceAsync(tenant, device, deviceType)); //添加交易记录 await _dealRecordRepository.InsertAsync(dealRecord); await CurrentUnitOfWork.SaveChangesAsync(); }
public void AddDealRecord(DealRecord deal) { MasterFI mFI = new MasterFI(); IList <PropertyMap> propItems = GetPropertyMap(deal.GetType(), mFI.GetType()); foreach (var prop in propItems) { var sourceValue = prop.DealProperty.GetValue(deal, null); prop.MasterProperty.SetValue(mFI, sourceValue, null); } context.MasterFIs.Add(mFI); try { context.SaveChanges(); } catch (DbEntityValidationException e) { foreach (var eve in e.EntityValidationErrors) { Console.WriteLine("Entity of type \"{0}\" in state \"{1}\" has the following validation errors:", eve.Entry.Entity.GetType().Name, eve.Entry.State); foreach (var ve in eve.ValidationErrors) { Console.WriteLine("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage); } } throw; } }
public ActionResult Update(UpdateDealViewModel vModel) { DealRecord deal = vModel.Deal; if (ModelState.IsValid) { deal.UpdatedDt = DateTime.Now; vModel.UpdateDealRecord(); return(View("Index")); } TempData["Postback"] = "true"; return(View(vModel)); }
public void UpdateDealRecord(DealRecord deal) { MasterFI mFI = context.MasterFIs.Where(m => m.MasterFiId == deal.MasterFiId).FirstOrDefault(); foreach (var prop in deal.GetType().GetProperties()) { if (mFI.GetType().GetProperty(prop.Name) != null) { var sourceValue = mFI.GetType().GetProperty(prop.Name).GetValue(deal, null); prop.SetValue(mFI, sourceValue, null); } } context.SaveChanges(); }
public List <DealTradeObject> GetTrades(DealRecord deal) { List <DealTradeObject> trades = new List <DealTradeObject>(); DealTradeObject trade; if (deal.trade1status == true) { trade = new DealTradeObject { Status = deal.trade1status, Make = deal.trade1make, Model = deal.trade1model, OtherMake = deal.trade1makeother, OtherModel = deal.trade1modelother, Year = deal.trade1year, Mileage = deal.trade1mileage, Intent = deal.trade1intent, Title = deal.trade1title, LienHolder = deal.trade1lien, ACV = deal.trade1acv, Payoff = deal.trade1payoff, Equity = deal.trade1equity }; trades.Add(trade); } if (deal.trade2status == true) { trade = new DealTradeObject { Status = deal.trade2status, Make = deal.trade2make, Model = deal.trade2model, OtherMake = deal.trade2makeother, OtherModel = deal.trade2modelother, Year = deal.trade2year, Mileage = deal.trade2mileage, Intent = deal.trade2intent, Title = deal.trade2title, LienHolder = deal.trade2lien, ACV = deal.trade2acv, Payoff = deal.trade2payoff, Equity = deal.trade2equity }; trades.Add(trade); } return(trades); }
//public MasterFI GetDealRecord(int dorID) //{ // MasterFI record = context.MasterFIs.Where(m => m.DORid == dorID).FirstOrDefault(); // return record; //} public DealRecord GetDealRecord(int dorID) { DealRecord record = new DealRecord(); MasterFI mFI = context.MasterFIs.Where(m => m.DORid == dorID).FirstOrDefault(); foreach (var prop in record.GetType().GetProperties()) { if (mFI.GetType().GetProperty(prop.Name) != null) { var sourceValue = mFI.GetType().GetProperty(prop.Name).GetValue(mFI, null); prop.SetValue(record, sourceValue, null); } } return(record); }
public async Task CreateDeviceByCustomerAsync(CreateDeviceByCustomerInput input) { //检查当前客户所属的租户库存是否有该设备号 CheckErrors(await _deviceStockManager.CheckIsHaveDeviceNoAsync(input.Device.BNo)); var device = input.Device.MapTo <Device>(); //获取或者创建所有的领域对象 所有的参数验证 已经在DTO中验证 //设备类型 var deviceType = await _deviceTypeRepository.GetAsync(device.BDeviceTypeId); //租户 var tenant = await _tenantRepository.GetAsync(AbpSession.GetTenantId()); //交易记录 var dealRecord = DealRecord.CreateInstallDeviceDealRecord(AbpSession.GetTenantId(), AbpSession.GetUserId(), deviceType.ServiceCharge); //设置默认参数 device.BIconType = "PlaneCar"; //所属用户 device.UserId = AbpSession.GetUserId(); //过期时间 device.BExpireTime = DateTime.Now.AddYears(SettingManager.GetSettingValueForTenant <int>(SpartanSettingKeys.Tenant_Customer_InstallDevice_ExpireYear, AbpSession.GetTenantId())); //生成设备Code device.BCode = await _deviceTypeManager.CreateCodeAsync(device, deviceType); //数据节点 device.BNodeId = await _nodeManager.GetNodeIdAsync(device); //默认超速 device.SLimitSpeed = SpartanConsts.DefaultLimitSpeed; //添加设备 CheckErrors(await _deviceManager.CreateAsync(device)); await CurrentUnitOfWork.SaveChangesAsync(); //从租户中扣款 CheckErrors(await _tenantManager.DeductMoneyByInstallDeviceAsync(tenant, device, deviceType)); //添加交易记录 await _dealRecordRepository.InsertAsync(dealRecord); await CurrentUnitOfWork.SaveChangesAsync(); }
/// <summary> /// 处理 /// </summary> /// <param name="id"></param> /// <param name="result"></param> /// <returns></returns> public ActionResult CompanyDeal(int id, int result) { try { var company = db.Companies.Find(id); company.StatuAsInt = 2; company.DealResultAsInt = result; var record = new DealRecord(); record = db.DealRecords.Where(r => r.CompanyID == id).FirstOrDefault(); if (record == null) { record = new DealRecord(); record.UID = CurrentUser.ID; record.CompanyID = id; record.Time = DateTime.Now; record.DealResultAsInt = result; db.DealRecords.Add(record); } else { var _record = new DealRecord(); _record.UID = CurrentUser.ID; _record.DealResultAsInt = result; _record.CompanyID = id; _record.Time = DateTime.Now; _record.Hint = "修改"; db.DealRecords.Add(record); } db.SaveChanges(); return Content("ok"); } catch { return Content("处理出错!"); } }
//修改交易信息 public int UpdDeal(DealRecord deal) { return(GetBll <DealRecord> .createDal().Upd(deal)); }