Commit fff9fdfb authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents beba6113 fba6e488
......@@ -41,7 +41,7 @@
class="el-upload-list__item ele-upload-list__item-content"
v-for="(file, index) in list"
>
<el-link :href="baseUrl+file.url" :underline="false" target="_blank">
<el-link :href="baseUrl + file.url" :underline="false" target="_blank">
<span class="el-icon-document" style="font-size: 12px">
{{ getFileName(file.name) }}
</span>
......@@ -50,7 +50,7 @@
<el-link
:underline="false"
style="font-size: 12px"
@click="handleDelete(file.url,index)"
@click="handleDelete(file.url, index)"
type="danger"
>删除</el-link
>
......@@ -61,7 +61,6 @@
</template>
<script>
export default {
props: {
// 值
......@@ -71,7 +70,7 @@ export default {
type: Number,
default: 200,
},
fileNumber: {
fileNumber: {
type: Number,
default: 1,
},
......@@ -79,36 +78,37 @@ export default {
// default: () => ["doc", "xls", "pdf", "xml"],
fileType: {
type: Array,
default:null,
default: null,
},
// 是否显示提示
isShowTip: {
type: Boolean,
default: true
default: true,
},
//保存服务器路径前缀地址
prePath: {
type: String,
default: '',
default: "",
},
//默认文件名称
//默认文件名称
fileName: {
type: String,
default: '',
}
default: "",
},
},
data() {
return {
number: 0,
baseUrl:process.env.VUE_APP_API_BASE_URL+'/',
uploadFileUrl: process.env.VUE_APP_API_BASE_URL+"/attendance/file/commonupload",
baseUrl: process.env.VUE_APP_API_BASE_URL + "/",
uploadFileUrl:
process.env.VUE_APP_API_BASE_URL + "/attendance/file/commonupload",
uploadList: [],
headers:{},
headers: {},
fileList: [],
}
};
},
/* watch: {
/* watch: {
value: {
handler(val) {
console.log("value",this.value);
......@@ -135,20 +135,19 @@ export default {
return this.isShowTip && (this.fileType || this.fileSize);
},
// 列表
list() {
list() {
let temp = 1;
if (this.value) {
console.log("value",this.value)
console.log("value", this.value);
// 首先将值转为数组
const list = Array.isArray(this.value) ? this.value : [this.value];
// 然后将数组转为对象数组
this.fileList = list.map(item => {
item = { name: item.name, url: item.url};
this.fileList = list.map((item) => {
item = { name: item.name, url: item.url };
item.uid = item.uid || new Date().getTime() + temp++;
return item;
});
return this.fileList;
return this.fileList;
} else {
this.fileList = [];
return [];
......@@ -170,7 +169,9 @@ export default {
return false;
});
if (!isTypeOk) {
this.$message.error(`文件格式不正确, 请上传${this.fileType.join("/")}格式文件!`);
this.$message.error(
`文件格式不正确, 请上传${this.fileType.join("/")}格式文件!`
);
return false;
}
}
......@@ -187,7 +188,7 @@ export default {
},
// 文件个数超出
handleExceed() {
this.$message.error(`上传文件数量不能超过 ${this.limit} 个!`);
this.$message.error(`上传文件数量不能超过 ${this.fileNumber} 个!`);
},
// 上传失败
handleUploadError(err) {
......@@ -197,7 +198,7 @@ export default {
handleUploadSuccess(res, file) {
if (res.code === 1) {
this.uploadList.push({ name: res.fileName, url: res.url });
console.log("uploadList:",this.uploadList)
console.log("uploadList:", this.uploadList);
if (this.uploadList.length === this.number) {
this.fileList = this.fileList.concat(this.uploadList);
this.uploadList = [];
......@@ -213,21 +214,21 @@ export default {
// this.$emit("getFileName", res.fileName);
},
// 删除文件
handleDelete(url,index) {
handleDelete(url, index) {
//todo 接口请求删除
this.value=this.value.filter(item=>item.url!=url)
this.value = this.value.filter((item) => item.url != url);
// this.fileList.splice(index, 1);
this.$emit("input", this.value);
this.$emit("input", this.value);
},
// 获取文件名称
getFileName(name) {
//console.log("name",name)
if (name&&name.lastIndexOf("/") > -1) {
if (name && name.lastIndexOf("/") > -1) {
return name.slice(name.lastIndexOf("/") + 1).toLowerCase();
} else {
return name;
}
}
},
},
created() {
//this.fileList = this.list;
......
......@@ -3,27 +3,127 @@
<el-dialog :title="title" :visible.sync="open" width="90%" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="120px">
<el-row>
<Field disabled label="请假人" prop="leavePerson" v-model="form.leavePerson" placeholder="请输入请假人"/>
<Field disabled label="所属部门" prop="deptName" v-model="form.deptName" type="textarea" placeholder="请输入所属部门"/>
<Field disabled label="电话号码" prop="phoneNumber" v-model="form.phoneNumber" placeholder="请输入电话号码"/>
<Field disabled label="请假类型" prop="leaveType" v-model="form.leaveType" type="select" :enumData="dict.leaveType" placeholder="请选择请假类型"/>
<Field disabled label="开始时间" prop="startTime" v-model="form.startTime" type="date" />
<Field disabled label="结束时间" prop="endTime" v-model="form.endTime" type="date" />
<Field disabled label="时长,单位秒" prop="duration" v-model="form.duration" placeholder="请输入时长,单位秒"/>
<Field disabled label="请假事由" prop="reason" v-model="form.reason" type="textarea" placeholder="请输入请假事由"/>
<Field disabled label="审批负责人" prop="approver" v-model="form.approver" placeholder="请输入审批负责人"/>
<Field disabled label="附件" prop="attachment" v-model="form.attachment" type="textarea" placeholder="请输入附件"/>
<Field disabled label="附件路径" prop="attachmentPath" v-model="form.attachmentPath" type="textarea" placeholder="请输入附件路径"/>
<Field disabled label="备注" prop="remark" v-model="form.remark" type="textarea" placeholder="请输入备注"/>
<Field disabled label="申请时间" prop="appealTime" v-model="form.appealTime" type="date" />
<Field label="审核结果" prop="auditResult" v-model="form.auditResult" type="radio" :enumData="dict.auditResult" placeholder="请选择审核结果"/>
<Field label="审核说明" prop="auditDesc" v-model="form.auditDesc" placeholder="请输入审核说明"/>
<Field
disabled
label="请假人"
prop="leavePerson"
v-model="form.leavePerson"
placeholder="请输入请假人"
/>
<Field
disabled
label="所属部门"
prop="deptName"
v-model="form.deptName"
type="textarea"
placeholder="请输入所属部门"
/>
<Field
disabled
label="电话号码"
prop="phoneNumber"
v-model="form.phoneNumber"
placeholder="请输入电话号码"
/>
<Field
disabled
label="请假类型"
prop="leaveType"
v-model="form.leaveType"
type="select"
:enumData="dict.leaveType"
placeholder="请选择请假类型"
/>
<Field
disabled
label="开始时间"
prop="startTime"
v-model="form.startTime"
type="date"
/>
<Field
disabled
label="结束时间"
prop="endTime"
v-model="form.endTime"
type="date"
/>
<Field
disabled
label="时长,单位秒"
prop="duration"
v-model="form.duration"
placeholder="请输入时长,单位秒"
/>
<Field
disabled
label="请假事由"
prop="reason"
v-model="form.reason"
type="textarea"
placeholder="请输入请假事由"
/>
<Field
disabled
label="审批负责人"
prop="approver"
v-model="form.approver"
placeholder="请输入审批负责人"
/>
<Field
disabled
label="附件"
prop="attachment"
v-model="form.attachment"
type="textarea"
placeholder="请输入附件"
/>
<Field
disabled
label="附件路径"
prop="attachmentPath"
v-model="form.attachmentPath"
type="textarea"
placeholder="请输入附件路径"
/>
<Field
disabled
label="备注"
prop="remark"
v-model="form.remark"
type="textarea"
placeholder="请输入备注"
/>
<Field
disabled
label="申请时间"
prop="appealTime"
v-model="form.appealTime"
type="date"
/>
<Field
label="审核结果"
prop="auditResult"
v-model="form.auditResult"
type="radio"
:enumData="dict.auditResult"
placeholder="请选择审核结果"
/>
<Field
label="审核说明"
prop="auditDesc"
v-model="form.auditDesc"
placeholder="请输入审核说明"
/>
</el-row>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" v-if="pageInfo.type !== 'view'" @click="submitForm">审 核</el-button>
<el-button
type="primary"
v-if="pageInfo.type !== 'view'"
@click="submitForm"
>审 核</el-button
>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
......@@ -35,7 +135,7 @@ import dialogShow from "./dialogshow";
export default {
mixins: [form],
components: {
dialogShow ,
dialogShow,
},
data() {
return {
......@@ -45,43 +145,38 @@ export default {
title: "请假记录信息",
// 是否显示弹出层
open: false,
// urls: { saveUrl: "/check/attend/record/examine" },
toString:[
"leaveType",
"auditResult",
"processStatus",
],
// urls: { saveUrl: "/check/attend/record/examine" },
toString: ["leaveType", "auditResult", "processStatus"],
// 表单校验
rules: {
}
rules: {},
};
},
methods: {
/** 编辑 */
edit(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="attendance/leave/record/edit";
this.urls.currUrl = "attendance/leave/record/edit";
this.getData();
this.pageInfo.type="edit"
this.pageInfo.type = "edit";
this.title = "修改请假记录信息";
},
/** 新增 */
add(row) {
this.reset()
this.reset();
this.urls.currUrl = "attendance/leave/record/add";
this.getData();
this.pageInfo.type="add"
this.pageInfo.type = "add";
this.title = "新增请假记录信息";
},
/** 查看*/
view(row) {
this.reset()
this.reset();
this.query = { id: row.id };
this.urls.currUrl ="attendance/leave/record/view";
this.urls.currUrl = "attendance/leave/record/view";
this.getData();
this.pageInfo.type="view"
this.pageInfo.type = "view";
this.title = "请假记录信息详细";
},
/**取消按钮 */
......@@ -94,8 +189,7 @@ export default {
},
beforeSubmit(data) {
data.processStatus=2;
data.processStatus = 2;
return data;
},
......@@ -107,26 +201,26 @@ export default {
// 表单重置
reset() {
this.form = {
leavePersonId : null,
leavePerson : "",
deptId : null,
deptName : "",
phoneNumber : "",
leaveType : null,
startTime : null,
endTime : null,
duration : null,
reason : "",
approverId : null,
approver : "",
attachment : "",
attachmentPath : "",
remark : "",
appealTime : null,
auditResult : null,
auditDesc : "",
auditTime : null,
processStatus : 1,
leavePersonId: null,
leavePerson: "",
deptId: null,
deptName: "",
phoneNumber: "",
leaveType: null,
startTime: null,
endTime: null,
duration: null,
reason: "",
approverId: null,
approver: "",
attachment: "",
attachmentPath: "",
remark: "",
appealTime: null,
auditResult: null,
auditDesc: "",
auditTime: null,
processStatus: 1,
};
this.resetForm("form");
},
......
......@@ -90,9 +90,13 @@
/>
</el-row>
<el-form-item label="附件路径" prop="attachmentPath">
<FileUpload @input="uploadFn" :value="attachmentPath" />
<FileUpload
@input="uploadFn"
:value="attachmentPath"
:fileNumber="1"
/>
</el-form-item>
<form-buttons @submit="beforeSubmit" noCancelBtn />
<form-buttons @submit="submitForm" noCancelBtn />
</el-form>
</div>
</el-drawer>
......@@ -132,7 +136,7 @@ export default {
{
validator: valid.phone,
message: "电话号码格式不正确",
trigger: ["change", "blur"],
trigger: "blur",
},
],
leaveType: [
......@@ -161,13 +165,13 @@ export default {
},
methods: {
beforeSubmit() {
if (this.form.endTime.valueOf() > this.form.startTime.valueOf()) {
this.submitForm();
} else {
this.$message.error("结束日期需大于请假日期");
}
},
// beforeSubmit() {
// if (this.form.endTime.valueOf() > this.form.startTime.valueOf()) {
// // this.submitForm();
// } else {
// this.$message.error("结束日期需大于请假日期");
// }
// },
uploadFn(e) {
this.attachmentPath = e;
this.form.attachmentPath = this.attachmentPath[0].url;
......
......@@ -318,6 +318,7 @@ export default {
.right_box {
flex: 1;
padding: 20px;
overflow: hidden;
.search_box {
width: 100%;
height: 60px;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment