/// <summary> /// Metoto encarghado de convertir el dealer representative erp /// to dealer representative Systime /// </summary> /// <param name="workerErp"></param> /// <param name="idDealerShop"></param> /// <returns></returns> internal Workers ParseWorker(terceros workerErp, String idDealerShop, Boolean isDEalerRepresentative, String activityWorker, out List <Tuple <Type, String> > paramsAditional, Boolean?isActive = true) { paramsAditional = null; if (workerErp != null) { String idJobTitle = new ToolsDmsV1(ParamsContract).AjustJobTitle(activityWorker, isDEalerRepresentative); String[] phones = new ToolsDmsV1(ParamsContract).AjustPhone(workerErp.telefono_1, workerErp.telefono_2); Workers worker = new Workers() { //Ajusta la tienda en systime IdWorker = new ToolsDmsV1(ParamsContract).AjusWorker(workerErp.nit.ToString()), FullName = workerErp.nombres, Mobile = phones[0], IdDealerShop = idDealerShop, Phone = phones[1], Email = workerErp.mail, IdCity = new ToolsDmsV1(ParamsContract).AjusCity(workerErp.y_ciudad, workerErp.y_dpto, workerErp.y_pais), Address = workerErp.direccion, //TODO : se debe validar la activacion Active = true }; paramsAditional = new List <Tuple <Type, string> > { new Tuple <Type, string>(typeof(CloudCatalogDealerShops), JsonConvert.SerializeObject(new DelaerShopKeysDmsV1() { IdShop = idDealerShop })) }; return(worker); } return(null); }
/// <summary> /// Metoto encargado de convertir la bodeaga de erp a bodega systime /// </summary> /// <param name="dealerShopErp"></param> /// <returns></returns> internal CloudCatalogDealerShops ParseDealerShop(bodegas dealerShopErp) { if (dealerShopErp != null) { String[] phones = new ToolsDmsV1(ParamsContract).AjustPhone(dealerShopErp.telefono, null); CloudCatalogDealerShops dealerShop = new CloudCatalogDealerShops() { Shop = dealerShopErp.descripcion, Address = dealerShopErp.direccion, IdCity = new ToolsDmsV1(ParamsContract).AjusCity(dealerShopErp.ciudad, dealerShopErp.departamento, dealerShopErp.ciudad), Phone = phones[1], IdDealerShop = dealerShopErp.id.ToString(), Mobile = phones[0] }; return(dealerShop); } return(null); }
/// <summary> /// Metoto encargado de convertir un trabajador de dmsv1 to trabajador /// de systime /// </summary> /// <param name="workerErp"></param> /// <returns></returns> internal Customers ParseCustomer(terceros customerErp) { if (customerErp != null) { //AjusCustomer String[] phones = new ToolsDmsV1(ParamsContract).AjustPhone(customerErp.telefono_2, customerErp.telefono_1); Customers customer = new Customers() { FullName = customerErp.nombres, Email = customerErp.email2, DocumentNumber = customerErp.nit.ToString(), Phone = phones[1], Mobile = phones[0], IdCountry = new ToolsDmsV1(ParamsContract).AjusCountrie(customerErp.y_pais), IdCity = new ToolsDmsV1(ParamsContract).AjusCity(customerErp.y_ciudad, customerErp.y_dpto, customerErp.y_pais), Address = customerErp.direccion }; return(customer); } return(null); }
/// <summary> /// Metoto encargado de convertir una compañia de seguros /// de erp a systime /// </summary> /// <param name="inSuranceCompanyErp"></param> /// <returns></returns> internal CloudCatalogInsuranceCompanies ParsheInsuranceCompany(terceros inSuranceCompanyErp) { if (inSuranceCompanyErp != null) { String[] phones = new ToolsDmsV1(ParamsContract).AjustPhone(inSuranceCompanyErp.telefono_1, inSuranceCompanyErp.telefono_2); CloudCatalogInsuranceCompanies insuranceCompany = new CloudCatalogInsuranceCompanies() { TIN = inSuranceCompanyErp.nit.ToString(), InsuranceCompany = inSuranceCompanyErp.nombres, Address = inSuranceCompanyErp.direccion, Website = inSuranceCompanyErp.paginaweb, Mobile = phones[0], Phone = phones[1], Email = inSuranceCompanyErp.email2, IdCity = new ToolsDmsV1(ParamsContract).AjusCity(inSuranceCompanyErp.y_ciudad, inSuranceCompanyErp.y_dpto, inSuranceCompanyErp.y_pais), IdCountry = new ToolsDmsV1(ParamsContract).AjusCountrie(inSuranceCompanyErp.y_pais), }; return(insuranceCompany); } return(null); }
/// <summary> /// Hace el parceo de la orden de trabajo /// </summary> /// <param name="worOrderErp"></param> /// <returns></returns> private WorkOrders ParsheWorkOrder(tall_encabeza_orden worOrderErp, out List <Tuple <Type, String> > paramsAditional) { paramsAditional = null; WorkOrders workOrder = null; if (worOrderErp != null) { String insuranceCompany = new ToolsDmsV1(ParamsContract).AjustInsuranceCompany(worOrderErp.aseguradora?.ToString(), out Boolean isInsured); long.TryParse(worOrderErp.nit.ToString(), out long outIdCustomer); workOrder = new WorkOrders() { WorkOrderNumber = worOrderErp.numero.ToString(), IdDealerShop = worOrderErp.bodega.ToString(), IdVinNumber = worOrderErp.serie, OpenOtAt = worOrderErp.fecha, EnteredAt = worOrderErp.entrada, IdCustomer = outIdCustomer, PromisedAt = worOrderErp.promesa_entrega, AuthorizedAt = worOrderErp.fecha_hora_autoriza, HasTotalLoss = (worOrderErp.perdida_total == "s" || worOrderErp.perdida_total == "S"), IdSalesRepresentative = worOrderErp.vendedor?.ToString(), IsInsured = isInsured, PickedUpAt = worOrderErp.fecha_hora_entrega_real, Canceled = worOrderErp.anulada, Note = worOrderErp.notas, IsInvoiced = worOrderErp.facturada }; paramsAditional = new List <Tuple <Type, string> > { new Tuple <Type, string>(typeof(Workers), JsonConvert.SerializeObject(new WorkerKeysDmsV1() { IdWorker = worOrderErp.vendedor?.ToString(), IdDealerShopWorkOrder = worOrderErp.bodega.ToString() })), new Tuple <Type, string>(typeof(Vehicles), JsonConvert.SerializeObject(new VehiclesKeysDmsV1() { VinNumber = worOrderErp.serie })), new Tuple <Type, string>(typeof(Customers), JsonConvert.SerializeObject(new CustomerKeys() { IdCustomer = worOrderErp.nit.ToString() })), new Tuple <Type, string>(typeof(CloudCatalogDealerShops), JsonConvert.SerializeObject(new DelaerShopKeysDmsV1() { IdShop = worOrderErp.bodega.ToString() })), new Tuple <Type, string>(typeof(CloudCatalogInsuranceCompanies), JsonConvert.SerializeObject(new InsuranceComnayKeysDmsV1() { Tin = insuranceCompany })), }; if (worOrderErp.kilometraje.HasValue && worOrderErp.kilometraje.Value > 0) { paramsAditional.Add(new Tuple <Type, string>(typeof(int), worOrderErp.kilometraje?.ToString())); } return(workOrder); } return(null); }