private void PurchaseDealUpdateMethod(new_aprove_price _proxyentity, List <new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List <new_purchase_deal> _cdealListForUpdate = (from i in orgContext.CreateQuery <new_purchase_deal>() where i.new_cropid.Id == _proxyentity.new_cropid.Id && (i.new_purchase_deal_stage == new OptionSetValue(100000000) || i.new_purchase_deal_stage == new OptionSetValue(100000002) || i.new_purchase_deal_stage == new OptionSetValue(100000001)) && i.new_opportunity_status == new OptionSetValue(100000000) select i).ToList(); foreach (var item in _cdealListForUpdate) { new_purchase_deal _updateDeal = new new_purchase_deal(); _updateDeal.Id = item.Id; if (item.new_ship_portid == null) { continue; } if (_portList.Where(x => x.Id == item.new_ship_portid.Id)?.FirstOrDefault()?.new_name == "Одеса") { _updateDeal.new_recommended_price = _proxyentity.new_recom_purchase_price_odessa; } else if (_portList.Where(x => x.Id == item.new_ship_portid.Id)?.FirstOrDefault()?.new_name == "Миколаїв") { _updateDeal.new_recommended_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateDeal); } }
private void PurchaseDealUpdateMethod(new_aprove_price _proxyentity, List<new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List<new_purchase_deal> _cdealListForUpdate = (from i in orgContext.CreateQuery<new_purchase_deal>() where i.new_cropid.Id == _proxyentity.new_cropid.Id && (i.new_purchase_deal_stage == new OptionSetValue(100000000) || i.new_purchase_deal_stage == new OptionSetValue(100000002) || i.new_purchase_deal_stage == new OptionSetValue(100000001)) && i.new_opportunity_status == new OptionSetValue(100000000) select i).ToList(); foreach ( var item in _cdealListForUpdate ) { new_purchase_deal _updateDeal = new new_purchase_deal(); _updateDeal.Id = item.Id; if ( item.new_ship_portid == null ) continue; if ( _portList.Where(x => x.Id == item.new_ship_portid.Id)?.FirstOrDefault()?.new_name == "Одеса" ) { _updateDeal.new_recommended_price = _proxyentity.new_recom_purchase_price_odessa; } else if ( _portList.Where(x => x.Id == item.new_ship_portid.Id)?.FirstOrDefault()?.new_name == "Миколаїв" ) { _updateDeal.new_recommended_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateDeal); } }
private void PurchaseTaskUpdateMethod(new_aprove_price _proxyentity, List <new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List <new_purchase_task> _taskListForUpdate = (from i in orgContext.CreateQuery <new_purchase_task>() where i.new_product.Id == _proxyentity.new_cropid.Id && i.new_status == new OptionSetValue(100000000) select i).ToList(); foreach (var item in _taskListForUpdate) { new_purchase_task _updateTask = new new_purchase_task(); _updateTask.Id = item.Id; if (item.new_port == null) { continue; } if (_portList.Where(x => x.Id == item.new_port.Id).FirstOrDefault().new_name == "Одеса") { _updateTask.new_aprove_purchase_price = _proxyentity.new_recom_purchase_price_odessa; } else if (_portList.Where(x => x.Id == item.new_port.Id).FirstOrDefault().new_name == "Миколаїв") { _updateTask.new_aprove_purchase_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateTask); } }
public void Execute(IServiceProvider serviceProvider) { var context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext)); var factory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory)); var service = factory.CreateOrganizationService(context.UserId); Entity _correntEntity; using (var orgContext = new OrganizationServiceContext(service)) { if (context.MessageName.ToLower() == "create") { _correntEntity = (Entity)context.InputParameters["Target"]; } else if (context.MessageName.ToLower() == "update") { _correntEntity = context.PostEntityImages["Post"]; } else { return; } new_aprove_price _proxyentity = _correntEntity.ToEntity <new_aprove_price>(); if (_proxyentity.new_cropid == null || _proxyentity.new_approve == false) { return; } if (_proxyentity.new_recom_purchase_price_nikolaev == null && _proxyentity.new_recom_purchase_price_odessa == null) { return; } List <new_port> _portList = (from port in orgContext.CreateQuery <new_port>() where port.new_name == "Одеса" || port.new_name == "Миколаїв" select port).ToList(); PurchaseOrderUpdateMethod(_proxyentity, _portList, orgContext, service); PurchaseTaskUpdateMethod(_proxyentity, _portList, orgContext, service); PurchaseCropUpdateMethod(_proxyentity, _portList, orgContext, service); PurchaseDealUpdateMethod(_proxyentity, _portList, orgContext, service); } }
private void PurchaseCropUpdateMethod(new_aprove_price _proxyentity, List <new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List <Guid> _cropListForUpdate = (from i in orgContext.CreateQuery <new_purchase_crop>() where i.new_crop.Id == _proxyentity.new_cropid.Id && i.new_offer_status == new OptionSetValue(100000000) select i.Id).ToList(); foreach (var item in _cropListForUpdate) { new_purchase_crop _updateCrop = new new_purchase_crop(); _updateCrop.Id = item; _updateCrop.new_recom_price_mykolaiv = _proxyentity.new_recom_purchase_price_nikolaev; _updateCrop.new_recom_price_odesa = _proxyentity.new_recom_purchase_price_odessa; service.Update(_updateCrop); } }
private void PurchaseCropUpdateMethod(new_aprove_price _proxyentity, List<new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List<Guid> _cropListForUpdate = (from i in orgContext.CreateQuery<new_purchase_crop>() where i.new_crop.Id == _proxyentity.new_cropid.Id && i.new_offer_status == new OptionSetValue(100000000) select i.Id).ToList(); foreach ( var item in _cropListForUpdate ) { new_purchase_crop _updateCrop = new new_purchase_crop(); _updateCrop.Id = item; _updateCrop.new_recom_price_mykolaiv = _proxyentity.new_recom_purchase_price_nikolaev; _updateCrop.new_recom_price_odesa = _proxyentity.new_recom_purchase_price_odessa; service.Update(_updateCrop); } }
private void PurchaseOrderUpdateMethod(new_aprove_price _proxyentity, List <new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List <new_purchase_order> _orderListForUpdate = (from i in orgContext.CreateQuery <new_purchase_order>() where i.new_cropid.Id == _proxyentity.new_cropid.Id && (i.new_status == new OptionSetValue(100000000) || i.new_status == new OptionSetValue(100000001)) select i).ToList(); if (_orderListForUpdate != null) { foreach (var item in _orderListForUpdate) { new_purchase_order_change _newChangeOrder = new new_purchase_order_change(); _newChangeOrder.new_cropid = item.new_cropid; _newChangeOrder.new_purchase_price = item.new_purchase_price; _newChangeOrder.new_purchase_order = new EntityReference() { Id = item.Id, LogicalName = item.LogicalName }; service.Create(_newChangeOrder); new_purchase_order _updateOrder = new new_purchase_order(); _updateOrder.Id = item.Id; if (item.new_portid == null) { continue; } if (_portList.Where(x => x.Id == item.new_portid.Id).FirstOrDefault().new_name == "Одеса") { _updateOrder.new_purchase_price = _proxyentity.new_recom_purchase_price_odessa; } else if (_portList.Where(x => x.Id == item.new_portid.Id).FirstOrDefault().new_name == "Миколаїв") { _updateOrder.new_purchase_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateOrder); } } }
public void Execute(IServiceProvider serviceProvider) { try { IPluginExecutionContext context = (IPluginExecutionContext)serviceProvider.GetService(typeof(IPluginExecutionContext)); IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory)serviceProvider.GetService(typeof(IOrganizationServiceFactory)); IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); if (context.PrimaryEntityName != new_monitoring.EntityLogicalName) { return; } Entity entity = null; if (context.MessageName.ToLower() == "create") { entity = (Entity)context.InputParameters["Target"]; } else if (context.MessageName.ToLower() == "update") { entity = (Entity)context.PostEntityImages["Post"]; } else { return; } var correnctEntity = entity.ToEntity <new_monitoring>(); if (!isTrust(correnctEntity.new_accountid, service)) { return; } if (correnctEntity.new_cropid == null) { return; } /* if (DateTime.Now < DateTime.Now.Date.AddHours(11).AddMinutes(05))*/ using (var orgContext = new OrganizationServiceContext(service)) { var haveAprove = CheckaprovedEntity(orgContext, correnctEntity.new_cropid.Id); var currency = getCurrency(orgContext) ?? 0; new_constant cons = getConstanta(orgContext); if (cons == null) { throw new InvalidPluginExecutionException("Створіть запис константи"); } var margin = cons.new_purchase_margin ?? new Money(0); var coefficient = cons.GetAttributeValue <double?>("new_vat_return_coefficient") ?? 1; double nikolaevUSD = 0; Money nikolaevRec = new Money(0); double odesaUSD = 0; Money odesaRec = new Money(0); double odesaRecUSD = 0; double nikolaevRecUSD = 0; if (correnctEntity.new_purchase_price_nikolaev != null && correnctEntity.new_purchase_price_nikolaev.Value != 0) { nikolaevUSD = ((double)correnctEntity.new_purchase_price_nikolaev?.Value / currency) * coefficient; nikolaevRec = new Money(correnctEntity.new_purchase_price_nikolaev.Value - margin.Value); nikolaevRecUSD = ((double)nikolaevRec.Value / currency) * coefficient; } if (correnctEntity.new_purchase_price_odessa != null && correnctEntity.new_purchase_price_odessa.Value != 0) { odesaUSD = ((double)correnctEntity.new_purchase_price_odessa?.Value / currency) * coefficient; odesaRec = new Money(correnctEntity.new_purchase_price_odessa.Value - margin.Value); odesaRecUSD = ((double)odesaRec.Value / currency) * coefficient; } if (haveAprove == null) { var checkPurchase = (from i in orgContext.CreateQuery <new_aprove_price>() where i.CreatedOn >= DateTime.Now.Date.ToUniversalTime() && i.CreatedOn <= DateTime.Now.AddDays(1).Date.ToUniversalTime() && i.new_cropid.Id == correnctEntity.new_cropid.Id && i.new_aproved != new OptionSetValue(100000002) select i).FirstOrDefault(); if (checkPurchase == null) { new_aprove_price CreateRecord = new new_aprove_price() { new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa, new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev, new_cropid = correnctEntity.new_cropid, new_aproved = new OptionSetValue(100000001), new_trader_Odesaid = correnctEntity.new_accountid, new_trader_Mykolaivid = correnctEntity.new_accountid, new_dollar_rate = currency, new_max_purchase_mykolaiv_usd = nikolaevUSD, new_dollar_purchase_price_nikolaev = nikolaevRecUSD, new_recom_purchase_price_nikolaev = nikolaevRec, new_recom_purchase_price_odessa = odesaRec, new_max_purchase_odesa_usd = odesaUSD, new_dollar_purchase_price_odessa = odesaRecUSD, new_purchase_margin = margin }; service.Create(CreateRecord); } else { new_aprove_price UpdateRecord = new new_aprove_price(); UpdateRecord.Id = checkPurchase.Id; bool flag = false; if (checkPurchase.new_max_purchase_price_odessa?.Value < correnctEntity.new_purchase_price_odessa?.Value) { UpdateRecord.new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa; UpdateRecord.new_trader_Odesaid = correnctEntity.new_accountid; UpdateRecord.new_aproved = new OptionSetValue(100000001); UpdateRecord.new_trader_Odesaid = correnctEntity.new_accountid; UpdateRecord.new_recom_purchase_price_odessa = odesaRec; UpdateRecord.new_max_purchase_odesa_usd = odesaUSD; UpdateRecord.new_dollar_purchase_price_odessa = odesaRecUSD; UpdateRecord.new_purchase_margin = margin; UpdateRecord.new_dollar_rate = currency; flag = true; } /* else * { * UpdateRecord.new_max_purchase_price_odessa = checkPurchase.new_max_purchase_price_odessa; * UpdateRecord.new_trader_Odesaid = checkPurchase.new_trader_Odesaid; * UpdateRecord.new_dollar_rate = checkPurchase.new_dollar_rate; * UpdateRecord.new_max_purchase_odesa_usd = checkPurchase.new_max_purchase_mykolaiv_usd; * UpdateRecord.new_dollar_purchase_price_odessa = checkPurchase.new_dollar_purchase_price_nikolaev; * UpdateRecord.new_recom_purchase_price_odessa = checkPurchase.new_recom_purchase_price_nikolaev; * UpdateRecord.new_purchase_margin = checkPurchase.new_purchase_margin; * }*/ if (checkPurchase.new_max_purchase_price_nikolaev?.Value < correnctEntity.new_purchase_price_nikolaev?.Value) { UpdateRecord.new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev; UpdateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; UpdateRecord.new_aproved = new OptionSetValue(100000001); UpdateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; UpdateRecord.new_dollar_rate = currency; UpdateRecord.new_max_purchase_mykolaiv_usd = nikolaevUSD; UpdateRecord.new_dollar_purchase_price_nikolaev = nikolaevRecUSD; UpdateRecord.new_recom_purchase_price_nikolaev = nikolaevRec; UpdateRecord.new_purchase_margin = margin; flag = true; } /* else * { * UpdateRecord.new_max_purchase_price_nikolaev = checkPurchase.new_max_purchase_price_nikolaev; * UpdateRecord.new_trader_Mykolaivid = checkPurchase.new_trader_Mykolaivid; * UpdateRecord.new_dollar_rate = checkPurchase.new_dollar_rate; * UpdateRecord.new_max_purchase_mykolaiv_usd = checkPurchase.new_max_purchase_mykolaiv_usd; * UpdateRecord.new_dollar_purchase_price_nikolaev = checkPurchase.new_dollar_purchase_price_nikolaev; * UpdateRecord.new_recom_purchase_price_nikolaev = checkPurchase.new_recom_purchase_price_nikolaev; * UpdateRecord.new_purchase_margin = checkPurchase.new_purchase_margin; * }*/ if (flag) { service.Update(UpdateRecord); } } } else { new_aprove_price CreateRecord = new new_aprove_price(); bool flag = false; if (haveAprove.new_max_purchase_price_odessa?.Value < correnctEntity.new_purchase_price_odessa?.Value) { CreateRecord.new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa; CreateRecord.new_trader_Odesaid = correnctEntity.new_accountid; CreateRecord.new_aproved = new OptionSetValue(100000001); CreateRecord.new_cropid = correnctEntity.new_cropid; CreateRecord.new_dollar_rate = currency; CreateRecord.new_max_purchase_odesa_usd = odesaUSD; CreateRecord.new_recom_purchase_price_odessa = odesaRec; CreateRecord.new_dollar_purchase_price_odessa = odesaRecUSD; CreateRecord.new_purchase_margin = margin; flag = true; } else { CreateRecord.new_max_purchase_price_odessa = haveAprove.new_max_purchase_price_odessa; CreateRecord.new_trader_Odesaid = haveAprove.new_trader_Odesaid; } if (haveAprove.new_max_purchase_price_nikolaev?.Value < correnctEntity.new_purchase_price_nikolaev?.Value) { CreateRecord.new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev; CreateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; CreateRecord.new_aproved = new OptionSetValue(100000001); CreateRecord.new_cropid = correnctEntity.new_cropid; CreateRecord.new_dollar_rate = currency; CreateRecord.new_max_purchase_mykolaiv_usd = nikolaevUSD; CreateRecord.new_recom_purchase_price_nikolaev = nikolaevRec; CreateRecord.new_dollar_purchase_price_nikolaev = nikolaevRecUSD; CreateRecord.new_purchase_margin = margin; flag = true; } else { CreateRecord.new_max_purchase_price_nikolaev = haveAprove.new_max_purchase_price_nikolaev; CreateRecord.new_trader_Mykolaivid = haveAprove.new_trader_Mykolaivid; } if (flag) { service.Create(CreateRecord); new_aprove_price updateToClose = new new_aprove_price(); updateToClose.Id = haveAprove.Id; //updateToClose.new_aproved = new OptionSetValue(100000002); service.Update(updateToClose); } } } } catch (Exception ex) { throw new InvalidPluginExecutionException(ex.Message); } }
private void PurchaseTaskUpdateMethod(new_aprove_price _proxyentity, List<new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List<new_purchase_task> _taskListForUpdate = (from i in orgContext.CreateQuery<new_purchase_task>() where i.new_product.Id == _proxyentity.new_cropid.Id && i.new_status == new OptionSetValue(100000000) select i).ToList(); foreach ( var item in _taskListForUpdate ) { new_purchase_task _updateTask = new new_purchase_task(); _updateTask.Id = item.Id; if ( item.new_port == null ) continue; if ( _portList.Where(x => x.Id == item.new_port.Id).FirstOrDefault().new_name == "Одеса" ) { _updateTask.new_aprove_purchase_price = _proxyentity.new_recom_purchase_price_odessa; } else if ( _portList.Where(x => x.Id == item.new_port.Id).FirstOrDefault().new_name == "Миколаїв" ) { _updateTask.new_aprove_purchase_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateTask); } }
private void PurchaseOrderUpdateMethod(new_aprove_price _proxyentity, List<new_port> _portList, OrganizationServiceContext orgContext, IOrganizationService service) { List<new_purchase_order> _orderListForUpdate = (from i in orgContext.CreateQuery<new_purchase_order>() where i.new_cropid.Id == _proxyentity.new_cropid.Id && (i.new_status == new OptionSetValue(100000000) || i.new_status == new OptionSetValue(100000001)) select i).ToList(); if ( _orderListForUpdate != null ) { foreach ( var item in _orderListForUpdate ) { new_purchase_order_change _newChangeOrder = new new_purchase_order_change(); _newChangeOrder.new_cropid = item.new_cropid; _newChangeOrder.new_purchase_price = item.new_purchase_price; _newChangeOrder.new_purchase_order = new EntityReference() { Id = item.Id, LogicalName = item.LogicalName }; service.Create(_newChangeOrder); new_purchase_order _updateOrder = new new_purchase_order(); _updateOrder.Id = item.Id; if ( item.new_portid == null ) continue; if ( _portList.Where(x => x.Id == item.new_portid.Id).FirstOrDefault().new_name == "Одеса" ) { _updateOrder.new_purchase_price = _proxyentity.new_recom_purchase_price_odessa; } else if ( _portList.Where(x => x.Id == item.new_portid.Id).FirstOrDefault().new_name == "Миколаїв" ) { _updateOrder.new_purchase_price = _proxyentity.new_recom_purchase_price_nikolaev; } service.Update(_updateOrder); } } }
public void Execute(IServiceProvider serviceProvider) { try { IPluginExecutionContext context = (IPluginExecutionContext) serviceProvider.GetService(typeof(IPluginExecutionContext)); IOrganizationServiceFactory serviceFactory = (IOrganizationServiceFactory) serviceProvider.GetService(typeof(IOrganizationServiceFactory)); IOrganizationService service = serviceFactory.CreateOrganizationService(context.UserId); if ( context.PrimaryEntityName != new_monitoring.EntityLogicalName ) return; Entity entity = null; if ( context.MessageName.ToLower() == "create" ) { entity = (Entity) context.InputParameters["Target"]; } else if ( context.MessageName.ToLower() == "update" ) { entity = (Entity) context.PostEntityImages["Post"]; } else { return; } var correnctEntity = entity.ToEntity<new_monitoring>(); if ( !isTrust(correnctEntity.new_accountid, service) ) return; if ( correnctEntity.new_cropid == null ) return; /* if (DateTime.Now < DateTime.Now.Date.AddHours(11).AddMinutes(05))*/ using ( var orgContext = new OrganizationServiceContext(service) ) { var haveAprove = CheckaprovedEntity(orgContext, correnctEntity.new_cropid.Id); var currency = getCurrency(orgContext) ?? 0; new_constant cons = getConstanta(orgContext); if (cons == null) throw new InvalidPluginExecutionException("Створіть запис константи"); var margin = cons.new_purchase_margin ?? new Money(0); var coefficient = cons.GetAttributeValue<double?>("new_vat_return_coefficient") ?? 1; double nikolaevUSD = 0; Money nikolaevRec = new Money(0); double odesaUSD = 0; Money odesaRec = new Money(0); double odesaRecUSD = 0; double nikolaevRecUSD = 0; if ( correnctEntity.new_purchase_price_nikolaev != null && correnctEntity.new_purchase_price_nikolaev.Value != 0 ) { nikolaevUSD = ((double) correnctEntity.new_purchase_price_nikolaev?.Value / currency)* coefficient; nikolaevRec = new Money(correnctEntity.new_purchase_price_nikolaev.Value - margin.Value); nikolaevRecUSD = ((double) nikolaevRec.Value / currency) * coefficient; } if ( correnctEntity.new_purchase_price_odessa != null && correnctEntity.new_purchase_price_odessa.Value != 0 ) { odesaUSD = ((double) correnctEntity.new_purchase_price_odessa?.Value / currency)* coefficient; odesaRec = new Money(correnctEntity.new_purchase_price_odessa.Value - margin.Value); odesaRecUSD = ((double) odesaRec.Value / currency)*coefficient; } if ( haveAprove == null ) { var checkPurchase = (from i in orgContext.CreateQuery<new_aprove_price>() where i.CreatedOn >= DateTime.Now.Date.ToUniversalTime() && i.CreatedOn <= DateTime.Now.AddDays(1).Date.ToUniversalTime() && i.new_cropid.Id == correnctEntity.new_cropid.Id && i.new_aproved != new OptionSetValue(100000002) select i).FirstOrDefault(); if ( checkPurchase == null ) { new_aprove_price CreateRecord = new new_aprove_price() { new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa, new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev, new_cropid = correnctEntity.new_cropid, new_aproved = new OptionSetValue(100000001), new_trader_Odesaid = correnctEntity.new_accountid, new_trader_Mykolaivid = correnctEntity.new_accountid, new_dollar_rate = currency, new_max_purchase_mykolaiv_usd = nikolaevUSD, new_dollar_purchase_price_nikolaev = nikolaevRecUSD, new_recom_purchase_price_nikolaev = nikolaevRec, new_recom_purchase_price_odessa = odesaRec, new_max_purchase_odesa_usd = odesaUSD, new_dollar_purchase_price_odessa = odesaRecUSD, new_purchase_margin = margin }; service.Create(CreateRecord); } else { new_aprove_price UpdateRecord = new new_aprove_price(); UpdateRecord.Id = checkPurchase.Id; bool flag = false; if ( checkPurchase.new_max_purchase_price_odessa?.Value < correnctEntity.new_purchase_price_odessa?.Value ) { UpdateRecord.new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa; UpdateRecord.new_trader_Odesaid = correnctEntity.new_accountid; UpdateRecord.new_aproved = new OptionSetValue(100000001); UpdateRecord.new_trader_Odesaid = correnctEntity.new_accountid; UpdateRecord.new_recom_purchase_price_odessa = odesaRec; UpdateRecord.new_max_purchase_odesa_usd = odesaUSD; UpdateRecord.new_dollar_purchase_price_odessa = odesaRecUSD; UpdateRecord.new_purchase_margin = margin; UpdateRecord.new_dollar_rate = currency; flag = true; } /* else { UpdateRecord.new_max_purchase_price_odessa = checkPurchase.new_max_purchase_price_odessa; UpdateRecord.new_trader_Odesaid = checkPurchase.new_trader_Odesaid; UpdateRecord.new_dollar_rate = checkPurchase.new_dollar_rate; UpdateRecord.new_max_purchase_odesa_usd = checkPurchase.new_max_purchase_mykolaiv_usd; UpdateRecord.new_dollar_purchase_price_odessa = checkPurchase.new_dollar_purchase_price_nikolaev; UpdateRecord.new_recom_purchase_price_odessa = checkPurchase.new_recom_purchase_price_nikolaev; UpdateRecord.new_purchase_margin = checkPurchase.new_purchase_margin; }*/ if ( checkPurchase.new_max_purchase_price_nikolaev?.Value < correnctEntity.new_purchase_price_nikolaev?.Value ) { UpdateRecord.new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev; UpdateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; UpdateRecord.new_aproved = new OptionSetValue(100000001); UpdateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; UpdateRecord.new_dollar_rate = currency; UpdateRecord.new_max_purchase_mykolaiv_usd = nikolaevUSD; UpdateRecord.new_dollar_purchase_price_nikolaev = nikolaevRecUSD; UpdateRecord.new_recom_purchase_price_nikolaev = nikolaevRec; UpdateRecord.new_purchase_margin = margin; flag = true; } /* else { UpdateRecord.new_max_purchase_price_nikolaev = checkPurchase.new_max_purchase_price_nikolaev; UpdateRecord.new_trader_Mykolaivid = checkPurchase.new_trader_Mykolaivid; UpdateRecord.new_dollar_rate = checkPurchase.new_dollar_rate; UpdateRecord.new_max_purchase_mykolaiv_usd = checkPurchase.new_max_purchase_mykolaiv_usd; UpdateRecord.new_dollar_purchase_price_nikolaev = checkPurchase.new_dollar_purchase_price_nikolaev; UpdateRecord.new_recom_purchase_price_nikolaev = checkPurchase.new_recom_purchase_price_nikolaev; UpdateRecord.new_purchase_margin = checkPurchase.new_purchase_margin; }*/ if ( flag ) { service.Update(UpdateRecord); } } } else { new_aprove_price CreateRecord = new new_aprove_price(); bool flag = false; if ( haveAprove.new_max_purchase_price_odessa?.Value < correnctEntity.new_purchase_price_odessa?.Value ) { CreateRecord.new_max_purchase_price_odessa = correnctEntity.new_purchase_price_odessa; CreateRecord.new_trader_Odesaid = correnctEntity.new_accountid; CreateRecord.new_aproved = new OptionSetValue(100000001); CreateRecord.new_cropid = correnctEntity.new_cropid; CreateRecord.new_dollar_rate = currency; CreateRecord.new_max_purchase_odesa_usd = odesaUSD; CreateRecord.new_recom_purchase_price_odessa = odesaRec; CreateRecord.new_dollar_purchase_price_odessa = odesaRecUSD; CreateRecord.new_purchase_margin = margin; flag = true; } else { CreateRecord.new_max_purchase_price_odessa = haveAprove.new_max_purchase_price_odessa; CreateRecord.new_trader_Odesaid = haveAprove.new_trader_Odesaid; } if ( haveAprove.new_max_purchase_price_nikolaev?.Value < correnctEntity.new_purchase_price_nikolaev?.Value ) { CreateRecord.new_max_purchase_price_nikolaev = correnctEntity.new_purchase_price_nikolaev; CreateRecord.new_trader_Mykolaivid = correnctEntity.new_accountid; CreateRecord.new_aproved = new OptionSetValue(100000001); CreateRecord.new_cropid = correnctEntity.new_cropid; CreateRecord.new_dollar_rate = currency; CreateRecord.new_max_purchase_mykolaiv_usd = nikolaevUSD; CreateRecord.new_recom_purchase_price_nikolaev = nikolaevRec; CreateRecord.new_dollar_purchase_price_nikolaev = nikolaevRecUSD; CreateRecord.new_purchase_margin = margin; flag = true; } else { CreateRecord.new_max_purchase_price_nikolaev = haveAprove.new_max_purchase_price_nikolaev; CreateRecord.new_trader_Mykolaivid = haveAprove.new_trader_Mykolaivid; } if ( flag ) { service.Create(CreateRecord); new_aprove_price updateToClose = new new_aprove_price(); updateToClose.Id = haveAprove.Id; //updateToClose.new_aproved = new OptionSetValue(100000002); service.Update(updateToClose); } } } } catch ( Exception ex ) { throw new InvalidPluginExecutionException(ex.Message); } }