parent
1fec9d9408
commit
b6e5d9199c
@ -0,0 +1,4 @@ |
|||||||
|
<template src="./template.html"></template> |
||||||
|
<script lang="ts" src="./script.ts"></script> |
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only --> |
||||||
|
<style scoped lang="scss" src="./style.scss"></style> |
@ -0,0 +1,17 @@ |
|||||||
|
import { Component, Prop, Vue } from 'vue-property-decorator' |
||||||
|
import VueClipboard from 'vue-clipboard2' |
||||||
|
import { Registers } from '@/classes/DTO/Registers' |
||||||
|
|
||||||
|
Vue.use(VueClipboard) |
||||||
|
|
||||||
|
@Component |
||||||
|
export default class Mocks extends Vue { |
||||||
|
@Prop() |
||||||
|
personalId!: string |
||||||
|
|
||||||
|
registers = new Registers() |
||||||
|
|
||||||
|
mounted () { |
||||||
|
console.log('mounted') |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,3 @@ |
|||||||
|
.option-select { |
||||||
|
width: 350px; |
||||||
|
} |
@ -0,0 +1,39 @@ |
|||||||
|
<div> |
||||||
|
<!-- 0 - не замокано(делать запрос) --> |
||||||
|
<!-- 1 - выписка на хороший доход--> |
||||||
|
<!-- 2 - выписка на маленький доход--> |
||||||
|
<!-- 3 - ошибка загрузки выписки (перезапрос)--> |
||||||
|
<!-- 4 - ошибка загрузки выписки (нет данных)--> |
||||||
|
<!-- 5 - по персональному коду (3 - выписка с хорошим доходом, остальные - ошибка загрузки выписки)--> |
||||||
|
<!-- 6 - выписка на хороший доход, последние два месяца доход 0--> |
||||||
|
<!-- 7 - выписка на хороший доход, последний месяц доход 0--> |
||||||
|
<!-- 8 - выписка на хороший доход, но у пользователя нет активного работодателя. Не можем выдать--> |
||||||
|
<!-- 9 - выписка на хороший доход, в выписке есть выплаты, которые не учитываются в подсчёте среднего дохода--> |
||||||
|
<label> |
||||||
|
XTEE MTA |
||||||
|
<select class="option-select" v-model="registers.xteeMta"> |
||||||
|
<option value="">-</option> |
||||||
|
<option value="0">Не замокано (делать запрос)</option> |
||||||
|
<option value="1">Выписка на хороший доход</option> |
||||||
|
<option value="2">Выписка на маленький доход</option> |
||||||
|
<option value="3">Ошибка загрузки выписки (перезапрос)</option> |
||||||
|
<option value="4">Ошибка загрузки выписки (нет данных)</option> |
||||||
|
<option value="5">По персональному коду (3 - выписка с хорошим доходом, остальные - ошибка загрузки выписки)</option> |
||||||
|
<option value="6">Выписка на хороший доход, последние два месяца доход 0</option> |
||||||
|
<option value="7">Выписка на хороший доход, последний месяц доход 0</option> |
||||||
|
<option value="8">Выписка на хороший доход, но у пользователя нет активного работодателя. Не можем выдать</option> |
||||||
|
<option value="9">Выписка на хороший доход, в выписке есть выплаты, которые не учитываются в подсчёте среднего дохода</option> |
||||||
|
</select> |
||||||
|
</label> |
||||||
|
<br /><br /> |
||||||
|
<label> |
||||||
|
XTEE Pension |
||||||
|
<select class="option-select" v-model="registers.xteePension"> |
||||||
|
<option value="">-</option> |
||||||
|
<option value="0">Не замокано (делать запрос)</option> |
||||||
|
<option value="2">Ошибка сервиса. (перезапросы)</option> |
||||||
|
</select> |
||||||
|
</label> |
||||||
|
<br /><br /> |
||||||
|
<button @click="saveMocks">Сохранить моки</button> |
||||||
|
</div> |
@ -0,0 +1,4 @@ |
|||||||
|
<template src="./template.html"></template> |
||||||
|
<script lang="ts" src="./script.ts"></script> |
||||||
|
<!-- Add "scoped" attribute to limit CSS to this component only --> |
||||||
|
<style scoped lang="scss" src="./style.scss"></style> |
@ -0,0 +1,115 @@ |
|||||||
|
import { Component, Vue } from 'vue-property-decorator' |
||||||
|
import personalIdGenerator from '@/classes/Service/Generators/PersonalIdGenerator' |
||||||
|
import ibanGenerator from '@/classes/Service/Generators/IbanGenerator' |
||||||
|
import phoneGenerator from '@/classes/Service/Generators/PhoneGenerator' |
||||||
|
import firstNameGenerator from '@/classes/Service/Generators/FirstNameGenerator' |
||||||
|
import lastNameGenerator from '@/classes/Service/Generators/LastNameGenerator' |
||||||
|
import { Person } from '@/classes/DTO/Person' |
||||||
|
import VueClipboard from 'vue-clipboard2' |
||||||
|
import { Target } from '@/classes/Enum/Target' |
||||||
|
import sender from '@/classes/Service/Browser/Chrome/Sender' |
||||||
|
import { Action } from '@/classes/Enum/Action' |
||||||
|
import notificationCleaner from '@/classes/Service/NotificationCleaner' |
||||||
|
import { Registers } from '@/classes/DTO/Registers' |
||||||
|
import Mocks from '@/components/mocks/main.vue' |
||||||
|
|
||||||
|
Vue.use(VueClipboard) |
||||||
|
|
||||||
|
@Component({ |
||||||
|
components: { |
||||||
|
Mocks |
||||||
|
} |
||||||
|
}) |
||||||
|
export default class PersonTab extends Vue { |
||||||
|
personalId = '' |
||||||
|
person = new Person() |
||||||
|
registers = new Registers() |
||||||
|
isAutoCleaner = false |
||||||
|
copyText = '' |
||||||
|
|
||||||
|
get allowedMonths () { |
||||||
|
const result = [] |
||||||
|
for (let i = 1; i <= 12; i++) { |
||||||
|
result.push(i) |
||||||
|
} |
||||||
|
return result |
||||||
|
} |
||||||
|
|
||||||
|
get allowedYears () { |
||||||
|
const result = [] |
||||||
|
const currentYear = (new Date()).getFullYear() |
||||||
|
for (let i = 1960; i <= currentYear; i++) { |
||||||
|
result.push(i) |
||||||
|
} |
||||||
|
return result |
||||||
|
} |
||||||
|
|
||||||
|
mounted () { |
||||||
|
/** todo заполнить первоначальное значение */ |
||||||
|
notificationCleaner.state().then((isAutoCleaner) => { |
||||||
|
this.isAutoCleaner = isAutoCleaner |
||||||
|
console.log('this.isAutoCleaner = ' + isAutoCleaner) |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
copyPersonalId () { |
||||||
|
const personalId = personalIdGenerator.generate(this.person) |
||||||
|
this.personalId = personalId |
||||||
|
this.copy(personalId) |
||||||
|
} |
||||||
|
|
||||||
|
copyIban () { |
||||||
|
const iban = ibanGenerator.generate(this.person.country) |
||||||
|
this.copy(iban) |
||||||
|
} |
||||||
|
|
||||||
|
copyPhone () { |
||||||
|
const phone = phoneGenerator.generate(this.person.country) |
||||||
|
this.copy(phone) |
||||||
|
} |
||||||
|
|
||||||
|
copy (text: string) { |
||||||
|
this.copyText = text |
||||||
|
this.$copyText(text) |
||||||
|
} |
||||||
|
|
||||||
|
autocomplete () { |
||||||
|
const personalId = personalIdGenerator.generate(this.person) |
||||||
|
this.insertValueToNode(Target.PERSONAL_ID, personalId) |
||||||
|
const iban = ibanGenerator.generate(this.person.country) |
||||||
|
this.insertValueToNode(Target.IBAN, iban) |
||||||
|
const phone = phoneGenerator.generate(this.person.country) |
||||||
|
this.insertValueToNode(Target.PHONE, phone) |
||||||
|
const firstName = firstNameGenerator.generate(this.person.country, this.person.gender) |
||||||
|
this.insertValueToNode(Target.FIRST_NAME, firstName) |
||||||
|
const lastName = lastNameGenerator.generate(this.person.country) |
||||||
|
this.insertValueToNode(Target.LAST_NAME, lastName) |
||||||
|
} |
||||||
|
|
||||||
|
insertValueToNode (target: Target, value: string): void { |
||||||
|
sender.send({ |
||||||
|
action: Action.INSERT, |
||||||
|
target: target, |
||||||
|
value: value |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
cleanNotifications (): void { |
||||||
|
sender.send({ |
||||||
|
action: Action.CLEAN_NOTIFICATION |
||||||
|
}) |
||||||
|
} |
||||||
|
|
||||||
|
onChangeAutoCleaner () { |
||||||
|
console.log(this.isAutoCleaner) |
||||||
|
if (this.isAutoCleaner) { |
||||||
|
notificationCleaner.enable() |
||||||
|
} else { |
||||||
|
notificationCleaner.disable() |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
saveMocks () { |
||||||
|
console.log(this.personalId, this.registers) |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,3 @@ |
|||||||
|
.option-select { |
||||||
|
width: 350px; |
||||||
|
} |
@ -0,0 +1,61 @@ |
|||||||
|
<div class="tab-page__item tab-page__item_show"> |
||||||
|
<div class="form-row"> |
||||||
|
<div class="form-row__item"> |
||||||
|
<input title="Day" class="form-row__item-input" type="text" v-model="person.birthday.day" placeholder="Day"> |
||||||
|
</div> |
||||||
|
<div class="form-row__item"> |
||||||
|
<select title="Month" v-model="person.birthday.month"> |
||||||
|
<option v-for="allowedMonth in allowedMonths" :value="allowedMonth">{{ allowedMonth }}</option> |
||||||
|
</select> |
||||||
|
</div> |
||||||
|
<div class="form-row__item"> |
||||||
|
<select title="Year" v-model="person.birthday.year"> |
||||||
|
<option v-for="allowedYear in allowedYears" :value="allowedYear">{{ allowedYear }}</option> |
||||||
|
</select> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="form-row"> |
||||||
|
<div class="form-row__item"> |
||||||
|
<label> |
||||||
|
Country |
||||||
|
<select v-model="person.country"> |
||||||
|
<option value="ee">Estonia</option> |
||||||
|
<option value="lt">Lithuania</option> |
||||||
|
</select> |
||||||
|
</label> |
||||||
|
</div> |
||||||
|
<div class="form-row__item"> |
||||||
|
<label> |
||||||
|
Gender |
||||||
|
<select v-model="person.gender"> |
||||||
|
<option value="male">Male</option> |
||||||
|
<option value="female">Female</option> |
||||||
|
<option value="random">Random</option> |
||||||
|
</select> |
||||||
|
</label> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="form-row"> |
||||||
|
<div |
||||||
|
@click="autocomplete" |
||||||
|
class="form-row__item copy-button" data-clipboard-text="text1"> |
||||||
|
<button>Autocomplete</button> |
||||||
|
</div> |
||||||
|
<div |
||||||
|
@click="copyPersonalId" |
||||||
|
class="form-row__item copy-button" data-clipboard-text="text2"> |
||||||
|
<button>PersonalId</button> |
||||||
|
</div> |
||||||
|
<div |
||||||
|
@click="copyIban" |
||||||
|
class="form-row__item copy-button" data-clipboard-text="text3"> |
||||||
|
<button>Iban</button> |
||||||
|
</div> |
||||||
|
<div |
||||||
|
@click="copyPhone" |
||||||
|
class="form-row__item copy-button" data-clipboard-text="text3"> |
||||||
|
<button>Phone</button> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="memory-panel">Memory: {{copyText}}</div> |
||||||
|
</div> |
Loading…
Reference in new issue