{"version":3,"sources":["webpack:///./src/views/Planning/BottomUp.vue?2ef5","webpack:///./src/views/Planning/BottomUp.vue?5a27","webpack:///./src/views/Planning/BottomUp.vue","webpack:///./src/views/Planning/BottomUp.vue?c0d0"],"names":["_withScopeId","n","_hoisted_1","id","_hoisted_2","class","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_12","_hoisted_13","_hoisted_14","_hoisted_15","_hoisted_16","_hoisted_17","key","_hoisted_18","_hoisted_19","style","_hoisted_20","_hoisted_21","_hoisted_22","_hoisted_23","_hoisted_24","_hoisted_25","_hoisted_26","_hoisted_27","_hoisted_28","_hoisted_29","_hoisted_30","_hoisted_31","_hoisted_32","_hoisted_33","_hoisted_34","_hoisted_35","_hoisted_36","_hoisted_37","_hoisted_38","_hoisted_39","_hoisted_40","_hoisted_41","_hoisted_42","_hoisted_43","_hoisted_44","_hoisted_45","_hoisted_46","_hoisted_47","_hoisted_48","_hoisted_49","_hoisted_50","_hoisted_51","_hoisted_52","_hoisted_53","render","_ctx","_cache","$props","$setup","$data","$options","_component_Breadcrumb","_component_cascade_selector","_component_a_badge","_component_a_checkbox","_component_a_button","_component_a_select_option","_component_a_select","_component_a_tooltip","_component_a_input","_component_a_table","_component_SpreadJsDialog","dataSource","name","onUpdate","handleUpdate","type","years","year","currentYear","onClick","$event","handleChooseYear","dot","buSaveStatus","default","_","checked","expandAllStatus","disabled","tableData","length","$btnPermissions","handleSaveOrSubmit","make","makeIndex","planningId","value","viewKufriVersion","onChange","kufri","handleKufriChange","kufirVersions","version","vlaue","handleTakeGuideline","handleBatchInput","totalExpand","seasonTotal","item","title","number2Fixed","total","releasePoint","buPoint","months","totalVOList","bu","season","month","scroll","x","y","columns","tableColumns","detailVOList","pagination","rowKey","expandedRowKeys","expandedRowKeysList","onExpand","expand","record","handleExpand","rowClassName","index","brand","typeClass","scenarioName","nstGroup","seasons","slot","fn","actualStatus","placement","handleForecast","text","editing","lockStatus","edited","rtVolume","handleClickCell","onFocus","handleFocus","onBlur","handleBlur","onKeyup","handleEnter","onInput","replace","spreadVisible","spreadData","actuals","makeName","currentMakeName","handleSpreadJsUpdate","onClose","handleCloseSpreadJsDialog","field","generateKufirVersions","begin","end","versions","endMonth","isAfter","push","format","add","seasonConPoint2Fixed","toFixed","setId","data","childrenKey","forEach","components","CascadeSelector","SpreadJsDialog","setup","route","store","scenarioId","query","kufriMonth","submitStatus","topData","resMakeList","children","dataIndex","width","align","customRender","customHeaderCell","color","customCell","number","slots","fixed","map","prePoint","val","initMonthData","obj","monthEn","budget","controllingPoint","dataInfoId","finalPoint","kufriVersion","filter","planningTypeId","rtLlp","submitPoint","wsLlp","wsVolume","methodFormatList","list","monthEns","includes","child","formatBrand","mappingName","split","formatBu","formatTypeClass","methodFormatSaveData","result","monthNames","detail","condition","object","controllingSavedPoint","controllingReleasedPoint","buSavedPoint","buSubmitPoint","nstGroupName","methodChangeActual","parseInt","substring","methodGetList","postData","scenrioId","responseList","some","startKufriVersion","currentKufriVersion","ele","document","querySelector","querySelectorAll","addEventListener","e","left","target","scrollLeft","initYears","params","buId","bottomActive","responseYears","response","releaseStatus","message","error","confirm","content","okText","onOk","row","cancelText","editDisabled","focus","blur","Number","empty","bool","every","budgetObject","expanded","removeIndex","indexOf","splice","commit","handleExpandAll","infoSaveDTOList","makeItem","resultList","controllingSaveStatus","infoList","success","currentMake","spreadJsData","__exports__"],"mappings":"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LsL,MAAO,GACPC,MAAO,QACPC,aAActB,IAEhB,CACEpE,MAAO,YACPuF,UAAW,sBACXrL,IAAK,sBACLsL,MAAO,GACPC,MAAO,QACPC,aAActB,GACduB,iBAAkB,WAChB,MAAO,CACLtL,MAAO,CACLuL,MAAO,wBAIbC,WAAY,WACV,MAAO,CACLxL,MAAO,CACLuL,MAAO,gBAOnB,CACE5F,MAAO,KACP+B,KAAM,KACNuD,SAAU,CACR,CACEtF,MAAO,YACPuF,UAAW,0BACXrL,IAAK,0BACLsL,MAAO,GACPC,MAAO,QACPC,aAActB,IAEhB,CACEpE,MAAO,YACPuF,UAAW,qBACXrL,IAAK,qBACLsL,MAAO,GACPC,MAAO,QACPC,aAActB,GACduB,iBAAkB,WAChB,MAAO,CACLtL,MAAO,CACLuL,MAAO,wBAIbC,WAAY,WACV,MAAO,CACLxL,MAAO,CACLuL,MAAO,iBASfvF,EAAS,iBACb,CACE,CACE+B,KAAM,KACN0D,OAAQ,IACR9F,MAAO,UACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,WACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,QACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,QACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,MACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,OACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,OACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,SACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,IACR9F,MAAO,YACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OAAQ,KACR9F,MAAO,UACPiC,aAAc,GACduD,MAAO,KAET,CACEpD,KAAM,KACN0D,OA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","file":"js/chunk-66f4e0a9.5b9a4656.js","sourcesContent":["export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--9-oneOf-1-0!../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--9-oneOf-1-1!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--9-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--9-oneOf-1-3!../../../node_modules/cache-loader/dist/cjs.js??ref--1-0!../../../node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/index.js??ref--1-1!./BottomUp.vue?vue&type=style&index=0&id=59e33fc8&lang=scss&scoped=true\"","import { resolveComponent as _resolveComponent, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createElementBlock as _createElementBlock, toDisplayString as _toDisplayString, createElementVNode as _createElementVNode, withCtx as _withCtx, normalizeClass as _normalizeClass, createTextVNode as _createTextVNode, createBlock as _createBlock, createCommentVNode as _createCommentVNode, vShow as _vShow, withDirectives as _withDirectives, withKeys as _withKeys, createSlots as _createSlots, pushScopeId as _pushScopeId, popScopeId as _popScopeId } from \"vue\"\n\nconst _withScopeId = n => (_pushScopeId(\"data-v-59e33fc8\"),n=n(),_popScopeId(),n)\nconst _hoisted_1 = { id: \"guideline\" }\nconst _hoisted_2 = { class: \"action\" }\nconst _hoisted_3 = { class: \"row\" }\nconst _hoisted_4 = { class: \"years\" }\nconst _hoisted_5 = [\"onClick\"]\nconst _hoisted_6 = { class: \"btns\" }\nconst _hoisted_7 = /*#__PURE__*/_createTextVNode(\" Expand to Model \")\nconst _hoisted_8 = /*#__PURE__*/_createTextVNode(\"Save\")\nconst _hoisted_9 = /*#__PURE__*/_createTextVNode(\" Submit \")\nconst _hoisted_10 = { class: \"content\" }\nconst _hoisted_11 = { class: \"box\" }\nconst _hoisted_12 = { class: \"table\" }\nconst _hoisted_13 = { class: \"kufri\" }\nconst _hoisted_14 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", { class: \"label\" }, \"Kufri\", -1))\nconst _hoisted_15 = /*#__PURE__*/_createTextVNode(\"Take Guideline\")\nconst _hoisted_16 = /*#__PURE__*/_createTextVNode(\"Batch Input\")\nconst _hoisted_17 = {\n key: 0,\n class: \"total\"\n}\nconst _hoisted_18 = { class: \"total-header\" }\nconst _hoisted_19 = { style: {\"white-space\":\"nowrap\",\"display\":\"flex\"} }\nconst _hoisted_20 = [\"onClick\"]\nconst _hoisted_21 = [\"onClick\"]\nconst _hoisted_22 = { class: \"header\" }\nconst _hoisted_23 = { class: \"scroll-box\" }\nconst _hoisted_24 = { class: \"scroll-content\" }\nconst _hoisted_25 = { class: \"cell\" }\nconst _hoisted_26 = { class: \"cell\" }\nconst _hoisted_27 = { class: \"month-cell\" }\nconst _hoisted_28 = { class: \"total-list\" }\nconst _hoisted_29 = { class: \"header\" }\nconst _hoisted_30 = { class: \"scroll-box\" }\nconst _hoisted_31 = { class: \"scroll-content\" }\nconst _hoisted_32 = { class: \"cell\" }\nconst _hoisted_33 = { class: \"cell\" }\nconst _hoisted_34 = {\n key: 0,\n class: \"month-cell\"\n}\nconst _hoisted_35 = { class: \"title\" }\nconst _hoisted_36 = { class: \"top c-0088C6 font-bold font-14\" }\nconst _hoisted_37 = { class: \"title\" }\nconst _hoisted_38 = { class: \"top c-0088C6 font-bold font-14\" }\nconst _hoisted_39 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"div\", { class: \"title\" }, [\n /*#__PURE__*/_createElementVNode(\"div\", {\n class: \"top\",\n style: {\"color\":\"#BFBFBF\"}\n }, [\n /*#__PURE__*/_createElementVNode(\"i\", {\n class: \"font_family icon-a-takeproposal-icon font-12\",\n style: {\"font-weight\":\"normal\"}\n }),\n /*#__PURE__*/_createElementVNode(\"span\", { style: {\"font-weight\":\"normal\"} }, \"Click to take proposal data\")\n ])\n], -1))\nconst _hoisted_40 = { class: \"title\" }\nconst _hoisted_41 = { class: \"top\" }\nconst _hoisted_42 = { class: \"title month-header\" }\nconst _hoisted_43 = {\n key: 0,\n class: \"top\"\n}\nconst _hoisted_44 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"span\", null, \"Take Proposal\", -1))\nconst _hoisted_45 = [\"onClick\"]\nconst _hoisted_46 = /*#__PURE__*/ _withScopeId(() => /*#__PURE__*/_createElementVNode(\"i\", { class: \"font_family icon-a-takeproposal-icon font-12 icon-forecast\" }, null, -1))\nconst _hoisted_47 = /*#__PURE__*/_createTextVNode(\" Forecast\")\nconst _hoisted_48 = [\n _hoisted_46,\n _hoisted_47\n]\nconst _hoisted_49 = { class: \"month-year\" }\nconst _hoisted_50 = { key: 0 }\nconst _hoisted_51 = { style: {\"color\":\"#CCC\"} }\nconst _hoisted_52 = { key: 1 }\nconst _hoisted_53 = [\"onClick\"]\n\nexport function render(_ctx: any,_cache: any,$props: any,$setup: any,$data: any,$options: any) {\n const _component_Breadcrumb = _resolveComponent(\"Breadcrumb\")!\n const _component_cascade_selector = _resolveComponent(\"cascade-selector\")!\n const _component_a_badge = _resolveComponent(\"a-badge\")!\n const _component_a_checkbox = _resolveComponent(\"a-checkbox\")!\n const _component_a_button = _resolveComponent(\"a-button\")!\n const _component_a_select_option = _resolveComponent(\"a-select-option\")!\n const _component_a_select = _resolveComponent(\"a-select\")!\n const _component_a_tooltip = _resolveComponent(\"a-tooltip\")!\n const _component_a_input = _resolveComponent(\"a-input\")!\n const _component_a_table = _resolveComponent(\"a-table\")!\n const _component_SpreadJsDialog = _resolveComponent(\"SpreadJsDialog\")!\n\n return (_openBlock(), _createElementBlock(_Fragment, null, [\n _createElementVNode(\"div\", _hoisted_1, [\n _createVNode(_component_Breadcrumb, {\n dataSource: [{name: 'Bottom Up'}],\n class: \"breadcrumb-planning\"\n }),\n _createElementVNode(\"div\", _hoisted_2, [\n _createVNode(_component_cascade_selector, {\n onUpdate: _ctx.handleUpdate,\n type: \"bottomUp\"\n }, null, 8, [\"onUpdate\"]),\n _createElementVNode(\"div\", _hoisted_3, [\n _createElementVNode(\"div\", _hoisted_4, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.years, (year) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n key: year.year,\n class: \"year-box\"\n }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"year-item\", {'active' : _ctx.currentYear === year.year}]),\n onClick: ($event: any) => (_ctx.handleChooseYear(year.year))\n }, [\n _createVNode(_component_a_badge, {\n dot: !year.buSaveStatus\n }, {\n default: _withCtx(() => [\n _createElementVNode(\"span\", null, _toDisplayString(year.year), 1)\n ]),\n _: 2\n }, 1032, [\"dot\"])\n ], 10, _hoisted_5)\n ]))\n }), 128))\n ]),\n _createElementVNode(\"div\", _hoisted_6, [\n _createVNode(_component_a_checkbox, {\n checked: _ctx.expandAllStatus,\n \"onUpdate:checked\": _cache[0] || (_cache[0] = ($event: any) => ((_ctx.expandAllStatus) = $event)),\n class: \"mr-20\",\n disabled: _ctx.tableData.length <= 0\n }, {\n default: _withCtx(() => [\n _hoisted_7\n ]),\n _: 1\n }, 8, [\"checked\", \"disabled\"]),\n (_ctx.$btnPermissions('p-bu03', '/glAndBu'))\n ? (_openBlock(), _createBlock(_component_a_button, {\n key: 0,\n type: \"primary\",\n class: \"mr-20\",\n disabled: _ctx.tableData.length <= 0,\n onClick: _cache[1] || (_cache[1] = ($event: any) => (_ctx.handleSaveOrSubmit('save')))\n }, {\n default: _withCtx(() => [\n _hoisted_8\n ]),\n _: 1\n }, 8, [\"disabled\"]))\n : _createCommentVNode(\"\", true),\n (_ctx.$btnPermissions('p-bu02', '/glAndBu'))\n ? (_openBlock(), _createBlock(_component_a_button, {\n key: 1,\n type: \"primary\",\n class: \"mr-20\",\n disabled: _ctx.tableData.length <= 0,\n onClick: _cache[2] || (_cache[2] = ($event: any) => (_ctx.handleSaveOrSubmit('submit')))\n }, {\n default: _withCtx(() => [\n _hoisted_9\n ]),\n _: 1\n }, 8, [\"disabled\"]))\n : _createCommentVNode(\"\", true)\n ])\n ])\n ]),\n _createElementVNode(\"div\", _hoisted_10, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.tableData, (make, makeIndex) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: _normalizeClass([\"result bg-fff\", make.make + makeIndex]),\n key: make.planningId\n }, [\n _createElementVNode(\"div\", _hoisted_11, [\n _createElementVNode(\"div\", _hoisted_12, [\n _createElementVNode(\"div\", _hoisted_13, [\n _createElementVNode(\"div\", null, [\n _hoisted_14,\n _createVNode(_component_a_select, {\n value: make.viewKufriVersion,\n \"onUpdate:value\": ($event: any) => ((make.viewKufriVersion) = $event),\n onChange: (kufri) => _ctx.handleKufriChange(kufri, makeIndex, make)\n }, {\n default: _withCtx(() => [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(make.kufirVersions, (version) => {\n return (_openBlock(), _createBlock(_component_a_select_option, {\n key: version,\n vlaue: version\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(version), 1)\n ]),\n _: 2\n }, 1032, [\"vlaue\"]))\n }), 128))\n ]),\n _: 2\n }, 1032, [\"value\", \"onUpdate:value\", \"onChange\"]),\n _createVNode(_component_a_button, {\n type: \"primary\",\n class: \"ml-20\",\n onClick: ($event: any) => (_ctx.handleTakeGuideline(make))\n }, {\n default: _withCtx(() => [\n _hoisted_15\n ]),\n _: 2\n }, 1032, [\"onClick\"])\n ]),\n _createElementVNode(\"div\", null, [\n _createVNode(_component_a_button, {\n type: \"primary\",\n class: \"mr-12\",\n onClick: ($event: any) => (_ctx.handleBatchInput(make, makeIndex))\n }, {\n default: _withCtx(() => [\n _hoisted_16\n ]),\n _: 2\n }, 1032, [\"onClick\"])\n ])\n ]),\n (make.total)\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_17, [\n _createElementVNode(\"div\", _hoisted_18, [\n _createElementVNode(\"div\", _hoisted_19, [\n (!make.totalExpand)\n ? (_openBlock(), _createElementBlock(\"div\", {\n key: 0,\n class: \"expand\",\n onClick: ($event: any) => (make.totalExpand = true)\n }, \"+\", 8, _hoisted_20))\n : (_openBlock(), _createElementBlock(\"div\", {\n key: 1,\n class: \"expand\",\n onClick: ($event: any) => (make.totalExpand = false)\n }, \"-\", 8, _hoisted_21)),\n _createElementVNode(\"span\", _hoisted_22, _toDisplayString(make.make) + \" Total\", 1),\n _createElementVNode(\"div\", _hoisted_23, [\n _createElementVNode(\"div\", _hoisted_24, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.seasonTotal, (item) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: item.title\n }, [\n _createElementVNode(\"span\", _hoisted_25, _toDisplayString(_ctx.number2Fixed(make.total[item.title].releasePoint)), 1),\n _createElementVNode(\"span\", _hoisted_26, _toDisplayString(_ctx.number2Fixed(make.total[item.title].buPoint)), 1)\n ]))\n }), 128)),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.months, (item) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: item.title\n }, [\n _createElementVNode(\"span\", _hoisted_27, _toDisplayString(_ctx.number2Fixed(make.total[item.title].buPoint)), 1)\n ]))\n }), 128))\n ])\n ])\n ])\n ]),\n _withDirectives(_createElementVNode(\"div\", _hoisted_28, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(make.totalVOList, (item) => {\n return (_openBlock(), _createElementBlock(\"div\", {\n class: \"item\",\n key: item.bu\n }, [\n _createElementVNode(\"span\", _hoisted_29, _toDisplayString(item.bu), 1),\n _createElementVNode(\"div\", _hoisted_30, [\n _createElementVNode(\"div\", _hoisted_31, [\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.seasonTotal, (season) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: season.title\n }, [\n _createElementVNode(\"span\", _hoisted_32, _toDisplayString(_ctx.number2Fixed(item[season.title].releasePoint)), 1),\n _createElementVNode(\"span\", _hoisted_33, _toDisplayString(_ctx.number2Fixed(item[season.title].buPoint)), 1)\n ]))\n }), 128)),\n (_openBlock(true), _createElementBlock(_Fragment, null, _renderList(_ctx.months, (month) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n key: month.title\n }, [\n (item[month.title])\n ? (_openBlock(), _createElementBlock(\"span\", _hoisted_34, _toDisplayString(_ctx.number2Fixed(item[month.title].buPoint)), 1))\n : _createCommentVNode(\"\", true)\n ]))\n }), 128))\n ])\n ])\n ]))\n }), 128))\n ], 512), [\n [_vShow, make.totalExpand]\n ])\n ]))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_a_table, {\n class: \"data-table\",\n scroll: { x: 1500, y: 500 },\n columns: _ctx.tableColumns,\n \"data-source\": make.detailVOList,\n pagination: false,\n rowKey: \"id\",\n expandedRowKeys: _ctx.expandedRowKeysList[makeIndex],\n onExpand: (expand, record) => _ctx.handleExpand(expand, record, makeIndex),\n rowClassName: (record, index) => (record.brand ? 'hasBrand' : null)\n }, _createSlots({\n bu: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_35, [\n _createElementVNode(\"div\", _hoisted_36, _toDisplayString(make.make), 1)\n ])\n ]),\n typeClass: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_37, [\n _createElementVNode(\"div\", _hoisted_38, _toDisplayString(_ctx.scenarioName), 1)\n ])\n ]),\n nstGroup: _withCtx(() => [\n _hoisted_39\n ]),\n _: 2\n }, [\n _renderList(_ctx.seasons, (season) => {\n return {\n name: season.slot,\n fn: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_40, [\n _createElementVNode(\"div\", _hoisted_41, _toDisplayString(_ctx.currentYear) + \"-\" + _toDisplayString(season.title), 1)\n ])\n ])\n }\n }),\n _renderList(_ctx.months, (month) => {\n return {\n name: month.title,\n fn: _withCtx(() => [\n _createElementVNode(\"div\", _hoisted_42, [\n (month.actualStatus[makeIndex])\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_43, \"Actual\"))\n : (_openBlock(), _createBlock(_component_a_tooltip, {\n key: 1,\n placement: \"top\"\n }, {\n title: _withCtx(() => [\n _hoisted_44\n ]),\n default: _withCtx(() => [\n _createElementVNode(\"div\", {\n onClick: ($event: any) => (_ctx.handleForecast(month.text, month.title, makeIndex, make)),\n class: \"cursor-pointer\",\n style: {\"position\":\"relative\"}\n }, _hoisted_48, 8, _hoisted_45)\n ]),\n _: 2\n }, 1024)),\n _createElementVNode(\"div\", _hoisted_49, _toDisplayString(_ctx.currentYear) + \"-\" + _toDisplayString(month.text), 1)\n ])\n ])\n }\n }),\n _renderList(_ctx.months, (month) => {\n return {\n name: month.text,\n fn: _withCtx(({record}) => [\n (record[month.title] && month.actualStatus[makeIndex])\n ? (_openBlock(), _createElementBlock(\"div\", _hoisted_50, [\n _createElementVNode(\"span\", _hoisted_51, _toDisplayString(_ctx.number2Fixed(record[month.title].buPoint)), 1)\n ]))\n : (_openBlock(), _createElementBlock(\"div\", _hoisted_52, [\n _createElementVNode(\"div\", null, [\n (!record[month.title].editing || _ctx.lockStatus)\n ? (_openBlock(), _createElementBlock(\"span\", {\n key: 0,\n class: _normalizeClass([\"cell-span\", {'edited-span': record[month.title].edited, 'empty-span': !month.actualStatus[makeIndex] && !record[month.title].buPoint && (record[month.title].rtVolume > 0) && record[month.title].buPoint !== 0}]),\n onClick: ($event: any) => (_ctx.handleClickCell($event, record[month.title], record, month.actualStatus[makeIndex]))\n }, [\n _createElementVNode(\"span\", null, _toDisplayString(_ctx.number2Fixed(record[month.title].buPoint)), 1)\n ], 10, _hoisted_53))\n : (_openBlock(), _createBlock(_component_a_input, {\n key: 1,\n value: record[month.title].buPoint,\n \"onUpdate:value\": ($event: any) => ((record[month.title].buPoint) = $event),\n type: \"number\",\n onFocus: ($event: any) => (_ctx.handleFocus(record, month.title)),\n onBlur: ($event: any) => (_ctx.handleBlur(record, month.title, make.detailVOList)),\n onKeyup: _withKeys(_ctx.handleEnter, [\"enter\"]),\n onInput: ($event: any) => (record[month.title].buPoint=record[month.title].buPoint.replace(/([0-9]+\\.[0-9]{15})[0-9]*/, '$1'))\n }, null, 8, [\"value\", \"onUpdate:value\", \"onFocus\", \"onBlur\", \"onKeyup\", \"onInput\"]))\n ])\n ]))\n ])\n }\n })\n ]), 1032, [\"columns\", \"data-source\", \"expandedRowKeys\", \"onExpand\", \"rowClassName\"])\n ])\n ])\n ], 2))\n }), 128))\n ])\n ]),\n _createVNode(_component_SpreadJsDialog, {\n spreadVisible: _ctx.spreadVisible,\n spreadData: _ctx.spreadData,\n actuals: _ctx.actuals,\n year: _ctx.currentYear,\n makeName: _ctx.currentMakeName,\n onUpdate: _ctx.handleSpreadJsUpdate,\n onClose: _ctx.handleCloseSpreadJsDialog,\n field: \"buPoint\"\n }, null, 8, [\"spreadVisible\", \"spreadData\", \"actuals\", \"year\", \"makeName\", \"onUpdate\", \"onClose\"])\n ], 64))\n}","\nimport { useRouter, useRoute } from 'vue-router'\nimport { useStore } from \"vuex\"\nimport CascadeSelector from '@/views/Planning/components/CasvadeSelector.vue'\nimport { defineComponent, onMounted, ref, reactive, nextTick, h, computed, watch } from 'vue'\nimport { getGuidelineYear, getBottomUpList, saveBottomUp, refreshKufriBottomUp, refreshBudgetBu } from '@/API/planning'\nimport moment from 'moment'\nimport SpreadJsDialog from '@/views/Planning/components/SpreadJsDialog.vue'\nimport { message ,Modal} from \"ant-design-vue\";\nimport { formatDataForTable } from './components/spreadUtils'\n// import { data } from './mock'\n\nfunction generateKufirVersions(begin: string, end: string) {\n const versions = []\n const month = moment(begin.replace('K', ''))\n const endMonth = moment(end.replace('K', ''))\n while (!month.isAfter(endMonth)) {\n versions.push(month.format('YYYYKMM'))\n month.add(1, 'M')\n }\n\n return versions\n}\n\nconst seasonConPoint2Fixed = (record: any) => {\n if (record.text || record.text === 0) {\n return record.text.toFixed(2) + '%'\n }\n return ''\n}\n\nfunction setId(data: any [], childrenKey = 'children', key = 'key') {\n let id = 1\n const setId = (data: any []) => {\n data.forEach((item: any) => {\n (item[key] as number) = id\n id++\n if (item[childrenKey] && (item[childrenKey]).length) {\n setId(item[childrenKey])\n }\n })\n }\n setId(data)\n return data\n}\n\nexport default defineComponent({\n components: {\n CascadeSelector,\n SpreadJsDialog\n },\n setup() {\n const route: any = useRoute()\n const store = useStore()\n const scenarioId = route.query.scenarioId\n const planningId = route.query.planningId\n const scenarioName = route.query.scenarioName\n const lockStatus = route.query.lockStatus === 'true'\n const kufriMonth = route.query.kufriMonth\n\n const submitStatus = ref(false)\n const topData = ref({})\n const currentYear = ref(route.query.year)\n const years = ref([])\n const expandedRowKeysList = ref([]) \n const expandAllStatus = ref(false)\n const resMakeList = ref([])\n const seasonTotal = [\n {\n title: 'annual'\n },\n {\n title: 'seasonOne'\n },\n {\n title: 'seasonTwo'\n },\n {\n title: 'seasonThree'\n },\n {\n title: 'seasonFour'\n }\n ]\n\n const seasons = [\n {\n title: 'Annual',\n slot: 'Annual',\n children: [\n {\n title: 'Guideline',\n dataIndex: 'annual.releasePoint',\n key: 'annual.releasePoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed\n },\n {\n title: 'Bottom Up',\n dataIndex: 'annual.buPoint',\n key: 'annual.buPoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed,\n customHeaderCell: () => {\n return {\n style: {\n color: '#0088C6 !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n color: '#0088C6'\n }\n }\n }\n }\n ]\n },\n {\n title: 'Q1',\n slot: 'Q1',\n children: [\n {\n title: 'Guideline',\n dataIndex: 'seasonOne.releasePoint',\n key: 'seasonOne.releasePoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed\n },\n {\n title: 'Bottom Up',\n dataIndex: 'seasonOne.buPoint',\n key: 'seasonOne.buPoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed,\n customHeaderCell: () => {\n return {\n style: {\n color: '#0088C6 !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n color: '#0088C6'\n }\n }\n }\n }\n ]\n },\n {\n title: 'Q2',\n slot: 'Q2',\n children: [\n {\n title: 'Guideline',\n dataIndex: 'seasonTwo.releasePoint',\n key: 'seasonTwo.releasePoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed\n },\n {\n title: 'Bottom Up',\n dataIndex: 'seasonTwo.buPoint',\n key: 'seasonTwo.buPoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed,\n customHeaderCell: () => {\n return {\n style: {\n color: '#0088C6 !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n color: '#0088C6'\n }\n }\n }\n }\n ]\n },\n {\n title: 'Q3',\n slot: 'Q3',\n children: [\n {\n title: 'Guideline',\n dataIndex: 'seasonThree.releasePoint',\n key: 'seasonThree.releasePoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed\n },\n {\n title: 'Bottom Up',\n dataIndex: 'seasonThree.buPoint',\n key: 'seasonThree.buPoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed,\n customHeaderCell: () => {\n return {\n style: {\n color: '#0088C6 !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n color: '#0088C6'\n }\n }\n }\n }\n ]\n },\n {\n title: 'Q4',\n slot: 'Q4',\n children: [\n {\n title: 'Guideline',\n dataIndex: 'seasonFour.releasePoint',\n key: 'seasonFour.releasePoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed\n },\n {\n title: 'Bottom Up',\n dataIndex: 'seasonFour.buPoint',\n key: 'seasonFour.buPoint',\n width: 80,\n align: 'right',\n customRender: seasonConPoint2Fixed,\n customHeaderCell: () => {\n return {\n style: {\n color: '#0088C6 !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n color: '#0088C6'\n }\n }\n }\n }\n ]\n }\n ]\n\n const months = ref(\n [\n {\n text: '01',\n number: '1',\n title: 'january',\n actualStatus: [],\n width: 100\n },\n {\n text: '02',\n number: '2',\n title: 'february',\n actualStatus: [],\n width: 100\n },\n {\n text: '03',\n number: '3',\n title: 'march',\n actualStatus: [],\n width: 100\n },\n {\n text: '04',\n number: '4',\n title: 'april',\n actualStatus: [],\n width: 100\n },\n {\n text: '05',\n number: '5',\n title: 'may',\n actualStatus: [],\n width: 100\n },\n {\n text: '06',\n number: '6',\n title: 'june',\n actualStatus: [],\n width: 100\n },\n {\n text: '07',\n number: '7',\n title: 'july',\n actualStatus: [],\n width: 100\n },\n {\n text: '08',\n number: '8',\n title: 'august',\n actualStatus: [],\n width: 100\n },\n {\n text: '09',\n number: '9',\n title: 'september',\n actualStatus: [],\n width: 100\n },\n {\n text: '10',\n number: '10',\n title: 'october',\n actualStatus: [],\n width: 100\n },\n {\n text: '11',\n number: '11',\n title: 'november',\n actualStatus: [],\n width: 100\n },\n {\n text: '12',\n number: '12',\n title: 'december',\n actualStatus: [],\n width: 112,\n customHeaderCell: () => {\n return {\n style: {\n 'padding-right': '12px !important'\n }\n }\n },\n customCell: () => {\n return {\n style: {\n 'padding-right': '12px !important'\n }\n }\n }\n },\n ]\n ) \n\n const tableColumns = ref(\n [\n {\n slots: { title: 'bu' },\n fixed: 'left',\n children: [\n {\n title: 'Brand',\n dataIndex: 'brand',\n width: 130,\n fixed: 'left'\n }\n ]\n },\n {\n slots: { title: 'typeClass' },\n fixed: 'left',\n children: [\n {\n title: 'Type Class',\n dataIndex: 'typeClass',\n width: 100,\n }\n ]\n },\n {\n slots: { title: 'nstGroupName' }, \n fixed: 'left',\n children: [\n {\n title: 'Model',\n dataIndex: 'nstGroupName',\n width: 280,\n }\n ]\n },\n ...seasons.map(season => {\n return {\n slots: { title: season.title },\n width: 200,\n align: 'center',\n children: season.children\n }\n }),\n ...months.value.map(month => {\n return {\n slots: {\n title: month.title,\n },\n align: 'right',\n customHeaderCell: month.customHeaderCell,\n children: [\n {\n // title: `${currentYear.value}-${month.text}`,\n slots: {\n customRender: month.text,\n },\n width: month.width,\n align: 'right',\n customHeaderCell: month.customHeaderCell,\n customCell: month.customCell\n }\n ],\n }\n })\n ]\n )\n\n const tableData = ref([])\n\n const prePoint = ref(0)\n\n const number2Fixed = computed(() => {\n return (val: any) => {\n if (val || val === 0) {\n return val.toFixed(2) + '%'\n }\n return ''\n }\n })\n\n const initMonthData = (obj: any, monthEn: string) => {\n if (!obj) {\n return {\n actualStatus: null,\n buPoint: null,\n budget: null,\n controllingPoint: null,\n dataInfoId: null,\n finalPoint: null,\n kufriVersion: null,\n month: months.value.filter(item => item.title === monthEn)[0].number,\n planningId: null,\n planningTypeId: null,\n releasePoint: null,\n rtLlp: null,\n rtVolume: null,\n submitPoint: null,\n wsLlp: null,\n wsVolume: null,\n year: currentYear.value\n }\n }\n }\n\n const methodFormatList = (list: any[]) => {\n if (!list) {\n return\n }\n const monthEns = months.value.map((month: any) => {\n return month.title\n })\n list.forEach((item: any, index: number) => {\n for (const key in item) {\n if (monthEns.includes(key)) {\n if (!item[key]) {\n item[key] = initMonthData(item[key], key)\n }\n }\n if (monthEns.includes(key)) {\n item[key].editing = false\n }\n if (key === 'children' && item[key]) {\n item[key].forEach((child: any) => {\n child.formatBrand = item.brand || item.mappingName?.split('-')[0]\n child.formatBu = item.bu\n child.formatTypeClass = item.typeClass\n })\n methodFormatList(item[key])\n }\n }\n })\n }\n\n const methodFormatSaveData = (make: any, type: string) => {\n const result: any[] = []\n const monthNames = months.value.map((month: any) => month.title)\n make.detailVOList.forEach((detail: any)=> {\n if (detail.children && detail.children.length > 0) {\n detail.children.forEach((child: any) => {\n for (const key in child) {\n let condition\n if (type === 'save') {\n condition = monthNames.includes(key) && !child[key].actualStatus && child[key].edited\n } else if (type === 'submit') {\n condition = monthNames.includes(key)\n }\n if (condition) {\n const object: any = {}\n object.controllingSavedPoint = child[key].controllingPoint\n object.controllingReleasedPoint = child[key].releasePoint\n object.id = child[key].dataInfoId\n object.buSavedPoint = child[key].buPoint\n object.buSubmitPoint = child[key].submitPoint\n\n if (!object.id) {\n object.year = child[key].year\n object.month = child[key].month\n object.brand = child.formatBrand\n object.typeClass = child.formatTypeClass\n \n object.nstGroup = child.nstGroup\n object.nstGroupName = child.nstGroupName\n object.bu = child.formatBu\n object.actualStatus = false\n }\n if (type === 'save') {\n result.push(object)\n } else {\n if (object.id) {\n result.push(object)\n } else {\n if (child[key].edited) {\n result.push(object)\n }\n }\n }\n }\n }\n })\n }\n })\n return result\n }\n\n const methodChangeActual = () => {\n months.value.forEach(month => {\n month.actualStatus = tableData.value.map((make: any) => {\n if (currentYear.value > parseInt(make.viewKufriVersion.substring(0, 4))) {\n return false\n }\n else {\n const kufriMonth = make.viewKufriVersion.substring(make.viewKufriVersion.length - 2)\n return month.text < kufriMonth\n }\n })\n })\n }\n\n const methodGetList = async () => {\n const postData = {\n ...topData.value,\n scenrioId: scenarioId,\n year: currentYear.value,\n kufriMonth: kufriMonth\n }\n const responseList = await getBottomUpList(postData)\n const list = responseList.data || []\n resMakeList.value = list.map((item: any) => {\n return item.make\n })\n submitStatus.value = list.map((make: any) => {\n return make.submitStatus\n }).some((item: boolean) => {\n return item\n })\n // list = data\n tableData.value = list\n tableData.value.forEach(make => {\n make.kufirVersions = generateKufirVersions(make.startKufriVersion, make.currentKufriVersion)\n make.totalExpand = true\n make.viewKufriVersion = make.currentKufriVersion\n // expandedRowKeysList.value.push([])\n if (!make.detailVOList) {\n make.detailVOList = []\n }\n methodFormatList(make.detailVOList)\n setId(make.detailVOList, 'children', 'id')\n nextTick(() => {\n resMakeList.value.forEach((make: string, index: number) => {\n const ele: any | null = document.querySelector(`.${make}${index} .ant-table-body`)\n const title: any | null = document.querySelectorAll(`.${make}${index} .scroll-content`)\n ele.addEventListener('scroll', function(e: any) {\n title.forEach((item: any) => {\n item.style.left = `-${e.target.scrollLeft}px`\n })\n })\n })\n })\n })\n methodChangeActual()\n }\n\n const initYears = async () => {\n const params = {\n bu: topData.value.bu,\n buId: topData.value.buId,\n scenrioId: scenarioId,\n bottomActive: true,\n kufriMonth: kufriMonth\n }\n const responseYears = await getGuidelineYear(params)\n years.value = responseYears.data\n years.value = responseYears.data.filter((year: any) => {\n return year.bottomActive\n }) \n }\n\n const handleUpdate = (condition: any) => {\n topData.value = condition\n methodGetList()\n initYears()\n }\n\n const handleKufriChange = async (kufri: string, makeIndex: number, make: any) => {\n const postData = {\n ...topData.value,\n scenarioId: scenarioId,\n planningId: make.planningId,\n year: currentYear.value,\n kufriVersion: kufri,\n bottomActive: true\n }\n const response = await refreshKufriBottomUp(postData)\n tableData.value[makeIndex].detailVOList = response.data[0].detailVOList || []\n methodFormatList(tableData.value[makeIndex].detailVOList)\n setId(tableData.value[makeIndex].detailVOList, 'children', 'id')\n // 刷新对应kufri月份的acture状态\n methodChangeActual()\n }\n\n const handleTakeGuideline = (make: any) => {\n if (!make.releaseStatus) {\n return message.error(\"There's no data released from guideline.\")\n }\n Modal.confirm({\n title: 'Tips',\n content: 'Note that take propose will overwrite existing data.',\n okText: 'Confirm',\n onOk() {\n const monthEns = months.value.map((month: any) => {\n return month.title\n })\n make.detailVOList.forEach((row: any) => {\n for (const key in row) {\n if (monthEns.includes(key)) {\n if (row[key].releasePoint !== row[key].buPoint) {\n row[key].buPoint = row[key].releasePoint\n row[key].edited = true\n }\n }\n if (key === 'children' && row.children) {\n row.children.forEach((child: any) => {\n for (const key in child) {\n if (monthEns.includes(key)) { \n if (child[key].releasePoint !== child[key].buPoint) {\n child[key].buPoint = child[key].releasePoint\n child[key].edited = true\n } \n }\n }\n })\n }\n }\n })\n },\n cancelText: 'Cancel',\n });\n }\n\n const handleChooseYear = (year: number) => {\n currentYear.value = year\n expandAllStatus.value = false\n methodGetList()\n }\n\n // 点击单元格可编辑 item:单元格数据 record:整行数据\n const handleClickCell = (e: any, item: any, record: any, actualStatus: boolean) => {\n if (lockStatus) {\n return message.error('Data locked.')\n }\n if (submitStatus.value) {\n return message.error('Data already submitted,can not change.')\n }\n if (actualStatus || item.editDisabled) {\n return\n }\n item.editing = true\n prePoint.value = item.buPoint\n nextTick(()=>{\n const ele: any | null = document.querySelector('.data-table input')\n if (ele) {\n ele.focus()\n }\n })\n }\n\n // 获取焦点\n const handleFocus = (record: any, month: string) => {\n // 转化成小数\n // if (record[month].buPoint) {\n // record[month].buPoint = record[month].buPoint / 100\n // console.log(record[month].buPoint)\n // }\n }\n\n const handleEnter = (e: any) => {\n e.target.blur()\n }\n\n // 离焦事件 item: 单元格数据 record: 行数据 tableData:表格数据\n const handleBlur = (record: any, month: string, tableData: any) => {\n if (record[month].buPoint === 0 || record[month].buPoint === '0') {\n record[month].buPoint = 0\n } else {\n record[month].buPoint = Number(record[month].buPoint) || null\n }\n // 转化成百分数\n // if (record[month].buPoint) {\n // record[month].buPoint = record[month].buPoint * 100\n // }\n if (record[month].buPoint !== prePoint.value) {\n record[month].edited = true\n // 是父节点 判断是否有子节点 如果有子节点 父节点编辑 子节点自动变成相同数值且不可编辑\n if (record.brand || record.typeClass) {\n if (record.children) {\n record.children.forEach((child: any) => {\n child[month].buPoint = record[month].buPoint\n child[month].edited = true\n child[month].editDisabled = !!child[month].buPoint\n child[month].empty = !child[month].buPoint\n })\n }\n }\n // 是子节点 找到父节点 父节点不可编辑\n if (!record.brand && !record.typeClass && record.nstGroup) {\n tableData.forEach((row: any) => {\n if (row.children) {\n const childControllingPointList: any[] = []\n row.children.forEach((child: any) => {\n childControllingPointList.push(child[month].buPoint)\n if (child[month].dataInfoId === record[month].dataInfoId) {\n row[month].buPoint = null\n row[month].editDisabled = true\n row[month].empty = false\n }\n })\n // 所有child的controllingPoint都为null时 父节点可编辑\n const bool = childControllingPointList.every((item: any) => {\n return !item\n })\n if (bool) {\n row[month].editDisabled = false\n }\n }\n })\n }\n }\n record[month].editing = false\n if (!record[month].buPoint) {\n record[month].empty = true\n }\n }\n\n const handleForecast = (month: string, monthEn: string, index: number, make: any) => {\n if (lockStatus) {\n return message.error('Planning already locked')\n }\n if (submitStatus.value) {\n return message.error('Data already submitted,can not change.')\n }\n Modal.confirm({\n title: 'Tips',\n content: 'Note that take propose will overwrite existing data.',\n okText: 'Confirm',\n async onOk() {\n const params = {\n planningId: make.planningId,\n month,\n bu: topData.value.bu,\n buId: topData.value.buId,\n kufriVersion: make.currentKufriVersion\n }\n const response = await refreshBudgetBu(params)\n const budgetObject = response.data\n make.detailVOList.forEach((row: any) => {\n if (budgetObject) {\n if (row[monthEn].buPoint != budgetObject[`${row.mappingName}`]) {\n row[monthEn].edited = true\n } \n row[monthEn].buPoint = budgetObject[`${row.mappingName}`] || null\n } else {\n if (row[monthEn].buPoint) {\n row[monthEn].edited = true\n } \n row[monthEn].buPoint = null\n }\n if (row.children) {\n row.children.forEach((child: any) => {\n if (budgetObject) {\n if (child[monthEn].buPoint != budgetObject[`${child.mappingName}`]) {\n child[monthEn].edited = true\n } \n child[monthEn].buPoint = budgetObject[`${child.mappingName}`] || null \n } else {\n if (child[monthEn].buPoint) {\n child[monthEn].edited = true\n }\n child[monthEn].buPoint = null\n }\n })\n }\n })\n },\n cancelText: 'Cancel',\n });\n \n }\n\n const handleExpand = (expanded: any, record: any, index: number) => {\n if (expanded) {\n expandedRowKeysList.value[index]?.push(record.id)\n } else {\n const removeIndex = expandedRowKeysList.value[index]?.indexOf(record.id)\n if (index !== -1) {\n expandedRowKeysList.value[index]?.splice(removeIndex, 1)\n }\n }\n expandedRowKeysList.value[index]\n }\n\n watch(expandAllStatus, (value: boolean) => {\n store.commit(\n 'updateSpinning',\n true\n )\n if (value) {\n tableData.value.forEach((make: any, index: number) => {\n expandedRowKeysList.value[index] = make.detailVOList.map((item: any) => {\n return item.id\n })\n })\n } else {\n expandedRowKeysList.value.forEach((expandedRowKeys: any) => {\n expandedRowKeys = expandedRowKeys.splice(0, expandedRowKeys.length)\n })\n }\n store.commit(\n 'updateSpinning',\n false\n )\n })\n\n const handleExpandAll = () => {\n if (!expandAllStatus.value) {\n tableData.value.forEach((make: any, index: number) => {\n expandedRowKeysList.value[index] = make.detailVOList.map((item: any) => {\n return item.id\n })\n expandAllStatus.value = true\n })\n } else {\n expandedRowKeysList.value.forEach((expandedRowKeys: any) => {\n expandedRowKeys = expandedRowKeys.splice(0, expandedRowKeys.length)\n })\n expandAllStatus.value = false\n }\n }\n\n const handleSaveOrSubmit = async (type: string) => {\n if (lockStatus) {\n return message.error('Data locked.')\n }\n if (submitStatus.value) {\n return message.error('Data already submitted.')\n }\n const postData: any = {}\n const infoSaveDTOList: any[] = []\n tableData.value.forEach(make => {\n const makeItem: any = {}\n const resultList: any = methodFormatSaveData(make, type)\n makeItem.submitStatus = false\n if (type === 'submit') {\n resultList.forEach((item: any) => {\n item.buSubmitPoint = item.buSavedPoint\n })\n }\n makeItem.controllingSaveStatus = make.controllingSaveStatus\n makeItem.infoList = resultList\n makeItem.kufriVersion = make.currentKufriVersion || '2021K08'\n makeItem.make = make.make\n makeItem.planningId = make.planningId\n makeItem.submitStatus = type === 'submit' ? true : make.submitStatus\n makeItem.releaseStatus = make.releaseStatus\n makeItem.buSaveStatus = true\n if (make.detailVOList?.length > 0) {\n infoSaveDTOList.push(makeItem)\n } \n })\n postData.bu = topData.value.bu\n postData.buId = topData.value.buId\n postData.infoSaveDTOList = infoSaveDTOList\n await saveBottomUp(postData)\n message.success('Operation Succeeded')\n if (type === 'save' || type === 'submit') {\n expandAllStatus.value = false\n methodGetList()\n }\n }\n // onMounted(() => {\n // tableData.forEach(make => {\n // make.totalExpand = false\n // expandedRowKeysList.push([])\n // methodFormatList(make.detailVOList)\n // })\n // })\n\n const spreadVisible = ref(false)\n const spreadData = ref([])\n const actuals = ref([])\n const currentMake = ref([])\n const currentMakeName = ref('')\n\n const handleBatchInput = (make: any, makeIndex: number) => {\n spreadVisible.value = true\n spreadData.value = make.detailVOList || []\n currentMake.value = make.detailVOList\n currentMakeName.value = make.make\n actuals.value = months.value.map(month => {\n return month.actualStatus[makeIndex]\n })\n }\n\n const handleSpreadJsUpdate = (spreadJsData: any) => {\n formatDataForTable(currentMake.value, spreadJsData, 'buPoint')\n }\n\n const handleCloseSpreadJsDialog = () => {\n spreadVisible.value = false\n }\n\n return {\n spreadVisible,\n spreadData,\n handleBatchInput,\n actuals,\n currentMakeName,\n handleSpreadJsUpdate,\n handleCloseSpreadJsDialog,\n \n scenarioName,\n topData,\n years,\n currentYear,\n prePoint,\n expandAllStatus,\n tableColumns,\n tableData,\n seasons,\n months,\n seasonTotal,\n expandedRowKeysList,\n number2Fixed,\n handleUpdate,\n handleKufriChange,\n handleTakeGuideline,\n handleChooseYear,\n handleClickCell,\n handleFocus,\n handleBlur,\n handleEnter,\n handleForecast,\n handleExpand,\n handleExpandAll,\n handleSaveOrSubmit\n }\n }\n})\n","import { render } from \"./BottomUp.vue?vue&type=template&id=59e33fc8&scoped=true&ts=true\"\nimport script from \"./BottomUp.vue?vue&type=script&lang=ts\"\nexport * from \"./BottomUp.vue?vue&type=script&lang=ts\"\n\nimport \"./BottomUp.vue?vue&type=style&index=0&id=59e33fc8&lang=scss&scoped=true\"\n\nimport exportComponent from \"/app/node_modules/@vue/cli-service/node_modules/vue-loader-v16/dist/exportHelper.js\"\nconst __exports__ = /*#__PURE__*/exportComponent(script, [['render',render],['__scopeId',\"data-v-59e33fc8\"]])\n\nexport default __exports__"],"sourceRoot":""}