parent
2153296023
commit
79cb7feec9
@ -0,0 +1,9 @@ |
|||||||
|
export class ToggleNewClientTypeRequest { |
||||||
|
personalCode!: string |
||||||
|
} |
||||||
|
|
||||||
|
export default { |
||||||
|
code: 'api_plugin_toggle_new_client_type', |
||||||
|
method: 'POST', |
||||||
|
url: '/plugin/user/{personalCode}/toggleNewClientType' |
||||||
|
} |
@ -0,0 +1,9 @@ |
|||||||
|
export class ToggleRegularClientTypeRequest { |
||||||
|
personalCode!: string |
||||||
|
} |
||||||
|
|
||||||
|
export default { |
||||||
|
code: 'api_plugin_toggle_regular_client_type', |
||||||
|
method: 'POST', |
||||||
|
url: '/plugin/user/{personalCode}/toggleRegularClientType' |
||||||
|
} |
@ -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,37 @@ |
|||||||
|
import { Component, Prop, Vue } from 'vue-property-decorator' |
||||||
|
import VueClipboard from 'vue-clipboard2' |
||||||
|
import httpClient from '@/api/Main/HttpClient' |
||||||
|
import { ToggleNewClientTypeRequest } from '@/api/Main/Schemas/ToggleNewClientTypeSchema' |
||||||
|
|
||||||
|
Vue.use(VueClipboard) |
||||||
|
|
||||||
|
@Component |
||||||
|
export default class UserTab extends Vue { |
||||||
|
@Prop() |
||||||
|
clientTypeUpdate!: string |
||||||
|
|
||||||
|
personalCode!: string |
||||||
|
clientType = 'New'; |
||||||
|
|
||||||
|
update () { |
||||||
|
if (this.clientType === 'New') { |
||||||
|
const newToggle = new ToggleNewClientTypeRequest() |
||||||
|
newToggle.personalCode = this.personalCode |
||||||
|
|
||||||
|
httpClient.toggleNewClientType(newToggle) |
||||||
|
} else { |
||||||
|
const regularToggle = new ToggleNewClientTypeRequest() |
||||||
|
regularToggle.personalCode = this.personalCode |
||||||
|
|
||||||
|
httpClient.toggleRegularClientType(regularToggle) |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
setClientType (event: FocusEvent) { |
||||||
|
this.clientType = event.target.value |
||||||
|
} |
||||||
|
|
||||||
|
setPersonalCode (event: FocusEvent) { |
||||||
|
this.personalCode = event.target.value |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,65 @@ |
|||||||
|
.container { |
||||||
|
max-width: 400px; |
||||||
|
min-width: 400px; |
||||||
|
border: solid 2px gray; |
||||||
|
|
||||||
|
.wrapper { |
||||||
|
padding: 10px; |
||||||
|
|
||||||
|
.tab-panel { |
||||||
|
display: flex; |
||||||
|
|
||||||
|
&__item { |
||||||
|
flex-grow: 1; |
||||||
|
padding: 5px; |
||||||
|
cursor: pointer; |
||||||
|
border-bottom: solid 2px #cae5fa; |
||||||
|
|
||||||
|
&_active { |
||||||
|
border-bottom: solid 2px #298df8; |
||||||
|
} |
||||||
|
|
||||||
|
&:hover { |
||||||
|
border-bottom: solid 2px #298df8; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.tab-page { |
||||||
|
padding-top: 10px; |
||||||
|
|
||||||
|
&__item { |
||||||
|
display: none; |
||||||
|
|
||||||
|
|
||||||
|
&_show { |
||||||
|
display: block; |
||||||
|
} |
||||||
|
|
||||||
|
.form-row { |
||||||
|
display: flex; |
||||||
|
margin-bottom: 5px; |
||||||
|
|
||||||
|
&__item { |
||||||
|
flex-grow: 1; |
||||||
|
margin-right: 10px; |
||||||
|
|
||||||
|
&-input { |
||||||
|
width: 100%; |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
&:last-child { |
||||||
|
margin-bottom: 0; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
} |
||||||
|
|
||||||
|
.memory-panel { |
||||||
|
text-align: left; |
||||||
|
padding: 5px; |
||||||
|
margin-top: 10px; |
||||||
|
} |
||||||
|
} |
||||||
|
} |
@ -0,0 +1,21 @@ |
|||||||
|
<div> |
||||||
|
<div class="form-row"> |
||||||
|
<div class="form-row__item"> |
||||||
|
<input title="Personal code" class="form-row__item-input" type="text" placeholder="Personal code" v-on:change="setPersonalCode"> |
||||||
|
|
||||||
|
<input type="radio" id="client_type_new" |
||||||
|
name="client_type" value="New" checked v-on:focus="setClientType"> |
||||||
|
<label for="client_type_new">New</label> |
||||||
|
|
||||||
|
<input type="radio" id="client_type_regular" |
||||||
|
name="client_type" value="Regular" v-on:focus="setClientType"> |
||||||
|
<label for="client_type_regular">Regular</label> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
<div class="form-row"> |
||||||
|
<label> |
||||||
|
<input type="button" v-on:click="update" value="Update"/> |
||||||
|
</label> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
Loading…
Reference in new issue