224 lines
7.6 KiB
HTML
224 lines
7.6 KiB
HTML
<mg-ajax path="Clients/{{patch.params.id}}/updateFiscalData" options="vnPatch"></mg-ajax>
|
|
<vn-watcher
|
|
vn-id="watcher"
|
|
data="$ctrl.client"
|
|
id-field="id"
|
|
form="form"
|
|
save="patch">
|
|
</vn-watcher>
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="Provinces/location"
|
|
data="provincesLocation"
|
|
order="name">
|
|
</vn-crud-model>
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="Countries"
|
|
data="countries"
|
|
order="name">
|
|
</vn-crud-model>
|
|
<vn-crud-model
|
|
auto-load="true"
|
|
url="SageTaxTypes"
|
|
data="sageTaxTypes"
|
|
order="vat">
|
|
</vn-crud-model>
|
|
<form name="form" ng-submit="$ctrl.onSubmit()" class="vn-w-md">
|
|
<vn-card class="vn-pa-lg">
|
|
<vn-horizontal>
|
|
<vn-textfield
|
|
vn-focus
|
|
label="Social name"
|
|
ng-model="$ctrl.client.socialName"
|
|
info="Only letters, numbers and spaces can be used"
|
|
required="true"
|
|
ng-keyup="$ctrl.client.socialName = $ctrl.client.socialName.toUpperCase()"
|
|
rule>
|
|
</vn-textfield>
|
|
<vn-textfield
|
|
label="Tax number"
|
|
ng-model="$ctrl.client.fi"
|
|
rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-textfield
|
|
vn-two
|
|
label="Street"
|
|
ng-model="$ctrl.client.street"
|
|
ng-keyup="$ctrl.client.street = $ctrl.client.street.toUpperCase()"
|
|
rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
ng-model="$ctrl.client.sageTaxTypeFk"
|
|
data="sageTaxTypes"
|
|
show-field="vat"
|
|
value-field="id"
|
|
label="Sage tax type"
|
|
vn-acl="salesAssistant"
|
|
rule>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete
|
|
ng-model="$ctrl.client.sageTransactionTypeFk"
|
|
url="SageTransactionTypes"
|
|
show-field="transaction"
|
|
value-field="id"
|
|
label="Sage transaction type"
|
|
search-function="{or: [{id: $search}, {transaction: {like: '%'+ $search +'%'}}]}"
|
|
vn-acl="salesAssistant"
|
|
order="transaction"
|
|
rule>
|
|
<tpl-item>{{id}}: {{transaction}}</tpl-item>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-datalist
|
|
label="Postcode"
|
|
ng-model="$ctrl.client.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.name}})
|
|
</tpl-item>
|
|
<append>
|
|
<vn-icon-button
|
|
icon="add_circle"
|
|
vn-tooltip="New postcode"
|
|
ng-click="postcode.open()"
|
|
vn-acl="deliveryAssistant"
|
|
vn-acl-action="remove">
|
|
</vn-icon-button>
|
|
</append>
|
|
</vn-datalist>
|
|
<vn-datalist
|
|
vn-id="town"
|
|
label="City"
|
|
ng-model="$ctrl.client.city"
|
|
selection="$ctrl.town"
|
|
url="Towns/location"
|
|
fields="['id', 'name', 'provinceFk']"
|
|
show-field="name"
|
|
value-field="name">
|
|
<tpl-item>
|
|
{{name}}, {{province.name}}
|
|
({{province.country.name}})
|
|
</tpl-item>
|
|
</vn-datalist>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete
|
|
vn-two
|
|
vn-id="province"
|
|
label="Province"
|
|
ng-model="$ctrl.client.provinceFk"
|
|
selection="$ctrl.province"
|
|
data="provincesLocation"
|
|
fields="['id', 'name', 'countryFk']"
|
|
show-field="name"
|
|
value-field="id"
|
|
rule>
|
|
<tpl-item>{{name}} ({{country.name}})</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete
|
|
vn-one
|
|
vn-id="country"
|
|
ng-model="$ctrl.client.countryFk"
|
|
data="countries"
|
|
show-field="name"
|
|
value-field="id"
|
|
label="Country"
|
|
rule>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete
|
|
vn-one
|
|
vn-id="viesCode"
|
|
ng-model="$ctrl.client.viesCode"
|
|
data="countries"
|
|
show-field="code"
|
|
value-field="code"
|
|
label="viesCode"
|
|
info="To use vies that is not listed use Lilium"
|
|
rule>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check
|
|
label="Active"
|
|
ng-model="$ctrl.client.isActive">
|
|
</vn-check>
|
|
<vn-check
|
|
label="Frozen"
|
|
ng-model="$ctrl.client.isFreezed">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check
|
|
label="Has to invoice"
|
|
ng-model="$ctrl.client.hasToInvoice">
|
|
</vn-check>
|
|
<vn-check
|
|
label="Invoice by address"
|
|
ng-model="$ctrl.client.hasToInvoiceByAddress">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check
|
|
label="Notify by email"
|
|
ng-model="$ctrl.client.isToBeMailed">
|
|
</vn-check>
|
|
<vn-check
|
|
label="Verified data"
|
|
ng-model="$ctrl.client.isTaxDataChecked"
|
|
vn-acl="salesAssistant">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check
|
|
label="Is equalizated"
|
|
ng-model="$ctrl.client.isEqualizated"
|
|
info="In order to invoice, this field is not consulted, but the consignee's ET. When modifying this field if the invoice by address option is not checked, the change will be automatically propagated to all addresses, otherwise the user will be asked if he wants to propagate it or not."
|
|
on-change="$ctrl.onChangeEqualizated(value)">
|
|
</vn-check>
|
|
<vn-check
|
|
label="Electronic invoice"
|
|
ng-model="$ctrl.client.hasElectronicInvoice"
|
|
vn-acl="administrative">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
</vn-card>
|
|
<vn-button-bar>
|
|
<vn-submit disabled="!watcher.dataChanged()" label="Save">
|
|
</vn-submit>
|
|
<vn-button
|
|
class="cancel"
|
|
label="Undo changes"
|
|
disabled="!watcher.dataChanged()"
|
|
ng-click="watcher.loadOriginalData()">
|
|
</vn-button>
|
|
</vn-button-bar>
|
|
</form>
|
|
<vn-confirm
|
|
vn-id="propagate-isEqualizated"
|
|
question="You changed the equalization tax"
|
|
message="Do you want to spread the change?"
|
|
on-accept="$ctrl.onAcceptEt()">
|
|
</vn-confirm>
|
|
<vn-confirm
|
|
vn-id="confirm-duplicatedClient"
|
|
message="Found a client with this data"
|
|
on-accept="$ctrl.onAcceptDuplication()">
|
|
</vn-confirm>
|
|
<vn-geo-postcode
|
|
vn-id="postcode"
|
|
on-response="$ctrl.onResponse($response)">
|
|
</vn-geo-postcode>
|