Browse Source

管理后台 审核

y595705120 3 years ago
parent
commit
a69a4ba4f9

BIN
public/static/template/外出模板.xlsx


BIN
public/static/template/莅临模板.xlsx


+ 8 - 0
src/api/importOut.js

@@ -38,3 +38,11 @@ export const getImportOutInfoList = (data) => {
         data
     })
 }
+
+export const confirmImportOutInfoList = (data) => {
+    return service({
+        url: "/admin/confirmImportOutInfoList",
+        method: 'post',
+        data
+    })
+}

+ 8 - 0
src/api/importVisit.js

@@ -38,3 +38,11 @@ export const getImportVisitInfoList = (data) => {
         data
     })
 }
+
+export const confirmImportVisitInfoList = (data) => {
+    return service({
+        url: "/admin/confirmImportVisitInfoList",
+        method: 'post',
+        data
+    })
+}

+ 43 - 0
src/components/idata/IOutList.vue

@@ -0,0 +1,43 @@
+<template>
+  <div>
+    <el-table :data="tableData.slice( page*size-size, page*size)" border highlight-current-row style="width: 100%;margin-top:20px;">
+	  <el-table-column prop="username"    label="姓名" width="80" align="center"></el-table-column>
+	  <el-table-column prop="post"     	  label="职务" min-width="100" align="center"></el-table-column>
+	  <el-table-column prop="reasons"     min-width="160"  label="外出事由"></el-table-column>
+	  <el-table-column prop="fromDate"    label="外出时间" width="95"></el-table-column>
+	  <el-table-column prop="toDate"      label="回来时间" width="95"></el-table-column>
+	  <el-table-column prop="signName"    label="签批人1" min-width="90"></el-table-column>
+	  <el-table-column prop="signConfirm" label="签批人2" min-width="90"></el-table-column>
+	</el-table>
+	<el-pagination :current-page="page" 
+		:page-size="size" 
+		:page-sizes="[10,20,  50, 100]" 
+		:style="{ float: 'right', padding: '20px' }"
+		 :total="tableData.length" 
+		 @current-change="(page)=>{this.page= page}" 
+		 @size-change="(size)=>{this.size= size}" 
+		 layout="total, sizes, prev, pager, next, jumper">
+	</el-pagination>
+		
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'UploadExcel',
+  data() {
+    return {
+	  page:1,
+	  size:10
+    }
+  },
+  props:['tableData'],
+  methods: {
+	
+  }
+}
+</script>
+<style scoped=""></style>
+<style>
+	.message{ z-index: 1000 !important;}
+</style>

+ 45 - 0
src/components/idata/IVisitList.vue

@@ -0,0 +1,45 @@
+<template>
+  <div>
+    <el-table :data="tableData.slice( page*size-size, page*size)" border highlight-current-row style="width: 100%;margin-top:20px;">
+	  <el-table-column prop="username"   label="姓名" width="80" align="center"></el-table-column>
+	  <el-table-column prop="post"     	label="职务" width="100" align="center"></el-table-column>
+	  <el-table-column prop="tripSummary"     label="行程概要" min-width="120" align="center"></el-table-column>
+	  <el-table-column prop="accompany"      label="陪同情况" min-width="100" align="center"></el-table-column>
+	  <el-table-column prop="organUnit"  label="机关单位" width="100" align="center"></el-table-column>
+	  <el-table-column prop="recvDate"    label="来文日期" width="95"></el-table-column>
+	  <el-table-column prop="fromDate" 	label="莅临时间" width="95"></el-table-column>
+	  <el-table-column prop="toDate" 	 label="返程时间" width="95"></el-table-column>
+	  <el-table-column prop="proposed" 	label="拟办意见" min-width="90" align="center"></el-table-column>
+	</el-table>
+	<el-pagination :current-page="page" 
+		:page-size="size" 
+		:page-sizes="[10,20,  50, 100]" 
+		:style="{ float: 'right', padding: '20px' }"
+		 :total="tableData.length" 
+		 @current-change="(page)=>{this.page= page}" 
+		 @size-change="(size)=>{this.size= size}" 
+		 layout="total, sizes, prev, pager, next, jumper">
+	</el-pagination>
+		
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'UploadExcel',
+  data() {
+    return {
+	  page:1,
+	  size:10
+    }
+  },
+  props:['tableData'],
+  methods: {
+	
+  }
+}
+</script>
+<style scoped=""></style>
+<style>
+	.message{ z-index: 1000 !important;}
+</style>

+ 15 - 0
src/view/confirm/index.vue

@@ -0,0 +1,15 @@
+<template>
+  <div>
+    <keep-alive>
+      <router-view v-if="$route.meta.keepAlive"></router-view>
+    </keep-alive>
+    <router-view v-if="!$route.meta.keepAlive"></router-view>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "member",
+};
+</script>
+<style lang="scss"></style>

+ 113 - 0
src/view/confirm/out/index.vue

@@ -0,0 +1,113 @@
+<template>
+	<div>
+		<el-table :data="tableData" border stripe>
+			<el-table-column label="序号" min-width="60" prop="id" align="center"></el-table-column>
+			<el-table-column label="标题" prop="name" align="center" min-width="100"> </el-table-column>
+			<el-table-column label="上传人" width="80" prop="adminName" align="center"> </el-table-column>
+			<el-table-column label="上传时间" prop="createAt" align="center"> </el-table-column>
+			<el-table-column label="审核信息" prop="confrimName" align="center" min-width="100">
+				<template slot-scope="{row}">
+					<div v-if="row.confirmName">{{row.confirmName}} 审核时间:{{row.confirmAt}}</div>
+					<div v-else> 审核中</div>
+				</template>
+			</el-table-column>
+
+			<el-table-column align="center" min-width="80px" label="操作" class-name="small-padding fixed-width">
+				<template slot-scope="{row, $index}">
+					<el-button type="primary" size="small" @click="gotoDetail(row, $index)">查看</el-button>
+
+					<el-button v-if="row.confirmAdminId>0" type="text" size="small" style="color: green;">已审核
+					</el-button>
+
+					<el-popover placement="top" width="150" v-model="row._pass" v-else>
+						<p>审核通过,将同步到小程序端,您是否继续操作?</p>
+						<div style="text-align: center; margin: 0 auto">
+							<el-button size="mini" type="text" @click="row._pass = false">取消</el-button>
+							<el-button type="primary" size="mini" @click="confirmImport(row)">确定</el-button>
+						</div>
+						<el-button type="warning" style="margin-left: 10px;" size="small" slot="reference">审核
+						</el-button>
+					</el-popover>
+				</template>
+			</el-table-column>
+
+		</el-table>
+		<el-pagination :current-page="page" :page-size="size" :page-sizes="[10, 30, 50, 100]"
+			:style="{float:'right',padding:'20px'}" :total="total" @current-change="handleCurrentChange"
+			@size-change="handleSizeChange" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
+
+		<el-dialog title="外出数据" center :visible.sync="outDialog" :fullscreen="true">
+			<IOutList :tableData="importOutInfoList"> </IOutList>
+		</el-dialog>
+	</div>
+</template>
+
+<script>
+	import {getImportOutList,getImportOutInfoList, confirmImportOutInfoList} from "@/api/importOut.js";
+	import {
+		toDatetime
+	} from "@/utils/date"
+	import infoList from "@/mixins/infoList";
+	import IOutList from '@/components/idata/IOutList.vue'
+
+	export default {
+		name: "Api",
+		data() {
+			return {
+				listApi: getImportOutList,
+				importOutInfoList: [],
+				outDialog: false
+			};
+		},
+		components: {
+			IOutList
+		},
+		mixins: [infoList],
+		methods: {
+			//条件搜索前端看此方法
+			onSubmit() {
+				this.page = 1;
+				this.pageSize = 10;
+				this.getTableData();
+			},
+			confirmImport( row ){
+				let logId = row.id; 
+				confirmImportOutInfoList( {logId}).then( res=>{
+					if( res.code == 200){
+						this.$message.successMsg("审核通过", 2);
+						this.getTableData()
+					}
+				})
+			},
+			gotoDetail( row ) {
+			  let logId = row.id; 
+			  getImportOutInfoList({logId}).then( res=>{
+				  if( res.code == 200){
+					this.importOutInfoList = res.data||[];
+					this.outDialog = true;
+				  }
+			  })
+			}
+		},
+		created() {
+			this.getTableData();
+		}
+	};
+</script>
+<style scoped lang="scss">
+	.button-box {
+		padding: 10px 20px;
+
+		.el-button {
+			float: right;
+		}
+	}
+
+	.el-tag--mini {
+		margin-left: 5px;
+	}
+
+	.warning {
+		color: #dc143c;
+	}
+</style>

+ 127 - 0
src/view/confirm/visit/index.vue

@@ -0,0 +1,127 @@
+<template>
+  <div>
+    <el-table :data="tableData"  border stripe>
+      <el-table-column label="序号" min-width="60" prop="id" align="center"></el-table-column>
+      <el-table-column label="标题"  prop="name" align="center" min-width="100"> </el-table-column>
+	  <el-table-column label="上传人" width="80" prop="adminName" align="center"> </el-table-column>
+      <el-table-column label="上传时间"  prop="createAt" align="center"> </el-table-column>
+      <el-table-column label="审核信息"  prop="confrimName" align="center" min-width="100"> 
+		<template slot-scope="{row}">
+			<div v-if="row.confirmName">{{row.confirmName}} 审核时间:{{row.confirmAt}}</div>
+			<div v-else> 审核中</div>
+		</template>
+	  </el-table-column>
+	  
+      <el-table-column
+        align="center"
+        width="150px"
+        label="操作"
+        class-name="small-padding fixed-width"
+      >
+        <template slot-scope="{row, $index}">
+          <el-button
+            type="primary"
+            size="small"
+            @click="gotoDetail(row, $index)"
+          >查看</el-button>
+		  
+		  <el-button v-if="row.confirmAdminId>0"
+		    type="text"
+		    size="small"
+			style="color: green;"
+		  >已审核</el-button>
+		  
+		  <el-popover placement="top" width="150" v-model="row._pass" v-else >
+		  	<p>审核通过,将同步到小程序端,您是否继续操作?</p>
+		  	<div style="text-align: center; margin: 0 auto">
+		  		<el-button size="mini" type="text" @click="row._pass = false">取消</el-button>
+		  		<el-button type="primary" size="mini" @click="confirmImport(row)">确定</el-button>
+		  	</div>
+		  	<el-button type="warning" style="margin-left: 10px;" size="small" slot="reference">审核
+		  	</el-button>
+		  </el-popover>
+
+		  
+        </template>
+      </el-table-column>
+    </el-table>
+    <el-pagination
+      :current-page="page"
+      :page-size="size"
+      :page-sizes="[10, 30, 50, 100]"
+      :style="{float:'right',padding:'20px'}"
+      :total="total"
+      @current-change="handleCurrentChange"
+      @size-change="handleSizeChange"
+      layout="total, sizes, prev, pager, next, jumper"
+    ></el-pagination>
+	
+	<el-dialog title="莅临数据" center :visible.sync="visitDialog" :fullscreen="true">
+		<IVisitList :tableData="importVisitInfoList"> </IVisitList>
+	</el-dialog>
+	
+  </div>
+</template>
+
+<script>
+import {getImportVisitList, getImportVisitInfoList, confirmImportVisitInfoList} from "@/api/importVisit.js";
+import {toDatetime} from "@/utils/date"
+import infoList from "@/mixins/infoList";
+import IVisitList from '@/components/idata/IVisitList.vue'
+
+export default {
+  name: "Api",
+  data() {
+    return {
+	  listApi: getImportVisitList,
+	  importVisitInfoList: [],
+	  visitDialog: false
+    };
+  },
+  components:{ IVisitList},
+  mixins: [infoList],
+  methods: {
+    //条件搜索前端看此方法
+    onSubmit() {
+      this.page = 1;
+      this.pageSize = 10;
+      this.getTableData();
+    },
+	confirmImport( row ){
+		let logId = row.id; 
+		confirmImportVisitInfoList( {logId}).then( res=>{
+			if( res.code == 200){
+				this.$message.successMsg("审核通过", 2);
+				this.getTableData()
+			}
+		})
+	},
+    gotoDetail( row ) {
+	  let logId = row.id; 
+	  getImportVisitInfoList({logId}).then( res=>{
+		  if( res.code == 200){
+			this.importVisitInfoList = res.data||[];
+			this.visitDialog = true;
+		  }
+	  })
+    }
+  },
+  created() {
+    this.getTableData();
+  }
+};
+</script>
+<style scoped lang="scss">
+.button-box {
+  padding: 10px 20px;
+  .el-button {
+    float: right;
+  }
+}
+.el-tag--mini {
+  margin-left: 5px;
+}
+.warning {
+  color: #dc143c;
+}
+</style>

+ 89 - 24
src/view/data/out.vue

@@ -4,20 +4,20 @@
 			<el-form :inline="true" :model="searchInfo" class="demo-form-inline" label-width="100">
 				<el-row>
 					<el-form-item label="姓名" prop="username">
-						<el-input placeholder="请输入姓名" v-model="searchInfo.username" type="text" style="width: 120px;"
+						<el-input placeholder="请输入姓名" v-model="searchInfo.username" type="text" style="width: 115px;"
 							clearable></el-input>
 					</el-form-item>
 
 					<el-form-item label="职务" prop="post">
-						<el-input placeholder="请输入职务" v-model="searchInfo.post" type="text" style="width: 200px;"
+						<el-input placeholder="请输入职务" v-model="searchInfo.post" type="text" style="width: 140px;"
 							clearable></el-input>
 					</el-form-item>
 					<el-form-item label="开始时间" prop="post">
-						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 160px;"
+						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 130px;"
 							 v-model="searchInfo.fromDate" />
 					</el-form-item>
 					<el-form-item label="结束时间" prop="post">
-						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 160px;"
+						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 130px;"
 							v-model="searchInfo.toDate" />
 					</el-form-item>
 				</el-row>
@@ -25,28 +25,28 @@
 		</div>
 
 		<el-table :data="tableData" border stripe>
-			<el-table-column prop="username" label="姓名" width="120" align="center">
+			<el-table-column prop="username" label="姓名" width="90" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.username" />
 					<span v-else>{{row.username}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="post" label="职务" width="160">
+			<el-table-column prop="post" label="职务" min-width="110" align="center">
 				<template slot-scope="{row}">
-					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.post" />
+					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.post" />
 					<span v-else>{{row.post}}</span>
 				</template>
 			</el-table-column>
 
 
-			<el-table-column prop="fromDate" label="外出时间" width="130" align="center">
+			<el-table-column prop="fromDate" label="外出时间" width="95" align="center">
 				<template slot-scope="{row}">
 					<el-date-picker v-if="row.edit" value-format="yyyy-MM-dd" type="date" 
 						v-model="row.fromDate" />
 					<span v-else>{{row.fromDate}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="education" label="回来时间" width="130">
+			<el-table-column prop="education" label="回来时间" width="95" align="center">
 				<template slot-scope="{row}">
 					<el-date-picker v-if="row.edit" value-format="yyyy-MM-dd" type="date" 
 						v-model="row.toDate" />
@@ -54,25 +54,25 @@
 				</template>
 
 			</el-table-column>
-			<el-table-column prop="signName" label="签批人1" width="160">
+			<el-table-column prop="signName" label="签批人1" min-width="100" align="center">
 				<template slot-scope="{row}">
-					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.signName" />
+					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.signName" />
 					<span v-else>{{row.signName}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="signConfirm" label="签批人2" width="160">
+			<el-table-column prop="signConfirm" label="签批人2" min-width="100" align="center">
 				<template slot-scope="{row}">
-					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.signConfirm" />
+					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.signConfirm" />
 					<span v-else>{{row.signConfirm}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="reasons" label="外出事由" min-width="140">
+			<el-table-column prop="reasons" label="外出事由" min-width="130" align="center">
 				<template slot-scope="{row}">
-					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.reasons" />
+					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.reasons" />
 					<span v-else>{{row.reasons}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column align="center" width="160" label="操作" class-name="small-padding fixed-width">
+			<el-table-column align="center" width="126" label="操作" class-name="small-padding fixed-width">
 				<template slot-scope="{row, $index}">
 					<el-button v-if="row.edit" type="success" size="small" @click="confirmEdit(row, $index)">提交
 					</el-button>
@@ -82,7 +82,7 @@
 					<el-button v-if="!row.edit" type="primary" size="small" @click="initEdit(row, $index)">编辑
 					</el-button>
 
-					<el-popover placement="top" width="160" v-model="row._pass" v-if="!row.edit">
+					<el-popover placement="top" width="120" v-model="row._pass" v-if="!row.edit">
 						<p>删除之后服务器不保存信息?本操作不可逆,您是否继续操作</p>
 						<div style="text-align: center; margin: 0 auto">
 							<el-button size="mini" type="text" @click="row._pass = false">取消</el-button>
@@ -98,6 +98,37 @@
 		<el-pagination :current-page="page" :page-size="size" :page-sizes="[10, 30, 50, 100, 1000]"
 			:style="{ float: 'right', padding: '20px' }" :total="total" @current-change="(page)=>{this.page= page}"
 			@size-change="(size)=>{this.size= size}" layout="total, sizes, prev, pager, next, jumper"></el-pagination>
+	
+	
+		<el-dialog :visible.sync="addOutDialog" top="20px" title="编辑外出" center width="500px">
+		  <el-form :rules="rules" ref="addOut" :model="form" label-width="80px" >
+		    <el-form-item label="姓名" prop="username">
+		      <el-input v-model="form.username" ></el-input>
+		    </el-form-item>
+		    <el-form-item label="职务"  prop="post">
+		      <el-input v-model="form.post" ></el-input>
+		    </el-form-item>
+			<el-form-item label="外出时间"  prop="fromDate">
+			  <el-date-picker value-format="yyyy-MM-dd" type="date" v-model="form.fromDate" />
+			</el-form-item>
+			<el-form-item label="回来时间"  prop="toDate">
+			  <el-date-picker value-format="yyyy-MM-dd" type="date" v-model="form.toDate" />
+			</el-form-item>
+			<el-form-item label="签批人1"  prop="signName">
+			  <el-input v-model="form.signName"></el-input>
+			</el-form-item>
+			<el-form-item label="签批人2"  prop="signConfirm">
+			  <el-input v-model="form.signConfirm"></el-input>
+			</el-form-item>
+			<el-form-item label="外出事由"  prop="reasons">
+			  <el-input v-model="form.reasons" type="textarea"></el-input>
+			</el-form-item>
+		  </el-form>
+		  <div class="dialog-footer tc" slot="footer">
+		    <el-button @click="addOutDialog=false">取 消</el-button>
+		    <el-button @click="confirmEdit(form)" type="primary">确 定</el-button>
+		  </div>
+		</el-dialog>	
 	</div>
 </template>
 
@@ -117,6 +148,38 @@
 				page: 1,
 				size: 10,
 				total: 0,
+				addOutDialog: false,
+				form:{
+					id: 0,
+					fromDate: "",
+					toDate: "",
+					signName:'',
+					signConfirm:'',
+					reasons:'',
+					post: "",
+					username: ""
+				},
+				rules: {
+				  username: [
+				    { required: true, message: "请输入姓名", trigger: "blur" }
+				  ],
+				  post: [
+				    { required: true, message: "请输入职务", trigger: "blur" }
+				  ],
+				  reasons: [
+				    { required: true, message: "请输入外出事由", trigger: "blur" }
+				  ],
+				  toDate: [
+				    { required: true, message: "请输入返程时间", trigger: "blur" }
+				  ],
+				  fromDate: [
+				    { required: true, message: "请输入莅临时间", trigger: "blur" }
+				  ],
+				  signConfirm:[
+					  { required: true, message: "请输入签批人", trigger: "blur" }
+				  ]
+
+				},
 				searchInfo: {
 					username: '',
 					post: ''
@@ -147,17 +210,19 @@
 				delete(row["temp"]);
 			},
 			initEdit(row, index) {
-				let form = Object.assign({}, row);
-				row.edit = true;
-				row.temp = form;
+				this.form = Object.assign({}, row);
+				this.addOutDialog = true;
+			},
+			newVisit(){
+				this.form = {};
+				this.addOutDialog = true;
 			},
 			confirmEdit(row) {
-				let param = Object.assign({}, row);
-				delete param["temp"];
-				delete param["edit"];
+				let param = Object.assign({}, this.form);
 				editOutInfo(param).then(res => {
 					if (res.code == 200) {
-						row.edit = false;
+						this.getTableData();
+						this.addOutDialog = false;
 						this.$message.successMsg("修改成功", 1);
 					}
 				});

+ 9 - 9
src/view/data/visit.vue

@@ -9,15 +9,15 @@
 					</el-form-item>
 
 					<el-form-item label="职务" prop="post">
-						<el-input placeholder="请输入职务" v-model="searchInfo.post" type="text" style="width: 200px;"
+						<el-input placeholder="请输入职务" v-model="searchInfo.post" type="text" style="width: 130px;"
 							clearable></el-input>
 					</el-form-item>
 					<el-form-item label="开始时间" prop="post">
-						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 160px;"
+						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 130px;"
 							v-model="searchInfo.fromDate" />
 					</el-form-item>
 					<el-form-item label="结束时间" prop="post">
-						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 160px;"
+						<el-date-picker value-format="yyyy-MM-dd" type="date" style="width: 130px;"
 							v-model="searchInfo.toDate" />
 					</el-form-item>
 					
@@ -257,9 +257,9 @@
 				  post: [
 				    { required: true, message: "请输入职务", trigger: "blur" }
 				  ],
-				  accompany: [
-				    { required: true, message: "请输入陪同情况", trigger: "blur" }
-				  ],
+				  // accompany: [
+				  //   { required: true, message: "请输入陪同情况", trigger: "blur" }
+				  // ],
 				  recvDate: [
 				    { required: true, message: "请输入来文日期", trigger: "blur" }
 				  ],
@@ -275,9 +275,9 @@
 				  organUnit: [
 				    { required: true, message: "请输入来文单位", trigger: "blur" }
 				  ],
-				  proposed: [
-				    { required: true, message: "请输入拟办意见", trigger: "blur" }
-				  ]
+				  // proposed: [
+				  //   { required: true, message: "请输入拟办意见", trigger: "blur" }
+				  // ]
 				}
 			};
 		},

+ 36 - 23
src/view/import/out/index.vue

@@ -6,12 +6,6 @@
       </el-button>
     </div>
 
-    <div class="search-term">
-      <el-form :inline="true" :model="searchInfo" class="demo-form-inline">
-        
-      </el-form>
-    </div>
-
     <el-table :data="tableData"  border stripe>
       <el-table-column label="序号" min-width="60" prop="id">
 
@@ -23,20 +17,20 @@
         </template>
       </el-table-column>
 	  
-	  <el-table-column label="操作人" min-width="80" prop="adminName">
-	  
-	  </el-table-column>
+	 <el-table-column label="上传人" width="80" prop="adminName" align="center"> </el-table-column>
+	 <el-table-column label="上传时间" prop="createAt" align="center"> </el-table-column>
+	 <el-table-column label="审核信息" prop="confrimName" align="center" min-width="100">
+	 	<template slot-scope="{row}">
+	 		<div v-if="row.confirmName">{{row.confirmName}} 审核时间:{{row.confirmAt}}</div>
+	 		<div v-else> 审核中</div>
+	 	</template>
+	 </el-table-column>
+
 
-      <el-table-column label="提交时间"  prop="content">
-        <template slot-scope="{row}">  
-          <el-input v-if="row.edit" type="textarea" size="small" v-model="row.createAt" />
-          <span v-else>{{row.createAt}}</span>
-        </template>
-      </el-table-column>
       
       <el-table-column
         align="center"
-        min-width="80px"
+        width="130px"
         label="操作"
         class-name="small-padding fixed-width"
       >
@@ -44,10 +38,14 @@
           <el-button
             type="primary"
             size="small"
-            icon="el-icon-edit"
-            @click="gotoDetail(row, $index)"
-          >管理</el-button>
+            @click="getDetail(row, $index)"
+          >详情</el-button>
 		  
+		  <el-button
+		    type="warning"
+		    size="small"
+		    @click="gotoDetail(row, $index)"
+		  >管理</el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -66,25 +64,31 @@
 		<UploadModel @finish="finishImport"> </UploadModel>
 	</el-dialog>
 	
+	<el-dialog title="外出数据" center :visible.sync="outDialog" :fullscreen="true">
+		<IOutList :tableData="importOutInfoList"> </IOutList>
+	</el-dialog>
+	
   </div>
 </template>
 
 <script>
-import { getImportOutList} from "@/api/importOut.js";
+import { getImportOutList,getImportOutInfoList} from "@/api/importOut.js";
 import {toDatetime} from "@/utils/date"
 import infoList from "@/mixins/infoList";
 import UploadModel from './components/IUploadOut.vue'
+import IOutList from '@/components/idata/IOutList.vue'
 
 export default {
   name: "Api",
   data() {
     return {
 	  listApi: getImportOutList,
-	  openCourseDialog: false,
-      mixins: [infoList]
+	  importOutInfoList:[],
+	  outDialog: false,
+	  openCourseDialog: false
     };
   },
-  components:{ UploadModel},
+  components:{UploadModel, IOutList},
   mixins: [infoList],
   methods: {
     //条件搜索前端看此方法
@@ -97,6 +101,15 @@ export default {
 		this.openCourseDialog = false;
 		this.$router.push( {name:'import-out-info', query:{logId}})
 	},
+	getDetail( row ) {
+	  let logId = row.id; 
+	  getImportOutInfoList({logId}).then( res=>{
+		  if( res.code == 200){
+			this.importOutInfoList = res.data||[];
+			this.outDialog = true;
+		  }
+	  })
+	},
     gotoDetail( row ) {
 	  let logId = row.id; 
       this.$router.push( {name:'import-out-info', query:{logId}})

+ 33 - 21
src/view/import/visit/index.vue

@@ -6,12 +6,6 @@
       </el-button>
     </div>
 
-    <div class="search-term">
-      <el-form :inline="true" :model="searchInfo" class="demo-form-inline">
-        
-      </el-form>
-    </div>
-
     <el-table :data="tableData"  border stripe>
       <el-table-column label="序号" min-width="60" prop="id">
 
@@ -23,20 +17,19 @@
         </template>
       </el-table-column>
 	  
-	  <el-table-column label="操作人" min-width="80" prop="adminName">
-	  
+	  <el-table-column label="上传人" width="80" prop="adminName" align="center"> </el-table-column>
+	  <el-table-column label="上传时间" prop="createAt" align="center"> </el-table-column>
+	  <el-table-column label="审核信息" prop="confrimName" align="center" min-width="100">
+	  	<template slot-scope="{row}">
+	  		<div v-if="row.confirmName">{{row.confirmName}} 审核时间:{{row.confirmAt}}</div>
+	  		<div v-else> 审核中</div>
+	  	</template>
 	  </el-table-column>
-
-      <el-table-column label="提交时间"  prop="content">
-        <template slot-scope="{row}">  
-          <el-input v-if="row.edit" type="textarea" size="small" v-model="row.createAt" />
-          <span v-else>{{row.createAt}}</span>
-        </template>
-      </el-table-column>
+	  
       
       <el-table-column
         align="center"
-        min-width="80px"
+        width="130px"
         label="操作"
         class-name="small-padding fixed-width"
       >
@@ -44,10 +37,14 @@
           <el-button
             type="primary"
             size="small"
-            icon="el-icon-edit"
+            @click="getDetail(row, $index)"
+          >详情</el-button>
+          
+          <el-button
+            type="warning"
+            size="small"
             @click="gotoDetail(row, $index)"
           >管理</el-button>
-		  
         </template>
       </el-table-column>
     </el-table>
@@ -66,14 +63,19 @@
 		<UploadModel @finish="finishImport()"> </UploadModel>
 	</el-dialog>
 	
+	<el-dialog title="莅临数据" center :visible.sync="visitDialog" :fullscreen="true">
+		<IVisitList :tableData="importVisitInfoList"> </IVisitList>
+	</el-dialog>
+	
   </div>
 </template>
 
 <script>
-import { getImportVisitList} from "@/api/importVisit.js";
+import { getImportVisitList,getImportVisitInfoList} from "@/api/importVisit.js";
 import {toDatetime} from "@/utils/date"
 import infoList from "@/mixins/infoList";
 import UploadModel from './components/IUploadVisit.vue'
+import IVisitList from '@/components/idata/IVisitList.vue'
 
 export default {
   name: "Api",
@@ -81,10 +83,11 @@ export default {
     return {
 	  listApi: getImportVisitList,
 	  openCourseDialog: false,
-      mixins: [infoList]
+	  importVisitInfoList: [],
+	  visitDialog: false
     };
   },
-  components:{ UploadModel},
+  components:{ UploadModel,IVisitList},
   mixins: [infoList],
   methods: {
     //条件搜索前端看此方法
@@ -97,6 +100,15 @@ export default {
 		this.openCourseDialog = false;
 		this.$router.push( {name:'import-visit-info', query:{logId}})
 	},
+	getDetail( row ) {
+	  let logId = row.id; 
+	  getImportVisitInfoList({logId}).then( res=>{
+		  if( res.code == 200){
+			this.importVisitInfoList = res.data||[];
+			this.visitDialog = true;
+		  }
+	  })
+	},
     gotoDetail( row ) {
 	  let logId = row.id; 
       this.$router.push( {name:'import-visit-info', query:{logId}})

+ 17 - 17
src/view/import/visit/infoList.vue

@@ -4,19 +4,19 @@
 			<el-form :inline="true" :model="filterInfo" class="demo-form-inline" label-width="100">
 				<el-row>
 					<el-form-item label="姓名" prop="username" label-width="90">
-						<el-input placeholder="输入姓名" v-model="filterInfo.username" type="text" style="width: 210px;"
+						<el-input placeholder="输入姓名" v-model="filterInfo.username" type="text" style="width: 120px;"
 							clearable></el-input>
 					</el-form-item>
 
 					<el-form-item label="职务" prop="post">
-						<el-input placeholder="请输入职务" v-model="filterInfo.post" type="text" style="width: 270px;"
+						<el-input placeholder="请输入职务" v-model="filterInfo.post" type="text" style="width: 160px;"
 							clearable></el-input>
 					</el-form-item>
-					<el-form-item label="是否导入" prop="isPass">
-						<el-select v-model="filterInfo.isFinish" placeholder="请选择" style="width: 80px;">
+					<el-form-item label="审核通过" prop="isPass">
+						<el-select v-model="filterInfo.isFinish" placeholder="请选择" style="width: 100px;">
 							<el-option label="所有" :value="-1" />
-							<el-option label="成功" :value="1" />
-							<el-option label="失败" :value="0" />
+							<el-option label="审核通过" :value="1" />
+							<el-option label="审核失败" :value="0" />
 						</el-select>
 					</el-form-item>
 					<el-form-item>
@@ -29,71 +29,71 @@
 		</div>
 
 		<el-table :data="filterList.slice(page*size-size,page*size)" border stripe>
-			<el-table-column prop="username" label="姓名" width="100" align="center">
+			<el-table-column prop="username" label="姓名" width="90" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.username" />
 					<span v-else>{{row.username}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="post" label="职务" width="130">
+			<el-table-column prop="post" label="职务" width="130" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.post" />
 					<span v-else>{{row.post}}</span>
 				</template>
 			</el-table-column>
 			
-			<el-table-column prop="tripSummary" label="行程概要" width="160">
+			<el-table-column prop="tripSummary" label="行程概要" min-width="160" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" type="textarea" v-model="row.tripSummary" />
 					<span v-else>{{row.tripSummary}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="accompany" label="陪同情况" width="160">
+			<el-table-column prop="accompany" label="陪同情况" min-width="110" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.accompany" />
 					<span v-else>{{row.accompany}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="organUnit" label="机关单位" width="100">
+			<el-table-column prop="organUnit" label="机关单位" min-width="100" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.organUnit" />
 					<span v-else>{{row.organUnit}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="recvDate" label="来文日期" width="130">
+			<el-table-column prop="recvDate" label="来文日期" width="95" align="center">
 				<template slot-scope="{row}">
 					<el-date-picker v-if="row.edit" value-format="yyyy-MM-dd" type="date" 
 						v-model="row.recvDate" />
 					<span v-else>{{row.recvDate}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="fromDate" label="莅临时间" width="130" align="center">
+			<el-table-column prop="fromDate" label="莅临时间" width="95" align="center">
 				<template slot-scope="{row}">
 					<el-date-picker v-if="row.edit" value-format="yyyy-MM-dd" type="date" 
 						v-model="row.fromDate" />
 					<span v-else>{{row.fromDate}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="education" label="返程时间" width="130">
+			<el-table-column prop="education" label="返程时间" width="95">
 				<template slot-scope="{row}">
 					<el-date-picker v-if="row.edit" value-format="yyyy-MM-dd" type="date" 
 						v-model="row.toDate" />
 					<span v-else>{{row.toDate}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="marks" label="拟办意见">
+			<el-table-column prop="marks" label="拟办意见" min-width="100" align="center">
 				<template slot-scope="{row}">
 					<el-input v-if="row.edit" class="edit-input" size="small" v-model="row.proposed" />
 					<span v-else style="color: red;">{{row.proposed}}</span>
 				</template>
 			</el-table-column>
-			<el-table-column prop="marks" label="备注">
+			<el-table-column prop="marks" label="备注" width="80">
 				<template slot-scope="{row}">
 					<span>{{row.marks||'成功'}}</span>
 				</template>
 			</el-table-column>
 
-			<el-table-column align="center" width="160" label="操作" class-name="small-padding fixed-width">
+			<el-table-column align="center" width="130" label="操作" class-name="small-padding fixed-width">
 				<template slot-scope="{row, $index}">
 					<span v-if="row.isFinish" style="color: green;">已开通</span>
 					<div v-else>

+ 2 - 2
vue.config.js

@@ -4,8 +4,8 @@ const path = require('path')
 const buildConf = require('./build.config')
 const packageConf = require('./package.json')
 
-const HOST = "http://ndzxadmin.hqedust.com:8888"
-// const HOST = "http://localhost:8000"
+// const HOST = "http://ndzxadmin.hqedust.com:8888"
+const HOST = "http://localhost:8000"
 function resolve(dir) {
     return path.join(__dirname, dir)
 }