Environment Posted February 14, 2017 Share Posted February 14, 2017 Estimados, Estoy tratando de modificar un modulo de pago al contado derivado de COD (Cash on Delivery). Alguien podría orientarme sobre donde asociar estados de pedido para un modulo de pago en particular. Es decir que, por ejemplo, no aparezca pago por cheque como estado si el cliente esta pagando con este modulo de pago al contado (nunca se va a utilizar ese estado con esa forma de pago). Busco en donde está la relación modulo de pago<-> listado de estados de pedido disponibles para ese modulo ¿Donde se asocian estados de pedidos a módulos de pago? Intente editando la linea: $updateConfig = array('PS_OS_CHEQUE', 'PS_OS_PAYMENT', 'PS_OS_PREPARATION', 'PS_OS_SHIPPING', 'PS_OS_CANCELED', 'PS_OS_REFUND', 'PS_OS_ERROR', 'PS_OS_OUTOFSTOCK', 'PS_OS_BANKWIRE', 'PS_OS_PAYPAL', 'PS_OS_WS_PAYMENT'); del .php del modulo en cuestión pero no pude quitarle los estados asociados (figuran casi todos). Pude sin embargo cambiar el estado por defecto en validation.php del modulo. editando la linea: Configuration::get('PS_OS_PREPARATION') (que por defecto setea en "preparación") Intente también cambiar el estado deleted=1 de la tabla ps_order_status, pero eso conlleva a quitarlos de todos los módulos y no es para nada recomendable.Tengo miedo que algún cambio automático de presta busque un estado deshabilitado. Si algún developer podría orientarme un poco me pongo a investigarlo. Saludos y Gracias Link to comment Share on other sites More sharing options...
joseantgv Posted February 15, 2017 Share Posted February 15, 2017 No hay ninguna relación entre los estados y los métodos de pago. Cuando creas el pedido le pasas el estado en un parámetro a la función validateOrder(), y desde el BO puedes asociar cualquier estado a un pedido, independientemente del método de pago utilizado. Link to comment Share on other sites More sharing options...
Environment Posted February 15, 2017 Author Share Posted February 15, 2017 Gracias por contestar. Es decir que si elijo por ejemplo bankwire como forma de pago en el desplegable de estados del pedido voy a ver si o si todos los estados independientemente de si aplica o no? Ejemplo: Voy a ver el estado "pago con cheque" en el método de pago transferencia bancaria? No hay forma de ocultar esos estados inadecuados en el select de pedidos del backoffice? Tiene que haber una forma... No tiene sentido por ejemplo ver el estado "esperando pago con transferencia" en un módulo de pago efectivo al contado. Se entiende? Link to comment Share on other sites More sharing options...
joseantgv Posted February 15, 2017 Share Posted February 15, 2017 Gracias por contestar. Es decir que si elijo por ejemplo bankwire como forma de pago en el desplegable de estados del pedido voy a ver si o si todos los estados independientemente de si aplica o no? Ejemplo: Voy a ver el estado "pago con cheque" en el método de pago transferencia bancaria? No hay forma de ocultar esos estados inadecuados en el select de pedidos del backoffice? Tiene que haber una forma... No tiene sentido por ejemplo ver el estado "esperando pago con transferencia" en un módulo de pago efectivo al contado. Se entiende? Entiendo lo que dices pero no funciona así. No hay relación entre estados de pedidos y método de pago. Link to comment Share on other sites More sharing options...
Environment Posted February 15, 2017 Author Share Posted February 15, 2017 Gracias Jose, Qué función cumple el campo module_name de la tabla ps_order_status? porque por ahí veo una conexión entre ambos. Saludos Link to comment Share on other sites More sharing options...
joseantgv Posted February 16, 2017 Share Posted February 16, 2017 Gracias Jose, Qué función cumple el campo module_name de la tabla ps_order_status? porque por ahí veo una conexión entre ambos. Saludos Se ejecuta este código en la función sendMail() de clase orderHistory: if ($result['module_name']) { $module = Module::getInstanceByName($result['module_name']); if (Validate::isLoadedObject($module) && isset($module->extra_mail_vars) && is_array($module->extra_mail_vars)) { $data = array_merge($data, $module->extra_mail_vars); } } Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now