chore: install prettier

This commit is contained in:
Viet An
2026-05-04 15:22:27 +07:00
parent 93d29ca7d8
commit bd58e2b847
267 changed files with 22950 additions and 13581 deletions

View File

@@ -2,45 +2,78 @@
<div class="columns">
<div class="column is-3">
<div class="field">
<label class="label">Code</label>
<div class="control">
<input class="input" type="text" placeholder="" v-model="current.code">
<label class="label">Code</label>
<div class="control">
<input
class="input"
type="text"
placeholder=""
v-model="current.code"
/>
</div>
</div>
<div class="field mt-4">
<label class="label">Name</label>
<div class="control">
<input
class="input"
type="text"
placeholder=""
v-model="current.name"
/>
</div>
</div>
<div class="field mt-4">
<label class="label">Api</label>
<div class="control">
<input
class="input"
type="text"
placeholder=""
v-model="current.api"
/>
</div>
</div>
<div class="mt-5 py-2 border-bottom">
<a @click="updateFromModel()">Thêm cài đặt cột từ Model</a>
</div>
<div class="py-2 border-bottom">
<a @click="createUserSetting()">Tạo thiết lập (user setting)</a>
</div>
<div class="buttons mt-5">
<button
class="button is-primary"
@click="saveData()"
>
Lưu lại
</button>
</div>
</div>
<div class="column is-5">
<DataTable
v-bind="{ pagename: pagename1 }"
@delete="remove"
@open="showAttr()"
v-if="pagedata1"
/>
</div>
<div class="column is-4">
<DataTable
v-bind="{ pagename: pagename2 }"
v-if="pagedata2"
/>
</div>
</div>
</div>
<div class="field mt-4">
<label class="label">Name</label>
<div class="control">
<input class="input" type="text" placeholder="" v-model="current.name">
</div>
</div>
<div class="field mt-4">
<label class="label">Api</label>
<div class="control">
<input class="input" type="text" placeholder="" v-model="current.api">
</div>
</div>
<div class="mt-5 py-2 border-bottom">
<a @click="updateFromModel()">Thêm cài đặt cột từ Model</a>
</div>
<div class="py-2 border-bottom">
<a @click="createUserSetting()">Tạo thiết lập (user setting)</a>
</div>
<div class="buttons mt-5">
<button class="button is-primary" @click="saveData()">Lưu lại</button>
</div>
</div>
<div class="column is-5">
<DataTable v-bind="{pagename: pagename1}" @delete="remove" @open="showAttr()" v-if="pagedata1" />
</div>
<div class="column is-4">
<DataTable v-bind="{pagename: pagename2}" v-if="pagedata2" />
</div>
</div>
<Modal @close="showmodal=undefined" @update="updateAttr" v-bind="showmodal" v-if="showmodal" />
<Modal
@close="showmodal = undefined"
@update="updateAttr"
v-bind="showmodal"
v-if="showmodal"
/>
</template>
<script>
export default {
props: ['row'],
props: ["row"],
data() {
return {
data: [],
@@ -48,106 +81,142 @@ export default {
showmodal: undefined,
report: undefined,
setting: {},
pagename: 'page0',
pagename1: 'page1',
pagename2: 'page2',
pagename3: 'page3'
}
pagename: "page0",
pagename1: "page1",
pagename2: "page2",
pagename3: "page3",
};
},
async created() {
let conn1 = this.$findapi('usersetting')
conn1.params.filter = {name__in: ['import-setting', 'model-fields']}
let rs = await this.$getapi([conn1])
let obj = this.$find(rs, {name: 'usersetting'})
let found = this.$find(obj.data.rows, {name: 'import-setting'})
this.pagedata1 = this.$getpage()
this.$setpage(this.pagename1, found)
this.pagedata2 = this.$getpage()
found = this.$find(obj.data.rows, {name: 'model-fields'})
this.$setpage(this.pagename2, found)
this.doClick(this.row)
let conn1 = this.$findapi("usersetting");
conn1.params.filter = { name__in: ["import-setting", "model-fields"] };
let rs = await this.$getapi([conn1]);
let obj = this.$find(rs, { name: "usersetting" });
let found = this.$find(obj.data.rows, { name: "import-setting" });
this.pagedata1 = this.$getpage();
this.$setpage(this.pagename1, found);
this.pagedata2 = this.$getpage();
found = this.$find(obj.data.rows, { name: "model-fields" });
this.$setpage(this.pagename2, found);
this.doClick(this.row);
},
computed: {
pagedata1: {
get: function() {return this.$store[this.pagename1]},
set: function(val) {this.$store.commit(this.pagename1, val)}
get: function () {
return this.$store[this.pagename1];
},
set: function (val) {
this.$store.commit(this.pagename1, val);
},
},
pagedata2: {
get: function() {return this.$store[this.pagename2]},
set: function(val) {this.$store.commit(this.pagename2, val)}
get: function () {
return this.$store[this.pagename2];
},
set: function (val) {
this.$store.commit(this.pagename2, val);
},
},
pagedata3: {
get: function() {return this.$store[this.pagename3]},
set: function(val) {this.$store.commit(this.pagename3, val)}
}
get: function () {
return this.$store[this.pagename3];
},
set: function (val) {
this.$store.commit(this.pagename3, val);
},
},
},
methods: {
updateAttr(v) {
this.current.detail = v
this.showSetting()
this.showmodal = undefined
this.current.detail = v;
this.showSetting();
this.showmodal = undefined;
},
createUserSetting() {
this.pagedata3 = this.$getpage()
let fields = []
let arr = ['AutoField', 'ForeignKey', 'FloatField', 'IntegerField']
this.pagedata2.data.map(v=>{
let field = this.$createField(v.name, v.name, arr.findIndex(x=>x==v.datatype)>=0? 'number' : 'string', true, true)
fields.push(field)
})
this.$store.commit(this.pagename3, {update: {'fields': fields}})
this.showmodal = {component: 'menu/MenuSave', title: 'Lưu thiết lập', width: '600px', height: '300px',
vbind: {pagename: this.pagename3, classify: 3}}
this.pagedata3 = this.$getpage();
let fields = [];
let arr = ["AutoField", "ForeignKey", "FloatField", "IntegerField"];
this.pagedata2.data.map((v) => {
let field = this.$createField(
v.name,
v.name,
arr.findIndex((x) => x == v.datatype) >= 0 ? "number" : "string",
true,
true,
);
fields.push(field);
});
this.$store.commit(this.pagename3, { update: { fields: fields } });
this.showmodal = {
component: "menu/MenuSave",
title: "Lưu thiết lập",
width: "600px",
height: "300px",
vbind: { pagename: this.pagename3, classify: 3 },
};
},
remove(v) {
let copy = this.$copy(this.current.detail)
delete copy[v.key]
this.current.detail = copy
this.doClick(this.current)
let copy = this.$copy(this.current.detail);
delete copy[v.key];
this.current.detail = copy;
this.doClick(this.current);
},
async insertData() {
let copy = this.$copy(this.current)
copy.id = undefined
let rs = await this.$insertrow('importsetting', copy, undefined, this.pagename)
let copy = this.$copy(this.current);
copy.id = undefined;
let rs = await this.$insertrow("importsetting", copy, undefined, this.pagename);
},
async saveData() {
if(!this.row) return this.insertData()
let rs = await this.$updateapi('importsetting', this.current, undefined, this.pagename)
if (!this.row) return this.insertData();
let rs = await this.$updateapi("importsetting", this.current, undefined, this.pagename);
},
updateFromModel() {
let filter = this.$filter(this.pagedata2.data, {datatype: ['FloatField', 'IntegerField']})
let copy = this.$copy(this.current.detail)
filter.map(v=>{
copy[v.name] = {type: 'number', empty: v.null? 'yes' : 'no'}
})
this.current.detail = copy
this.showSetting()
let filter = this.$filter(this.pagedata2.data, {
datatype: ["FloatField", "IntegerField"],
});
let copy = this.$copy(this.current.detail);
filter.map((v) => {
copy[v.name] = { type: "number", empty: v.null ? "yes" : "no" };
});
this.current.detail = copy;
this.showSetting();
},
showAttr() {
this.showmodal = {component: 'datatable/FieldAttribute', width: '40%', height: '300px', title: 'Danh sách thuộc tính', vbind: {field: this.current.detail}}
this.showmodal = {
component: "datatable/FieldAttribute",
width: "40%",
height: "300px",
title: "Danh sách thuộc tính",
vbind: { field: this.current.detail },
};
},
async doClick(v) {
this.current = this.$copy(v)
this.showSetting()
let found = this.$findapi(v.api)
let conn = this.$findapi('modelfields')
conn.url += found.url.replace('data/', '')
let rs = await this.$getapi([conn])
let copy = this.$copy(this.pagedata2)
copy.update = {data: rs[0].data}
this.pagedata2 = copy
this.current = this.$copy(v);
this.showSetting();
let found = this.$findapi(v.api);
let conn = this.$findapi("modelfields");
conn.url += found.url.replace("data/", "");
let rs = await this.$getapi([conn]);
let copy = this.$copy(this.pagedata2);
copy.update = { data: rs[0].data };
this.pagedata2 = copy;
},
showSetting() {
let arr = []
let i = 0
for(let key in this.current.detail) {
i += 1
arr.push({id: i, key: key, value: this.current.detail[key], text: JSON.stringify(this.current.detail[key])})
let arr = [];
let i = 0;
for (let key in this.current.detail) {
i += 1;
arr.push({
id: i,
key: key,
value: this.current.detail[key],
text: JSON.stringify(this.current.detail[key]),
});
}
let copy = this.$copy(this.pagedata1)
copy.update = {data: arr}
this.pagedata1 = copy
}
}
}
</script>
let copy = this.$copy(this.pagedata1);
copy.update = { data: arr };
this.pagedata1 = copy;
},
},
};
</script>