Commit 9023b5f4 authored by 姬鋆屾's avatar 姬鋆屾

tui

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