{"version":3,"sources":["webpack:///./src/data/List/InvitationListDataSource.ts","webpack:///./src/pages/manage/statistics/id.vue","webpack:///./src/pages/manage/statistics/id.vue?7523","webpack:///./src/pages/manage/statistics/id.vue?27d8","webpack:///./src/pages/manage/statistics/id.vue?67d1"],"names":["InvitationListDataSource","ListDataSource","constructor","config","super","className","data","axios","get","this","baseUrl","responseType","url","window","URL","createObjectURL","link","document","createElement","download","href","body","appendChild","click","removeChild","err","id","post","error","scopedSlots","fn","key","_c","attrs","on","$event","instanceStateId","_vm","staticRenderFns","render","Home","Vue","_this$$route","instaceStates","dataSource","pageIndex","pageSize","filter","JSON","stringify","Filter","$route","params","userProfileDataSource","ObjectDataSource","createItemModel","userProfileId","templatePath","subject","firstName","lastName","email","_this$userProfileData","text","to","model","fullName","disabled","getInstaceStateColor","item","dataList","loading","invite","$message","event","updateField","fieldName","fieldValue","__decorate","Ref","Component","components","DataList","component"],"mappings":"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","file":"js/chunk-3da56acd.95f8e75e.js","sourcesContent":["import { IBaseConfig } from \"@/ioc/types\";\nimport axios from \"axios\";\nimport { ListDataSource } from \"./ListDataSource\";\nimport {toQueryString} from \"@/cms-services/helpers\";\n\nexport class InvitationListDataSource extends ListDataSource {\n constructor(config: IBaseConfig) {\n super({\n className: \"invitation\",\n config,\n });\n }\n\n\n\n public async downloadXlsx() {\n try {\n const { data } = await axios.get(\n `${this.baseUrl}/download/xlsx/`,\n {\n responseType: \"blob\",\n },\n );\n const url = window.URL.createObjectURL(data);\n var link = document.createElement(\"a\");\n link.download = \"Статистика.xlsx\";\n link.href = url;\n document.body.appendChild(link);\n link.click();\n document.body.removeChild(link);\n return data;\n } catch (err) {\n throw err;\n }\n }\n\n public async invite(id: number) {\n try {\n await axios.post(`${this.baseUrl}/${id}/invite`);\n } catch (error) {\n throw error;\n }\n }\n}\n","var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('data-list',{ref:\"dataList\",attrs:{\"title\":\"Приглашения\",\"breadcrumbs\":_vm.breadcrumbs,\"customStateColor\":_vm.getInstaceStateColor,\"data-source\":_vm.dataSource,\"custom-create-item-model\":_vm.createItemModel},scopedSlots:_vm._u([{key:\"fullName\",fn:function(data){return [_c('router-link',{attrs:{\"to\":`/manage/invitations/${data.item.id}`}},[_vm._v(\" \"+_vm._s(data.item.fullName)+\" \")])]}},{key:\"actions\",fn:function(data){return [_c('v-menu',{attrs:{\"transition\":\"scale-transition\",\"offset-y\":\"\"},scopedSlots:_vm._u([{key:\"activator\",fn:function({ on, attrs }){return [_c('v-btn',_vm._g(_vm._b({attrs:{\"icon\":\"\"}},'v-btn',attrs,false),on),[_c('v-icon',[_vm._v(\" mdi-dots-vertical \")])],1)]}}],null,true)},[_c('v-list',{attrs:{\"dense\":\"\"}},[_c('v-list-item',{on:{\"click\":function($event){return data.getObject(data.item)}}},[_c('v-list-item-title',[_vm._v(\"Редактировать\")])],1),_c('v-list-item',{on:{\"click\":function($event){return data.remove(data.item)}}},[_c('v-list-item-title',[_vm._v(\"Удалить\")])],1),_c('v-list-item',{on:{\"click\":function($event){return _vm.invite(data.item)}}},[_c('v-list-item-title',[_vm._v(\" Пригласить \")])],1),_c('v-list-item',[_c('div',[_c('v-btn-toggle',{attrs:{\"value\":data.item.instanceStateId,\"dense\":\"\"},on:{\"change\":function($event){return _vm.setInstanceState(data.item, $event)}}},[_c('v-btn',{attrs:{\"value\":1,\"small\":\"\"}},[_vm._v(\"Создан\")]),_c('v-btn',{attrs:{\"value\":200,\"small\":\"\"}},[_vm._v(\"Отправлен\")]),_c('v-btn',{attrs:{\"value\":11,\"small\":\"\"}},[_vm._v(\"Принят\")])],1)],1)])],1)],1)]}}])})\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\nimport { Vue, Component, Ref } from \"vue-property-decorator\";\nimport { InvitationListDataSource } from \"@/data/List/InvitationListDataSource\";\nimport DataList from \"@/components/common/data/list.vue\";\nimport userModule from \"@/store/modules/user\";\nimport { instaceStates } from \"@/cms-services/consts\";\nimport { Filter } from \"@/cms-services/filter\";\nimport {UserObjectDataSource} from \"@/data/Object/UserObjectDataSource\";\nimport {ObjectDataSource} from \"@/data/Object/ObjecDatatSource\";\n@Component({\n components: {\n DataList,\n },\n})\nexport default class Home extends Vue {\n @Ref(\"dataList\") dataList!: DataList;\n instaceStates = instaceStates;\n $message: any;\n dataSource: InvitationListDataSource = new InvitationListDataSource({\n pageIndex: 1,\n pageSize: 100,\n filter: JSON.stringify([\n new Filter(\"userProfileId\", +this.$route.params.id),\n ]),\n });\n\n userProfileDataSource: ObjectDataSource = new ObjectDataSource({\n className:\"UserProfile\",\n id: +this.$route.params.id,\n config:{}\n })\n\n createItemModel: any = {\n userProfileId: +this.$route?.params.id,\n templatePath: \"Mail/Invite\",\n subject: \"Приглашение в систему\",\n firstName: \"\",\n lastName: \"\",\n email: \"\",\n };\n\n get breadcrumbs() {\n return [\n {\n text: \"Главная\",\n to: \"/\",\n },\n {\n text: \"Статистика по приглашениям\",\n to: \"/manage/statistics\",\n },\n {\n text: this.userProfileDataSource.model?.fullName,\n disabled:true\n },\n ];\n }\n\n getInstaceStateColor(instanceStateId) {\n switch (instanceStateId) {\n case 200:\n return \"info\";\n case 1:\n return \"warning\";\n case 11:\n return \"success\";\n default:\n return \"default\";\n }\n }\n\n async created(){\n await this.userProfileDataSource.get();\n }\n\n async invite(item) {\n this.dataList.loading = true;\n await this.dataSource.invite(item.id);\n this.dataList.loading = false;\n item.instanceStateId = 200;\n this.$message(`Приглашение успешно отправлено на почту ${item.email}`);\n }\n\n async setInstanceState(item, event) {\n await this.dataSource.updateField(item.id, [\n {\n fieldName: \"instanceStateId\",\n fieldValue: event,\n },\n ]);\n }\n}\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./id.vue?vue&type=script&lang=ts\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--14-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/ts-loader/index.js??ref--14-3!../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./id.vue?vue&type=script&lang=ts\"","import { render, staticRenderFns } from \"./id.vue?vue&type=template&id=8ca9fbbe\"\nimport script from \"./id.vue?vue&type=script&lang=ts\"\nexport * from \"./id.vue?vue&type=script&lang=ts\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}