|
|
|
@ -81,11 +81,11 @@ |
|
|
|
|
|
|
|
<el-dialog v-model="showAdd" width="20vw" draggable align-center style="background-color: rgb(243,250,254);"> |
|
|
|
<div class="add-item"> |
|
|
|
<el-text size="large">{{ t('common_add.activity') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.activity') }}:</el-text> |
|
|
|
<el-input v-model="addForm.activityName" style="width: 12vw" :placeholder="t('common_add.activityPlaceholder')" maxlength="200" clearable /> |
|
|
|
</div> |
|
|
|
<div class="add-item"> |
|
|
|
<el-text size="large">{{ t('common_add.businessBelong') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.businessBelong') }}:</el-text> |
|
|
|
<el-radio-group v-model="addForm.businessBelong" style="width: 12vw"> |
|
|
|
<el-radio size="large" value="客户归属地">{{ t('common.customerBelong') }}</el-radio> |
|
|
|
<el-radio size="large" value="活动归属地">{{ t('common.activityBelong') }}</el-radio> |
|
|
|
@ -97,12 +97,12 @@ |
|
|
|
style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
<div class="add-item"> |
|
|
|
<el-text size="large">{{ t('common_add.startTime') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.startTime') }}:</el-text> |
|
|
|
<el-date-picker v-model="addForm.startTime" type="datetime" :placeholder="t('common_add.startTime')" |
|
|
|
:default-time="defaultStartTime" style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
<div class="add-item"> |
|
|
|
<el-text size="large">{{ t('common_add.endTime') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.endTime') }}:</el-text> |
|
|
|
<el-date-picker v-model="addForm.endTime" type="datetime" :placeholder="t('common_add.endTime')" |
|
|
|
:default-time="defaultEndTime" style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
@ -119,24 +119,24 @@ |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="edit-item"> |
|
|
|
<el-text size="large">{{ t('common_add.businessBelong') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.businessBelong') }}:</el-text> |
|
|
|
<el-radio-group v-model="editForm.businessBelong" style="width: 12vw"> |
|
|
|
<el-radio size="large" value="客户归属地">{{ t('common.customerBelong') }}</el-radio> |
|
|
|
<el-radio size="large" value="活动归属地">{{ t('common.activityBelong') }}</el-radio> |
|
|
|
</el-radio-group> |
|
|
|
</div> |
|
|
|
<div class="edit-item" v-show="editForm.businessBelong === '活动归属地'"> |
|
|
|
<el-text size="large">{{ t('common_add.market') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.market') }}:</el-text> |
|
|
|
<el-cascader v-model="editForm.area" :options="marketOptions" :placeholder="t('common_add.marketPlaceholder')" clearable |
|
|
|
style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
<div class="edit-item"> |
|
|
|
<el-text size="large">{{ t('common_add.startTime') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.startTime') }}:</el-text> |
|
|
|
<el-date-picker v-model="editForm.startTime" type="datetime" :placeholder="t('common_add.startTime')" |
|
|
|
:default-time="defaultStartTime" style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
<div class="edit-item"> |
|
|
|
<el-text size="large">{{ t('common_add.endTime') }}</el-text> |
|
|
|
<el-text size="large">{{ t('common_add.endTime') }}:</el-text> |
|
|
|
<el-date-picker v-model="editForm.endTime" type="datetime" :placeholder="t('common_add.endTime')" |
|
|
|
:default-time="defaultEndTime" style="width: 12vw" /> |
|
|
|
</div> |
|
|
|
@ -171,9 +171,7 @@ const getActivityStatusText = (status) => { |
|
|
|
return status |
|
|
|
} |
|
|
|
|
|
|
|
// 活动名称正则表达式 |
|
|
|
const activityNameReg = /^[\\u4e00-\\u9fa5a-zA-Z0-9,。!?、;:“”()‘’《》【】{}——~,.!?:;'--()\"\"\\[\\]_&+=]+$/; |
|
|
|
// 为什么一定要两个--才能成功????????? |
|
|
|
const activityNameReg = /^[\u4e00-\u9fa5a-zA-Z0-9,。!?、;:“”()‘’《》【】{}——~,.!?:;'()\[\]_&+=\/-]+$/; |
|
|
|
const tableData = ref([]) |
|
|
|
const pagination = ref({ |
|
|
|
pageNum: 1, |
|
|
|
@ -451,18 +449,19 @@ const hideAdd = () => { |
|
|
|
} |
|
|
|
} |
|
|
|
const validateActivityName = (name) => { |
|
|
|
const value = name.trim() |
|
|
|
// 非空校验 |
|
|
|
if (!name.trim()) { |
|
|
|
if (!value) { |
|
|
|
ElMessage.error('活动名称不能为空'); |
|
|
|
return false; |
|
|
|
} |
|
|
|
// 长度校验(限制100字符) |
|
|
|
if (name.length > 100) { |
|
|
|
if (value.length > 100) { |
|
|
|
ElMessage.error('活动名称长度不能超过100字符'); |
|
|
|
return false; |
|
|
|
} |
|
|
|
// 字符格式校验 |
|
|
|
if (!activityNameReg.test(name)) { |
|
|
|
if (!activityNameReg.test(value)) { |
|
|
|
ElMessage.error('活动名称仅支持汉字、英文字母、数字及常见标点,中文字符,。!?、;:“ ” ‘ ’ ()《》【】——~,英文字符, . ! ? : ; " ( ) [ ] - _ & + =/') |
|
|
|
return false; |
|
|
|
} |
|
|
|
|