|
@@ -13,10 +13,10 @@
|
|
|
|
|
|
|
|
<!-- 显示配置 -->
|
|
<!-- 显示配置 -->
|
|
|
<uni-section title="显示配置" padding="16px" type="line">
|
|
<uni-section title="显示配置" padding="16px" type="line">
|
|
|
- <uni-forms-item label="显示顺序" required name="dislayOrder">
|
|
|
|
|
- <uni-easyinput v-model="taskFormData.dislayOrder" placeholder="显示顺序" type="number" />
|
|
|
|
|
|
|
+ <uni-forms-item label="显示顺序" required name="displayOrder">
|
|
|
|
|
+ <uni-easyinput v-model="taskFormData.displayOrder" placeholder="显示顺序" type="number" />
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
- <uni-forms-item label="显示时间" required name="displayTime">
|
|
|
|
|
|
|
+ <uni-forms-item label="开始显示时间" required name="displayTime">
|
|
|
<picker mode="time" :value="taskFormData.displayTime" @change="displayTimeChange">
|
|
<picker mode="time" :value="taskFormData.displayTime" @change="displayTimeChange">
|
|
|
<view class="pick-box">{{ taskFormData.displayTime }}</view>
|
|
<view class="pick-box">{{ taskFormData.displayTime }}</view>
|
|
|
</picker>
|
|
</picker>
|
|
@@ -72,7 +72,7 @@
|
|
|
<uni-easyinput v-model="taskFormData.extraPoints" placeholder="奖励的积分(额外)" type="number" />
|
|
<uni-easyinput v-model="taskFormData.extraPoints" placeholder="奖励的积分(额外)" type="number" />
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
<uni-forms-item label="积分区间" required :rules="[{ 'required': true, errorMessage: '起始值必填' }]"
|
|
<uni-forms-item label="积分区间" required :rules="[{ 'required': true, errorMessage: '起始值必填' }]"
|
|
|
- :name="['taskExtList', index, 'extraPoints', 'value']">
|
|
|
|
|
|
|
+ :name="['taskExtList', index, 'extraPoints', 'value']" v-if="taskFormData.extraMethod == EXTRA_METHOD.INTERVAL">
|
|
|
<template v-for="(item, index) in taskFormData.taskExtList" :key="item.id">
|
|
<template v-for="(item, index) in taskFormData.taskExtList" :key="item.id">
|
|
|
<view class="extra-box">
|
|
<view class="extra-box">
|
|
|
<view class="extra-box-item">
|
|
<view class="extra-box-item">
|
|
@@ -85,7 +85,8 @@
|
|
|
</view>
|
|
</view>
|
|
|
</template>
|
|
</template>
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
- <button type="primary" size="mini" @click="addTaskExt()">新增拓展信息</button>
|
|
|
|
|
|
|
+ <button type="primary" size="mini" @click="addTaskExt()"
|
|
|
|
|
+ v-if="taskFormData.extraMethod == EXTRA_METHOD.INTERVAL">新增拓展信息</button>
|
|
|
</uni-section>
|
|
</uni-section>
|
|
|
|
|
|
|
|
<!-- 节假日配置 -->
|
|
<!-- 节假日配置 -->
|
|
@@ -125,20 +126,20 @@
|
|
|
|
|
|
|
|
<!-- 连续规则配置 -->
|
|
<!-- 连续规则配置 -->
|
|
|
<uni-section title="连续规则配置" padding="16px" type="line">
|
|
<uni-section title="连续规则配置" padding="16px" type="line">
|
|
|
- <uni-forms-item label="是否启用连续规则" required name="continuousStatus">
|
|
|
|
|
|
|
+ <uni-forms-item label="是否启用连续规则" required name="continueStatus">
|
|
|
<uni-data-select :localdata="commonEnabledStatusCheckBoxData"
|
|
<uni-data-select :localdata="commonEnabledStatusCheckBoxData"
|
|
|
- v-model="taskFormData.continuousStatus"></uni-data-select>
|
|
|
|
|
|
|
+ v-model="taskFormData.continueStatus"></uni-data-select>
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
<uni-forms-item label="宽限期(单位:天)" required name="graceDay"
|
|
<uni-forms-item label="宽限期(单位:天)" required name="graceDay"
|
|
|
- v-if="taskFormData.continuousStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
|
|
|
|
+ v-if="taskFormData.continueStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
<uni-easyinput v-model="taskFormData.graceDay" placeholder="宽限期(单位:天)" type="number" />
|
|
<uni-easyinput v-model="taskFormData.graceDay" placeholder="宽限期(单位:天)" type="number" />
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
<uni-forms-item label="连续中断次数" required name="continueInterruptedCount"
|
|
<uni-forms-item label="连续中断次数" required name="continueInterruptedCount"
|
|
|
- v-if="taskFormData.continuousStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
|
|
|
|
+ v-if="taskFormData.continueStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
<uni-easyinput v-model="taskFormData.continueInterruptedCount" placeholder="连续中断次数" type="number" />
|
|
<uni-easyinput v-model="taskFormData.continueInterruptedCount" placeholder="连续中断次数" type="number" />
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
<uni-forms-item label="惩罚天数(单位:天)" required name="penaltyDay"
|
|
<uni-forms-item label="惩罚天数(单位:天)" required name="penaltyDay"
|
|
|
- v-if="taskFormData.continuousStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
|
|
|
|
+ v-if="taskFormData.continueStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
<uni-easyinput v-model="taskFormData.penaltyDay" placeholder="惩罚天数(单位:天)" type="number" />
|
|
<uni-easyinput v-model="taskFormData.penaltyDay" placeholder="惩罚天数(单位:天)" type="number" />
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
</uni-section>
|
|
</uni-section>
|
|
@@ -156,12 +157,32 @@
|
|
|
<uni-data-select :localdata="commonEnabledStatusCheckBoxData"
|
|
<uni-data-select :localdata="commonEnabledStatusCheckBoxData"
|
|
|
v-model="taskFormData.taskPointsStatus"></uni-data-select>
|
|
v-model="taskFormData.taskPointsStatus"></uni-data-select>
|
|
|
</uni-forms-item>
|
|
</uni-forms-item>
|
|
|
|
|
+ <uni-forms-item label="积分区间" required :rules="[{ 'required': true, errorMessage: '起始值必填' }]"
|
|
|
|
|
+ :name="['continueTaskExtList', index, 'extraPoints', 'value']"
|
|
|
|
|
+ v-if="taskFormData.taskPointsStatus == COMMON_ENABLED_STATUS.ENABLED">
|
|
|
|
|
+ <template v-for="(item, index) in taskFormData.continueTaskExtList" :key="item.id">
|
|
|
|
|
+ <view class="extra-box">
|
|
|
|
|
+ <view class="extra-box-item">
|
|
|
|
|
+ <uni-easyinput v-model="taskFormData.continueTaskExtList[index].initialValue.value"
|
|
|
|
|
+ placeholder="请输入起始值" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <view class="extra-box-item">
|
|
|
|
|
+ <uni-easyinput v-model="taskFormData.continueTaskExtList[index].extraPoints.value"
|
|
|
|
|
+ placeholder="请输入奖励积分" />
|
|
|
|
|
+ </view>
|
|
|
|
|
+ <button class="button extra-box-btn" size="mini" type="default"
|
|
|
|
|
+ @click="deleteContinueTaskExt(item.id)">删除</button>
|
|
|
|
|
+ </view>
|
|
|
|
|
+ </template>
|
|
|
|
|
+ </uni-forms-item>
|
|
|
|
|
+ <button type="primary" size="mini" @click="addContinueTaskExt()"
|
|
|
|
|
+ v-if="taskFormData.taskPointsStatus == COMMON_ENABLED_STATUS.ENABLED">新增拓展信息</button>
|
|
|
</uni-section>
|
|
</uni-section>
|
|
|
|
|
|
|
|
<!-- 按钮组 -->
|
|
<!-- 按钮组 -->
|
|
|
<view class="button-container">
|
|
<view class="button-container">
|
|
|
- <button type="default" style="width:300rpx;" @click="cancel">取消</button>
|
|
|
|
|
- <button type="primary" style="color:#ffffff;backgroundColor:#2A82E4;width:300rpx;" @click="saveTask">保存</button>
|
|
|
|
|
|
|
+ <button type="default" style="width:300rpx;" @click="cancel()">取消</button>
|
|
|
|
|
+ <button type="primary" style="color:#ffffff;backgroundColor:#2A82E4;width:300rpx;" @click="saveTask()">保存</button>
|
|
|
</view>
|
|
</view>
|
|
|
|
|
|
|
|
</uni-forms>
|
|
</uni-forms>
|
|
@@ -185,18 +206,16 @@ const taskForm = ref(null);
|
|
|
* 打卡任务表单数据
|
|
* 打卡任务表单数据
|
|
|
*/
|
|
*/
|
|
|
const taskFormData = ref({
|
|
const taskFormData = ref({
|
|
|
- "points": 5,
|
|
|
|
|
- "holidayStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
- "fullAttendanceStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
|
|
+ "repeatCategory": REPEAT_CATEGORY.EVERYDAY,
|
|
|
"punchInMethod": PUNCH_IN_METHOD.SINGLE,
|
|
"punchInMethod": PUNCH_IN_METHOD.SINGLE,
|
|
|
- "compareRule": COMPARE_RULE.GTE,
|
|
|
|
|
- "countTrack": 10,
|
|
|
|
|
- "timeTrack": "00:00",
|
|
|
|
|
- "continuousStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
"extraMethod": EXTRA_METHOD.NONE,
|
|
"extraMethod": EXTRA_METHOD.NONE,
|
|
|
|
|
+ "holidayStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
+ "fullAttendanceStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
+ "continueStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
"autoStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
"autoStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
|
|
+ "taskPointsStatus": COMMON_ENABLED_STATUS.DISABLED,
|
|
|
"taskExtList": [],
|
|
"taskExtList": [],
|
|
|
- "continueTaskExtList": [],
|
|
|
|
|
|
|
+ "continueTaskExtList": []
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
@@ -207,12 +226,131 @@ const taskFormRules = ref({
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
errorMessage: '任务名称不能为空'
|
|
errorMessage: '任务名称不能为空'
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ minLength: 2,
|
|
|
|
|
+ maxLength: 30,
|
|
|
|
|
+ errorMessage: '长度在 {minLength} 到 {maxLength} 个字符',
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ description: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ maxLength: 100,
|
|
|
|
|
+ errorMessage: '描述不能超过 {maxLength} 个字符'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ displayOrder: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '显示顺序不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ displayTime: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '显示时间不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ repeatCategory: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '重复类型不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ punchInMethod: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '打卡方式不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ compareRule: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '比较规则不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ countTrack: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '数值不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ timeTrack: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '数值不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ points: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '奖励积分不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ extraMethod: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '额外奖励方式不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ extraTimeStep: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '额外的时间间隔方式不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ extraPoints: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '奖励的积分(额外)不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ taskExtList: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '积分区间不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ holidayStatus: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '节假日双倍不能为空'
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- rewardNum: {
|
|
|
|
|
|
|
+ holidayCountTrack: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
- errorMessage: '奖励数值不能为空'
|
|
|
|
|
|
|
+ errorMessage: '数值不能为空'
|
|
|
}, {
|
|
}, {
|
|
|
format: 'number',
|
|
format: 'number',
|
|
|
errorMessage: "请输入有效数字"
|
|
errorMessage: "请输入有效数字"
|
|
@@ -221,37 +359,43 @@ const taskFormRules = ref({
|
|
|
errorMessage: "最小值{minimum}"
|
|
errorMessage: "最小值{minimum}"
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- weekendDoubleFlag: {
|
|
|
|
|
|
|
+ holidayTimeTrack: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
- errorMessage: '周末双倍奖励不能为空'
|
|
|
|
|
|
|
+ errorMessage: '时间不能为空'
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- fullAttendanceFlag: {
|
|
|
|
|
|
|
+ fullAttendanceStatus: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
errorMessage: '全勤奖励不能为空'
|
|
errorMessage: '全勤奖励不能为空'
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- category: {
|
|
|
|
|
|
|
+ fullAttendancePeriod: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
- errorMessage: '任务类型不能为空'
|
|
|
|
|
|
|
+ errorMessage: '全勤周期不能为空'
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- description: {
|
|
|
|
|
|
|
+ fullAttendancefaulttoleranceCnt: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
- maxLength: 100,
|
|
|
|
|
- errorMessage: '描述不能超过{maxLength}个字符'
|
|
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '数值不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- rule: {
|
|
|
|
|
|
|
+ continueStatus: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
- errorMessage: '判断规则不能为空'
|
|
|
|
|
|
|
+ errorMessage: '是否启用连续规则不能为空'
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- countTrack: {
|
|
|
|
|
|
|
+ graceDay: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
errorMessage: '数值不能为空'
|
|
errorMessage: '数值不能为空'
|
|
@@ -263,10 +407,46 @@ const taskFormRules = ref({
|
|
|
errorMessage: "最小值{minimum}"
|
|
errorMessage: "最小值{minimum}"
|
|
|
}]
|
|
}]
|
|
|
},
|
|
},
|
|
|
- timeTrack: {
|
|
|
|
|
|
|
+ continueInterruptedCount: {
|
|
|
rules: [{
|
|
rules: [{
|
|
|
required: true,
|
|
required: true,
|
|
|
errorMessage: '数值不能为空'
|
|
errorMessage: '数值不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ penaltyDay: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '数值不能为空'
|
|
|
|
|
+ }, {
|
|
|
|
|
+ format: 'number',
|
|
|
|
|
+ errorMessage: "请输入有效数字"
|
|
|
|
|
+ }, {
|
|
|
|
|
+ minimum: 1,
|
|
|
|
|
+ errorMessage: "最小值{minimum}"
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ autoStatus: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '是否启用自动打卡不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ taskPointsStatus: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '是否启用任务积分计算不能为空'
|
|
|
|
|
+ }]
|
|
|
|
|
+ },
|
|
|
|
|
+ continueTaskPointsStatus: {
|
|
|
|
|
+ rules: [{
|
|
|
|
|
+ required: true,
|
|
|
|
|
+ errorMessage: '是否启用任务积分计算不能为空'
|
|
|
}]
|
|
}]
|
|
|
}
|
|
}
|
|
|
});
|
|
});
|
|
@@ -413,7 +593,7 @@ const holidayTimeChange = (e) => {
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 新增拓展信息
|
|
|
|
|
|
|
+ * 新增任务拓展信息
|
|
|
*/
|
|
*/
|
|
|
const addTaskExt = () => {
|
|
const addTaskExt = () => {
|
|
|
taskFormData.value.taskExtList.push({
|
|
taskFormData.value.taskExtList.push({
|
|
@@ -430,13 +610,38 @@ const addTaskExt = () => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 删除拓展信息
|
|
|
|
|
|
|
+ * 删除任务拓展信息
|
|
|
*/
|
|
*/
|
|
|
const deleteTaskExt = (id) => {
|
|
const deleteTaskExt = (id) => {
|
|
|
let index = taskFormData.value.taskExtList.findIndex(v => v.id === id)
|
|
let index = taskFormData.value.taskExtList.findIndex(v => v.id === id)
|
|
|
taskFormData.value.taskExtList.splice(index, 1)
|
|
taskFormData.value.taskExtList.splice(index, 1)
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+/**
|
|
|
|
|
+ * 新增任务拓展信息
|
|
|
|
|
+ */
|
|
|
|
|
+const addContinueTaskExt = () => {
|
|
|
|
|
+ taskFormData.value.continueTaskExtList.push({
|
|
|
|
|
+ id: Date.now(),
|
|
|
|
|
+ "initialValue": {
|
|
|
|
|
+ label: '起始值',
|
|
|
|
|
+ value: ''
|
|
|
|
|
+ },
|
|
|
|
|
+ "extraPoints": {
|
|
|
|
|
+ label: '奖励的积分(额外)',
|
|
|
|
|
+ value: ''
|
|
|
|
|
+ }
|
|
|
|
|
+ })
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+/**
|
|
|
|
|
+ * 删除任务拓展信息
|
|
|
|
|
+ */
|
|
|
|
|
+const deleteContinueTaskExt = (id) => {
|
|
|
|
|
+ let index = taskFormData.value.continueTaskExtList.findIndex(v => v.id === id)
|
|
|
|
|
+ taskFormData.value.continueTaskExtList.splice(index, 1)
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
* 保存打卡任务
|
|
* 保存打卡任务
|
|
|
*/
|
|
*/
|
|
@@ -452,6 +657,13 @@ const saveTask = () => {
|
|
|
setTimeout(() => {
|
|
setTimeout(() => {
|
|
|
uni.navigateBack();
|
|
uni.navigateBack();
|
|
|
}, 2000);
|
|
}, 2000);
|
|
|
|
|
+ }).catch(err => {
|
|
|
|
|
+ console.log('表单错误信息:', err);
|
|
|
|
|
+ uni.showModal({
|
|
|
|
|
+ title: "保存失败",
|
|
|
|
|
+ content: "请检查表单项是否已正确填写",
|
|
|
|
|
+ showCancel: false
|
|
|
|
|
+ });
|
|
|
});
|
|
});
|
|
|
}
|
|
}
|
|
|
|
|
|
|
@@ -463,7 +675,6 @@ const cancel = () => {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
onLoad(async (e) => {
|
|
onLoad(async (e) => {
|
|
|
- console.log('taskEdit', e);
|
|
|
|
|
if (e.id) {
|
|
if (e.id) {
|
|
|
const res = await punchInApi.queryTask({ "id": e.id });
|
|
const res = await punchInApi.queryTask({ "id": e.id });
|
|
|
taskFormData.value = res;
|
|
taskFormData.value = res;
|