|
@@ -26,10 +26,10 @@
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
|
- <el-form-item label="性别" prop="set">
|
|
|
+ <el-form-item label="性别" prop="sex">
|
|
|
<el-input
|
|
|
placeholder="请输入访客名称"
|
|
|
- v-model="form.set"
|
|
|
+ v-model="form.sex"
|
|
|
disabled
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
@@ -72,7 +72,6 @@
|
|
|
<el-input
|
|
|
placeholder="请输入随行人数"
|
|
|
v-model="form.accompanyNum"
|
|
|
- type="number"
|
|
|
min="0"
|
|
|
></el-input>
|
|
|
</el-form-item>
|
|
@@ -83,7 +82,15 @@
|
|
|
label="访客部门"
|
|
|
prop="intervieweeDepartId"
|
|
|
>
|
|
|
- <el-select
|
|
|
+ <el-tree-select
|
|
|
+ v-model="form.intervieweeDepartId"
|
|
|
+ :data="departData"
|
|
|
+ :render-after-expand="false"
|
|
|
+ style="width: 240px"
|
|
|
+ @change="departChange"
|
|
|
+ />
|
|
|
+
|
|
|
+ <!-- <el-select
|
|
|
v-model="form.intervieweeDepartId"
|
|
|
placeholder="请选择"
|
|
|
style="width: 100%"
|
|
@@ -91,11 +98,11 @@
|
|
|
>
|
|
|
<el-option
|
|
|
v-for="item in departData"
|
|
|
- :key="item.code"
|
|
|
+ :key="item.id"
|
|
|
:label="item.name"
|
|
|
- :value="item.code"
|
|
|
+ :value="item.id"
|
|
|
/>
|
|
|
- </el-select>
|
|
|
+ </el-select> -->
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="12">
|
|
@@ -137,6 +144,7 @@
|
|
|
<script setup name="Index">
|
|
|
//大屏自适应
|
|
|
import "@/assets/js/flexible.js";
|
|
|
+import { ElMessage } from "element-plus";
|
|
|
|
|
|
/*----------------------------------依赖引入-----------------------------------*/
|
|
|
|
|
@@ -153,16 +161,8 @@ const { proxy } = getCurrentInstance();
|
|
|
|
|
|
/*----------------------------------变量声明-----------------------------------*/
|
|
|
const formRef = ref(null); //refs
|
|
|
-const departData = ref([
|
|
|
- {
|
|
|
- departCode: 1,
|
|
|
- departName: "部门1",
|
|
|
- },
|
|
|
- {
|
|
|
- departCode: 2,
|
|
|
- departName: "部门2",
|
|
|
- },
|
|
|
-]);
|
|
|
+const departData = ref(); //组织列表
|
|
|
+const phoneArray = ref([]); //人员电话号码合集
|
|
|
const data = reactive({
|
|
|
form: {
|
|
|
idType: 0,
|
|
@@ -170,18 +170,32 @@ const data = reactive({
|
|
|
reservedField1: 1,
|
|
|
visitorStartTime: "",
|
|
|
vistorEndTime: "",
|
|
|
+ mobilePhone: "",
|
|
|
},
|
|
|
rules: {
|
|
|
- // set: [{ required: true, message: "请选择性别", trigger: "blur" }],
|
|
|
+ // sex: [{ required: true, message: "请选择性别", trigger: "blur" }],
|
|
|
visitorName: [
|
|
|
{ required: true, message: "请输入访客名称", trigger: "blur" },
|
|
|
],
|
|
|
identityCardNo: [
|
|
|
{ required: true, message: "请输入访客身份证号码", trigger: "blur" },
|
|
|
],
|
|
|
- // mobilePhone: [{ required: true, message: "请输入访客手机号码", trigger: "blur" }],
|
|
|
mobilePhone: proxy.regex.Phone(true, "请输入手机号码"),
|
|
|
- intervieweeMobile: proxy.regex.Phone(true, "请输入被访人手机号码"),
|
|
|
+
|
|
|
+ intervieweeMobile: proxy.regex.CheckMobile(
|
|
|
+ { required: true, message: "被访人手机号码不能为空" },
|
|
|
+ {
|
|
|
+ trigger: "blur",
|
|
|
+ validator: (rule, value, callback) =>
|
|
|
+ proxy.regex.equalToMobile(
|
|
|
+ rule,
|
|
|
+ phoneArray.value,
|
|
|
+ callback,
|
|
|
+ form.value.intervieweeMobile
|
|
|
+ ),
|
|
|
+ }
|
|
|
+ ),
|
|
|
+
|
|
|
intervieweeDepartId: [
|
|
|
{ required: true, message: "请选择被访部门", trigger: "change" },
|
|
|
],
|
|
@@ -201,7 +215,7 @@ function getData() {
|
|
|
)
|
|
|
.then((response) => {
|
|
|
form.value.visitorName = response.data.Certificate.Name;
|
|
|
- form.value.set = response.data.Certificate.Sex;
|
|
|
+ form.value.sex = response.data.Certificate.Sex;
|
|
|
form.value.identityCardNo = response.data.Certificate.IDNumber;
|
|
|
|
|
|
// certificateData.value=response.data.Certificate
|
|
@@ -211,10 +225,40 @@ function getData() {
|
|
|
}
|
|
|
|
|
|
function submitForm() {
|
|
|
- console.log(form.value);
|
|
|
+ if (dateRange.value == null) {
|
|
|
+ dateRange.value = [];
|
|
|
+ form.value.visitorStartTime = "";
|
|
|
+ form.value.vistorEndTime = "";
|
|
|
+ }
|
|
|
+ if (JSON.stringify(dateRange.value) != "[]") {
|
|
|
+ form.value.visitorStartTime = dateRange.value[0].replace("T", " ");
|
|
|
+ form.value.vistorEndTime = dateRange.value[1].replace("T", " ");
|
|
|
+ }
|
|
|
+
|
|
|
+ form.value.visitorName = "袁明明";
|
|
|
+ form.value.sex = form.value.sex = "女" ;
|
|
|
+ form.value.identityCardNo = "411122199112078083";
|
|
|
proxy.$refs["formRef"].validate((valid) => {
|
|
|
if (valid) {
|
|
|
- console.log(form.value);
|
|
|
+
|
|
|
+ form.value.sex = form.value.sex == "女" ? 1 : 2;
|
|
|
+ form.value.accompanyNum = Number(form.value.accompanyNum);
|
|
|
+ addVisitor(form.value).then((requset) => {
|
|
|
+ if (requset.success == true) {
|
|
|
+ ElMessage({
|
|
|
+ message: "添加成功",
|
|
|
+ type: "success",
|
|
|
+ });
|
|
|
+
|
|
|
+ setTimeout(function () {
|
|
|
+ formRef.value.resetFields(); //重置from校验
|
|
|
+ dateRange.value = [];
|
|
|
+ }, 5000);
|
|
|
+ } else {
|
|
|
+ alert("失败");
|
|
|
+ ElMessage.error(requset.msg);
|
|
|
+ }
|
|
|
+ });
|
|
|
}
|
|
|
});
|
|
|
}
|
|
@@ -226,7 +270,13 @@ function getDepartData() {
|
|
|
}).then((request) => {
|
|
|
console.log(request);
|
|
|
if (request.success == true) {
|
|
|
- departData.value = request.result.item;
|
|
|
+ // departData.value =request.result.item;
|
|
|
+ departData.value = JSON.parse(
|
|
|
+ JSON.stringify(request.result.item)
|
|
|
+ .replace(/name/g, "label")
|
|
|
+ .replace(/id/g, "value")
|
|
|
+ );
|
|
|
+ console.log(departData.value);
|
|
|
} else {
|
|
|
ElMessage.error(request.msg);
|
|
|
}
|
|
@@ -237,7 +287,6 @@ function getDepartData() {
|
|
|
* @部门下拉chage事件
|
|
|
*/
|
|
|
function departChange(val) {
|
|
|
- console.log(val);
|
|
|
getCustomer({
|
|
|
pageIndex: 1,
|
|
|
maxResultCount: 10,
|
|
@@ -245,7 +294,10 @@ function departChange(val) {
|
|
|
orgIds: [val],
|
|
|
},
|
|
|
}).then((request) => {
|
|
|
- console.log(request);
|
|
|
+ var dataArray = request.result.item;
|
|
|
+ dataArray.forEach(function (item, index) {
|
|
|
+ phoneArray.value.push(item.mobile1);
|
|
|
+ });
|
|
|
if (request.success == true) {
|
|
|
} else {
|
|
|
ElMessage.error(request.msg);
|
|
@@ -254,7 +306,7 @@ function departChange(val) {
|
|
|
}
|
|
|
|
|
|
onMounted(() => {
|
|
|
- getData();
|
|
|
+ //getData();
|
|
|
getDepartData();
|
|
|
});
|
|
|
|
|
@@ -284,6 +336,11 @@ onUnmounted(() => {
|
|
|
</style>
|
|
|
|
|
|
<style scoped lang="scss">
|
|
|
+:deep(.el-tag) {
|
|
|
+ font-size: 1.4rem;
|
|
|
+ line-height: 1.2rem;
|
|
|
+ height: 2.2rem;
|
|
|
+}
|
|
|
.el-button--large {
|
|
|
padding: 1.2rem 1.9rem;
|
|
|
--el-button-size: 4rem;
|