silu/创旅丝路/resources/backend/page/member/add.html

191 lines
5.7 KiB
HTML
Raw Permalink Normal View History

2025-10-14 00:45:23 +08:00
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>员工管理</title>
<!-- 引入样式 -->
<link rel="stylesheet" href="../../plugins/element-ui/index.css" />
<link rel="stylesheet" href="../../styles/common.css" />
<link rel="stylesheet" href="../../styles/page.css" />
</head>
<body>
<div class="addBrand-container" id="member-add-app">
<div class="container">
<el-form
ref="ruleForm"
:model="ruleForm"
:rules="rules"
:inline="false"
label-width="180px"
class="demo-ruleForm"
>
<el-form-item label="员工id:" prop="userid">
<el-input v-model="ruleForm.userid" placeholder="请输入员工id" maxlength="20"/>
</el-form-item>
<el-form-item
label="员工姓名:"
prop="username"
>
<el-input
v-model="ruleForm.username"
placeholder="请输入员工姓名"
maxlength="20"
/>
</el-form-item>
<el-form-item
label="email:"
prop="email"
>
<el-input
v-model="ruleForm.email"
placeholder="请输入email"
maxlength="20"
/>
</el-form-item>
<el-form-item
label="性别:"
prop="sex"
>
<el-radio-group v-model="ruleForm.sex">
<el-radio label="男"></el-radio>
<el-radio label="女"></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item
label="身份证号:"
prop="idNumber"
>
<el-input
v-model="ruleForm.idNumber"
placeholder="请输入身份证号"
maxlength="20"
/>
</el-form-item>
<div class="subBox address">
<el-form-item>
<el-button @click="goBack()">
取消
</el-button>
<el-button
type="primary"
@click="submitForm(false)"
>
保存
</el-button>
<el-button
v-if="actionType == 'add'"
type="primary"
class="continue"
@click="submitForm(true)"
>
保存并继续添加
</el-button>
</el-form-item>
</div>
</el-form>
</div>
</div>
<!-- 开发环境版本,包含了有帮助的命令行警告 -->
<script src="../../plugins/vue/vue.js"></script>
<!-- 引入组件库 -->
<script src="../../plugins/element-ui/index.js"></script>
<!-- 引入axios -->
<script src="../../plugins/axios/axios.min.js"></script>
<script src="../../js/request.js"></script>
<script src="../../api/member.js"></script>
<script src="../../js/validate.js"></script>
<script src="../../js/index.js"></script>
<script>
new Vue({
el: '#member-add-app',
data() {
return {
actionType: 'add', // 默认是添加操作
ruleForm: {
userid: '',
username: '',
email: '',
sex: '男', // 默认性别为男
// idNumber: '',
// password: '', // 如果需要密码字段,请取消注释并添加相应的输入项
// rePassword: '', // 如果需要确认密码字段,请取消注释并添加相应的输入项
},
rules: { // 表单验证规则
userid: [
{ required: true, message: '请输入员工id', trigger: 'blur' }
],
username: [
{ required: true, message: '请输入员工姓名', trigger: 'blur' }
],
email: [
{ required: true, message: '请输入email', trigger: 'blur' }
],
sex: [
{ required: true, message: '请选择性别', trigger: 'change' }
],
idNumber: [
{ required: true, message: '请输入身份证号', trigger: 'blur' }
]
}
};
},
methods: {
submitForm(continueAdding) {
this.$refs.ruleForm.validate((valid) => {
if (valid) {
const params = {
...this.ruleForm,
sex: this.ruleForm.sex === '女' ? '0' : '1'
};
if (this.actionType === 'add') {
addEmployee(params).then(res => {
if (res.code === 1) {
this.$message.success('员工添加成功!');
if (!continueAdding) {
this.goBack();
} else {
this.resetForm();
}
} else {
this.$message.error(res.msg || '操作失败');
}
}).catch(err => {
this.$message.error('请求出错了:' + err);
});
} else {
editEmployee(params).then(res => {
if (res.code === 1) {
this.$message.success('员工信息修改成功!');
this.goBack();
} else {
this.$message.error(res.msg || '操作失败');
}
}).catch(err => {
this.$message.error('请求出错了:' + err);
});
}
} else {
console.log('表单验证失败!');
return false;
}
});
},
goBack() {
window.parent.menuHandle({
id: '2',
url: '../backend/page/member/list.html',
name: '员工管理'
}, false);
},
resetForm() {
this.$refs.ruleForm.resetFields(); // 重置表单
}
}
})
</script>
</body>
</html>