1 |
- {"remainingRequest":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\thread-loader\\dist\\cjs.js!D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\babel-loader\\lib\\index.js!D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\cache-loader\\dist\\cjs.js??ref--0-0!D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\wnmp\\www\\vue\\seaBlueAdmin\\src\\views\\goods\\manageG\\SingleGoodsImport.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\src\\views\\goods\\manageG\\SingleGoodsImport.vue","mtime":1678954023610},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\babel.config.js","mtime":1681371897685},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1681371913603},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\thread-loader\\dist\\cjs.js","mtime":1681371925422},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1681371912860},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1681371913603},{"path":"D:\\wnmp\\www\\vue\\seaBlueAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1681371925849}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KaW1wb3J0IHsgZ29vZHNRdWlja0ltcG9ydCB9IGZyb20gIkAvYXBpL2dvb2RzIjsKaW1wb3J0IHsgbWFwR2V0dGVycyB9IGZyb20gInZ1ZXgiOwpleHBvcnQgZGVmYXVsdCB7CiAgbmFtZTogIlNpbmdsZUdvb2RzSW1wb3J0IiwKCiAgZGF0YSgpIHsKICAgIHJldHVybiB7CiAgICAgIGZpbGVfbmFtZTogIiIsCiAgICAgIGZpbGU6ICIiLAogICAgICBmaWxlTGlzdDogW10sCiAgICAgIGdvb2RzX2RhdGE6IFtdLAogICAgICBzdGVwc19hY3RpdmU6IDAsCiAgICAgIHRhYmxlQ29sdW1uOiBbewogICAgICAgIGZpZWxkOiAiZ29vZHNOYW1lIiwKICAgICAgICB0aXRsZTogIuWVhuWTgeWQjeensCIKICAgICAgfSwgewogICAgICAgIGZpZWxkOiAiZGVzY3JpYmUiLAogICAgICAgIHRpdGxlOiAi5ZWG5ZOB5Y2W54K5IgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJjYXRlZ29yeU5hbWUiLAogICAgICAgIHRpdGxlOiAi5LiA57qn5YiG57G7IgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJjYXRlZ29yeVR3byIsCiAgICAgICAgdGl0bGU6ICLkuoznuqfliIbnsbsiCiAgICAgIH0sIHsKICAgICAgICBmaWVsZDogImNhdGVnb3J5VGhyZWUiLAogICAgICAgIHRpdGxlOiAi5LiJ57qn5YiG57G7IgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJtZXJjaGFudE5hbWUiLAogICAgICAgIHRpdGxlOiAi5ZWG5oi35ZCN56ewIgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJza3VOYW1lIiwKICAgICAgICB0aXRsZTogIuWfuuacrOWNleS9jSIKICAgICAgfSwgewogICAgICAgIGZpZWxkOiAic2FsZVByaWNlIiwKICAgICAgICB0aXRsZTogIuWfuuacrOWNleS9jemUgOWUruS7tyIKICAgICAgfSwgewogICAgICAgIGZpZWxkOiAiYmFyQ29kZSIsCiAgICAgICAgdGl0bGU6ICLljZXkvY3mnaHnoIEiCiAgICAgIH0sIHsKICAgICAgICBmaWVsZDogImNvbnZlcnNpb24iLAogICAgICAgIHRpdGxlOiAi5Y2V5L2N5o2i566XIgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJza3VOYW1lVHdvIiwKICAgICAgICB0aXRsZTogIui+heWNleS9jSIKICAgICAgfSwgewogICAgICAgIGZpZWxkOiAic2FsZVByaWNlVHdvIiwKICAgICAgICB0aXRsZTogIui+heWNleS9jemUgOWUruS7tyIKICAgICAgfSwgewogICAgICAgIGZpZWxkOiAibWVtYmVyUHJpY2UiLAogICAgICAgIHRpdGxlOiAi5Lya5ZGY5Lu3IgogICAgICB9LCB7CiAgICAgICAgZmllbGQ6ICJiYXJDb2RlVHdvIiwKICAgICAgICB0aXRsZTogIui+heWNleS9jeadoeeggSIKICAgICAgfV0sCiAgICAgIEltcG9ydF90aGVfaW5mb3JtYXRpb246ICIiCiAgICB9OwogIH0sCgogIGNvbXB1dGVkOiB7IC4uLm1hcEdldHRlcnMoewogICAgICBlbmFibGVMb2NhdGlvbk1hbmFnZW1lbnQ6ICJNVXNlci9lbmFibGVMb2NhdGlvbk1hbmFnZW1lbnQiCiAgICB9KQogIH0sCiAgbWV0aG9kczogewogICAgbG9va0RldGFpbCgpIHt9LAoKICAgIC8vIOWPlua2iC/lrozmiJAg5oyJ6ZKuCiAgICBjbG9zZVBhZ2UoKSB7CiAgICAgIGlmICh0aGlzLnN0ZXBzX2FjdGl2ZSA9PT0gMSkgewogICAgICAgIHRoaXMuc3RlcHNfYWN0aXZlID0gMDsKICAgICAgfSBlbHNlIHsKICAgICAgICB0aGlzLiRjbG9zZUN1cnJlbnRHb0VkaXQoIi9nb29kcy9zYWxlL1B1Ymxpc2hHb29kcyIpOwogICAgICB9CiAgICB9LAoKICAgIC8vIOS4i+S4gOatpQogICAgcHJldmlld0RhdGEoKSB7CiAgICAgIGlmICghdGhpcy5maWxlKSB7CiAgICAgICAgdGhpcy4kbWVzc2FnZS53YXJuaW5nKCLor7fpgInmi6nopoHlr7zlhaXnmoTmlofku7YiKTsKICAgICAgICByZXR1cm47CiAgICAgIH0gLy8gdGhpcy4kcmVmcy54VGFibGUuaW1wb3J0RGF0YSgpOwoKCiAgICAgIGNvbnN0IGZpbGVSZWFkZXIgPSBuZXcgRmlsZVJlYWRlcigpOwoKICAgICAgZmlsZVJlYWRlci5vbmxvYWQgPSBldiA9PiB7CiAgICAgICAgY29uc3QgZGF0YSA9IGV2LnRhcmdldC5yZXN1bHQ7CiAgICAgICAgY29uc3Qgd29ya2Jvb2sgPSB0aGlzLiRYTFNYLnJlYWQoZGF0YSwgewogICAgICAgICAgdHlwZTogImJpbmFyeSIKICAgICAgICB9KTsKICAgICAgICBjb25zdCBjc3ZEYXRhID0gdGhpcy4kWExTWC51dGlscy5zaGVldF90b19jc3Yod29ya2Jvb2suU2hlZXRzLlNoZWV0MSk7CiAgICAgICAgY29uc3QgdGFibGVEYXRhID0gW107CiAgICAgICAgY29uc29sZS5sb2coImNzdkRhdGEiLCBjc3ZEYXRhLnNwbGl0KCJcbiIpKTsgLy8g6Kej5p6Q5pWw5o2uCgogICAgICAgIGNzdkRhdGEuc3BsaXQoIlxuIikuZm9yRWFjaCgodlJvdywgcmluZGV4KSA9PiB7CiAgICAgICAgICBpZiAodlJvdyAmJiByaW5kZXggPiAwKSB7CiAgICAgICAgICAgIGNvbnN0IHZDb2xzID0gdlJvdy5zcGxpdCgiLCIpOwogICAgICAgICAgICBjb25zb2xlLmxvZygidkNvbHMiLCB2Q29scyk7CiAgICAgICAgICAgIGNvbnN0IGl0ZW0gPSB7fTsKICAgICAgICAgICAgdkNvbHMuZm9yRWFjaCgodmFsLCBjSW5kZXgpID0+IHsKICAgICAgICAgICAgICBjb25zdCBjb2x1bW4gPSB0aGlzLnRhYmxlQ29sdW1uW2NJbmRleF07CgogICAgICAgICAgICAgIGlmIChjb2x1bW4gJiYgY29sdW1uLmZpZWxkKSB7CiAgICAgICAgICAgICAgICBpdGVtW2NvbHVtbi5maWVsZF0gPSB2YWw7CiAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgdGFibGVEYXRhLnB1c2goaXRlbSk7CiAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgY29uc29sZS5sb2coInRhYmxlRGF0YTo6IiwgdGFibGVEYXRhKTsKICAgICAgICB0aGlzLmdvb2RzX2RhdGEgPSB0YWJsZURhdGE7CiAgICAgIH07CgogICAgICBmaWxlUmVhZGVyLnJlYWRBc0JpbmFyeVN0cmluZyh0aGlzLmZpbGUpOwogICAgICB0aGlzLnN0ZXBzX2FjdGl2ZSA9IDE7CiAgICB9LAoKICAgIC8v56Gu5a6a5a+85YWlCiAgICBhc3luYyBleHBvcnRzRGF0YSgpIHsKICAgICAgdGhpcy5zdGVwc19hY3RpdmUgPSAyOwogICAgICBjb25zdCB7CiAgICAgICAgZGF0YQogICAgICB9ID0gYXdhaXQgZ29vZHNRdWlja0ltcG9ydCh0aGlzLmdvb2RzX2RhdGEpOwogICAgICB0aGlzLkltcG9ydF90aGVfaW5mb3JtYXRpb24gPSBkYXRhOwogICAgfSwKCiAgICAvL+mHjeaWsOS4iuS8oAogICAgYWdhaW5FeHBvcnQoKSB7CiAgICAgIHRoaXMuc3RlcHNfYWN0aXZlID0gMDsKICAgIH0sCgogICAgLy/opobnm5bpu5jorqTnmoTkuIrkvKDooYzkuLrvvIzlj6/ku6Xoh6rlrprkuYnkuIrkvKDnmoTlrp7njrAKICAgIHN1Ym1pdFVwbG9hZChyZXF1ZXN0KSB7CiAgICAgIGNvbnNvbGUubG9nKCJzdWJtaXRVcGxvYWQiLCByZXF1ZXN0KTsgLy8gdGhpcy4kcmVmcy51cGxvYWQuc3VibWl0KCk7CiAgICB9LAoKICAgIC8v5LiK5Lyg5paH5Lu25LmL5YmN55qE6ZKp5a2Q77yM5Y+C5pWw5Li65LiK5Lyg55qE5paH5Lu277yM6Iul6L+U5ZueIGZhbHNlIOaIluiAhei/lOWbniBQcm9taXNlIOS4lOiiqyByZWplY3TvvIzliJnlgZzmraLkuIrkvKDjgIIKICAgIGJlZm9yZVVwbG9hZChmaWxlKSB7CiAgICAgIGNvbnNvbGUubG9nKCJiZWZvcmVVcGxvYWQiLCBmaWxlKTsKICAgIH0sCgogICAgLy/mlofku7bliJfooajnp7vpmaTmlofku7bml7bnmoTpkqnlrZAKICAgIG9uUmVtb3ZlKGZpbGUsIGZpbGVMaXN0KSB7CiAgICAgIGNvbnNvbGUubG9nKCJvblJlbW92ZSIsIGZpbGUsIGZpbGVMaXN0KTsKICAgIH0sCgogICAgb25DaGFuZ2UoZmlsZSkgewogICAgICBjb25zb2xlLmxvZygib25DaGFuZ2UiLCBmaWxlKTsKICAgICAgdGhpcy5maWxlX25hbWUgPSBmaWxlLm5hbWU7CiAgICAgIHRoaXMuZmlsZSA9IGZpbGUucmF3OwogICAgfQoKICB9Cn07"},{"version":3,"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+FA;AACA;AACA;EACAA,yBADA;;EAEAC;IACA;MACAC,aADA;MAEAC,QAFA;MAGAC,YAHA;MAIAC,cAJA;MAKAC,eALA;MAMAC,cACA;QAAAC;QAAAC;MAAA,CADA,EAEA;QAAAD;QAAAC;MAAA,CAFA,EAGA;QAAAD;QAAAC;MAAA,CAHA,EAIA;QAAAD;QAAAC;MAAA,CAJA,EAKA;QAAAD;QAAAC;MAAA,CALA,EAMA;QAAAD;QAAAC;MAAA,CANA,EAOA;QAAAD;QAAAC;MAAA,CAPA,EAQA;QAAAD;QAAAC;MAAA,CARA,EASA;QAAAD;QAAAC;MAAA,CATA,EAUA;QAAAD;QAAAC;MAAA,CAVA,EAWA;QAAAD;QAAAC;MAAA,CAXA,EAYA;QAAAD;QAAAC;MAAA,CAZA,EAaA;QAAAD;QAAAC;MAAA,CAbA,EAcA;QAAAD;QAAAC;MAAA,CAdA,CANA;MAsBAC;IAtBA;EAwBA,CA3BA;;EA4BAC,YACA;MACAC;IADA;EADA,CA5BA;EAiCAC;IACAC,eADA;;IAEA;IACAC;MACA;QACA;MACA,CAFA,MAEA;QACA;MACA;IACA,CATA;;IAUA;IACAC;MACA;QACA;QACA;MACA,CAJA,CAKA;;;MACA;;MACAC;QACA;QACA;UAAAC;QAAA;QACA;QACA;QACAC,4CALA,CAMA;;QACAC;UACA;YACA;YACAD;YACA;YACAE;cACA;;cACA;gBACAC;cACA;YACA,CALA;YAMAC;UACA;QACA,CAbA;QAcAJ;QACA;MACA,CAvBA;;MAwBAF;MACA;IACA,CA5CA;;IA6CA;IACA;MACA;MACA;QAAAhB;MAAA;MACA;IACA,CAlDA;;IAmDA;IACAuB;MACA;IACA,CAtDA;;IAuDA;IACAC;MACAN,qCADA,CAEA;IACA,CA3DA;;IA4DA;IACAO;MACAP;IACA,CA/DA;;IAgEA;IACAQ;MACAR;IACA,CAnEA;;IAoEAS;MACAT;MACA;MACA;IACA;;EAxEA;AAjCA","names":["name","data","file_name","file","fileList","goods_data","steps_active","tableColumn","field","title","Import_the_information","computed","enableLocationManagement","methods","lookDetail","closePage","previewData","fileReader","type","console","csvData","vCols","item","tableData","againExport","submitUpload","beforeUpload","onRemove","onChange"],"sourceRoot":"src/views/goods/manageG","sources":["SingleGoodsImport.vue"],"sourcesContent":["<template>\n <ContainerTit class=\"ContainerTit\">\n <div class=\"header\">\n <el-steps align-center :active=\"steps_active\">\n <el-step title=\"商品导入文件\" icon=\"el-icon-upload\"></el-step>\n <el-step title=\"商品导入预览\" icon=\"el-icon-s-order\"></el-step>\n <el-step title=\"商品导入完成\" icon=\"el-icon-s-claim\"></el-step>\n </el-steps>\n </div>\n <!-- 商品导入预览-->\n <div v-if=\"steps_active === 0\">\n <div slot=\"tip\" class=\"page-tip-div\">\n <i class=\"el-icon-info\"></i>\n 温馨提示:\n <span>1、商品名称、一级分类、基本单位、销售价为必填项</span>\n \n <span>2、单位换算规则:例如商品1件=24袋,表格中填写24即可!</span>\n \n <span>\n 3、单位规则,如只按件进行售卖,基本单位填写“件”即可,如大小单位都卖,基本单位填写最小单位,辅助单位填写最大单位!\n </span>\n </div>\n <div class=\"span\">\n <span>\n <a\n href=\"https://upload.qianniao.vip/template/dandianshangping.xlsx\"\n target=\"_blank\"\n >\n <i class=\"iconfont icon-xiazai-xue\"></i>\n <span>下载模板</span>\n </a>\n </span>\n </div>\n <div class=\"content\">\n <p class=\"title\">\n <i class=\"required\">*</i>\n 商品文件\n </p>\n <div class=\"input-up\">\n <i class=\"iconfont icon-lianjie\"></i>\n <el-upload\n ref=\"upload\"\n action=\"#\"\n accept=\"xlsx,xls\"\n :auto-upload=\"false\"\n :file-list=\"fileList\"\n list-type=\"text\"\n :before-upload=\"beforeUpload\"\n :on-remove=\"onRemove\"\n :on-change=\"onChange\"\n >\n <div\n slot=\"trigger\"\n style=\"width: 360px; padding: 0 10px; text-align: left\"\n >\n <span v-if=\"file_name\">{{ file_name }}</span>\n <span v-else style=\"color: #999999\">选取文件</span>\n </div>\n </el-upload>\n </div>\n </div>\n </div>\n <!-- 商品导入预览-->\n <div v-else-if=\"steps_active === 1\" class=\"steps-two\">\n <vxe-grid\n ref=\"xTable\"\n :columns=\"tableColumn\"\n :data=\"goods_data\"\n ></vxe-grid>\n </div>\n <div v-else class=\"steps-three\">\n <p class=\"title\">导入情况</p>\n <div class=\"desc\">\n {{ Import_the_information }}\n <!-- <el-button type=\"text\">下载失败数据</el-button>-->\n </div>\n </div>\n <div slot=\"headr\">\n <el-button @click=\"closePage\">\n {{ steps_active === 2 ? \"完成\" : \"取消\" }}\n </el-button>\n <el-button v-if=\"steps_active === 0\" type=\"primary\" @click=\"previewData\">\n 下一步\n </el-button>\n <el-button v-if=\"steps_active === 1\" type=\"primary\" @click=\"exportsData\">\n 确定导入\n </el-button>\n <el-button v-if=\"steps_active === 2\" type=\"primary\" @click=\"againExport\">\n 重新上传\n </el-button>\n </div>\n </ContainerTit>\n</template>\n\n<script>\n import { goodsQuickImport } from \"@/api/goods\";\n import { mapGetters } from \"vuex\";\n export default {\n name: \"SingleGoodsImport\",\n data() {\n return {\n file_name: \"\",\n file: \"\",\n fileList: [],\n goods_data: [],\n steps_active: 0,\n tableColumn: [\n { field: \"goodsName\", title: \"商品名称\" },\n { field: \"describe\", title: \"商品卖点\" },\n { field: \"categoryName\", title: \"一级分类\" },\n { field: \"categoryTwo\", title: \"二级分类\" },\n { field: \"categoryThree\", title: \"三级分类\" },\n { field: \"merchantName\", title: \"商户名称\" },\n { field: \"skuName\", title: \"基本单位\" },\n { field: \"salePrice\", title: \"基本单位销售价\" },\n { field: \"barCode\", title: \"单位条码\" },\n { field: \"conversion\", title: \"单位换算\" },\n { field: \"skuNameTwo\", title: \"辅单位\" },\n { field: \"salePriceTwo\", title: \"辅单位销售价\" },\n { field: \"memberPrice\", title: \"会员价\" },\n { field: \"barCodeTwo\", title: \"辅单位条码\" },\n ],\n Import_the_information: \"\",\n };\n },\n computed: {\n ...mapGetters({\n enableLocationManagement: \"MUser/enableLocationManagement\",\n }),\n },\n methods: {\n lookDetail() {},\n // 取消/完成 按钮\n closePage() {\n if (this.steps_active === 1) {\n this.steps_active = 0;\n } else {\n this.$closeCurrentGoEdit(\"/goods/sale/PublishGoods\");\n }\n },\n // 下一步\n previewData() {\n if (!this.file) {\n this.$message.warning(\"请选择要导入的文件\");\n return;\n }\n // this.$refs.xTable.importData();\n const fileReader = new FileReader();\n fileReader.onload = (ev) => {\n const data = ev.target.result;\n const workbook = this.$XLSX.read(data, { type: \"binary\" });\n const csvData = this.$XLSX.utils.sheet_to_csv(workbook.Sheets.Sheet1);\n const tableData = [];\n console.log(\"csvData\", csvData.split(\"\\n\"));\n // 解析数据\n csvData.split(\"\\n\").forEach((vRow, rindex) => {\n if (vRow && rindex > 0) {\n const vCols = vRow.split(\",\");\n console.log(\"vCols\", vCols);\n const item = {};\n vCols.forEach((val, cIndex) => {\n const column = this.tableColumn[cIndex];\n if (column && column.field) {\n item[column.field] = val;\n }\n });\n tableData.push(item);\n }\n });\n console.log(\"tableData::\", tableData);\n this.goods_data = tableData;\n };\n fileReader.readAsBinaryString(this.file);\n this.steps_active = 1;\n },\n //确定导入\n async exportsData() {\n this.steps_active = 2;\n const { data } = await goodsQuickImport(this.goods_data);\n this.Import_the_information = data;\n },\n //重新上传\n againExport() {\n this.steps_active = 0;\n },\n //覆盖默认的上传行为,可以自定义上传的实现\n submitUpload(request) {\n console.log(\"submitUpload\", request);\n // this.$refs.upload.submit();\n },\n //上传文件之前的钩子,参数为上传的文件,若返回 false 或者返回 Promise 且被 reject,则停止上传。\n beforeUpload(file) {\n console.log(\"beforeUpload\", file);\n },\n //文件列表移除文件时的钩子\n onRemove(file, fileList) {\n console.log(\"onRemove\", file, fileList);\n },\n onChange(file) {\n console.log(\"onChange\", file);\n this.file_name = file.name;\n this.file = file.raw;\n },\n },\n };\n</script>\n<style scoped lang=\"scss\">\n .ContainerTit {\n background-color: #ffffff;\n }\n\n .span {\n border-radius: 5px;\n height: 15px;\n padding: 0 20px 20px;\n width: 98%;\n margin: 20px auto;\n .icon-xiazai-xue {\n font-size: 16px;\n margin-right: 4px;\n }\n }\n .header {\n margin: 40px auto 20px;\n width: 60%;\n }\n .content {\n width: 98%;\n margin: 20px auto;\n padding: 24px 20px;\n border-radius: 4px 4px 0 0;\n background-color: #f5f7fc;\n .title {\n padding-bottom: 20px;\n .required {\n color: #ff4400;\n }\n }\n .input-up {\n width: 360px;\n text-align: left;\n height: 32px;\n line-height: 32px;\n border-radius: 4px;\n background-color: #fff;\n border: 1px solid #d5dae0 !important;\n position: relative;\n overflow: hidden;\n .icon-lianjie {\n position: absolute;\n top: 50%;\n right: 20px;\n color: #768696;\n transform: translateY(-50%);\n display: block;\n }\n }\n }\n .steps-three {\n margin-top: 90px;\n text-align: center;\n .title {\n color: #333;\n font-size: 24px;\n }\n .desc {\n color: #333;\n font-size: 14px;\n margin: 18px 0 60px;\n }\n }\n</style>\n"]}]}
|