{"version":3,"sources":["webpack:///./src/modules/repairs/components/repair-detail/RepairStages.vue?84be","webpack:///./src/modules/repairs/components/repair-detail/RepairStages.vue?1bac","webpack:///./src/modules/repairs/components/repair-detail/RepairStages.vue?a932","webpack:///./node_modules/cache-loader/dist/cjs.js","webpack:///./src/modules/repairs/components/repair-detail/RepairStages.vue?26a9","webpack:///./src/modules/repairs/components/repair-detail/RepairStages.vue"],"names":["module","exports","render","_vm","this","_h","$createElement","_c","_self","attrs","cols","repair_stages","prevent_sort","loading","scopedSlots","_u","key","fn","ref","item","staticClass","_v","_s","status","name","_f","created_at","comment","class","$style","text","may_edit","on","$event","show_comment_modal","can_delete_stage","del_handler","select","stages","length","handle_click_stage","model","value","callback","$$v","new_stage","expression","_e","can_add_stage","proceed_add_repair_stage","close_comment_modal","proxy","editable_comment","can_proceed_add_comment","proceed_add_comment","comment_modal","validate_modal","validate_modal_title","validate_modal_text","staticRenderFns","repairs_store","modules","repairs_info","state","actions","RepairStagesTab","repair_stages_headers","editable_stage","id","$route","params","get_repair_stages","get_repair_diagnostics","repair_details","slug","current_stage","RepairStatuses","DIAGNOSTICS_AWAITING","repair_statuses","filter","DIAGNOSTICS_IN_PROCESS","CONFIRMATIOIN_AWAITING","COMPONENT_AWAITING","REPAIR_IN_PROCESS","REPAIR_FINISHED","DISPATCHED","CANCELED","diagnostics","repair_stage","stage","active_stage","disactive_current_stage","Object","values","map","el","some","filled_diagnostics","validate_diagnostics","is_repair_finished_stage","unfilled_diagnostics_alert","title","add_repair_stage","repair_id","payload","code","ResponseStatuses","Success","CREATED","update_repair_data","delete_repair_stage","UPDATED","upd_repair_stage","get_repair_by_id","attach_doc_alert","Vue","Component","components","Table","Select","TextField","SimpleDialog","Textarea","injectStyles","context","locals","component","VBtn","VIcon"],"mappings":"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","file":"js/chunk-56aa27b4.95338414.js","sourcesContent":["// extracted by mini-css-extract-plugin\nmodule.exports = {\"v-application\":\"RepairStages_v-application_1UOc3\",\"text-h1\":\"RepairStages_text-h1_3qOTr\",\"text-h2\":\"RepairStages_text-h2_2sWGQ\",\"select\":\"RepairStages_select_1J-ia\",\"text\":\"RepairStages_text_3t_P-\"};","export { default } from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-0-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-0-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-0-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-0-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepairStages.vue?vue&type=style&index=0&module=true&lang=scss&\"; export * from \"-!../../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-0-0!../../../../../node_modules/css-loader/dist/cjs.js??ref--9-oneOf-0-1!../../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-0-2!../../../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-0-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepairStages.vue?vue&type=style&index=0&module=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('Table',{attrs:{\"headers\":_vm.cols,\"items\":_vm.repair_stages,\"custom-sort\":_vm.prevent_sort,\"no-data-text\":\"Этапы не добавлены\",\"loading\":_vm.loading,\"hide-default-footer\":\"\",\"not_resizeble\":\"\"},scopedSlots:_vm._u([{key:\"item.status\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('td',{staticClass:\"py-2\"},[_vm._v(\" \"+_vm._s(item.status ? item.status.name : '')+\" \")])]}},{key:\"item.created_at\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('td',{staticClass:\"py-2\"},[_vm._v(\" \"+_vm._s(_vm._f(\"date\")(item.created_at))+\" \")])]}},{key:\"item.comment\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('tr',{staticClass:\"py-2\"},[_c('td',[(item.comment)?_c('span',[_vm._v(_vm._s(item.comment))]):_c('span',{class:_vm.$style.text},[_vm._v(\"Укажите Ваш комментарий\")])]),_c('td',[_c('v-btn',{staticClass:\"ml-2\",attrs:{\"icon\":\"\",\"small\":\"\",\"color\":\"accent darken-4\",\"disabled\":!_vm.may_edit,\"title\":\"Редактировать\"},on:{\"click\":function($event){return _vm.show_comment_modal(item)}}},[_c('v-icon',[_vm._v(\"mdi-pencil-outline\")])],1)],1)])]}},{key:\"item.action\",fn:function(ref){\nvar item = ref.item;\nreturn [_c('td',{staticClass:\"py-2\"},[_c('tr',[_c('v-btn',{attrs:{\"icon\":\"\",\"color\":\"secondary darken-4\",\"disabled\":!_vm.can_delete_stage(item),\"title\":\"Удалить\"},on:{\"click\":function($event){return _vm.del_handler(item)}}},[_c('v-icon',[_vm._v(\"mdi-delete-outline\")])],1)],1)])]}}],null,true)}),(_vm.may_edit)?_c('Select',{class:[_vm.$style.select, 'mt-6'],attrs:{\"items\":_vm.stages,\"label\":\"Этап работ\",\"background-color\":\"#fff\",\"hide-details\":\"\",\"clearable\":\"\",\"blue_icon\":\"\",\"dense\":\"\",\"disabled\":!_vm.stages.length},on:{\"input\":function($event){return _vm.handle_click_stage($event)}},model:{value:(_vm.new_stage),callback:function ($$v) {_vm.new_stage=$$v},expression:\"new_stage\"}}):_vm._e(),(_vm.may_edit)?_c('v-btn',{staticClass:\"mt-6\",attrs:{\"color\":\"accent darken-4\",\"depressed\":\"\",\"type\":\"submit\",\"disabled\":!_vm.can_add_stage},on:{\"click\":_vm.proceed_add_repair_stage}},[_vm._v(\" Добавить этап работ \")]):_vm._e(),_c('SimpleDialog',{attrs:{\"max-width\":\"564\"},on:{\"close\":_vm.close_comment_modal},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" Укажите Ваш комментарий \")]},proxy:true},{key:\"text\",fn:function(){return [_c('Textarea',{attrs:{\"label\":\"Комментарий\",\"counter\":250,\"maxlength\":250,\"rows\":1},model:{value:(_vm.editable_comment),callback:function ($$v) {_vm.editable_comment=$$v},expression:\"editable_comment\"}})]},proxy:true},{key:\"actions\",fn:function(){return [_c('td',{staticClass:\"py-2\"},[_c('v-btn',{attrs:{\"text\":\"\"},on:{\"click\":_vm.close_comment_modal}},[_vm._v(\" Отмена \")]),_c('v-btn',{staticClass:\"mr-2\",attrs:{\"color\":\"accent darken-4\",\"depressed\":\"\",\"disabled\":!_vm.can_proceed_add_comment},on:{\"click\":_vm.proceed_add_comment}},[_vm._v(\" Сохранить \")])],1)]},proxy:true}]),model:{value:(_vm.comment_modal),callback:function ($$v) {_vm.comment_modal=$$v},expression:\"comment_modal\"}}),_c('SimpleDialog',{attrs:{\"max-width\":\"564\",\"bts_align\":\"center\",\"center_title\":\"\"},on:{\"close\":function($event){_vm.validate_modal = false}},scopedSlots:_vm._u([{key:\"title\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.validate_modal_title)+\" \")]},proxy:true},{key:\"text\",fn:function(){return [_vm._v(\" \"+_vm._s(_vm.validate_modal_text)+\" \")]},proxy:true},{key:\"actions\",fn:function(){return [_c('td',{staticClass:\"py-2\"},[_c('v-btn',{attrs:{\"color\":\"accent darken-4\",\"depressed\":\"\"},on:{\"click\":function($event){_vm.validate_modal = false}}},[_vm._v(\" Закрыть \")])],1)]},proxy:true}]),model:{value:(_vm.validate_modal),callback:function ($$v) {_vm.validate_modal=$$v},expression:\"validate_modal\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nimport { prevent_sort } from '@/utils';\nimport { repairs_store, global_store } from '@/store';\nimport { Table, Select, TextField } from '@/components';\nimport {\n RepairStatuses, ResponseStatuses, repair_statuses, ColsStorage,\n} from '@/enums';\nimport { Component, Vue, Watch } from 'vue-property-decorator';\nimport { TableCol } from '@/types';\nimport { repair_stages_headers, attach_doc_alert, unfilled_diagnostics_alert } from '../../consts';\nimport { Repairs } from '../../types';\n\nconst { state, actions } = repairs_store.modules.repairs_info;\n\n@Component({\n components: {\n Table,\n Select,\n TextField,\n SimpleDialog: () => import('@/components/dialogs/simple/SimpleDialog.vue'),\n Textarea: () => import('@/components/global/inputs/textarea/Textarea.vue'),\n\n },\n})\nexport default class RepairStagesTab extends Vue {\n async mounted() {\n this.loading = true;\n const id = this.$route.params?.id;\n\n if (id) {\n await actions.get_repair_stages(id);\n await actions.get_repair_diagnostics(id);\n }\n this.loading = false;\n }\n\n prevent_sort = prevent_sort;\n cols = repair_stages_headers;\n loading = false;\n editable_comment: string | null = '';\n new_stage = '';\n comment_modal = false;\n editable_stage: Repairs.Stage | null = null;\n validate_modal = false;\n validate_modal_title = '';\n validate_modal_text = '';\n\n get repair_stages() {\n return state.repair_stages;\n }\n\n get repair_id() {\n return this.$route.params?.id;\n }\n\n get repair_details() {\n return state.repair_details;\n }\n\n get current_stage() {\n return this.repair_details?.status ? this.repair_details?.status.slug : '';\n }\n\n get stages() {\n switch (this.current_stage) {\n case RepairStatuses.DIAGNOSTICS_AWAITING:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.DIAGNOSTICS_IN_PROCESS,\n );\n case RepairStatuses.DIAGNOSTICS_IN_PROCESS:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.CONFIRMATIOIN_AWAITING\n || status.value === RepairStatuses.COMPONENT_AWAITING\n || status.value === RepairStatuses.REPAIR_IN_PROCESS\n || status.value === RepairStatuses.REPAIR_FINISHED,\n );\n case RepairStatuses.CONFIRMATIOIN_AWAITING:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.COMPONENT_AWAITING\n || status.value === RepairStatuses.REPAIR_IN_PROCESS\n || status.value === RepairStatuses.REPAIR_FINISHED,\n );\n case RepairStatuses.COMPONENT_AWAITING:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.REPAIR_IN_PROCESS,\n );\n case RepairStatuses.REPAIR_IN_PROCESS:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.REPAIR_FINISHED,\n );\n case RepairStatuses.REPAIR_FINISHED:\n return repair_statuses.filter(\n (status: { text: string; value: RepairStatuses }) =>\n status.value === RepairStatuses.DISPATCHED,\n );\n default:\n return [];\n }\n }\n\n get can_add_stage() {\n return !!this.new_stage && this.may_edit;\n }\n\n get can_proceed_add_comment() {\n return this.editable_comment !== this.editable_stage?.comment && !this.loading;\n }\n\n get may_edit() {\n return (\n this.current_stage !== RepairStatuses.DISPATCHED\n && this.current_stage !== RepairStatuses.CANCELED\n );\n }\n\n get disactive_current_stage() {\n return (\n this.current_stage === RepairStatuses.REPAIR_FINISHED\n || this.current_stage === RepairStatuses.DISPATCHED\n || this.current_stage === RepairStatuses.CANCELED\n );\n }\n\n get diagnostics() {\n return state.diagnostics;\n }\n\n can_delete_stage(repair_stage: Repairs.Stage) {\n const stage = repair_stage.status?.slug;\n const active_stage = stage === RepairStatuses.DIAGNOSTICS_IN_PROCESS\n || stage === RepairStatuses.CONFIRMATIOIN_AWAITING\n || stage === RepairStatuses.COMPONENT_AWAITING\n || stage === RepairStatuses.REPAIR_IN_PROCESS;\n\n return active_stage && !this.disactive_current_stage;\n }\n\n validate_diagnostics(diagnostics: Repairs.Diagnostics) {\n return Object.values(diagnostics).map((el) => !!el).some((el) => el === false);\n }\n\n async proceed_add_repair_stage() {\n const filled_diagnostics = !this.validate_diagnostics(this.diagnostics);\n const is_repair_finished_stage = this.new_stage === RepairStatuses.REPAIR_FINISHED;\n\n if (!filled_diagnostics && is_repair_finished_stage) {\n this.validate_modal_title = unfilled_diagnostics_alert.title;\n this.validate_modal_text = unfilled_diagnostics_alert.text;\n this.validate_modal = true;\n } else {\n await this.add_repair_stage();\n }\n }\n\n async add_repair_stage() {\n if (this.new_stage) {\n const id = this.repair_id;\n const payload = { status: this.new_stage as RepairStatuses };\n\n this.loading = true;\n const code = await actions.add_repair_stage({ id, payload });\n\n if (code === ResponseStatuses.Success.CREATED) {\n this.update_repair_data();\n }\n this.loading = false;\n this.new_stage = '';\n }\n }\n\n async del_handler(item: Repairs.Stage) {\n if (typeof item.id !== 'undefined') {\n this.loading = true;\n const code = await actions.delete_repair_stage(item.id);\n\n if (code === ResponseStatuses.Success.UPDATED) {\n this.update_repair_data();\n }\n this.loading = false;\n }\n }\n\n async proceed_add_comment() {\n if (this.editable_stage?.id) {\n this.loading = true;\n const { id } = this.editable_stage;\n const code = await actions.upd_repair_stage({\n id,\n payload: { comment: this.editable_comment },\n });\n\n if (code === ResponseStatuses.Success.UPDATED) {\n await this.update_repair_data();\n }\n }\n this.close_comment_modal();\n this.loading = false;\n }\n\n async update_repair_data() {\n const id = this.repair_id;\n\n await actions.get_repair_stages(id);\n await actions.get_repair_by_id(id);\n }\n\n show_comment_modal(item: Repairs.Stage) {\n this.editable_stage = item;\n this.editable_comment = item.comment;\n this.comment_modal = true;\n }\n\n close_comment_modal() {\n this.editable_comment = '';\n this.comment_modal = false;\n this.editable_stage = null;\n }\n\n handle_click_stage(stage: string) {\n if (stage === RepairStatuses.REPAIR_FINISHED) {\n this.validate_modal_title = attach_doc_alert.title;\n this.validate_modal_text = attach_doc_alert.text;\n this.validate_modal = true;\n }\n }\n}\n","import mod from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepairStages.vue?vue&type=script&lang=ts&\"; export default mod; export * from \"-!../../../../../node_modules/cache-loader/dist/cjs.js??ref--15-0!../../../../../node_modules/thread-loader/dist/cjs.js!../../../../../node_modules/babel-loader/lib/index.js!../../../../../node_modules/ts-loader/index.js??ref--15-3!../../../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./RepairStages.vue?vue&type=script&lang=ts&\"","import { render, staticRenderFns } from \"./RepairStages.vue?vue&type=template&id=fa53b9ee&\"\nimport script from \"./RepairStages.vue?vue&type=script&lang=ts&\"\nexport * from \"./RepairStages.vue?vue&type=script&lang=ts&\"\nimport style0 from \"./RepairStages.vue?vue&type=style&index=0&module=true&lang=scss&\"\n\n\n\n\nfunction injectStyles (context) {\n \n this[\"$style\"] = (style0.locals || style0)\n\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 injectStyles,\n null,\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../../../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VBtn } from 'vuetify/lib/components/VBtn';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\ninstallComponents(component, {VBtn,VIcon})\n"],"sourceRoot":""}