diff --git a/users-manage/Makefile b/users-manage/Makefile index f778b9e..8e600de 100644 --- a/users-manage/Makefile +++ b/users-manage/Makefile @@ -42,6 +42,12 @@ prehook: @chmod +x $(HOOK_PATH) @echo "Pre-push hook set successfully." +add: +ifeq ($(pack),) + $(error mn is not set) +endif + yarn add "../repo/${pack}/" + push: ifeq ($(commit),) $(error mn is not set) diff --git a/users-manage/package.json b/users-manage/package.json index 285ad7e..2f97a45 100644 --- a/users-manage/package.json +++ b/users-manage/package.json @@ -15,6 +15,7 @@ "lint_fix": "yarn eslint './**/*.{js,vue}' --fix" }, "dependencies": { + "3-class-complex-assistants": "../repo/3-class-complex-assistants/", "axios": "^1.6.7", "flowbite": "^2.3.0", "flowbite-vue": "^0.1.2", diff --git a/users-manage/src/adapters/adapterOfServices/Services.js b/users-manage/src/adapters/adapterOfServices/Services.js index fcd28a5..fa5838e 100644 --- a/users-manage/src/adapters/adapterOfServices/Services.js +++ b/users-manage/src/adapters/adapterOfServices/Services.js @@ -1,32 +1,45 @@ import {get, post, put, remove} from './apiHelpers.js' import {convertList, convertObject} from '@helpers/adapter/adapter.js' +import {Logger} from '3-class-complex-assistants' +import moment from 'moment/moment.js' const config = { id: "id", - created_at: "created_at", - updated_at: "updated_at", - deleted_at: "deleted_at", + created_at: "createdAt", + updated_at: "updatedAt", + deleted_at: "deletedAt", name: "name", port: "port", - proxy_ip: "proxy_ip", - internet_uri: "internet_uri", + proxy_ip: "proxyIp", + internet_uri: "internetUri", description: "description", - is_online: "is_online", - site_ip: "device_ip", + is_online: "isOnline", + site_ip: "deviceIp", } const configToServer = { id: "id", - created_at: "created_at", - updated_at: "updated_at", - deleted_at: "deleted_at", + createdAt: "created_at", + updatedAt: "updated_at", + deletedAt: "deleted_at", name: "name", port: "port", - proxy_ip: "proxy_ip", - internet_uri: "internet_uri", + proxyIp: "proxy_ip", + internetUri: "internet_uri", description: "description", - is_online: "is_online", - device_ip: "site_ip", + isOnline: "is_online", + deviceIp: "site_ip", +} + +const loggerInfo = { + "loggerLevel": 1, + "serviceName": "users-manage", + "port": 5173, + "datetime": moment().format("YYYY-MM-DDTHH:mm:ss"), +} + +const callbackError = (error) => { + return console.err(error) } class Services { @@ -40,6 +53,7 @@ class Services { this.apiAddr = apiAddr this.config = config this.configToServer = configToServer + this.loggerConfig = {...loggerInfo, callFunc: callbackError, isPushToServer: true} } /** @@ -59,13 +73,14 @@ class Services { */ async createService(payload) { + const logger = new Logger(this.loggerConfig) let newService = [] const updatedPort = parseFloat(payload.port) const updatedService = {...convertObject(payload, {config: this.configToServer}), port: updatedPort} await post(`${this.apiAddr}/servers`, updatedService).then(res => { newService = convertObject(res.value, {config: this.config}) }).catch(err => { - console.log('err', err) + logger.error(err) }) return newService } @@ -77,6 +92,7 @@ class Services { */ async updateService(payload) { + const logger = new Logger(this.loggerConfig) let resService = [] const updatedPort = parseFloat(payload.port) const updatedService = {...convertObject(payload, {config: this.configToServer}), port: updatedPort} @@ -84,7 +100,7 @@ class Services { await put(`${this.apiAddr}/servers`, updatedService, payload.id).then(res => { resService = convertObject(res.value, {config: this.config}) }).catch(err => { - console.log('err', err) + logger.error(err) }) } return resService @@ -97,11 +113,12 @@ class Services { */ async deleteService(id) { + const logger = new Logger(this.loggerConfig) let deletedServiceId = null await remove(`${this.apiAddr}/servers`, id).then((res) => { deletedServiceId = res.id }).catch(err => { - console.log('err', err) + logger.error(err) }) return deletedServiceId } diff --git a/users-manage/src/adapters/adapterOfUsers/StaticData.js b/users-manage/src/adapters/adapterOfUsers/StaticData.js index 63daf7a..905d652 100644 --- a/users-manage/src/adapters/adapterOfUsers/StaticData.js +++ b/users-manage/src/adapters/adapterOfUsers/StaticData.js @@ -1,27 +1,43 @@ const devUsersList = [ { "id": 1, - "first_name": "Leanne", - "last_name": "Graham", + "serviceId": [1, 3], + "firstName": "Leanne 1", + "lastName": "Graham", "email": "test@mail.ru", "role": "admin", - "is_active": true }, { "id": 2, - "first_name": "Leanne", - "last_name": "Graham", + "serviceId": [1], + "firstName": "Leanne 2", + "lastName": "Graham", "email": "test@mail.ru", "role": "admin", - "is_active": true }, { "id": 3, - "first_name": "Leanne", - "last_name": "Graham", + "serviceId": [2, 3], + "firstName": "Leanne 3", + "lastName": "Graham", + "email": "test@mail.ru", + "role": "admin", + }, + { + "id": 4, + "serviceId": [3], + "firstName": "Leanne 4", + "lastName": "Graham", + "email": "test@mail.ru", + "role": "admin", + }, + { + "id": 5, + "serviceId": [4, 5], + "firstName": "Leanne 5", + "lastName": "Graham", "email": "test@mail.ru", "role": "admin", - "is_active": true }, ] diff --git a/users-manage/src/adapters/adapterOfUsers/Users.js b/users-manage/src/adapters/adapterOfUsers/Users.js index 7d48f96..a1685ce 100644 --- a/users-manage/src/adapters/adapterOfUsers/Users.js +++ b/users-manage/src/adapters/adapterOfUsers/Users.js @@ -8,12 +8,22 @@ import {devUsersList} from './StaticData.js' * @param {Number} id */ -const adapter_config = { +const adapterConfig = { id: "id", first_name: "firstName", last_name: "lastName", email: "email", role: "role", + service_id: "serviceId", +} + +const serverConfig = { + id: "id", + firstName: "first_name", + lastName: "last_name", + email: "email", + role: "role", + serviceId: "service_id", } class Users { @@ -25,7 +35,8 @@ class Users { */ constructor(apiAddr, params = {mode: 'prod'}) { this.apiAddr = apiAddr - this.config = adapter_config + this.config = adapterConfig + this.serverConfig = serverConfig this.mode = params.mode } @@ -52,7 +63,7 @@ class Users { */ async getUsersByServiceId(id, mode) { if (mode === "dev") { - return devUsersList + return devUsersList.filter((user) => user.serviceId.includes(id)) } let res = await get(`${this.apiAddr}/users/by_server/${id}`) let updatedUsers = convertList(res.data, {config: this.config}) @@ -65,7 +76,7 @@ class Users { * @returns {Promise} */ async createUser(userData) { - const newUser = await post(`${this.apiAddr}/users`, userData) + const newUser = await post(`${this.apiAddr}/users`, convertObject(userData, {config: this.serverConfig})) return convertObject(newUser, {config: this.config}) } @@ -77,7 +88,7 @@ class Users { async updateUser(userData) { const updatedUserData = {...userData} delete updatedUserData.id - const newUser = await put(`${this.apiAddr}/users/${userData.id}`, updatedUserData) + const newUser = await put(`${this.apiAddr}/users/${userData.id}`, convertObject(updatedUserData, {config: this.serverConfig})) return convertObject(newUser, {config: this.config}) } diff --git a/users-manage/src/components/1_atoms/AppPageHeader.vue b/users-manage/src/components/1_atoms/AppPageHeader.vue index 4124935..f1ff487 100644 --- a/users-manage/src/components/1_atoms/AppPageHeader.vue +++ b/users-manage/src/components/1_atoms/AppPageHeader.vue @@ -2,15 +2,16 @@ import {mapGetters} from 'vuex' export default { name: 'AppPageHeader', - inject: ['serviceOfServices'], + props: { + serviceOfServices: { + type: Object, + default: () => {} + }, + }, computed: { ...mapGetters('services', ['selectedService']), }, methods: { - saveData: function () { - console.log('saveData') - return this.serviceOfServices.isSaveServices(true) - }, } } @@ -25,17 +26,9 @@ export default { На главную -
- Версия 0.0.1 + Версия 0.9.0
diff --git a/users-manage/src/components/1_atoms/NewServiceButton.vue b/users-manage/src/components/1_atoms/NewServiceButton.vue index 6fa9502..81c3004 100644 --- a/users-manage/src/components/1_atoms/NewServiceButton.vue +++ b/users-manage/src/components/1_atoms/NewServiceButton.vue @@ -1,9 +1,13 @@ @@ -13,7 +17,8 @@ export default {