ruoyi前后端分离修改和增加表单确认按钮判断
如果某个表主键ID是新增时用户输入的,那原来的判断就无效了。判断增加或者修改是根据主键ID是否为空来判断。若依的修改和增加表单是同一个表单。
·
若依的修改和增加表单是同一个表单
判断增加或者修改是根据主键ID是否为空来判断
如果某个表主键ID是新增时用户输入的,那原来的判断就无效了
怎么办呢
看代码
下方↓修改和增加表单
<!-- 添加或修改邮件管理对话框 -->
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="接收玩家ID" prop="accountId">
<el-input v-model="form.accountId" placeholder="请输入接收玩家ID" />
</el-form-item>
<el-form-item label="发送类型" prop="type">
<el-select v-model="form.type" placeholder="请选择发送类型">
<el-option
v-for="dict in dict.type.tb_mailtype"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="发送玩家ID" prop="srcId">
<el-input v-model="form.srcId" placeholder="请输入发送玩家ID" />
</el-form-item>
<el-form-item label="发送昵称" prop="srcNickName">
<el-input v-model="form.srcNickName" placeholder="请输入发送昵称" />
</el-form-item>
<el-form-item label="邮件标题" prop="title">
<el-input v-model="form.title" placeholder="请输入邮件标题" />
</el-form-item>
<el-form-item label="邮件内容">
<editor v-model="form.content" :min-height="192"/>
</el-form-item>
<el-form-item label="是否未读" prop="isRead">
<el-select v-model="form.isRead" placeholder="请选择是否未读">
<el-option
v-for="dict in dict.type.tb_isread"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="奖励信息" prop="isAdjunct">
<el-select v-model="form.isAdjunct" placeholder="请选择奖励信息">
<el-option
v-for="dict in dict.type.tb_isadjunct"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
<el-form-item label="附件内容" prop="adjunct">
<el-input v-model="form.adjunct" type="textarea" placeholder="请输入内容" />
</el-form-item>
<el-form-item label="创建时间" prop="mCreateTime">
<el-input v-model="form.mCreateTime" placeholder="请输入创建时间" />
</el-form-item>
<el-form-item label="持续时间" prop="lastingTime">
<el-input v-model="form.lastingTime" placeholder="请输入持续时间" />
</el-form-item>
<el-form-item label="邮件类型" prop="mtype">
<el-select v-model="form.mtype" placeholder="请选择邮件类型">
<el-option
v-for="dict in dict.type.tb_mtype"
:key="dict.value"
:label="dict.label"
:value="parseInt(dict.value)"
></el-option>
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
下方↓提交按钮
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.mailId != null) {//判断ID是否为空
updateTb_player_mail(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addTb_player_mail(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
可以看到判断的是ID
怎么修改呢
//在data中增加个字段用来判断当前状态
data() {
return {
// 默认是新增channel
isAdd: true,
//在新增和修改时,改变状态值
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.isAdd = true;//修改状态
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const ccChannelId = row.ccChannelId || this.ids
getTb_channel_config(ccChannelId).then(response => {
this.form = response.data;
this.open = true;
this.isAdd = false;//修改状态
});
},
//点击确认按钮时就不判断ID了,判断isAdd状态
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.isAdd == false) {//判断isAdd是否位false
updateTb_channel_config(this.form).then(response => {
this.$modal.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addTb_channel_config(this.form).then(response => {
this.$modal.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
更多推荐
所有评论(0)