| | |
| | | couponSearchForm, |
| | | getActivityEffectiveTime, |
| | | getActivityReceiveTime, |
| | | getImageUrlRules, |
| | | couponColumn, |
| | | } from '@/utils/coupon-form' |
| | | export default { |
| | |
| | | if (!isNew) { |
| | | row.usageTypeStr = getActivityEffectiveTime(row) |
| | | row.getStartDateStr = getActivityReceiveTime(row) |
| | | getImageUrlRules(row,this.tableConfig.form) |
| | | } |
| | | |
| | | }, |
| | | columns: [ |
| | | ...couponColumn(), |
| | | { |
| | | label: '优惠券图片', |
| | | formatter: (row) => ( |
| | | <el-bus-image |
| | | style="width:50px;height:50px" |
| | | lazy={true} |
| | | src={row.imageUrl} |
| | | /> |
| | | ), |
| | | }, |
| | | { |
| | | label: '领取时间', |
| | | formatter: getActivityReceiveTime, |
| | |
| | | { label: '已领取总数', prop: 'getNum', minWidth: 150 }, |
| | | { label: '剩余未领取总数', prop: 'unGetNum', minWidth: 150 }, |
| | | { label: '状态', prop: 'statusName', minWidth: 120 }, |
| | | { label: '领取渠道', prop: 'getTypeName', minWidth: 120 }, |
| | | { label: '操作人', prop: 'createByName', minWidth: 120 }, |
| | | ], |
| | | // 页面上要到分,后端要传到秒 |
| | |
| | | str: true, |
| | | strKey: 'getTypeName', |
| | | rules: { required: true, message: '请选择领取渠道' }, |
| | | on: { |
| | | change: (e, updateForm,obj) => { |
| | | |
| | | if(e[0]==='home'){ |
| | | // 如果是首页领取的话,则图片为必传递 |
| | | this.updateImageUrlRules(this.tableConfig.form,"imageUrl",true,"图片为必填项目") |
| | | }else{ |
| | | this.updateImageUrlRules(this.tableConfig.form,"imageUrl",false,"请输入图片") |
| | | } |
| | | }, |
| | | }, |
| | | |
| | | }, |
| | | { |
| | | label: '优惠券图片:', |
| | | id: 'imageUrl', |
| | | type: 'bus-upload', |
| | | el: { |
| | | listType: 'picture-card', |
| | | limit: 1, |
| | | limitSize: 2, |
| | | tipText: '大小不超过2M', |
| | | valueType: 'string', |
| | | }, |
| | | forceDisabled: true, |
| | | rules: { |
| | | required: true, |
| | | message: '请上传商品图片', |
| | | trigger: 'blur', |
| | | }, |
| | | }, |
| | | { |
| | | label: '领取时间:', |
| | |
| | | extraButtons: [ |
| | | { |
| | | text: '发布', |
| | | show: (row) => |
| | | row.status === 'inactive' || row.status === 'expired', |
| | | show: (row) =>{ |
| | | // row.status === 'inactive' || row.status === 'expired' |
| | | // const now = new Date(); // 获取当前时间 |
| | | // const startDate = new Date(row.getStartDate); // 获取开始时间 |
| | | // const endDate = new Date(row.getEndDate); // 获取结束时间 |
| | | // // 判断当前时间是否在开始时间和结束时间之间 |
| | | // const isInTimeRange = now >= startDate && now <= endDate; |
| | | const now = new Date(); // 获取当前时间 |
| | | const endDate = new Date(row.getEndDate); // 获取结束时间 |
| | | // 判断当前时间是否已经超过领取结束时间 |
| | | const isAfterEndDate = now <= endDate; |
| | | if (isAfterEndDate && (row.status === 'inactive' || row.status === 'expired')) { |
| | | return true; |
| | | } |
| | | return false; |
| | | |
| | | }, |
| | | atClick: async (row) => { |
| | | try { |
| | | await this.$elBusUtil.confirm('确定要发布吗?') |
| | |
| | | title: '活动优惠券', |
| | | } |
| | | }, |
| | | methods: { |
| | | updateImageUrlRules(form,id,required,message) { |
| | | const curField =form.find( |
| | | (field) => field.id === id |
| | | ); |
| | | if (curField && curField.rules && required) { |
| | | curField.rules.required = true; |
| | | curField.rules.message = message; |
| | | }else if(curField && curField.rules){ |
| | | curField.rules.required = false; |
| | | curField.rules.message = message; |
| | | } |
| | | }, |
| | | }, |
| | | } |
| | | </script> |