| 1 |
- {"remainingRequest":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\front\\item\\zyAdmin\\src\\pages\\marketing\\lottery\\addGoods.vue?vue&type=script&lang=js","dependencies":[{"path":"D:\\front\\item\\zyAdmin\\src\\pages\\marketing\\lottery\\addGoods.vue","mtime":1761614939032},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\babel-loader\\lib\\index.js","mtime":1761614927320},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1761614927801},{"path":"D:\\front\\item\\zyAdmin\\node_modules\\vue-loader\\lib\\index.js","mtime":1761614937402}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:DQppbXBvcnQgY291cG9uTGlzdCBmcm9tICdAL2NvbXBvbmVudHMvY291cG9uTGlzdCc7DQppbXBvcnQgdXBsb2FkUGljdHVyZXMgZnJvbSAnQC9jb21wb25lbnRzL3VwbG9hZFBpY3R1cmVzJzsNCmltcG9ydCBnb29kc0xpc3QgZnJvbSAnQC9jb21wb25lbnRzL2dvb2RzTGlzdC9pbmRleCc7DQppbXBvcnQgZnJlaWdodFRlbXBsYXRlIGZyb20gJ0AvY29tcG9uZW50cy9mcmVpZ2h0VGVtcGxhdGUnOw0KZXhwb3J0IGRlZmF1bHQgew0KICBjb21wb25lbnRzOiB7IHVwbG9hZFBpY3R1cmVzLCBnb29kc0xpc3QsIGZyZWlnaHRUZW1wbGF0ZSwgY291cG9uTGlzdCB9LA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICBtb2RhbFBpYzogZmFsc2UsDQogICAgICBtb2RhbHM6IGZhbHNlLA0KICAgICAgaXNDaG9pY2U6ICfljZXpgIknLA0KICAgICAgdXBkYXRlSWRzOiBbXSwNCiAgICAgIHVwZGF0ZU5hbWU6IFtdLA0KICAgICAgZ29vZHNEYXRhOiB7DQogICAgICAgIHBpYzogJycsDQogICAgICAgIHByb2R1Y3RfaWQ6ICcnLA0KICAgICAgICBpbWc6ICcnLA0KICAgICAgICBjb3ZlckltZzogJycsDQogICAgICB9LA0KICAgICAgZm9ybVZhbGlkYXRlOiB7DQogICAgICAgIHR5cGU6IDUsIC8v57G75Z6LIDHvvJrmnKrkuK3lpZYy77ya56ev5YiGICAzOuS9meminSAgNO+8mue6ouWMhSA1OuS8mOaDoOWIuCA277ya56uZ5YaF5ZWG5ZOBDQogICAgICAgIG5hbWU6ICcnLCAvL+a0u+WKqOWQjeensA0KICAgICAgICBudW06IDAsIC8v5aWW5ZOB5pWw6YePDQogICAgICAgIGltYWdlOiAnJywgLy/lpZblk4Hlm77niYcNCiAgICAgICAgY2hhbmNlOiAxLCAvL+S4reWlluadg+mHjQ0KICAgICAgICBwcm9kdWN0X2lkOiAwLCAvL+WVhuWTgWlkDQogICAgICAgIGNvdXBvbl9pZDogMCwgLy/kvJjmg6DliLhpZA0KICAgICAgICB0b3RhbDogMCwgLy/lpZblk4HmlbDph48NCiAgICAgICAgcHJvbXB0OiAnJywgLy/mj5DnpLror60NCiAgICAgICAgZ29vZHNfaW1hZ2U6ICcnLCAvL+iHqueUqOWVhuWTgeWbvg0KICAgICAgICBjb3Vwb25fdGl0bGU6ICcnLCAvL+S8mOaDoOWIuOWQjeensA0KICAgICAgfSwNCiAgICAgIHJ1bGVWYWxpZGF0ZTogew0KICAgICAgICBuYW1lOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn5ZWG5ZOB5ZCN56ewJywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdibHVyJywNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgICBnb29kc19pbWFnZTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+ivt+a3u+WKoOWVhuWTgScsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicsDQogICAgICAgICAgfSwNCiAgICAgICAgXSwNCiAgICAgICAgbnVtOiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICB0eXBlOiAnbnVtYmVyJywNCiAgICAgICAgICAgIG1lc3NhZ2U6ICfor7fovpPlhaXph5Hpop3mlbDph48nLA0KICAgICAgICAgICAgdHJpZ2dlcjogJ2JsdXInLA0KICAgICAgICAgIH0sDQogICAgICAgIF0sDQogICAgICAgIGNoYW5jZTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgdHlwZTogJ251bWJlcicsDQogICAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl5ZWG5ZOB5p2D6YeNJywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdibHVyJywNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgICBpbWFnZTogWw0KICAgICAgICAgIHsNCiAgICAgICAgICAgIHJlcXVpcmVkOiB0cnVlLA0KICAgICAgICAgICAgbWVzc2FnZTogJ+ivt+mAieaLqeWlluWTgeWbvueJhycsDQogICAgICAgICAgICB0cmlnZ2VyOiAnYmx1cicsDQogICAgICAgICAgfSwNCiAgICAgICAgXSwNCiAgICAgICAgcHJvbXB0OiBbDQogICAgICAgICAgew0KICAgICAgICAgICAgcmVxdWlyZWQ6IHRydWUsDQogICAgICAgICAgICBtZXNzYWdlOiAn6K+36L6T5YWl5o+Q56S66K+tJywNCiAgICAgICAgICAgIHRyaWdnZXI6ICdibHVyJywNCiAgICAgICAgICB9LA0KICAgICAgICBdLA0KICAgICAgfSwNCiAgICAgIGNvdXBvbk5hbWU6IFtdLA0KICAgIH07DQogIH0sDQogIHByb3BzOiB7DQogICAgZWRpdERhdGE6IHsNCiAgICAgIHR5cGU6IE9iamVjdCwNCiAgICAgIGRlZmF1bHQ6ICgpID0+IHt9LA0KICAgIH0sDQogIH0sDQogIHdhdGNoOiB7DQogICAgZWRpdERhdGEoZGF0YSkge30sDQogIH0sDQogIG1vdW50ZWQoKSB7DQogICAgbGV0IGtleXMgPSBPYmplY3Qua2V5cyh0aGlzLmVkaXREYXRhKTsNCiAgICBrZXlzLmZvckVhY2goKGl0ZW0pID0+IHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlW2l0ZW1dID0gdGhpcy5lZGl0RGF0YVtpdGVtXTsNCiAgICAgIGlmIChpdGVtID09PSAnY291cG9uX3RpdGxlJyAmJiB0aGlzLmVkaXREYXRhW2l0ZW1dKSB7DQogICAgICAgIHRoaXMuY291cG9uTmFtZS5wdXNoKHsNCiAgICAgICAgICB0aXRsZTogdGhpcy5lZGl0RGF0YVtpdGVtXSwNCiAgICAgICAgICBpZDogdGhpcy5lZGl0RGF0YS5jb3Vwb25faWQsDQogICAgICAgIH0pOw0KICAgICAgfQ0KICAgIH0pOw0KICB9LA0KICBtZXRob2RzOiB7DQogICAgLy8g6YCJ5oup5ZWG5ZOBDQogICAgY2hhbmdlR29vZHMoKSB7DQogICAgICB0aGlzLm1vZGFscyA9IHRydWU7DQogICAgICB0aGlzLiRyZWZzLmdvb2RzbGlzdC5nZXRMaXN0KCk7DQogICAgICB0aGlzLiRyZWZzLmdvb2RzbGlzdC5nb29kc0NhdGVnb3J5KCk7DQogICAgfSwNCiAgICBnZXRDb3Vwb25JZChlKSB7DQogICAgICB0aGlzLmZvcm1WYWxpZGF0ZS5jb3Vwb25faWQgPSBlLmlkOw0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUuY291cG9uX3RpdGxlID0gZS5jb3Vwb25fdGl0bGU7DQogICAgICBsZXQgY291cG9uTmFtZSA9IFtdOw0KICAgICAgY291cG9uTmFtZS5wdXNoKGUpOw0KICAgICAgdGhpcy5jb3Vwb25OYW1lID0gY291cG9uTmFtZTsNCiAgICB9LA0KICAgIGhhbmRsZVN1Ym1pdChuYW1lKSB7DQogICAgICB0aGlzLiRyZWZzW25hbWVdLnZhbGlkYXRlKCh2YWxpZCkgPT4gew0KICAgICAgICBpZiAodmFsaWQpIHsNCiAgICAgICAgICB0aGlzLiRlbWl0KCdhZGRHb29kc0RhdGEnLCB0aGlzLmZvcm1WYWxpZGF0ZSk7DQogICAgICAgICAgdGhpcy4kbWVzc2FnZS5zdWNjZXNzKCfmt7vliqDmiJDlip8nKTsNCiAgICAgICAgfSBlbHNlIHsNCiAgICAgICAgICB0aGlzLiRtZXNzYWdlLndhcm5pbmcoJ+ivt+WujOWWhOaVsOaNricpOw0KICAgICAgICB9DQogICAgICB9KTsNCiAgICB9LA0KICAgIC8vIOiOt+WPluWNleW8oOWbvueJh+S/oeaBrw0KICAgIGdldFBpYyhwYykgew0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUuaW1hZ2UgPSBwYy5hdHRfZGlyOw0KICAgICAgdGhpcy5tb2RhbFBpYyA9IGZhbHNlOw0KICAgIH0sDQogICAgLy8g54K55Ye75ZWG5ZOB5Zu+DQogICAgbW9kYWxQaWNUYXAoKSB7DQogICAgICB0aGlzLm1vZGFsUGljID0gdHJ1ZTsNCiAgICB9LA0KICAgIGNhbmNlbCgpIHsNCiAgICAgIHRoaXMubW9kYWxzID0gZmFsc2U7DQogICAgfSwNCiAgICAvLyDpgInmi6nnmoTllYblk4ENCiAgICBnZXRQcm9kdWN0SWQocHJvZHVjdExpc3QpIHsNCiAgICAgIC8vIGlmIChwcm9kdWN0TGlzdC5sZW5ndGggPiAxKSB7DQogICAgICAvLyAgIHRoaXMuJG1lc3NhZ2Uud2FybmluZygi5pyA5aSa5re75Yqg5LiA5Liq5ZWG5ZOBIik7DQogICAgICAvLyAgIHJldHVybjsNCiAgICAgIC8vIH0NCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLnByb2R1Y3RfaWQgPSBwcm9kdWN0TGlzdC5pZDsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmdvb2RzX2ltYWdlID0gcHJvZHVjdExpc3QuaW1hZ2U7DQogICAgICB0aGlzLm1vZGFscyA9IGZhbHNlOw0KICAgICAgLy8gcHJvZHVjdExpc3QuZm9yRWFjaCgodmFsdWUpID0+IHsNCiAgICAgIC8vICAgdGhpcy5mb3JtVmFsaWRhdGUucHJvZHVjdF9pZCA9IHZhbHVlLnByb2R1Y3RfaWQ7DQogICAgICAvLyAgIHRoaXMuZm9ybVZhbGlkYXRlLmdvb2RzX2ltYWdlID0gdmFsdWUuaW1hZ2U7DQogICAgICAvLyB9KTsNCiAgICB9LA0KICAgIHJlbW92ZUdvb2RzKCkgew0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUucHJvZHVjdF9pZCA9ICcnOw0KICAgICAgdGhpcy5mb3JtVmFsaWRhdGUuZ29vZHNfaW1hZ2UgPSAnJzsNCiAgICB9LA0KICAgIHJlbW92ZSgpIHsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmltYWdlID0gJyc7DQogICAgfSwNCiAgICAvLyDmt7vliqDkvJjmg6DliLgNCiAgICBhZGRDb3Vwb24oKSB7DQogICAgICB0aGlzLiRyZWZzLmNvdXBvblRlbXBsYXRlcy5pc1RlbXBsYXRlID0gdHJ1ZTsNCiAgICAgIHRoaXMuJHJlZnMuY291cG9uVGVtcGxhdGVzLnRhYmxlTGlzdCgpOw0KICAgIH0sDQogICAgaGFuZGxlQ2xvc2UobmFtZSkgew0KICAgICAgdGhpcy5jb3Vwb25OYW1lLnNwbGljZSgwLCAxKTsNCiAgICAgIHRoaXMuZm9ybVZhbGlkYXRlLmNvdXBvbl9pZCA9IDA7DQogICAgfSwNCiAgICAvL+WvueixoeaVsOe7hOWOu+mHje+8mw0KICAgIHVuaXF1ZShhcnIpIHsNCiAgICAgIGNvbnN0IHJlcyA9IG5ldyBNYXAoKTsNCiAgICAgIHJldHVybiBhcnIuZmlsdGVyKChhcnIpID0+ICFyZXMuaGFzKGFyci5pZCkgJiYgcmVzLnNldChhcnIuaWQsIDEpKTsNCiAgICB9LA0KICB9LA0KfTsNCg=="},{"version":3,"sources":["addGoods.vue"],"names":[],"mappings":";AA+HA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"addGoods.vue","sourceRoot":"src/pages/marketing/lottery","sourcesContent":["<template>\r\n <div>\r\n <el-form ref=\"formValidate\" :model=\"formValidate\" :rules=\"ruleValidate\" label-width=\"90px\">\r\n <el-form-item label=\"奖品:\" prop=\"type\">\r\n <el-radio-group v-model=\"formValidate.type\">\r\n <el-radio :label=\"1\">未中奖</el-radio>\r\n <el-radio :label=\"5\">优惠券</el-radio>\r\n <el-radio :label=\"2\">积分</el-radio>\r\n <el-radio :label=\"6\">商品</el-radio>\r\n <el-radio :label=\"4\">红包</el-radio>\r\n <el-radio :label=\"3\">余额</el-radio>\r\n </el-radio-group>\r\n </el-form-item>\r\n <el-form-item label=\"赠送优惠券:\" v-if=\"formValidate.type == 5\">\r\n <div v-if=\"couponName.length\" class=\"mb20\">\r\n <el-tag closable v-for=\"(item, index) in couponName\" :key=\"index\" @close=\"handleClose(item)\">{{\r\n item.title\r\n }}</el-tag>\r\n </div>\r\n <el-button type=\"primary\" v-db-click @click=\"addCoupon\" v-if=\"!couponName.length\">添加优惠券</el-button>\r\n </el-form-item>\r\n <el-form-item\r\n :label=\"[3, 4].includes(formValidate.type) ? '金额信息' : '积分数量'\"\r\n prop=\"num\"\r\n v-if=\"[2, 3, 4].includes(formValidate.type)\"\r\n >\r\n <el-input-number\r\n :controls=\"false\"\r\n v-model=\"formValidate.num\"\r\n placeholder=\"请输入金额数量\"\r\n :max=\"9999999999\"\r\n :min=\"0.1\"\r\n style=\"width: 300px\"\r\n ></el-input-number>\r\n <div class=\"ml100 grey\">\r\n {{\r\n formValidate.type == 3\r\n ? '用户领取余额后会自动到账余额账户'\r\n : formValidate.type == 4\r\n ? '用户抽到之后需要在抽奖列表中手动领取,需要开通微信支付的商家转账功能,金额不能小于0.1元'\r\n : ''\r\n }}\r\n </div>\r\n </el-form-item>\r\n <el-form-item v-if=\"formValidate.type == 6\" label=\"商品:\" prop=\"goods_image\">\r\n <template v-if=\"formValidate.goods_image\">\r\n <div class=\"upload-list\">\r\n <img :src=\"formValidate.goods_image\" />\r\n <i class=\"el-icon-error\" v-db-click @click=\"removeGoods()\" style=\"font-size: 16px\"></i>\r\n </div>\r\n </template>\r\n <div v-else class=\"upLoad pictrueTab acea-row row-center-wrapper\" v-db-click @click=\"changeGoods\">\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\"></i>\r\n </div>\r\n </el-form-item>\r\n <el-form-item label=\"奖品名称:\" prop=\"name\">\r\n <el-input\r\n v-model=\"formValidate.name\"\r\n :maxlength=\"10\"\r\n placeholder=\"请输入奖品名称\"\r\n style=\"width: 300px\"\r\n ></el-input>\r\n </el-form-item>\r\n <el-form-item label=\"奖品图片:\" prop=\"image\">\r\n <template v-if=\"formValidate.image\">\r\n <div class=\"upload-list\">\r\n <img :src=\"formValidate.image\" />\r\n <i class=\"el-icon-error\" v-db-click @click=\"remove()\" style=\"font-size: 16px\"></i>\r\n </div>\r\n </template>\r\n <div v-else class=\"upLoad pictrueTab acea-row row-center-wrapper\">\r\n <i class=\"el-icon-picture-outline\" style=\"font-size: 24px\" v-db-click @click=\"modalPic = true\"></i>\r\n </div>\r\n <!-- <div class=\"info\">选择商品</div> -->\r\n </el-form-item>\r\n <el-form-item label=\"奖品数量:\" prop=\"total\">\r\n <el-input-number\r\n :controls=\"false\"\r\n v-model=\"formValidate.total\"\r\n placeholder=\"请输入奖品数量\"\r\n :max=\"9999999999\"\r\n :min=\"0\"\r\n :precision=\"0\"\r\n style=\"width: 300px\"\r\n ></el-input-number>\r\n </el-form-item>\r\n <el-form-item label=\"奖品概率(%):\" prop=\"percent\">\r\n <el-input-number\r\n :controls=\"false\"\r\n v-model=\"formValidate.percent\"\r\n placeholder=\"请输入奖品概率\"\r\n :max=\"100\"\r\n :min=\"0\"\r\n :precision=\"2\"\r\n style=\"width: 300px\"\r\n ></el-input-number>\r\n </el-form-item>\r\n <el-form-item label=\"提示语:\" prop=\"prompt\">\r\n <el-input\r\n v-model=\"formValidate.prompt\"\r\n :maxlength=\"15\"\r\n placeholder=\"请输入提示语\"\r\n style=\"width: 300px\"\r\n ></el-input>\r\n </el-form-item>\r\n <!-- <el-form-item>\r\n <el-button type=\"primary\" v-db-click @click=\"handleSubmit('formValidate')\">提交</el-button>\r\n </el-form-item> -->\r\n </el-form>\r\n <!-- 上传图片-->\r\n <el-dialog :visible.sync=\"modalPic\" :modal=\"false\" width=\"1024px\" title=\"上传图片\" :close-on-click-modal=\"false\">\r\n <uploadPictures :isChoice=\"isChoice\" @getPic=\"getPic\" v-if=\"modalPic\"></uploadPictures>\r\n </el-dialog>\r\n <el-dialog :visible.sync=\"modals\" :modal=\"false\" title=\"商品列表\" class=\"paymentFooter\" width=\"1000px\">\r\n <goods-list ref=\"goodslist\" @getProductId=\"getProductId\"></goods-list>\r\n </el-dialog>\r\n <coupon-list ref=\"couponTemplates\" :luckDraw=\"true\" @getCouponId=\"getCouponId\"></coupon-list>\r\n <!--<coupon-list-->\r\n <!--ref=\"couponTemplates\"-->\r\n <!--@nameId=\"nameId\"-->\r\n <!--:updateIds=\"updateIds\"-->\r\n <!--:updateName=\"updateName\"-->\r\n <!--></coupon-list>-->\r\n </div>\r\n</template>\r\n\r\n<script>\r\nimport couponList from '@/components/couponList';\r\nimport uploadPictures from '@/components/uploadPictures';\r\nimport goodsList from '@/components/goodsList/index';\r\nimport freightTemplate from '@/components/freightTemplate';\r\nexport default {\r\n components: { uploadPictures, goodsList, freightTemplate, couponList },\r\n data() {\r\n return {\r\n modalPic: false,\r\n modals: false,\r\n isChoice: '单选',\r\n updateIds: [],\r\n updateName: [],\r\n goodsData: {\r\n pic: '',\r\n product_id: '',\r\n img: '',\r\n coverImg: '',\r\n },\r\n formValidate: {\r\n type: 5, //类型 1:未中奖2:积分 3:余额 4:红包 5:优惠券 6:站内商品\r\n name: '', //活动名称\r\n num: 0, //奖品数量\r\n image: '', //奖品图片\r\n chance: 1, //中奖权重\r\n product_id: 0, //商品id\r\n coupon_id: 0, //优惠券id\r\n total: 0, //奖品数量\r\n prompt: '', //提示语\r\n goods_image: '', //自用商品图\r\n coupon_title: '', //优惠券名称\r\n },\r\n ruleValidate: {\r\n name: [\r\n {\r\n required: true,\r\n message: '商品名称',\r\n trigger: 'blur',\r\n },\r\n ],\r\n goods_image: [\r\n {\r\n required: true,\r\n message: '请添加商品',\r\n trigger: 'blur',\r\n },\r\n ],\r\n num: [\r\n {\r\n required: true,\r\n type: 'number',\r\n message: '请输入金额数量',\r\n trigger: 'blur',\r\n },\r\n ],\r\n chance: [\r\n {\r\n required: true,\r\n type: 'number',\r\n message: '请输入商品权重',\r\n trigger: 'blur',\r\n },\r\n ],\r\n image: [\r\n {\r\n required: true,\r\n message: '请选择奖品图片',\r\n trigger: 'blur',\r\n },\r\n ],\r\n prompt: [\r\n {\r\n required: true,\r\n message: '请输入提示语',\r\n trigger: 'blur',\r\n },\r\n ],\r\n },\r\n couponName: [],\r\n };\r\n },\r\n props: {\r\n editData: {\r\n type: Object,\r\n default: () => {},\r\n },\r\n },\r\n watch: {\r\n editData(data) {},\r\n },\r\n mounted() {\r\n let keys = Object.keys(this.editData);\r\n keys.forEach((item) => {\r\n this.formValidate[item] = this.editData[item];\r\n if (item === 'coupon_title' && this.editData[item]) {\r\n this.couponName.push({\r\n title: this.editData[item],\r\n id: this.editData.coupon_id,\r\n });\r\n }\r\n });\r\n },\r\n methods: {\r\n // 选择商品\r\n changeGoods() {\r\n this.modals = true;\r\n this.$refs.goodslist.getList();\r\n this.$refs.goodslist.goodsCategory();\r\n },\r\n getCouponId(e) {\r\n this.formValidate.coupon_id = e.id;\r\n this.formValidate.coupon_title = e.coupon_title;\r\n let couponName = [];\r\n couponName.push(e);\r\n this.couponName = couponName;\r\n },\r\n handleSubmit(name) {\r\n this.$refs[name].validate((valid) => {\r\n if (valid) {\r\n this.$emit('addGoodsData', this.formValidate);\r\n this.$message.success('添加成功');\r\n } else {\r\n this.$message.warning('请完善数据');\r\n }\r\n });\r\n },\r\n // 获取单张图片信息\r\n getPic(pc) {\r\n this.formValidate.image = pc.att_dir;\r\n this.modalPic = false;\r\n },\r\n // 点击商品图\r\n modalPicTap() {\r\n this.modalPic = true;\r\n },\r\n cancel() {\r\n this.modals = false;\r\n },\r\n // 选择的商品\r\n getProductId(productList) {\r\n // if (productList.length > 1) {\r\n // this.$message.warning(\"最多添加一个商品\");\r\n // return;\r\n // }\r\n this.formValidate.product_id = productList.id;\r\n this.formValidate.goods_image = productList.image;\r\n this.modals = false;\r\n // productList.forEach((value) => {\r\n // this.formValidate.product_id = value.product_id;\r\n // this.formValidate.goods_image = value.image;\r\n // });\r\n },\r\n removeGoods() {\r\n this.formValidate.product_id = '';\r\n this.formValidate.goods_image = '';\r\n },\r\n remove() {\r\n this.formValidate.image = '';\r\n },\r\n // 添加优惠券\r\n addCoupon() {\r\n this.$refs.couponTemplates.isTemplate = true;\r\n this.$refs.couponTemplates.tableList();\r\n },\r\n handleClose(name) {\r\n this.couponName.splice(0, 1);\r\n this.formValidate.coupon_id = 0;\r\n },\r\n //对象数组去重;\r\n unique(arr) {\r\n const res = new Map();\r\n return arr.filter((arr) => !res.has(arr.id) && res.set(arr.id, 1));\r\n },\r\n },\r\n};\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.pictrueBox {\r\n display: inline-block;\r\n}\r\n.pictrue {\r\n width: 60px;\r\n height: 60px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n margin-right: 15px;\r\n display: inline-block;\r\n position: relative;\r\n cursor: pointer;\r\n\r\n img {\r\n width: 100%;\r\n height: 100%;\r\n }\r\n .btndel {\r\n position: absolute;\r\n z-index: 1;\r\n width: 20px !important;\r\n height: 20px !important;\r\n left: 46px;\r\n top: -4px;\r\n }\r\n}\r\n.upload-list {\r\n width: 58px;\r\n height: 58px;\r\n line-height: 58px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n border-radius: 4px;\r\n background: rgba(0, 0, 0, 0.02);\r\n cursor: pointer;\r\n position: relative;\r\n .el-icon-error {\r\n position: absolute;\r\n right: -8px;\r\n top: -8px;\r\n }\r\n}\r\n.upload-list img {\r\n display: block;\r\n width: 100%;\r\n height: 100%;\r\n}\r\n.upLoad {\r\n width: 58px;\r\n height: 58px;\r\n line-height: 58px;\r\n border: 1px dotted rgba(0, 0, 0, 0.1);\r\n border-radius: 4px;\r\n background: rgba(0, 0, 0, 0.02);\r\n cursor: pointer;\r\n}\r\n.ivu-icon-ios-close-circle {\r\n position: absolute;\r\n top: 0;\r\n right: 0;\r\n transform: translate(50%, -50%);\r\n}\r\n.grey {\r\n color: #999;\r\n}\r\n</style>\r\n"]}]}
|