{"version":3,"sources":["webpack:///./src/modules/survey/views/SurveyWriteS2View.vue","webpack:///./src/modules/survey/views/SurveyWriteS2View.ts","webpack:///./src/modules/survey/views/SurveyWriteS2View.ts?61f2","webpack:///./src/modules/survey/views/SurveyWriteS2View.vue?7a80"],"names":["render","_vm","this","_c","_self","_setupProxy","attrs","_l","createdQuestions","q","key","questionInfo","questionOrders","ref","concat","surveyQuestionId","refInFor","lastQuestionOrder","on","changeQuestionOrders","orderAdjustment","previewImg","setLastFocus","staticClass","$event","preventDefault","addQuestion","apply","arguments","_v","_s","$t","isPopup","_e","goList","goStep01","goPreview","deleteHard","staticRenderFns","SurveyWriteS2View","_Vue","_this","_classCallCheck","_len","length","args","Array","_key","_callSuper","_defineProperty","Object","create","_inherits","_createClass","value","_created","_asyncToGenerator","_regeneratorRuntime","mark","_callee","wrap","_context","prev","next","$route","path","toLowerCase","includes","setPage","title","toString","_typeof","createdSurveyId","window","alertAsync","$router","push","name","initQuestion","parseInt","query","surveyId","then","result","stop","created","maxOrders","Math","max","_toConsumableArray","map","item","Number","isFinite","MENUID","close","_goList","_callee2","_context2","confirmAsync","sent","goBack","_deleteHard","_callee3","_this2","_context3","abrupt","api","survey","deleteHardSurvey","res","setSurveyId","initVal","questionType","isAdditionalOption","questionText","createQuestion","_save","_callee5","_this3","_context5","validation","setSurveyComposingStatus","isComposing","_ref","_callee4","_context4","_x","save","Error","forEach","examples","exam","exampleText","err","targetObj","isUp","currentOrders","existsQuestion","filter","question","questionId","resorting","_this4","initQuestionOrder","data","selectedAttachment","showModal","refValue","component","$refs","deleteExampleImg","exampleId","closeModal","refs","lastQuestionId","o","$el","getElementsByTagName","focus","_goPreview","_callee6","_context6","_objectSpread","params","isPreview","Vue","__decorate","Watch","Component","components","SurveyQuestionForm","SurveyWriteHeader","computed","mapGetters","types","methods","mapActions","mapMutations"],"mappings":"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","file":"assets/js/chunk-2d0bd653.4fa0f321.js","sourcesContent":["var render = function render(){var _vm=this,_c=_vm._self._c,_setup=_vm._self._setupProxy;return _c('div',[_c('SurveyWriteHeader',{attrs:{\"value\":2}}),_vm._l((_vm.createdQuestions),function(q){return _c('SurveyQuestionForm',{key:q.questionInfo.questionOrders,ref:`questionForm${q.questionInfo.surveyQuestionId}`,refInFor:true,attrs:{\"question\":q,\"lastQuestionOrder\":_vm.lastQuestionOrder},on:{\"change\":_vm.changeQuestionOrders,\"delete\":_vm.orderAdjustment,\"modal\":_vm.previewImg,\"focus\":_vm.setLastFocus}})}),_c('div',{staticClass:\"space-l\"}),_c('div',{staticClass:\"card w-100\"},[_c('div',{staticClass:\"p-all-l\"},[_c('div',{staticClass:\"dp-flex\"},[_c('div',{staticClass:\"mr-auto\"},[_c('h6',{staticClass:\"ft-l b\"},[_c('a',{staticClass:\"ft-blue\",on:{\"click\":function($event){$event.preventDefault();return _vm.addQuestion.apply(null, arguments)}}},[_c('i',{staticClass:\"icon-fux-add m-r-s\"}),_vm._v(\" \"+_vm._s(_vm.$t('문항추가')))])])])])])]),_c('div',{staticClass:\"space-l\"}),_c('div',{staticClass:\"align-right\"},[(!_vm.isPopup)?_c('button',{staticClass:\"btn page-btn btn-basic\",on:{\"click\":function($event){$event.preventDefault();return _vm.goList()}}},[_vm._v(_vm._s(_vm.$t('목록으로_돌아가기')))]):_vm._e(),_c('button',{staticClass:\"btn page-btn btn-basic\",on:{\"click\":function($event){$event.preventDefault();return _vm.goStep01.apply(null, arguments)}}},[_vm._v(_vm._s(_vm.$t('이전')))]),_c('button',{staticClass:\"btn page-btn btn-basic\",on:{\"click\":function($event){return _vm.goPreview()}}},[_vm._v(\" \"+_vm._s(_vm.$t(\"다음\"))+\" \")]),(false)?_c('button',{staticClass:\"btn page-btn btn-basic\",on:{\"click\":function($event){$event.preventDefault();return _vm.save.apply(null, arguments)}}},[_vm._v(_vm._s(_vm.$t('저장')))]):_vm._e(),_c('button',{staticClass:\"btn page-btn btn-basic\",on:{\"click\":function($event){$event.preventDefault();return _vm.deleteHard.apply(null, arguments)}}},[_vm._v(\" \"+_vm._s(_vm.isPopup ? _vm.$t('닫기') : _vm.$t('삭제')))])])],2)\n}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","import Vue from 'vue'\r\nimport { Component, Watch } from 'vue-property-decorator'\r\nimport { mapActions, mapGetters, mapMutations } from 'vuex'\r\nimport * as types from '@survey/store/types'\r\nimport api from '@survey/api'\r\nimport { SurveyQuestionForm, SurveyWriteHeader } from '@survey/components'\r\n// import SurveyPreviewImageModalView from '@survey/views/ModalViews/SurveyPreviewImageModalView.vue'\r\n\r\n\r\n\r\nexport interface QuestionOrderObj {\r\n questionId: number,\r\n currentOrders: number\r\n}\r\n\r\n\r\n\r\n\r\n@Component({\r\n components: {\r\n SurveyQuestionForm,\r\n SurveyWriteHeader\r\n // SurveyPreviewImageModalView\r\n },\r\n computed: {\r\n ...mapGetters({\r\n createdSurveyId: types.SURVEY_CREATED_SURVEYID,\r\n createdQuestions: types.SURVEY_QUESTION\r\n })\r\n },\r\n methods: {\r\n ...mapActions({\r\n createQuestion: types.SURVEY_QUESTION,\r\n setSurveyId: types.SURVEY_CREATED_SURVEYID,\r\n initQuestion: types.SURVEY_INIT_QUESTION\r\n }),\r\n ...mapMutations({\r\n resorting: types.SURVEY_RESORTING_QUESTION\r\n })\r\n },\r\n})\r\nexport default class SurveyWriteS2View extends Vue {\r\n\r\n resorting!: () => void\r\n initQuestion!: (surveyId: number) => Promise\r\n createQuestion!: (data: survey.SurveyQuestionRequest) => void\r\n setSurveyId!: (surveyId?: number) => void\r\n\r\n createdQuestions!: Array\r\n createdSurveyId!: number\r\n lastQuestionOrder: number = 1\r\n showModal: boolean = false\r\n selectedAttachment: survey.SurveyAttachmentInfo = Object.create(null)\r\n isPopup: boolean = false\r\n\r\n //직접 주소 및 쿼리를 입력하고 오는 경우 리스트 화면으로 보냄\r\n async created() {\r\n //팝업인지 체크\r\n this.isPopup = this.$route.path.toLowerCase().includes('popup')\r\n\r\n\r\n this.setPage({\r\n title: this.$t('설문작성').toString()\r\n })\r\n\r\n if (typeof (this.createdSurveyId) == 'object' || this.createdSurveyId == null) {\r\n await (window as any).alertAsync(this.$t('잘못된_접근입니다').toString())\r\n this.$router.push({\r\n name: \"SurveyList\"\r\n })\r\n }\r\n\r\n //초기 데이터 \r\n this.initQuestion(this.createdSurveyId || parseInt(this.$route.query.surveyId as string)).then(result => {\r\n //마지막 순서 초기화\r\n //watch 추가됨에 따라 필요없음 \r\n //this.initQuestionOrder()\r\n })\r\n\r\n }\r\n\r\n initQuestionOrder() {\r\n\r\n let maxOrders: number = 1\r\n\r\n maxOrders = Math.max(...this.createdQuestions.map(item => {\r\n return item.questionInfo.questionOrders\r\n }, 0))\r\n\r\n\r\n if (!Number.isFinite(maxOrders)) {\r\n maxOrders = 0\r\n }\r\n\r\n this.lastQuestionOrder = maxOrders + 1\r\n\r\n }\r\n\r\n goStep01() {\r\n\r\n this.$router.push({\r\n name: \"SurveyWriteStep01\",\r\n query: {\r\n surveyId: this.createdSurveyId.toString(),\r\n MENUID: this.$route.query.MENUID\r\n }\r\n })\r\n }\r\n\r\n goBack() {\r\n if (this.isPopup) {\r\n window.close()\r\n } else {\r\n this.$router.push({\r\n name: \"SurveyList\",\r\n query: {\r\n MENUID: this.$route.query.MENUID\r\n }\r\n })\r\n }\r\n }\r\n\r\n async goList() {\r\n if (await (window as any).confirmAsync(this.$t('저장하지_않고_목록으로_이동하면_작성_중_상태가_유지_됩니다_').toString())) {\r\n this.goBack()\r\n }\r\n }\r\n\r\n async deleteHard() {\r\n if (await (window as any).confirmAsync(this.$t('저장하지않고_취소').toString())) {\r\n\r\n if (typeof (this.createdSurveyId) == 'object') {\r\n this.goBack()\r\n return\r\n } else {\r\n api.survey.deleteHardSurvey([ this.createdSurveyId ]).then(res => {\r\n this.setSurveyId();\r\n this.goBack();\r\n });\r\n } \r\n }\r\n }\r\n\r\n\r\n addQuestion() {\r\n\r\n let initVal = {\r\n surveyId: this.createdSurveyId,\r\n questionOrders: this.lastQuestionOrder,\r\n questionType: 0,\r\n isAdditionalOption: false,\r\n questionText: \"\"\r\n }\r\n\r\n this.createQuestion(\r\n {\r\n questionInfo: initVal\r\n }\r\n )\r\n //문항이 추가 될 때 마다 마지막 순서를 기억했다가 + 함\r\n this.lastQuestionOrder++\r\n }\r\n\r\n async save() {\r\n //실제 데이터는 작성 당시 이미 DB 에 모두 저장되고\r\n //해당 function 에 기능은 TC_SURVEY 테이블 IsComposing Flag 를 변경\r\n //IsComposing = true 면 리스트화면에 노출 안됨\r\n\r\n if (await (window as any).confirmAsync(this.$t('저장_하시겠습니까').toString())) {\r\n //유효성체크\r\n if (this.validation()) {\r\n api.survey.setSurveyComposingStatus({\r\n surveyId: this.createdSurveyId,\r\n isComposing: false\r\n }).then(async result => { \r\n if (result) {\r\n this.goBack()\r\n } else {\r\n await (window as any).alertAsync(this.$t('저장_실패').toString())\r\n }\r\n })\r\n } else {\r\n await (window as any).alertAsync(\r\n this.$t('빈_값이나_보기_없음').toString())\r\n }\r\n\r\n }\r\n }\r\n\r\n validation() {\r\n try {\r\n\r\n //질문이 생성 안된 경우\r\n if (this.createdQuestions.length == 0) {\r\n throw new Error()\r\n }\r\n\r\n //질문에 text가 입력 안된 경우\r\n this.createdQuestions.forEach(item => {\r\n if (item.questionInfo.questionText == \"\") {\r\n throw new Error()\r\n }\r\n })\r\n\r\n //서술형이 아닌데 보기가 없는 경우\r\n this.createdQuestions.forEach(item => {\r\n //현재는 2번 타입만 서술형\r\n if (item.questionInfo.questionType != 2) {\r\n if (item.examples.length == 0) {\r\n throw new Error()\r\n }\r\n }\r\n })\r\n\r\n //보기가 있는데 텍스트가 입력 안된 경우\r\n this.createdQuestions.forEach(item => {\r\n //현재는 2번 타입만 서술형\r\n if (item.questionInfo.questionType != 2) {\r\n item.examples.forEach(exam => {\r\n if (exam.exampleText == \"\") {\r\n throw new Error()\r\n }\r\n })\r\n }\r\n })\r\n\r\n\r\n } catch (err) {\r\n return false\r\n }\r\n\r\n return true\r\n }\r\n\r\n changeQuestionOrders(targetObj: QuestionOrderObj, isUp: boolean) {\r\n\r\n //targetObj\r\n // questionId : 0,\r\n // currentOrders : 1\r\n\r\n //예외상황\r\n //첫번째 항목인데 순서를 올리는 경우\r\n //마지막 항목인데 순서를 내리는 경우\r\n\r\n if (targetObj.currentOrders == 1 && isUp ||\r\n targetObj.currentOrders == this.lastQuestionOrder - 1 && !isUp) {\r\n\r\n return\r\n }\r\n\r\n //분기 올리냐 내리냐\r\n //if(isUp){\r\n //올리는건 order 가 -1\r\n //}else{\r\n // 내리는건 order +1\r\n //변경 대상이 있는 경우 체크해서 변경해야됨\r\n // 1순위에서 2순위로 변경되면 기존 2순위를 1순위로 변경 서로 swap\r\n let existsQuestion = this.createdQuestions.filter(item => {\r\n return item.questionInfo.questionOrders == targetObj.currentOrders + (isUp ? -1 : 1)\r\n })\r\n\r\n //변경 대상이 있기 때문에 먼저 변경\r\n if (existsQuestion.length > 0) {\r\n existsQuestion[0].questionInfo.questionOrders = existsQuestion[0].questionInfo.questionOrders + (isUp ? 1 : -1)\r\n this.createQuestion(existsQuestion[0])\r\n }\r\n\r\n let question = this.createdQuestions.filter(item => {\r\n return item.questionInfo.surveyQuestionId == targetObj.questionId\r\n })\r\n\r\n if (question.length > 0) {\r\n\r\n question[0].questionInfo.questionOrders = question[0].questionInfo.questionOrders + (isUp ? -1 : 1)\r\n this.createQuestion(question[0])\r\n }\r\n\r\n this.resorting()\r\n //force re-render\r\n\r\n // Vue.set(this.createdQuestions,)\r\n //this.createdQuestions.slice().reverse()\r\n\r\n //}\r\n\r\n\r\n\r\n }\r\n\r\n orderAdjustment(targetObj: QuestionOrderObj) {\r\n //alert(questionId)\r\n\r\n this.createdQuestions.forEach(question => {\r\n if (question.questionInfo.questionOrders > targetObj.currentOrders) {\r\n //alert(question.questionInfo.questionOrders)\r\n\r\n this.changeQuestionOrders({\r\n questionId: question.questionInfo.surveyQuestionId,\r\n currentOrders: question.questionInfo.questionOrders\r\n }, true)\r\n }\r\n })\r\n }\r\n\r\n @Watch(\"createdQuestions\")\r\n onChagnedQuestions() {\r\n this.initQuestionOrder()\r\n }\r\n\r\n previewImg(data: survey.SurveyAttachmentInfo) {\r\n this.selectedAttachment = data\r\n\r\n this.showModal = true\r\n }\r\n\r\n deleteImg() {\r\n //하위 컴포넌트 호출\r\n let refValue = `questionForm${this.selectedAttachment.questionId}`\r\n var component = (this.$refs as any)[refValue]\r\n\r\n component[0].deleteExampleImg(this.selectedAttachment.exampleId)\r\n this.closeModal()\r\n }\r\n\r\n\r\n closeModal() {\r\n // 디테일 값 초기화\r\n this.selectedAttachment = Object.create(null)\r\n this.showModal = false\r\n\r\n }\r\n\r\n setLastFocus() {\r\n\r\n let refs = (this.$refs as any)\r\n\r\n let lastQuestionId = Math.max.apply(Math, this.createdQuestions.map(function (o) { return o.questionInfo.surveyQuestionId; }))\r\n refs[`questionForm${lastQuestionId}`][0].$el.getElementsByTagName('input')[0].focus()\r\n }\r\n\r\n async goPreview() {\r\n if (this.validation()) {\r\n this.$router.push({\r\n name: \"SurveyRead\",\r\n query: {\r\n ...this.$route.query\r\n },\r\n params: { isPreview: 'true' }\r\n })\r\n }\r\n else {\r\n await (window as any).alertAsync(\r\n this.$t('빈_값이나_보기_없음').toString())\r\n }\r\n }\r\n}\r\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!./SurveyWriteS2View.ts?vue&type=script&lang=ts&external\"; 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!./SurveyWriteS2View.ts?vue&type=script&lang=ts&external\"","import { render, staticRenderFns } from \"./SurveyWriteS2View.vue?vue&type=template&id=24d6ab92\"\nimport script from \"./SurveyWriteS2View.ts?vue&type=script&lang=ts&external\"\nexport * from \"./SurveyWriteS2View.ts?vue&type=script&lang=ts&external\"\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":""}