| 1 |
- {"remainingRequest":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js!E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js??ref--0-2!E:\\item\\newItem\\admin\\src\\pages\\product\\productAttr\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"E:\\item\\newItem\\admin\\src\\pages\\product\\productAttr\\index.vue","mtime":1677828270228},{"path":"E:\\item\\newItem\\admin\\babel.config.js","mtime":1677828270071},{"path":"E:\\item\\newItem\\admin\\.babelrc","mtime":1677828270070},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\babel-loader\\lib\\index.js","mtime":315532800000},{"path":"E:\\item\\newItem\\admin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\vue-loader\\lib\\index.js","mtime":499162500000},{"path":"E:\\item\\newItem\\admin\\node_modules\\iview-loader\\index.js","mtime":1570440814000}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:aW1wb3J0IF90b0NvbnN1bWFibGVBcnJheSBmcm9tICJFOi9pdGVtL25ld0l0ZW0vYWRtaW4vbm9kZV9tb2R1bGVzL0B2dWUvYmFiZWwtcHJlc2V0LWFwcC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vdG9Db25zdW1hYmxlQXJyYXkuanMiOwppbXBvcnQgX29iamVjdFNwcmVhZCBmcm9tICJFOi9pdGVtL25ld0l0ZW0vYWRtaW4vbm9kZV9tb2R1bGVzL0B2dWUvYmFiZWwtcHJlc2V0LWFwcC9ub2RlX21vZHVsZXMvQGJhYmVsL3J1bnRpbWUvaGVscGVycy9lc20vb2JqZWN0U3ByZWFkMi5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLm9iamVjdC50by1zdHJpbmcuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5zZXQuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy9lcy5zdHJpbmcuaXRlcmF0b3IuanMiOwppbXBvcnQgImNvcmUtanMvbW9kdWxlcy93ZWIuZG9tLWNvbGxlY3Rpb25zLml0ZXJhdG9yLmpzIjsKaW1wb3J0ICJjb3JlLWpzL21vZHVsZXMvd2ViLmRvbS1jb2xsZWN0aW9ucy5mb3ItZWFjaC5qcyI7CmltcG9ydCAiY29yZS1qcy9tb2R1bGVzL2VzLmFycmF5LmpvaW4uanMiOwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwovLwppbXBvcnQgeyBtYXBTdGF0ZSB9IGZyb20gJ3Z1ZXgnOwppbXBvcnQgYWRkQXR0ciBmcm9tICcuL2FkZEF0dHInOwppbXBvcnQgeyBydWxlTGlzdEFwaSB9IGZyb20gJ0AvYXBpL3Byb2R1Y3QnOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogJ3Byb2R1Y3RBdHRyJywKICBjb21wb25lbnRzOiB7CiAgICBhZGRBdHRyOiBhZGRBdHRyCiAgfSwKICBkYXRhOiBmdW5jdGlvbiBkYXRhKCkgewogICAgcmV0dXJuIHsKICAgICAgbG9hZGluZzogZmFsc2UsCiAgICAgIGFydEZyb206IHsKICAgICAgICBwYWdlOiAxLAogICAgICAgIGxpbWl0OiAxNSwKICAgICAgICBydWxlX25hbWU6ICcnCiAgICAgIH0sCiAgICAgIGNvbHVtbnM0OiBbewogICAgICAgIHR5cGU6ICdzZWxlY3Rpb24nLAogICAgICAgIHdpZHRoOiA2MAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICdJRCcsCiAgICAgICAga2V5OiAnaWQnLAogICAgICAgIHdpZHRoOiA4MAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfop4TmoLzlkI3np7AnLAogICAgICAgIGtleTogJ3J1bGVfbmFtZScsCiAgICAgICAgbWluV2lkdGg6IDE1MAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfllYblk4Hop4TmoLwnLAogICAgICAgIGtleTogJ2F0dHJfbmFtZScsCiAgICAgICAgbWluV2lkdGg6IDI1MAogICAgICB9LCB7CiAgICAgICAgdGl0bGU6ICfllYblk4HlsZ7mgKcnLAogICAgICAgIHNsb3Q6ICdhdHRyX3ZhbHVlJywKICAgICAgICBtaW5XaWR0aDogMzAwCiAgICAgIH0sIHsKICAgICAgICB0aXRsZTogJ+aTjeS9nCcsCiAgICAgICAgc2xvdDogJ2FjdGlvbicsCiAgICAgICAgZml4ZWQ6ICdyaWdodCcsCiAgICAgICAgbWluV2lkdGg6IDEyMAogICAgICB9XSwKICAgICAgdGFibGVMaXN0OiBbXSwKICAgICAgdG90YWw6IDAsCiAgICAgIHNlbGVjdGVkSWRzOiBuZXcgU2V0KCksCiAgICAgIC8v6YCJ5Lit5ZCI5bm26aG555qEaWQKICAgICAgaWRzOiAnJwogICAgfTsKICB9LAogIGNvbXB1dGVkOiBfb2JqZWN0U3ByZWFkKHt9LCBtYXBTdGF0ZSgnYWRtaW4vb3JkZXInLCBbJ29yZGVyQ2hhcnRUeXBlJ10pKSwKICBjcmVhdGVkOiBmdW5jdGlvbiBjcmVhdGVkKCkgewogICAgdGhpcy5nZXREYXRhTGlzdCgpOwogIH0sCiAgbWV0aG9kczogewogICAgLy/lhajpgInlkozlj5bmtojlhajpgInml7bop6blj5EKICAgIGhhbmRsZVNlbGVjdEFsbDogZnVuY3Rpb24gaGFuZGxlU2VsZWN0QWxsKHNlbGVjdGlvbikgewogICAgICB2YXIgX3RoaXMgPSB0aGlzOwoKICAgICAgaWYgKHNlbGVjdGlvbi5sZW5ndGggPT09IDApIHsKICAgICAgICAvL+iOt+WPlnRhYmxl55qE5pWw5o2u77ybCiAgICAgICAgdmFyIGRhdGEgPSB0aGlzLiRyZWZzLnRhYmxlLmRhdGE7CiAgICAgICAgZGF0YS5mb3JFYWNoKGZ1bmN0aW9uIChpdGVtKSB7CiAgICAgICAgICBpZiAoX3RoaXMuc2VsZWN0ZWRJZHMuaGFzKGl0ZW0uaWQpKSB7CiAgICAgICAgICAgIF90aGlzLnNlbGVjdGVkSWRzLmRlbGV0ZShpdGVtLmlkKTsKICAgICAgICAgIH0KICAgICAgICB9KTsKICAgICAgfSBlbHNlIHsKICAgICAgICBzZWxlY3Rpb24uZm9yRWFjaChmdW5jdGlvbiAoaXRlbSkgewogICAgICAgICAgX3RoaXMuc2VsZWN0ZWRJZHMuYWRkKGl0ZW0uaWQpOwogICAgICAgIH0pOwogICAgICB9CgogICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7CiAgICAgICAgLy/noa7kv51kb23liqDovb3lrozmr5UKICAgICAgICBfdGhpcy5zZXRDaGVja2VkKCk7CiAgICAgIH0pOwogICAgfSwKICAgIC8vICDpgInkuK3mn5DkuIDooYwKICAgIGhhbmRsZVNlbGVjdFJvdzogZnVuY3Rpb24gaGFuZGxlU2VsZWN0Um93KHNlbGVjdGlvbiwgcm93KSB7CiAgICAgIHZhciBfdGhpczIgPSB0aGlzOwoKICAgICAgdGhpcy5zZWxlY3RlZElkcy5hZGQocm93LmlkKTsKICAgICAgdGhpcy4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgIC8v56Gu5L+dZG9t5Yqg6L295a6M5q+VCiAgICAgICAgX3RoaXMyLnNldENoZWNrZWQoKTsKICAgICAgfSk7CiAgICB9LAogICAgLy8gIOWPlua2iOafkOS4gOihjAogICAgaGFuZGxlQ2FuY2VsUm93OiBmdW5jdGlvbiBoYW5kbGVDYW5jZWxSb3coc2VsZWN0aW9uLCByb3cpIHsKICAgICAgdmFyIF90aGlzMyA9IHRoaXM7CgogICAgICB0aGlzLnNlbGVjdGVkSWRzLmRlbGV0ZShyb3cuaWQpOwogICAgICB0aGlzLiRuZXh0VGljayhmdW5jdGlvbiAoKSB7CiAgICAgICAgLy/noa7kv51kb23liqDovb3lrozmr5UKICAgICAgICBfdGhpczMuc2V0Q2hlY2tlZCgpOwogICAgICB9KTsKICAgIH0sCiAgICBzZXRDaGVja2VkOiBmdW5jdGlvbiBzZXRDaGVja2VkKCkgewogICAgICAvL+Wwhm5ldyBTZXQoKei9rOWMluS4uuaVsOe7hAogICAgICB0aGlzLmlkcyA9IF90b0NvbnN1bWFibGVBcnJheSh0aGlzLnNlbGVjdGVkSWRzKS5qb2luKCcsJyk7IC8vIOaJvuWIsOe7keWumueahHRhYmxl55qEcmVm5a+55bqU55qEZG9t77yM5om+5YiwdGFibGXnmoRvYmpEYXRh5a+56LGh77yMb2JqRGF0YeS/neWtmOeahOaYr+W9k+WJjemhteeahOaVsOaNrgoKICAgICAgdmFyIG9iakRhdGEgPSB0aGlzLiRyZWZzLnRhYmxlLm9iakRhdGE7CgogICAgICBmb3IgKHZhciBpbmRleCBpbiBvYmpEYXRhKSB7CiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRJZHMuaGFzKG9iakRhdGFbaW5kZXhdLmlkKSkgewogICAgICAgICAgb2JqRGF0YVtpbmRleF0uX2lzQ2hlY2tlZCA9IHRydWU7CiAgICAgICAgfQogICAgICB9CiAgICB9LAogICAgLy8g5Yig6ZmkCiAgICBkZWw6IGZ1bmN0aW9uIGRlbChyb3csIHRpdCkgewogICAgICB2YXIgX3RoaXM0ID0gdGhpczsKCiAgICAgIHZhciBkYXRhID0ge307CgogICAgICBpZiAodGl0ID09PSAn5om56YeP5Yig6Zmk6KeE5qC8JykgewogICAgICAgIGlmICh0aGlzLnNlbGVjdGVkSWRzLnNpemUgPT09IDApIHJldHVybiB0aGlzLiRNZXNzYWdlLndhcm5pbmcoJ+ivt+mAieaLqeimgeWIoOmZpOeahOinhOagvO+8gScpOwogICAgICAgIGRhdGEgPSB7CiAgICAgICAgICBpZHM6IHRoaXMuaWRzCiAgICAgICAgfTsKICAgICAgfSBlbHNlIHsKICAgICAgICBkYXRhID0gewogICAgICAgICAgaWRzOiByb3cuaWQKICAgICAgICB9OwogICAgICB9CgogICAgICB2YXIgZGVsZnJvbURhdGEgPSB7CiAgICAgICAgdGl0bGU6IHRpdCwKICAgICAgICBudW06IDAsCiAgICAgICAgdXJsOiAicHJvZHVjdC9wcm9kdWN0L3J1bGUvZGVsZXRlIiwKICAgICAgICBtZXRob2Q6ICdERUxFVEUnLAogICAgICAgIGlkczogZGF0YQogICAgICB9OwogICAgICB0aGlzLiRtb2RhbFN1cmUoZGVsZnJvbURhdGEpLnRoZW4oZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNC4kTWVzc2FnZS5zdWNjZXNzKHJlcy5tc2cpOwoKICAgICAgICBfdGhpczQuZ2V0RGF0YUxpc3QoKTsKICAgICAgfSkuY2F0Y2goZnVuY3Rpb24gKHJlcykgewogICAgICAgIF90aGlzNC4kTWVzc2FnZS5lcnJvcihyZXMubXNnKTsKICAgICAgfSk7CiAgICB9LAogICAgYWRkQXR0cjogZnVuY3Rpb24gYWRkQXR0cigpIHsKICAgICAgdGhpcy4kcmVmcy5hZGRhdHRyLm1vZGFsID0gdHJ1ZTsKICAgIH0sCiAgICAvLyDnvJbovpEKICAgIGVkaXQ6IGZ1bmN0aW9uIGVkaXQocm93KSB7CiAgICAgIHRoaXMuJHJlZnMuYWRkYXR0ci5tb2RhbCA9IHRydWU7CiAgICAgIHRoaXMuJHJlZnMuYWRkYXR0ci5nZXRJb2ZvKHJvdyk7CiAgICB9LAogICAgLy8g5YiX6KGo77ybCiAgICBnZXREYXRhTGlzdDogZnVuY3Rpb24gZ2V0RGF0YUxpc3QoKSB7CiAgICAgIHZhciBfdGhpczUgPSB0aGlzOwoKICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTsKICAgICAgcnVsZUxpc3RBcGkodGhpcy5hcnRGcm9tKS50aGVuKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICB2YXIgZGF0YSA9IHJlcy5kYXRhOwogICAgICAgIF90aGlzNS50YWJsZUxpc3QgPSBkYXRhLmxpc3Q7CgogICAgICAgIF90aGlzNS4kbmV4dFRpY2soZnVuY3Rpb24gKCkgewogICAgICAgICAgLy/noa7kv51kb23liqDovb3lrozmr5UKICAgICAgICAgIF90aGlzNS5zZXRDaGVja2VkKCk7CiAgICAgICAgfSk7CgogICAgICAgIF90aGlzNS50b3RhbCA9IHJlcy5kYXRhLmNvdW50OwogICAgICAgIF90aGlzNS5sb2FkaW5nID0gZmFsc2U7CiAgICAgIH0pLmNhdGNoKGZ1bmN0aW9uIChyZXMpIHsKICAgICAgICBfdGhpczUubG9hZGluZyA9IGZhbHNlOwoKICAgICAgICBfdGhpczUuJE1lc3NhZ2UuZXJyb3IocmVzLm1zZyk7CiAgICAgIH0pOwogICAgfSwKICAgIHBhZ2VDaGFuZ2U6IGZ1bmN0aW9uIHBhZ2VDaGFuZ2Uoc3RhdHVzKSB7CiAgICAgIHRoaXMuYXJ0RnJvbS5wYWdlID0gc3RhdHVzOwogICAgICB0aGlzLmdldERhdGFMaXN0KCk7CiAgICB9LAogICAgLy8g6KGo5qC85pCc57SiCiAgICB1c2VyU2VhcmNoczogZnVuY3Rpb24gdXNlclNlYXJjaHMoKSB7CiAgICAgIHRoaXMuYXJ0RnJvbS5wYWdlID0gMTsKICAgICAgdGhpcy5nZXREYXRhTGlzdCgpOwogICAgfQogIH0KfTs="},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuEA;AACA;AACA;AACA;EACAA,mBADA;EAEAC;IAAAC;EAAA,CAFA;EAGAC,IAHA,kBAGA;IACA;MACAC,cADA;MAEAC;QACAC,OADA;QAEAC,SAFA;QAGAC;MAHA,CAFA;MAOAC,WACA;QACAC,iBADA;QAEAC;MAFA,CADA,EAKA;QACAC,WADA;QAEAC,SAFA;QAGAF;MAHA,CALA,EAUA;QACAC,aADA;QAEAC,gBAFA;QAGAC;MAHA,CAVA,EAeA;QACAF,aADA;QAEAC,gBAFA;QAGAC;MAHA,CAfA,EAoBA;QACAF,aADA;QAEAG,kBAFA;QAGAD;MAHA,CApBA,EAyBA;QACAF,WADA;QAEAG,cAFA;QAGAC,cAHA;QAIAF;MAJA,CAzBA,CAPA;MAuCAG,aAvCA;MAwCAC,QAxCA;MAyCAC,sBAzCA;MAyCA;MACAC;IA1CA;EA4CA,CAhDA;EAiDAC,4BACAC,2CADA,CAjDA;EAoDAC,OApDA,qBAoDA;IACA;EACA,CAtDA;EAuDAC;IACA;IACAC,eAFA,2BAEAC,SAFA,EAEA;MAAA;;MACA;QACA;QACA;QACAvB;UACA;YACA;UACA;QACA,CAJA;MAKA,CARA,MAQA;QACAuB;UACA;QACA,CAFA;MAGA;;MACA;QACA;QACA;MACA,CAHA;IAIA,CApBA;IAqBA;IACAC,eAtBA,2BAsBAD,SAtBA,EAsBAE,GAtBA,EAsBA;MAAA;;MACA;MACA;QACA;QACA;MACA,CAHA;IAIA,CA5BA;IA6BA;IACAC,eA9BA,2BA8BAH,SA9BA,EA8BAE,GA9BA,EA8BA;MAAA;;MACA;MACA;QACA;QACA;MACA,CAHA;IAIA,CApCA;IAqCAE,UArCA,wBAqCA;MACA;MACA,0DAFA,CAGA;;MACA;;MACA;QACA;UACAC;QACA;MACA;IACA,CA/CA;IAgDA;IACAC,GAjDA,eAiDAJ,GAjDA,EAiDAK,GAjDA,EAiDA;MAAA;;MACA;;MACA;QACA;QACA9B;UACAiB;QADA;MAGA,CALA,MAKA;QACAjB;UACAiB;QADA;MAGA;;MACA;QACAR,UADA;QAEAsB,MAFA;QAGAC,kCAHA;QAIAC,gBAJA;QAKAhB;MALA;MAOA,6BACAiB,IADA,CACA;QACA;;QACA;MACA,CAJA,EAKAC,KALA,CAKA;QACA;MACA,CAPA;IAQA,CA5EA;IA6EApC,OA7EA,qBA6EA;MACA;IACA,CA/EA;IAgFA;IACAqC,IAjFA,gBAiFAX,GAjFA,EAiFA;MACA;MACA;IACA,CApFA;IAqFA;IACAY,WAtFA,yBAsFA;MAAA;;MACA;MACAC,0BACAJ,IADA,CACA;QACA;QACA;;QACA;UACA;UACA;QACA,CAHA;;QAIA;QACA;MACA,CAVA,EAWAC,KAXA,CAWA;QACA;;QACA;MACA,CAdA;IAeA,CAvGA;IAwGAI,UAxGA,sBAwGAC,MAxGA,EAwGA;MACA;MACA;IACA,CA3GA;IA4GA;IACAC,WA7GA,yBA6GA;MACA;MACA;IACA;EAhHA;AAvDA","names":["name","components","addAttr","data","loading","artFrom","page","limit","rule_name","columns4","type","width","title","key","minWidth","slot","fixed","tableList","total","selectedIds","ids","computed","mapState","created","methods","handleSelectAll","selection","handleSelectRow","row","handleCancelRow","setChecked","objData","del","tit","num","url","method","then","catch","edit","getDataList","ruleListApi","pageChange","status","userSearchs"],"sourceRoot":"src/pages/product/productAttr","sources":["index.vue"],"sourcesContent":["<template>\r\n <div>\r\n <Card :bordered=\"false\" dis-hover class=\"ivu-mt\">\r\n <Form\r\n ref=\"artFrom\"\r\n :model=\"artFrom\"\r\n :label-width=\"80\"\r\n label-position=\"right\"\r\n class=\"tabform\"\r\n @submit.native.prevent\r\n >\r\n <Row :gutter=\"24\" type=\"flex\" justify=\"end\">\r\n <Col span=\"24\" class=\"ivu-text-left\">\r\n <FormItem label=\"规格搜索:\">\r\n <Input\r\n search\r\n enter-button\r\n v-model=\"artFrom.rule_name\"\r\n placeholder=\"请输入规格名称\"\r\n style=\"width: 30%\"\r\n @on-search=\"userSearchs\"\r\n ></Input>\r\n </FormItem>\r\n </Col>\r\n <Col span=\"24\">\r\n <Button v-auth=\"['product-rule-save']\" class=\"mr20\" type=\"primary\" icon=\"md-add\" @click=\"addAttr\"\r\n >添加商品规格</Button\r\n >\r\n <Button v-auth=\"['product-product-rule-delete']\" @click=\"del(null, '批量删除规格')\">批量删除</Button>\r\n </Col>\r\n </Row>\r\n </Form>\r\n <Table\r\n class=\"mt25\"\r\n ref=\"table\"\r\n :columns=\"columns4\"\r\n :data=\"tableList\"\r\n :loading=\"loading\"\r\n highlight-row\r\n @on-select=\"handleSelectRow\"\r\n @on-select-cancel=\"handleCancelRow\"\r\n @on-select-all=\"handleSelectAll\"\r\n @on-select-all-cancel=\"handleSelectAll\"\r\n no-data-text=\"暂无数据\"\r\n no-filtered-data-text=\"暂无筛选结果\"\r\n >\r\n <template slot-scope=\"{ row }\" slot=\"attr_value\">\r\n <span v-for=\"(item, index) in row.attr_value\" :key=\"index\" v-text=\"item\" style=\"display: block\"></span>\r\n </template>\r\n <template slot-scope=\"{ row }\" slot=\"action\">\r\n <a @click=\"edit(row)\">编辑</a>\r\n <Divider type=\"vertical\" />\r\n <a @click=\"del(row, '删除规格')\">删除</a>\r\n </template>\r\n </Table>\r\n <div class=\"acea-row row-right page\">\r\n <Page\r\n :total=\"total\"\r\n :current=\"artFrom.page\"\r\n show-elevator\r\n show-total\r\n @on-change=\"pageChange\"\r\n :page-size=\"artFrom.limit\"\r\n />\r\n </div>\r\n </Card>\r\n <add-attr ref=\"addattr\" @getList=\"userSearchs\"></add-attr>\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport { mapState } from 'vuex';\r\nimport addAttr from './addAttr';\r\nimport { ruleListApi } from '@/api/product';\r\nexport default {\r\n name: 'productAttr',\r\n components: { addAttr },\r\n data() {\r\n return {\r\n loading: false,\r\n artFrom: {\r\n page: 1,\r\n limit: 15,\r\n rule_name: '',\r\n },\r\n columns4: [\r\n {\r\n type: 'selection',\r\n width: 60,\r\n },\r\n {\r\n title: 'ID',\r\n key: 'id',\r\n width: 80,\r\n },\r\n {\r\n title: '规格名称',\r\n key: 'rule_name',\r\n minWidth: 150,\r\n },\r\n {\r\n title: '商品规格',\r\n key: 'attr_name',\r\n minWidth: 250,\r\n },\r\n {\r\n title: '商品属性',\r\n slot: 'attr_value',\r\n minWidth: 300,\r\n },\r\n {\r\n title: '操作',\r\n slot: 'action',\r\n fixed: 'right',\r\n minWidth: 120,\r\n },\r\n ],\r\n tableList: [],\r\n total: 0,\r\n selectedIds: new Set(), //选中合并项的id\r\n ids: '',\r\n };\r\n },\r\n computed: {\r\n ...mapState('admin/order', ['orderChartType']),\r\n },\r\n created() {\r\n this.getDataList();\r\n },\r\n methods: {\r\n //全选和取消全选时触发\r\n handleSelectAll(selection) {\r\n if (selection.length === 0) {\r\n //获取table的数据;\r\n let data = this.$refs.table.data;\r\n data.forEach((item) => {\r\n if (this.selectedIds.has(item.id)) {\r\n this.selectedIds.delete(item.id);\r\n }\r\n });\r\n } else {\r\n selection.forEach((item) => {\r\n this.selectedIds.add(item.id);\r\n });\r\n }\r\n this.$nextTick(() => {\r\n //确保dom加载完毕\r\n this.setChecked();\r\n });\r\n },\r\n // 选中某一行\r\n handleSelectRow(selection, row) {\r\n this.selectedIds.add(row.id);\r\n this.$nextTick(() => {\r\n //确保dom加载完毕\r\n this.setChecked();\r\n });\r\n },\r\n // 取消某一行\r\n handleCancelRow(selection, row) {\r\n this.selectedIds.delete(row.id);\r\n this.$nextTick(() => {\r\n //确保dom加载完毕\r\n this.setChecked();\r\n });\r\n },\r\n setChecked() {\r\n //将new Set()转化为数组\r\n this.ids = [...this.selectedIds].join(',');\r\n // 找到绑定的table的ref对应的dom,找到table的objData对象,objData保存的是当前页的数据\r\n let objData = this.$refs.table.objData;\r\n for (let index in objData) {\r\n if (this.selectedIds.has(objData[index].id)) {\r\n objData[index]._isChecked = true;\r\n }\r\n }\r\n },\r\n // 删除\r\n del(row, tit) {\r\n let data = {};\r\n if (tit === '批量删除规格') {\r\n if (this.selectedIds.size === 0) return this.$Message.warning('请选择要删除的规格!');\r\n data = {\r\n ids: this.ids,\r\n };\r\n } else {\r\n data = {\r\n ids: row.id,\r\n };\r\n }\r\n let delfromData = {\r\n title: tit,\r\n num: 0,\r\n url: `product/product/rule/delete`,\r\n method: 'DELETE',\r\n ids: data,\r\n };\r\n this.$modalSure(delfromData)\r\n .then((res) => {\r\n this.$Message.success(res.msg);\r\n this.getDataList();\r\n })\r\n .catch((res) => {\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n addAttr() {\r\n this.$refs.addattr.modal = true;\r\n },\r\n // 编辑\r\n edit(row) {\r\n this.$refs.addattr.modal = true;\r\n this.$refs.addattr.getIofo(row);\r\n },\r\n // 列表;\r\n getDataList() {\r\n this.loading = true;\r\n ruleListApi(this.artFrom)\r\n .then((res) => {\r\n let data = res.data;\r\n this.tableList = data.list;\r\n this.$nextTick(() => {\r\n //确保dom加载完毕\r\n this.setChecked();\r\n });\r\n this.total = res.data.count;\r\n this.loading = false;\r\n })\r\n .catch((res) => {\r\n this.loading = false;\r\n this.$Message.error(res.msg);\r\n });\r\n },\r\n pageChange(status) {\r\n this.artFrom.page = status;\r\n this.getDataList();\r\n },\r\n // 表格搜索\r\n userSearchs() {\r\n this.artFrom.page = 1;\r\n this.getDataList();\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style scoped></style>\r\n"]}]}
|