/// <summary> /// Delete a ParametroVendedor /// </summary> /// <param name="ParametroVendedorTarget"></param> public void DeleteParametroVendedor(CSS_PARAMETRO_VENDEDOR ParametroVendedorTarget) { try { using (var ctx = new MHERPEntities()) { //verify if the school exists CSS_PARAMETRO_VENDEDOR oParametroVendedor = getParametroVendedor(ParametroVendedorTarget); if (oParametroVendedor != null) { // if exists then edit ctx.CSS_PARAMETRO_VENDEDOR.Attach(oParametroVendedor); ctx.CSS_PARAMETRO_VENDEDOR.Remove(oParametroVendedor); ctx.SaveChanges(); } } } catch (DbUpdateException ex) { if (ex.InnerException.InnerException.Message.Contains("REFERENCE constraint")) { throw new Exception("No se puede eliminar este parámetro porque existe información asociada a este."); } } catch (Exception ex) { throw ex; } }
private void calculateDoWork(object sender, DoWorkEventArgs e) { BizParametroVendedor bizParametroVendedor = new BizParametroVendedor(); /*Búsqueda de ventas y detalle productos y pagos*/ int numItems = lstVentas.Count; for (int i = 0; i < numItems; i++) { LojaDefinition lojaDefinition = lstLojaDefinition .Where(x => x.COD_FILIAL == lstVentas[i].CODIGO_FILIAL).FirstOrDefault(); CSS_PARAMETRO_VENDEDOR parametroVendedor = bizParametroVendedor.getParametroVendedor(new CSS_PARAMETRO_VENDEDOR() { vendedor = lstVentas[i].VENDEDOR }); CSS_PARAMETRO_VENDEDOR parametroAdministrador = bizParametroVendedor.getParametroVendedor(new CSS_PARAMETRO_VENDEDOR() { vendedor = lstVentas[i].GERENTE_PERIODO }); decimal porComisionVendedor; decimal porComisionAdministrador; if (lojaDefinition.cumplePresupuesto) { porComisionAdministrador = parametroAdministrador != null ? parametroAdministrador.comisionCumple : 0; porComisionVendedor = parametroVendedor != null ? parametroVendedor.comisionCumple : 0; } else { porComisionAdministrador = parametroAdministrador != null ? parametroAdministrador.comisionNoCumple : 0; porComisionVendedor = parametroVendedor != null ? parametroVendedor.comisionNoCumple : 0; } decimal sellOutBrutoSinIvaSinComisionTarjetas = lstVentas[i].SellOutBruto - (lstVentas[i].vlrImpuestos + lstVentas[i].comisionTarjetas); decimal ventaBonosSinIva = (lstVentas[i].bonosVendidos - lstVentas[i].ivaBonosVendidos) / 2; decimal redencionBonosSinIva = (lstVentas[i].bonosRedimidos - lstVentas[i].ivaBonosRedimidos) / 2; lstVentas[i].sellOutNeto = sellOutBrutoSinIvaSinComisionTarjetas + ventaBonosSinIva + redencionBonosSinIva; lstVentas[i].comisionAdministrador = (lstVentas[i].sellOutNeto * porComisionAdministrador) / 100; lstVentas[i].comisionVendedor = (lstVentas[i].sellOutNeto * porComisionVendedor) / 100; calculateWorker.ReportProgress((i * 100) / numVentas, lojaDefinition.COD_FILIAL);//+ " -> Ticket " + lstLojaVenda[i].TICKET); } //List<LojaVenda> lstTest = lstVentas.Where(x => x.VENDEDOR == null).ToList(); }
public CSS_PARAMETRO_VENDEDOR getParametroVendedor(CSS_PARAMETRO_VENDEDOR filialTarget) { CSS_PARAMETRO_VENDEDOR filial = new CSS_PARAMETRO_VENDEDOR(); try { using (var ctx = new MHERPEntities()) { ctx.Configuration.ProxyCreationEnabled = false; filial = ctx.CSS_PARAMETRO_VENDEDOR.Where(x => x.vendedor == filialTarget.vendedor).FirstOrDefault(); } } catch (Exception ex) { throw ex; } return(filial); }
public void SaveParametroVendedor(CSS_PARAMETRO_VENDEDOR ParametroVendedorTarget) { try { using (var ctx = new MHERPEntities()) { //verify if the ParametroVendedor exists CSS_PARAMETRO_VENDEDOR oParametroVendedor = getParametroVendedor(ParametroVendedorTarget); if (oParametroVendedor != null) { // if exists then edit ctx.CSS_PARAMETRO_VENDEDOR.Attach(oParametroVendedor); _GenericEntityValidation.EnumeratePropertyDifferences(oParametroVendedor, ParametroVendedorTarget); ctx.SaveChanges(); } else { // else create ctx.CSS_PARAMETRO_VENDEDOR.Add(ParametroVendedorTarget); ctx.SaveChanges(); } } } catch (DbEntityValidationException e) { StringBuilder oError = new StringBuilder(); foreach (var eve in e.EntityValidationErrors) { oError.AppendLine(string.Format("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) { oError.AppendLine(string.Format("- Property: \"{0}\", Error: \"{1}\"", ve.PropertyName, ve.ErrorMessage)); } } string msg = oError.ToString(); throw new Exception(msg); } catch (Exception ex) { throw ex; } }