117 lines
6.1 KiB
HTML
117 lines
6.1 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="country">
|
|
</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-two vn-focus label="Social name" ng-model="$ctrl.client.socialName" rule
|
|
info="Only letters, numbers and spaces can be used" required="true">
|
|
</vn-textfield>
|
|
<vn-textfield vn-one 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" rule>
|
|
</vn-textfield>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete vn-one 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 vn-one 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 vn-one 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.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-datalist vn-id="town" vn-one 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.country}})
|
|
</tpl-item>
|
|
</vn-datalist>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-autocomplete vn-id="province" vn-one 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.country}})</tpl-item>
|
|
</vn-autocomplete>
|
|
<vn-autocomplete vn-id="country" vn-one ng-model="$ctrl.client.countryFk" data="countries"
|
|
show-field="country" value-field="id" label="Country" rule>
|
|
</vn-autocomplete>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check vn-one label="Active" ng-model="$ctrl.client.isActive">
|
|
</vn-check>
|
|
<vn-check vn-one label="Frozen" ng-model="$ctrl.client.isFreezed">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check vn-one label="Has to invoice" ng-model="$ctrl.client.hasToInvoice">
|
|
</vn-check>
|
|
<vn-check vn-one label="Vies" ng-model="$ctrl.client.isVies">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check vn-one label="Notify by email" ng-model="$ctrl.client.isToBeMailed">
|
|
</vn-check>
|
|
<vn-check vn-one label="Invoice by address" ng-model="$ctrl.client.hasToInvoiceByAddress">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check vn-one 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 vn-one label="Verified data" ng-model="$ctrl.client.isTaxDataChecked" vn-acl="salesAssistant">
|
|
</vn-check>
|
|
</vn-horizontal>
|
|
<vn-horizontal>
|
|
<vn-check vn-one label="Incoterms authorization" ng-model="$ctrl.client.hasIncoterms"
|
|
vn-acl="administrative">
|
|
</vn-check>
|
|
<vn-check vn-one 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>
|
|
<!-- New postcode dialog -->
|
|
<vn-geo-postcode vn-id="postcode" on-response="$ctrl.onResponse($response)">
|
|
</vn-geo-postcode> |