202 lines
6.7 KiB
HTML
202 lines
6.7 KiB
HTML
<vn-watcher
|
|
vn-id="watcher"
|
|
url="Workers/new"
|
|
data="$ctrl.worker"
|
|
insert-mode="true"
|
|
form="form">
|
|
</vn-watcher>
|
|
<form name="form" vn-http-submit="$ctrl.onSubmit()" class="vn-w-md">
|
|
<vn-card class="vn-pa-lg">
|
|
<vn-horizontal>
|
|
<vn-textfield
|
|
vn-one
|
|
label="Firstname"
|
|
ng-model="$ctrl.worker.firstName"
|
|
rule
|
|
on-change="$ctrl.generateCodeUser()"
|
|
vn-focus>
|
|
</vn-textfield>
|
|
<vn-textfield
|
|
vn-one
|
|
label="Lastname"
|
|
on-change="$ctrl.generateCodeUser()"
|
|
ng-model="$ctrl.worker.lastNames"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-date-picker
|
|
vn-one
|
|
label="Birth"
|
|
ng-model="$ctrl.worker.birth">
|
|
</vn-date-picker>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-textfield
|
|
vn-one
|
|
label="Fi"
|
|
ng-model="$ctrl.worker.fi"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-textfield
|
|
vn-one
|
|
label="Worker code"
|
|
ng-model="$ctrl.worker.code"
|
|
maxLength="3"
|
|
on-change="$ctrl.worker.code = $ctrl.worker.code.toUpperCase()"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-textfield
|
|
vn-one
|
|
label="Phone"
|
|
ng-model="$ctrl.worker.phone"
|
|
rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-datalist
|
|
label="Postcode"
|
|
vn-one
|
|
ng-model="$ctrl.worker.postcode"
|
|
selection="$ctrl.postcode"
|
|
url="Postcodes/location"
|
|
fields="['code','townFk']"
|
|
order="code, townFk"
|
|
value-field="code"
|
|
show-field="code"
|
|
rule>
|
|
<tpl-item>
|
|
{{code}} - {{town.name}} ({{town.province.name}},
|
|
{{town.province.country.country}})
|
|
</tpl-item>
|
|
<append>
|
|
<vn-icon-button
|
|
icon="add_circle"
|
|
vn-tooltip="New postcode"
|
|
ng-click="postcode.open()"
|
|
vn-acl="deliveryBoss"
|
|
vn-acl-action="remove">
|
|
</vn-icon-button>
|
|
</append>
|
|
</vn-datalist>
|
|
<vn-autocomplete
|
|
vn-id="province"
|
|
label="Province"
|
|
ng-model="$ctrl.worker.provinceFk"
|
|
selection="$ctrl.province"
|
|
url="Provinces/location"
|
|
fields="['id', 'name', 'countryFk']"
|
|
rule>
|
|
<tpl-item>{{name}} ({{country.country}})</tpl-item>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-datalist
|
|
vn-id="town"
|
|
label="City"
|
|
ng-model="$ctrl.worker.city"
|
|
selection="$ctrl.town"
|
|
url="Towns/location"
|
|
fields="['id', 'name', 'provinceFk']"
|
|
value-field="name">
|
|
<tpl-item>
|
|
{{name}}, {{province.name}}
|
|
({{province.country.country}})
|
|
</tpl-item>
|
|
</vn-datalist>
|
|
<vn-textfield
|
|
vn-two
|
|
label="Street"
|
|
ng-model="$ctrl.worker.street"
|
|
rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-textfield
|
|
label="Web user"
|
|
ng-model="$ctrl.worker.name"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-textfield
|
|
label="Personal email"
|
|
ng-model="$ctrl.worker.email"
|
|
rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
vn-one
|
|
vn-id="company"
|
|
ng-model="$ctrl.worker.companyFk"
|
|
url="Companies"
|
|
show-field="code"
|
|
value-field="id"
|
|
label="Company">
|
|
</vn-autocomplete>
|
|
<vn-autocomplete
|
|
vn-one
|
|
ng-model="$ctrl.worker.bossFk"
|
|
url="Workers/activeWithInheritedRole"
|
|
show-field="nickname"
|
|
search-function="{firstName: $search}"
|
|
where="{role: 'employee'}"
|
|
label="Boss">
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
vn-one
|
|
label="Pay method"
|
|
url="Paymethods"
|
|
ng-model="$ctrl.worker.payMethodFk"
|
|
initial-data="$ctrl.workerConfig.payMethodFk">
|
|
</vn-autocomplete>
|
|
<vn-textfield
|
|
vn-one
|
|
label="IBAN"
|
|
ng-model="$ctrl.worker.iban"
|
|
on-change="$ctrl.autofillBic()"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-autocomplete
|
|
vn-one
|
|
label="Swift / BIC"
|
|
url="BankEntities"
|
|
ng-model="$ctrl.worker.bankEntityFk"
|
|
fields="['name']"
|
|
initial-data="$ctrl.worker.bankEntityFk"
|
|
on-change="$ctrl.autofillBic()"
|
|
search-function="{or: [{bic: {like: $search +'%'}}, {name: {like: '%'+ $search +'%'}}]}"
|
|
value-field="id"
|
|
show-field="bic"
|
|
vn-acl="salesAssistant, hr"
|
|
disabled="$ctrl.ibanCountry == 'ES'">
|
|
<tpl-item>{{bic}} {{name}}</tpl-item>
|
|
<append>
|
|
<vn-icon-button
|
|
vn-auto
|
|
icon="add_circle"
|
|
vn-click-stop="bankEntity.show({countryFk: $ctrl.worker.countryFk})"
|
|
vn-tooltip="New bank entity"
|
|
vn-acl="salesAssistant, hr">
|
|
</vn-icon-button>
|
|
</append>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
</vn-card>
|
|
<vn-button-bar>
|
|
<vn-submit
|
|
disabled="!watcher.dataChanged()"
|
|
label="Create">
|
|
</vn-submit>
|
|
<vn-button
|
|
class="cancel"
|
|
label="Cancel"
|
|
ui-sref="worker.index">
|
|
</vn-button>
|
|
</vn-button-bar>
|
|
</form>
|
|
<!-- New postcode dialog -->
|
|
<vn-geo-postcode
|
|
vn-id="postcode"
|
|
on-response="$ctrl.onResponse($response)">
|
|
</vn-geo-postcode>
|