Agregar datos propietario
This commit is contained in:
@ -153,7 +153,7 @@
|
||||
@include('layout.body.scripts.rut')
|
||||
|
||||
@push('page_scripts')
|
||||
<script type="text/javascript">
|
||||
<script>
|
||||
const regiones = [
|
||||
@foreach ($regiones as $region)
|
||||
'<div class="item" data-value="{{$region->id}}">{{$region->descripcion}}</div>',
|
||||
@ -354,56 +354,65 @@
|
||||
const lines = [
|
||||
'<label for="rut">RUT</label>',
|
||||
'<div class="inline field">',
|
||||
'<input type="text" id="rut" name="rut" placeholder="00000000-0" required />',
|
||||
'<span class="ui error message" id="alert_rut">',
|
||||
'<i class="exclamation triangle icon"></i>',
|
||||
'RUT Inválido',
|
||||
'</span>',
|
||||
'<input type="text" id="rut" name="rut" placeholder="00000000-0" required />',
|
||||
'<span class="ui error message" id="alert_rut">',
|
||||
'<i class="exclamation triangle icon"></i>',
|
||||
'RUT Inválido',
|
||||
'</span>',
|
||||
'</div>',
|
||||
'<label for="nombres">Nombre</label>',
|
||||
'<div class="inline fields">',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="nombres" id="nombres" placeholder="Nombre(s)" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="apellido_paterno" placeholder="Apellido Paterno" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="apellido_materno" placeholder="Apellido Materno" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="nombres" id="nombres" placeholder="Nombre(s)" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="apellido_paterno" placeholder="Apellido Paterno" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="apellido_materno" placeholder="Apellido Materno" required />',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<label for="calle">Dirección</label>',
|
||||
'<div class="inline fields">',
|
||||
'<div class="eight wide field">',
|
||||
'<input type="text" name="calle" id="calle" size="16" placeholder="Calle" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="numero" size="5" placeholder="Número" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="extra" placeholder="Otros Detalles" />',
|
||||
'</div>',
|
||||
'<div class="eight wide field">',
|
||||
'<input type="text" name="calle" id="calle" size="16" placeholder="Calle" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="numero" size="5" placeholder="Número" required />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="extra" placeholder="Otros Detalles" />',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<div class="inline fields">',
|
||||
'<div class="two wide field"></div>',
|
||||
'<div class="four wide field">',
|
||||
'<div class="ui fluid search selection dropdown" id="comuna">',
|
||||
'<input type="hidden" name="comuna" />',
|
||||
'<i class="dropdown icon"></i>',
|
||||
'<div class="default text">Comuna</div>',
|
||||
'<div class="menu"></div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<div class="six wide field">',
|
||||
'<div class="ui fluid search selection dropdown" id="region">',
|
||||
'<input type="hidden" name="region" />',
|
||||
'<i class="dropdown icon"></i>',
|
||||
'<div class="default text">Región</div>',
|
||||
'<div class="menu">',
|
||||
...regiones,
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<div class="two wide field"></div>',
|
||||
'<div class="four wide field">',
|
||||
'<div class="ui fluid search selection dropdown" id="comuna">',
|
||||
'<input type="hidden" name="comuna" />',
|
||||
'<i class="dropdown icon"></i>',
|
||||
'<div class="default text">Comuna</div>',
|
||||
'<div class="menu"></div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<div class="six wide field">',
|
||||
'<div class="ui fluid search selection dropdown" id="region">',
|
||||
'<input type="hidden" name="region" />',
|
||||
'<i class="dropdown icon"></i>',
|
||||
'<div class="default text">Región</div>',
|
||||
'<div class="menu">',
|
||||
...regiones,
|
||||
'</div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<label>Otros Datos</label>',
|
||||
'<div class="inline fields">',
|
||||
'<div class="four wide field">',
|
||||
'<input type="email" name="email" placeholder="Email" />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="telefono" placeholder="Teléfono" />',
|
||||
'</div>',
|
||||
'</div>'
|
||||
]
|
||||
return lines.join("\n")
|
||||
@ -467,8 +476,10 @@
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<div>Representante Legal</div>',
|
||||
'<div class="ui divider"></div>',
|
||||
this.persona.draw()
|
||||
]
|
||||
return [lines.join("\n"), this.persona.draw()].join("\n")
|
||||
return lines.join("\n")
|
||||
}
|
||||
activate() {
|
||||
new RutHandler({id: '#rut_sociedad', alert_id: '#alert_rut_sociedad'})
|
||||
@ -486,6 +497,7 @@
|
||||
draw() {
|
||||
let lines = [
|
||||
this.persona.draw(),
|
||||
'<div class="ui divider"></div>',
|
||||
'<label for="rut">RUT Otro</label>',
|
||||
'<div class="inline field">',
|
||||
'<input type="text" id="rut_otro" name="rut_otro" required />',
|
||||
@ -538,6 +550,15 @@
|
||||
'</div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'</div>',
|
||||
'<label>Otros Datos para Otro</label>',
|
||||
'<div class="inline fields">',
|
||||
'<div class="four wide field">',
|
||||
'<input type="email" name="email_otro" placeholder="Email" />',
|
||||
'</div>',
|
||||
'<div class="field">',
|
||||
'<input type="text" name="telefono_otro" placeholder="Teléfono" />',
|
||||
'</div>',
|
||||
'</div>'
|
||||
]
|
||||
return lines.join("\n")
|
||||
@ -607,6 +628,8 @@
|
||||
parent.find("[name='extra']").val(data.propietario.direccion.extra)
|
||||
parent.find('#region').dropdown('set selected', data.propietario.direccion.comuna.provincia.region.id)
|
||||
parent.find('#comuna').dropdown('set selected', data.propietario.direccion.comuna.id)
|
||||
parent.find("[name='email']").val(data.propietario.email)
|
||||
parent.find("[name='telefono']").val(data.propietario.telefono)
|
||||
|
||||
if (data.propietario.representante !== '') {
|
||||
document.getElementById(this.ids.tipo).trigger('check')
|
||||
|
@ -58,7 +58,17 @@ Editar Propietario
|
||||
<select class="ui search selection dropdown" name="comuna" id="comunas"></select>
|
||||
</div>
|
||||
</div>
|
||||
<button class="ui button" id="guardar_button">Guardar</button>
|
||||
<div class="fields">
|
||||
<div class="four wide field">
|
||||
<label>Email</label>
|
||||
<input type="email" name="email" value="{{$propietario->datos?->email}}" />
|
||||
</div>
|
||||
<div class="field">
|
||||
<label>Teléfono</label>
|
||||
<input type="text" name="telefono" value="{{$propietario->datos?->telefono}}" />
|
||||
</div>
|
||||
</div>
|
||||
<button type="button" class="ui button" id="guardar_button">Guardar</button>
|
||||
</form>
|
||||
</div>
|
||||
@endsection
|
||||
@ -66,10 +76,10 @@ Editar Propietario
|
||||
@include('layout.body.scripts.rut')
|
||||
|
||||
@push('page_scripts')
|
||||
<script type="text/javascript">
|
||||
<script>
|
||||
class Propietario {
|
||||
props
|
||||
constructor({rut, digito, nombres, apellidos: {paterno, materno}, direccion: {calle, numero, extra, comuna, region}}) {
|
||||
constructor({rut, digito, nombres, apellidos: {paterno, materno}, direccion: {calle, numero, extra, comuna, region}, email, telefono}) {
|
||||
this.props = {
|
||||
rut,
|
||||
digito,
|
||||
@ -85,6 +95,8 @@ Editar Propietario
|
||||
comuna,
|
||||
region
|
||||
},
|
||||
email,
|
||||
telefono
|
||||
}
|
||||
}
|
||||
|
||||
@ -128,6 +140,12 @@ Editar Propietario
|
||||
this.props.direccion.region = region
|
||||
}
|
||||
}
|
||||
},
|
||||
email: email => {
|
||||
this.props.email = email
|
||||
},
|
||||
telefono: telefono => {
|
||||
this.props.telefono = telefono
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -145,7 +163,9 @@ Editar Propietario
|
||||
numero: '{{$propietario->datos->direccion->numero}}',
|
||||
extra: '{{trim($propietario->datos->direccion->extra)}}',
|
||||
comuna: '{{$propietario->datos->direccion->comuna->id}}'
|
||||
}
|
||||
},
|
||||
email: '{{trim($propietario->datos?->email)}}',
|
||||
telefono: '{{trim($propietario->datos?->telefono)}}'
|
||||
}
|
||||
const data = {}
|
||||
const collator = new Intl.Collator('es')
|
||||
@ -299,6 +319,16 @@ Editar Propietario
|
||||
propietario.props.data.update().direccion().comuna(comuna_id)
|
||||
})
|
||||
}
|
||||
static email() {
|
||||
$("[name='email']").change(event => {
|
||||
propietario.props.data.update().email(event.currentTarget.value)
|
||||
})
|
||||
}
|
||||
static telefono() {
|
||||
$("[name='telefono']").change(event => {
|
||||
propietario.props.data.update().telefono($(event.currentTarget).val())
|
||||
})
|
||||
}
|
||||
|
||||
static run() {
|
||||
Watcher.rut()
|
||||
@ -307,6 +337,8 @@ Editar Propietario
|
||||
Watcher.direccion()
|
||||
Watcher.region()
|
||||
Watcher.comuna()
|
||||
Watcher.email()
|
||||
Watcher.telefono()
|
||||
}
|
||||
}
|
||||
class EventHandler {
|
||||
@ -381,6 +413,8 @@ Editar Propietario
|
||||
$("[name='numero']").val(this.props.data.props.direccion.numero)
|
||||
$("[name='extra']").val(this.props.data.props.direccion.extra)
|
||||
$('#region').val(this.props.data.props.direccion.region)
|
||||
$("[name='email']").val(this.props.data.props.email)
|
||||
$("[name='telefono']").val(this.props.data.props.telefono)
|
||||
this.update().region()
|
||||
},
|
||||
region: () => {
|
||||
@ -422,6 +456,8 @@ Editar Propietario
|
||||
this.props.data.update().direccion().extra(data.propietario.direccion.extra)
|
||||
this.props.data.update().direccion().comuna(data.propietario.direccion.comuna.id)
|
||||
this.props.data.update().direccion().region(data.propietario.direccion.comuna.provincia.region.id)
|
||||
this.props.data.update().email(data.propietario.email)
|
||||
this.props.data.update().telefono(data.propietario.telefono)
|
||||
this.update().propietario()
|
||||
})
|
||||
})
|
||||
@ -476,6 +512,8 @@ Editar Propietario
|
||||
$("[name='calle']").val('')
|
||||
$("[name='numero']").val('')
|
||||
$("[name='extra']").val('')
|
||||
$("[name='email']").val('')
|
||||
$("[name='telefono']").val('')
|
||||
}
|
||||
}
|
||||
},
|
||||
@ -498,7 +536,8 @@ Editar Propietario
|
||||
})
|
||||
this.update().region()
|
||||
|
||||
$(this.props.ids.forms.edit).submit(Form.submit)
|
||||
document.getElementById(this.props.ids.forms.edit.replace('#', '')).addEventListener('submit', Form.submit)
|
||||
document.getElementById(this.props.ids.buttons.guardar.replace('#', '')).addEventListener('click', Form.submit)
|
||||
Watcher.run()
|
||||
}
|
||||
}
|
||||
@ -529,7 +568,9 @@ Editar Propietario
|
||||
extra: '{{$propietario->datos->direccion->extra}}',
|
||||
comuna: '{{$propietario->datos->direccion->comuna->id}}',
|
||||
region: '{{$propietario->datos->direccion->comuna->provincia->region->id}}',
|
||||
}
|
||||
},
|
||||
email: '{{$propietario->datos?->email}}',
|
||||
telefono: '{{$propietario->datos?->telefono}}'
|
||||
})
|
||||
})
|
||||
})
|
||||
|
Reference in New Issue
Block a user