Sunny Feng 2 سال پیش
والد
کامیت
154b5192c5

+ 2 - 3
src/components/BillForm/BillForm.vue

xqd
@@ -298,9 +298,8 @@ export default {
   },
   methods: {
     addDrawer() {
-      this.$router.push({
-        path: '/form/addTicketdrawer'
-      })
+      // this.$router.go(-1)
+	  this.$router.push({path:'/form/addTicketdrawer'})
     },
     onDelete(index) {
       const contractDraftsLength = this.contractDrafts.length

+ 2 - 4
src/layout/components/Sidebar/SidebarItem.vue

xqd
@@ -99,10 +99,8 @@ export default {
 .svg-icon{
   width: 1.8em !important;
   margin-left: -3px;
-  margin-right: 10px !important;
-}
-::v-deep .el-menu-item.is-active > .el-tooltip i{
-      color: rgb(216, 171, 90) !important;
+  margin-right: 8px !important;
 }
 
+
 </style>

+ 3 - 0
src/layout/components/Sidebar/index.vue

xqd
@@ -73,4 +73,7 @@
     margin-top: 80px;
     margin-bottom: 25px;
   }
+  ::v-deep .el-menu-item.is-active > .el-tooltip i{
+      color: rgb(216, 171, 90) !important;
+}
 </style>

+ 337 - 337
src/router/index.js

xqd
@@ -6,397 +6,397 @@ import { getToken } from '@/utils/auth';
 Vue.use(Router)
 import Layout from '@/layout'
 export const constantRouterMap = [{
-		path: '/',
-		component: Layout,
-		redirect: {
-			name: 'login'
-		}
-	},
-	{
-		path: '/login',
-		name: 'login',
-		component: () => import('@/views/login/index')
-	},
-	{
-		path: '/register',
-		component: () => import('@/views/register/index')
-	},
-	{
+	path: '/',
+	component: Layout,
+	redirect: {
+		name: 'login'
+	}
+},
+{
+	path: '/login',
+	name: 'login',
+	component: () => import('@/views/login/index')
+},
+{
+	path: '/register',
+	component: () => import('@/views/register/index')
+},
+{
+	path: '/home',
+	component: Layout,
+	children: [{
 		path: '/home',
-		component: Layout,
-		children: [{
-			path: '/home',
-			component: () => import('@/views/home'),
-			hidden: true
-		}]
-	},
-	{
-		path: '/404',
-		component: () => import('@/views/404'),
+		component: () => import('@/views/home'),
 		hidden: true
-	}
+	}]
+},
+{
+	path: '/404',
+	component: () => import('@/views/404'),
+	hidden: true
+}
 ]
 export const asyncRouterMap = [{
-		path: '/contracts',
-		component: Layout,
-		name: 'Example',
-		meta: {
-			title: '合同列表',
-			icon: 'el-icon-s-order',
-			roles: ['admin', 'salesman', 'supplier']
-		},
-		redirect: {
-			name: 'contracts'
+	path: '/contracts',
+	component: Layout,
+	name: 'Example',
+	meta: {
+		title: '合同列表',
+		icon: 'el-icon-s-order',
+		roles: ['admin', 'salesman', 'supplier']
+	},
+	redirect: {
+		name: 'contracts'
+	},
+	children: [
+		{
+			path: 'contracts',
+			name: 'contracts',
+			component: () => import('@/views/contracts/index'),
+			meta: {
+				title: '合同列表',
+				icon: 'el-icon-s-order',
+				roles: ['admin', 'salesman', 'supplier']
+			}
 		},
-		children: [
-			{
-				path: 'contracts',
-				name: 'contracts',
-				component: () => import('@/views/contracts/index'),
-				meta: {
-					title: '合同列表',
-					icon: 'el-icon-s-order',
-					roles: ['admin', 'salesman', 'supplier']
-				}
-			},
-			{
-				path: '/detail',
-				name: 'detail',
-				component: () => import('@/views/contracts/detail'),
-				meta: {
-					title: '合同详情',
-					roles: ['admin', 'salesman', 'supplier']
-				},
-				hidden: true
+		{
+			path: '/detail',
+			name: 'detail',
+			component: () => import('@/views/contracts/detail'),
+			meta: {
+				title: '合同详情',
+				roles: ['admin', 'salesman', 'supplier']
 			},
-			// {
-			//   path: 'contracts/addcontract',
-			//   name: 'addcontract',
-			//   component: () => import('@/views/contracts/addcontract'),
-			//   meta: { title: '上传合同', roles: ['admin'] },
-			//   hidden: true
-			// },
+			hidden: true
+		},
+		// {
+		//   path: 'contracts/addcontract',
+		//   name: 'addcontract',
+		//   component: () => import('@/views/contracts/addcontract'),
+		//   meta: { title: '上传合同', roles: ['admin'] },
+		//   hidden: true
+		// },
 
-			{
-				path: 'contracts/addnewbill',
-				name: 'addnewbill',
-				component: () => import('@/views/contracts/addnewbill'),
-				meta: {
-					title: '新增汇票',
-					roles: ['admin', 'salesman', 'supplier']
-				},
-				hidden: true
+		{
+			path: 'contracts/addnewbill',
+			name: 'addnewbill',
+			component: () => import('@/views/contracts/addnewbill'),
+			meta: {
+				title: '新增汇票',
+				roles: ['admin', 'salesman', 'supplier']
 			},
-			{
-				path: 'contracts/billDetail',
-				name: 'billDetail',
-				component: () => import('@/views/contracts/billDetail'),
-				meta: {
-					title: '汇票详情',
-					roles: ['admin', 'salesman', 'supplier']
-				},
-				hidden: true
+			hidden: true
+		},
+		{
+			path: 'contracts/billDetail',
+			name: 'billDetail',
+			component: () => import('@/views/contracts/billDetail'),
+			meta: {
+				title: '汇票详情',
+				roles: ['admin', 'salesman', 'supplier']
 			},
-			{
-				path: 'contracts/addcontract',
-				name: 'addcontract',
-				component: () => import('@/views/contracts/new_file'),
-				meta: {
-					title: '新增合同',
-					roles: ['admin', 'salesman', 'supplier']
-				},
-				hidden: true
-			}
-		]
-	},
+			hidden: true
+		},
+		{
+			path: 'contracts/addcontract',
+			name: 'addcontract',
+			component: () => import('@/views/contracts/new_file'),
+			meta: {
+				title: '新增合同',
+				roles: ['admin', 'salesman', 'supplier']
+			},
+			hidden: true
+		}
+	]
+},
 
-	{
-		path: '/table',
-		component: Layout,
-		redirect: '/table',
-		name: 'Example',
+{
+	path: '/table',
+	component: Layout,
+	redirect: '/table',
+	name: 'Example',
+	meta: {
+		title: '承兑人列表',
+		icon: 'el-icon-s-help',
+		roles: ['admin', 'salesman']
+	},
+	children: [{
+		path: 'table',
+		name: 'Table',
+		component: () => import('@/views/table/index'),
 		meta: {
 			title: '承兑人列表',
 			icon: 'el-icon-s-help',
-			roles: ['admin', 'salesman']
+			roles: ['admin', 'salesman',]
+		}
+	},
+	{
+		path: '/table/addAcceptor',
+		name: 'Table',
+		component: () => import('@/views/table/addAcceptor'),
+		meta: {
+			title: '新增承兑人',
+			roles: ['admin', 'salesman',]
 		},
-		children: [{
-				path: 'table',
-				name: 'Table',
-				component: () => import('@/views/table/index'),
-				meta: {
-					title: '承兑人列表',
-					icon: 'el-icon-s-help',
-					roles: ['admin', 'salesman', ]
-				}
-			},
-			{
-				path: '/table/addAcceptor',
-				name: 'Table',
-				component: () => import('@/views/table/addAcceptor'),
-				meta: {
-					title: '新增承兑人',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			},
-			{
-				path: 'table/detail',
-				name: 'Table',
-				component: () => import('@/views/table/detail'),
-				meta: {
-					title: '承兑人详情',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			}
-		]
+		hidden: true
 	},
-
 	{
-    path: '/form',
-		component: Layout,
-		redirect: '/form',
+		path: 'table/detail',
+		name: 'Table',
+		component: () => import('@/views/table/detail'),
+		meta: {
+			title: '承兑人详情',
+			roles: ['admin', 'salesman',]
+		},
+		hidden: true
+	}
+	]
+},
+
+{
+	path: '/form',
+	component: Layout,
+	redirect: '/form',
+	meta: {
+		title: '出票人列表',
+		icon: 'el-icon-s-claim',
+		roles: ['admin', 'salesman']
+	},
+	children: [{
+		path: 'index',
+		name: 'Form',
+		component: () => import('@/views/form/index'),
 		meta: {
-			title: '出票人列表',
-			icon: 'form',
+			title: '出票人列表',
+      icon: 'el-icon-s-claim',
 			roles: ['admin', 'salesman','supplier']
+		}
+	},
+	{
+		path: '/form/addTicketdrawer',
+		name: 'addTicketdrawer',
+		component: () => import('@/views/form/addTicketdrawer'),
+		meta: {
+			title: '新增出票人',
+			roles: ['admin', 'salesman', 'supplier']
 		},
-		children: [{
-				path: 'index',
-				name: 'Form',
-				component: () => import('@/views/form/index'),
-				meta: {
-					title: '出票人列表',
-					icon: 'form',
-					roles: ['admin', 'salesman']
-				}
-			},
-			{
-				path: '/form/addTicketdrawer',
-				name: 'addTicketdrawer',
-				component: () => import('@/views/form/addTicketdrawer'),
-				meta: {
-					title: '新增出票人',
-					roles: ['admin', 'salesman', 'supplier']
-				},
-				hidden: true
-			},
-			{
-				path: '/form/detail',
-				name: 'detail',
-				component: () => import('@/views/form/detail'),
-				meta: {
-					title: '出票人详情',
-					roles: ['admin', 'salesman']
-				},
-				hidden: true
-			}
-		]
+		hidden: true
 	},
-
 	{
-		path: '/delivery',
-		component: Layout,
-		redirect: '/delivery',
+		path: '/form/detail',
+		name: 'detail',
+		component: () => import('@/views/form/detail'),
 		meta: {
-			title: '供应商账号',
+			title: '出票人详情',
 			roles: ['admin', 'salesman']
 		},
-		children: [{
-				path: 'index',
-				name: 'delivery',
-				component: () => import('@/views/delivery/index'),
-				meta: {
-					title: '供应商账号',
-					icon: 'el-icon-s-promotion',
-					roles: ['admin', 'salesman', ]
-				}
-			},
-			{
-				path: '/edit',
-				name: 'edit',
-				component: () => import('@/views/delivery/edit'),
-				meta: {
-					title: '编辑',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			}
-		]
-	},
+		hidden: true
+	}
+	]
+},
 
+{
+	path: '/delivery',
+	component: Layout,
+	redirect: '/delivery',
+	meta: {
+		title: '供应商账号',
+		roles: ['admin', 'salesman']
+	},
+	children: [{
+		path: 'index',
+		name: 'delivery',
+		component: () => import('@/views/delivery/index'),
+		meta: {
+			title: '供应商账号',
+			icon: 'el-icon-s-promotion',
+			roles: ['admin', 'salesman',]
+		}
+	},
 	{
-    path: '/shipments',
-		component: Layout,
-		redirect: '/shipments',
+		path: '/edit',
+		name: 'edit',
+		component: () => import('@/views/delivery/edit'),
 		meta: {
-			title: '报表统计',
-			roles: ['admin', 'salesman']
+			title: '详情',
+			roles: ['admin', 'salesman',]
 		},
-		children: [{
-				path: 'index',
-				name: 'shipments',
-				component: () => import('@/views/shipments/index'),
-				meta: {
-					title: '报表统计',
-					icon: 'el-icon-s-marketing',
-					roles: ['admin', 'salesman', ]
-				}
-			},
-			{
-				path: '/shipments1',
-				name: 'shipments1',
-				component: () => import('@/views/shipments/shipments1'),
-				meta: {
-					title: '出票人分类报表',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			},
-			{
-				path: '/shipments2',
-				name: 'shipments2',
-				component: () => import('@/views/shipments/shipments2'),
-				meta: {
-					title: '合同统计列表',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			},
-			{
-				path: '/shipments3',
-				name: 'shipments3',
-				component: () => import('@/views/shipments/shipments3'),
-				meta: {
-					title: '供应商统计列表',
-					roles: ['admin', 'salesman', ]
-				},
-				hidden: true
-			}
+		hidden: true
+	}
+	]
+},
 
-		]
+{
+	path: '/shipments',
+	component: Layout,
+	redirect: '/shipments',
+	meta: {
+		title: '报表统计',
+		roles: ['admin', 'salesman']
 	},
+	children: [{
+		path: 'index',
+		name: 'shipments',
+		component: () => import('@/views/shipments/index'),
+		meta: {
+			title: '报表统计',
+			icon: 'el-icon-s-marketing',
+			roles: ['admin', 'salesman',]
+		}
+	},
+	{
+		path: '/shipments1',
+		name: 'shipments1',
+		component: () => import('@/views/shipments/shipments1'),
+		meta: {
+			title: '出票人分类报表',
+			roles: ['admin', 'salesman',]
 
+		},
+		hidden: true
+	},
 	{
-    path: '/management',
-		component: Layout,
-		redirect: '/management',
+		path: '/shipments2',
+		name: 'shipments2',
+		component: () => import('@/views/shipments/shipments2'),
 		meta: {
-			title: '业务管理员',
-			roles: ['admin']
+			title: '合同统计列表',
+			roles: ['admin', 'salesman',]
 		},
-		children: [{
-				path: 'index',
-				name: 'management',
-				component: () => import('@/views/management/index'),
-				meta: {
-					title: '业务管理员',
-					icon: 'el-icon-s-management',
-					roles: ['admin']
-				}
-			},
-		]
+		hidden: true
 	},
-
 	{
-    path: '/sucuirtyaudit',
-		component: Layout,
-		redirect: '/sucuirtyaudit',
+		path: '/shipments3',
+		name: 'shipments3',
+		component: () => import('@/views/shipments/shipments3'),
 		meta: {
-			title: '安全审计',
-			roles: ['admin']
+			title: '供应商统计列表',
+			roles: ['admin', 'salesman',]
 		},
-		children: [{
-				path: 'index',
-				name: 'sucuirtyaudit',
-				component: () => import('@/views/sucuirtyaudit/index'),
-				meta: {
-					title: '安全审计',
-					icon: 'el-icon-s-check',
-					roles: ['admin']
-				}
-			},
-			{
-				path: '/annexList',
-				name: 'annexList',
-				component: () => import('@/views/sucuirtyaudit/annexList'),
-				meta: {
-					title: '附件列表',
-					roles: ['admin']
-				},
-				hidden: true
-			},
-			{
-				path: '/logdetail',
-				name: 'detail',
-				component: () => import('@/views/sucuirtyaudit/detail'),
-				meta: {
-					title: '审计日志详情',
-					roles: ['admin']
-				},
-				hidden: true
-			},
+		hidden: true
+	}
 
-			{
-				path: '/attachmentdetail',
-				name: 'attachmentdetail',
-				component: () => import('@/views/sucuirtyaudit/attachment-detail'),
-				meta: {
-					title: '附件列表详情',
-					roles: ['admin']
-				},
-				hidden: true
-			}
+	]
+},
 
-		]
+{
+	path: '/management',
+	component: Layout,
+	redirect: '/management',
+	meta: {
+		title: '业务管理员',
+		roles: ['admin']
+	},
+	children: [{
+		path: 'index',
+		name: 'management',
+		component: () => import('@/views/management/index'),
+		meta: {
+			title: '业务管理员',
+			icon: 'el-icon-s-management',
+			roles: ['admin']
+		}
 	},
+	]
+},
 
+{
+	path: '/sucuirtyaudit',
+	component: Layout,
+	redirect: '/sucuirtyaudit',
+	meta: {
+		title: '安全审计',
+		roles: ['admin']
+	},
+	children: [{
+		path: 'index',
+		name: 'sucuirtyaudit',
+		component: () => import('@/views/sucuirtyaudit/index'),
+		meta: {
+			title: '安全审计',
+			icon: 'el-icon-s-check',
+			roles: ['admin']
+		}
+	},
 	{
-    path: '/databackup',
-		component: Layout,
-		redirect: '/databackup',
+		path: '/annexList',
+		name: 'annexList',
+		component: () => import('@/views/sucuirtyaudit/annexList'),
 		meta: {
-			title: '数据备份',
+			title: '附件列表',
 			roles: ['admin']
 		},
-		children: [{
-			path: 'index',
-			name: 'databackup',
-			component: () => import('@/views/databackup/index'),
-			meta: {
-				title: '数据备份',
-				icon: 'el-icon-upload',
-				roles: ['admin']
-			}
-		}]
+		hidden: true
 	},
-
 	{
-    path: '/mine',
-		component: Layout,
-		redirect: '/mine',
+		path: '/logdetail',
+		name: 'detail',
+		component: () => import('@/views/sucuirtyaudit/detail'),
 		meta: {
-			title: '个人资料',
-			roles: ['admin', 'salesman', 'supplier']
+			title: '审计日志详情',
+			roles: ['admin']
 		},
-		children: [{
-			path: 'index',
-			name: 'mine',
-			component: () => import('@/views/mine/index'),
-			meta: {
-				title: '个人资料',
-				icon: 'el-icon-s-custom',
-				roles: ['admin', 'salesman', 'supplier']
-			}
-		}]
+		hidden: true
 	},
-
 	{
-		path: '*',
-		redirect: '/404',
+		path: '/attachmentdetail',
+		name: 'attachmentdetail',
+		component: () => import('@/views/sucuirtyaudit/attachment-detail'),
+		meta: {
+			title: '附件列表详情',
+			roles: ['admin']
+		},
 		hidden: true
 	}
+
+	]
+},
+
+{
+	path: '/databackup',
+	component: Layout,
+	redirect: '/databackup',
+	meta: {
+		title: '数据备份',
+		roles: ['admin']
+	},
+	children: [{
+		path: 'index',
+		name: 'databackup',
+		component: () => import('@/views/databackup/index'),
+		meta: {
+			title: '数据备份',
+			icon: 'el-icon-upload',
+			roles: ['admin']
+		}
+	}]
+},
+
+{
+	path: '/mine',
+	component: Layout,
+	redirect: '/mine',
+	meta: {
+		title: '个人资料',
+		roles: ['admin', 'salesman', 'supplier']
+	},
+	children: [{
+		path: 'index',
+		name: 'mine',
+		component: () => import('@/views/mine/index'),
+		meta: {
+			title: '个人资料',
+			icon: 'el-icon-s-custom',
+			roles: ['admin', 'salesman', 'supplier']
+		}
+	}]
+},
+
+{
+	path: '*',
+	redirect: '/404',
+	hidden: true
+}
 ]
 
 

+ 34 - 30
src/views/contracts/billDetail.vue

xqd xqd
@@ -64,36 +64,36 @@
         />
       </el-descriptions-item>
     </el-descriptions>
-
-    <el-row
-      v-permission="['salesman', 'admin']"
-      v-if="list[0].status === 0"
-      style="margin:20px">
-      <el-col>
-        <div class="titlesa" style="padding:10px">
-          <span>审核反馈</span>
-        </div>
-        <div>
-          <el-input
-            v-model="feed.feedback"
-            type="textarea"
-            placeholder="请输入审核反馈内容"
-            style="width: 200px"
-          />
-        </div>
-      </el-col>
-      <el-col>
-        <div class="titlesa" style="padding:10px">
-          <span>上传反馈截图</span>
-        </div>
-        <div>
-          <FileUpload
-          v-model="feed.feedbackPicList"
-          accept=".jpg, .jpeg, .png, .pdf"
-          />
-        </div>
-      </el-col>
-    </el-row>
+			<el-row
+			  v-permission="['salesman', 'admin']"
+			  v-if="list[0].status === 0"
+			  style="margin:20px;display: flex;justify-content: space-around;">
+			  <el-col>
+			    <div class="titlesa" style="padding:10px">
+			      <span>审核反馈</span>
+			    </div>
+			    <div>
+			      <el-input
+			        v-model="feed.feedback"
+			        type="textarea"
+			        placeholder="请输入审核反馈内容"
+			        style="width: 200px;"
+			      />
+			    </div>
+			  </el-col>
+			  <el-col>
+			    <div class="titlesa" style="padding:10px">
+			      <span>上传反馈截图</span>
+			    </div>
+			    <div>
+			      <FileUpload
+			      v-model="feed.feedbackPicList"
+			      accept=".jpg, .jpeg, .png, .pdf"
+			      />
+			    </div>
+			  </el-col>
+			</el-row>
+    
 
     <div class="btn">
       <el-button
@@ -207,8 +207,12 @@ export default {
 <style lang="scss" scoped>
 .btn {
   display: flex;
+  margin-left: 20px;
 }
 .bill-detail{
   padding: 20px;
 }
+::v-deep .el-textarea__inner{
+	min-height:145px !important;
+}
 </style>

+ 767 - 809
src/views/contracts/detail.vue

xqd
@@ -1,829 +1,787 @@
 <template>
-  <div>
-    <el-card class="box-card">
-      <el-col :xs="24" :sm="24" :md="10" :lg="10" :xl="12">
-        <div class="grid-content bg-purple">
-          <span style="font-weight: 600">合同基础信息</span>
-          <div class="titlein">
-            <span class="titlename">合同名称</span>
-            <span class="meatatitle">{{ contract.name }}</span>
-          </div>
-          <div class="titlein">
-            <span class="titlename">合同编号</span>
-            <span class="meatatitle">{{ contract.contractNo }}</span>
-          </div>
-          <div class="titlein">
-            <span class="titlename">合同附件</span>
-            <div style="display: flex">
-              <div class="imgbox">
-                <FileShow :files="contract.picList" />
-              </div>
-            </div>
-          </div>
-          <div class="titlein">
-            <span class="titlename">发票附件</span>
-            <div style="display: flex">
-              <div class="imgbox">
-                <FileShow :files="contract.invoicePicList" />
-              </div>
-            </div>
-          </div>
-        </div>
-      </el-col>
-      <el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="12">
-        <div class="jas">
-          <div class="titlein jas">
-            <span class="titlename">贸易合同</span>
-            <div style="display: flex">
-              <div class="imgbox">
-                <FileShow :files="contract.tradePicList" />
-              </div>
-            </div>
-          </div>
-          <div class="yusa jas">
-            <div class="boxas">
-              <span style="color: #fff">合同状态:</span>
-              <span style="color: #d05c39">{{
+	<div>
+		<el-card class="box-card">
+			<el-col :xs="24" :sm="24" :md="10" :lg="10" :xl="12">
+				<div class="grid-content bg-purple">
+					<span style="font-weight: 600">合同基础信息</span>
+					<div class="titlein">
+						<span class="titlename">合同名称</span>
+						<span class="meatatitle">{{ contract.name }}</span>
+					</div>
+					<div class="titlein">
+						<span class="titlename">合同编号</span>
+						<span class="meatatitle">{{ contract.contractNo }}</span>
+					</div>
+					<div class="titlein">
+						<span class="titlename">合同附件</span>
+						<div style="display: flex">
+							<div class="imgbox">
+								<FileShow :files="contract.picList" />
+							</div>
+						</div>
+					</div>
+					<div class="titlein">
+						<span class="titlename">发票附件</span>
+						<div style="display: flex">
+							<div class="imgbox">
+								<FileShow :files="contract.invoicePicList" />
+							</div>
+						</div>
+					</div>
+				</div>
+			</el-col>
+			<el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="12">
+				<div class="jas">
+					<div class="titlein jas">
+						<span class="titlename">贸易合同</span>
+						<div style="display: flex">
+							<div class="imgbox">
+								<FileShow :files="contract.tradePicList" />
+							</div>
+						</div>
+					</div>
+					<div class="yusa jas">
+						<div class="boxas">
+							<span style="color: #fff">合同状态:</span>
+							<span style="color: #d05c39">{{
                 contract.contractStatusText
               }}</span>
-            </div>
-            <span class="aoiisp"
-              >审核结果:
-              <p style="color: #d8ab5a">{{ contract.statusText }}</p></span
-            >
-          </div>
-
-          <!-- 审核反馈和审核截图框  -->
-          <div class="yusa">
-            <el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="10" class="jas">
-              <el-form ref="form" :model="contract" label-width="0px">
-                <span class="sah">审核反馈:</span>
-                <el-form-item label="">
-                  <el-input
-                    v-permission="['salesman', 'admin']"
-                    v-model="contract.feedback"
-                    type="textarea"
-                  />
-                  <div v-permission="['supplier']">{{ contract.feedback }}</div>
-                </el-form-item>
-              </el-form>
-            </el-col>
-            <el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="14" class="jas">
-              <span class="sah">审核截图:</span>
-              <div style="display: flex; justify-content: flex-end">
-                <div class="imgbox">
-                  <FileUpload
-                    v-permission="['salesman', 'admin']"
-                    v-model="contract.feedbackPics"
-                    accept=".jpg, .jpeg, .png, .pdf"
-                  />
-                  <FileShow
-                    v-permission="['supplier']"
-                    :files="contract.feedbackPics"
-                  />
-                </div>
-              </div>
-            </el-col>
-          </div>
-          <div slot="" class="clearfix">
-            <!-- <el-button
+						</div>
+						<span class="aoiisp">审核结果:
+							<p style="color: #d8ab5a">{{ contract.statusText }}</p>
+						</span>
+					</div>
+
+					<!-- 审核反馈和审核截图框  -->
+					<div class="yusa">
+						<el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="10" class="jas">
+							<el-form ref="form" :model="contract" label-width="0px">
+								<span class="sah">审核反馈:</span>
+								<el-form-item label="">
+									<el-input v-permission="['salesman', 'admin']" v-model="contract.feedback"
+										type="textarea" />
+									<div v-permission="['supplier']">{{ contract.feedback }}</div>
+								</el-form-item>
+							</el-form>
+						</el-col>
+						<el-col :xs="24" :sm="24" :md="14" :lg="14" :xl="14" class="jas">
+							<span class="sah">审核截图:</span>
+							<div style="display: flex; justify-content: flex-end">
+								<div class="imgbox">
+									<FileUpload v-permission="['salesman', 'admin']" v-model="contract.feedbackPics"
+										accept=".jpg, .jpeg, .png, .pdf" />
+									<FileShow v-permission="['supplier']" :files="contract.feedbackPics" />
+								</div>
+							</div>
+						</el-col>
+					</div>
+					<div slot="" class="clearfix">
+						<!-- <el-button
               type="primary"
               style="float: right; margin-left: 10px"
             >导出
             </el-button> -->
-            <el-button
-              v-if="contract.status !== 0 && contract.contractStatus === 0"
-              type="danger"
-              style="float: right"
-              @click="deletedContract"
-              >删除</el-button
-            >
-
-            <el-button
-              v-if="contract.contractStatus === 1"
-              type="primary"
-              style="float: right"
-              @click="recoverContract"
-              >恢复
-            </el-button>
-
-            <el-button
-              v-permission="['salesman', 'admin']"
-              type="warning"
-              style="float: right"
-              @click="failed"
-              >审核失败
-            </el-button>
-            <el-button
-              v-permission="['salesman', 'admin']"
-              type="success"
-              style="float: right"
-              @click="success"
-              >审核成功
-            </el-button>
-          </div>
-        </div>
-      </el-col>
-    </el-card>
-
-    <el-card class="box-card">
-      <el-table
-       :row-key="getRowKey"
-        v-loading="listLoading"
-        :data="temporaryList"
-        element-loading-text="Loading"
-        border
-        fit
-        highlight-current-row
-        @select="handleSelectionChange"
-        @select-all="handleAll"
-      >
-        <el-table-column align="center" label="" width="55" type="selection" :reserve-selection="true" />
-        <el-table-column label="汇票名称" align="center" prop="name" />
-        <el-table-column label="汇票编号" align="center" prop="draftNo" />
-        <el-table-column label="承兑人" align="center" prop="acceptorName" />
-        <el-table-column label="金额" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.money }}
-          </template>
-        </el-table-column>
-        <el-table-column label="服务费" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.serviceMoney }}
-          </template>
-        </el-table-column>
-        <el-table-column
-          label="汇票状态"
-          align="center"
-          prop="draftStatusText"
-        />
-        <el-table-column label="审核状态" align="center">
-          <template slot-scope="scope">
-            {{ scope.row.statusText }}
-          </template>
-        </el-table-column>
-        <el-table-column
-          align="center"
-          prop="created_at"
-          label="操作"
-          width="250"
-        >
-          <template slot-scope="scope">
-            <el-tag
-              v-permission="['salesman', 'admin']"
-              v-show="contract.status !== 0"
-              type="primary"
-              style="cursor: pointer; margin-right: 15px"
-              @click="tapDetail(scope.row.id)"
-              >查看详情</el-tag
-            >
-            <el-tag
-              v-permission="['supplier']"
-              type="primary"
-              style="cursor: pointer; margin-right: 15px"
-              @click="tapDetail(scope.row.id)"
-              >查看详情</el-tag
-            >
-            <el-tag
-              v-permission="['supplier']"
-              v-show="scope.row.status == 2"
-              type="success"
-              style="cursor: pointer; margin-right: 15px"
-              @click="addNewBill(scope.row.id)"
-              >重新提交</el-tag
-            >
-            <el-tag
-              v-if="scope.row.draftStatus == 1"
-              type="success"
-              style="margin-right: 15px; cursor: pointer"
-              @click="recover(scope.row.id)"
-              >恢复</el-tag
-            >
-            <el-tag
-              v-if="contract.status != 0 && scope.row.draftStatus == 0"
-              type="danger"
-              style="margin-right: 15px; cursor: pointer"
-              @click="deleted(scope.row.id)"
-              >删除</el-tag
-            >
-          </template>
-        </el-table-column>
-      </el-table>
-
-      <div class="pagesip">
-        <el-button
-          v-permission="['salesman', 'admin']"
-          v-show="contract.status !== 0"
-          type="primary"
-          @click="batSuccessed"
-          >审核成功</el-button
-        >
-        <el-button
-          v-permission="['salesman', 'admin']"
-          v-show="contract.status !== 0"
-          type="primary"
-          @click="batFailed"
-          >审核失败</el-button
-        >
-        <el-button
-          v-if="contract.status !== 0 && role === 2"
-          type="primary"
-          @click="addNewBill('')"
-        >
-          新增汇票</el-button
-        >
-
-        <el-button
-          v-if="contract.status !== 0"
-          type="success"
-          style="float: right"
-          @click="recoverContractDraft"
-          >恢复
-        </el-button>
-        <el-button
-          v-if="contract.status !== 0"
-          type="danger"
-          style="float: right"
-          @click="deletedContractDraft"
-          >删除</el-button
-        >
-        <el-button
-          type="primary"
-          style="float: right; margin-left: 10px"
-          @click="ExportsContractDraft"
-          >导出
-        </el-button>
-
-        <el-button
-          type="primary"
-          size="small"
-          style="
+						<el-button v-if="contract.status !== 0 && contract.contractStatus === 0" type="danger"
+							style="float: right" @click="deletedContract">删除</el-button>
+
+						<el-button v-if="contract.contractStatus === 1" type="primary" style="float: right"
+							@click="recoverContract">恢复
+						</el-button>
+
+						<el-button v-permission="['salesman', 'admin']" type="warning" style="float: right"
+							@click="failed">审核失败
+						</el-button>
+						<el-button v-permission="['salesman', 'admin']" type="success" style="float: right"
+							@click="success">审核成功
+						</el-button>
+					</div>
+				</div>
+			</el-col>
+		</el-card>
+
+		<el-card class="box-card">
+			<el-table :row-key="getRowKey" v-loading="listLoading" :data="temporaryList" element-loading-text="Loading"
+				border fit highlight-current-row @select="handleSelectionChange" @select-all="handleAll" ref="multipleTable">
+				<el-table-column align="center" label="" width="55" type="selection" :reserve-selection="true" />
+				<el-table-column label="汇票名称" align="center" prop="name" />
+				<el-table-column label="汇票编号" align="center" prop="draftNo" />
+				<el-table-column label="承兑人" align="center" prop="acceptorName" />
+				<el-table-column label="金额" align="center">
+					<template slot-scope="scope">
+						{{ scope.row.money }}
+					</template>
+				</el-table-column>
+				<el-table-column label="服务费" align="center">
+					<template slot-scope="scope">
+						{{ scope.row.serviceMoney }}
+					</template>
+				</el-table-column>
+				<el-table-column label="汇票状态" align="center" prop="draftStatusText" />
+				<el-table-column label="审核状态" align="center">
+					<template slot-scope="scope">
+						{{ scope.row.statusText }}
+					</template>
+				</el-table-column>
+				<el-table-column align="center" prop="created_at" label="操作" width="250">
+					<template slot-scope="scope">
+						<el-tag v-permission="['salesman', 'admin']" v-show="contract.status !== 0" type="primary"
+							style="cursor: pointer; margin-right: 15px" @click="tapDetail(scope.row.id)">查看详情</el-tag>
+						<el-tag v-permission="['supplier']" type="primary" style="cursor: pointer; margin-right: 15px"
+							@click="tapDetail(scope.row.id)">查看详情</el-tag>
+						<el-tag v-permission="['supplier']" v-show="scope.row.status == 2" type="success"
+							style="cursor: pointer; margin-right: 15px" @click="addNewBill(scope.row.id)">重新提交</el-tag>
+						<el-tag v-if="scope.row.draftStatus == 1" type="success"
+							style="margin-right: 15px; cursor: pointer" @click="recover(scope.row.id)">恢复</el-tag>
+						<el-tag v-if="contract.status != 0 && scope.row.draftStatus == 0" type="danger"
+							style="margin-right: 15px; cursor: pointer" @click="deleted(scope.row.id)">删除</el-tag>
+					</template>
+				</el-table-column>
+			</el-table>
+
+			<div class="pagesip">
+				<el-button v-permission="['salesman', 'admin']" v-show="contract.status !== 0" type="primary"
+					@click="batSuccessed">审核成功</el-button>
+				<el-button v-permission="['salesman', 'admin']" v-show="contract.status !== 0" type="primary"
+					@click="batFailed">审核失败</el-button>
+				<el-button v-if="contract.status !== 0 && role === 2" type="primary" @click="addNewBill('')">
+					新增汇票</el-button>
+
+				<el-button v-if="contract.status !== 0" type="success" style="float: right"
+					@click="recoverContractDraft">恢复
+				</el-button>
+				<el-button v-if="contract.status !== 0" type="danger" style="float: right"
+					@click="deletedContractDraft">删除</el-button>
+				<el-button type="primary" style="float: right; margin-left: 10px" @click="ExportsContractDraft">导出
+				</el-button>
+
+				<el-button type="primary" size="small" style="
             background-color: #d8ab5a;
             border-color: #d8ab5a;
             margin: 0 20px;
-          "
-          @click="jumpFirstPage"
-          >首页
-        </el-button>
-        <el-pagination
-          ref="pagination"
-          background
-          layout="prev, pager, next"
-          :total="list.length"
-          :page-size="10"
-          prev-text="上一页"
-          next-text="下一页"
-          :hide-on-single-page="false"
-          @current-change="handleCurrentChange"
-        />
-        <el-button
-          type="primary"
-          size="small"
-          style="
+          " @click="jumpFirstPage">首页
+				</el-button>
+				<el-pagination ref="pagination" background layout="prev, pager, next" :total="list.length"
+					:page-size="10" prev-text="上一页" next-text="下一页" :hide-on-single-page="false"
+					@current-change="handleCurrentChange" />
+				<el-button type="primary" size="small" style="
             background-color: #d8ab5a;
             border-color: #d8ab5a;
             margin: 0 20px;
-          "
-          @click="jumpLastPage"
-          >尾页
-        </el-button>
-        <el-button type="primary" size="small" @click="back">返回 </el-button>
-      </div>
-    </el-card>
-  </div>
+          " @click="jumpLastPage">尾页
+				</el-button>
+				<el-button type="primary" size="small" @click="back">返回 </el-button>
+			</div>
+		</el-card>
+	</div>
 </template>
 
 <script>
-import { dataConversionUtil } from "../../utils/Excel.js";
-import logo from "@/assets/pdf.png";
-export default {
-  data() {
-    return {
-      dialogVisible: false,
-      role: "",
-      srcList: [],
-      temporaryList: [],
-      list: [],
-      listLoading: false,
-      contract: {},
-      currentPage: 1,
-      multipleSelection: [],
-      pagesize: 9999,
-      form: "",
-      invoicePicList: [],
-      picList: [],
-      tradePicList: [],
-      pdf: logo,
-      /* 审核反馈和审核截图的数据 */
-      feed: {
-        id: "",
-        feedback: "",
-        feedbackPicList: [],
-        approveStatus: "",
-      },
-      exportExcelData1: [], //导出列表缓存数据整页
-      exportExcelData2: [], //导出列表缓存数据单选
-    };
-  },
-
-  mounted() {
-    this.role = this.$store.state.user.userInfo.type;
-    this.checked = this.$store.state.user.checked;
-    this.getData();
-  },
-  methods: {
-    // 批量审核汇票 成功
-    batSuccessed() {
-      const ids = Array.from(this.multipleSelection, ({ id }) => id);
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: ids,
-          operateType: 3,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-        } else {
-          this.$message({
-            type: "danger",
-            message: res.msg,
-          });
-        }
-
-        this.getData();
-      });
-    },
-    // 批量审核汇票失败
-    batFailed() {
-      const ids = Array.from(this.multipleSelection, ({ id }) => id);
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: ids,
-          operateType: 4,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-        } else {
-          this.$message({
-            type: "danger",
-            message: res.msg,
-          });
-        }
-
-        this.getData();
-      });
-    },
-    getData() {
-      const id = this.$route.query.id;
-      this.$request({
-        url: "/api/Contract/" + id,
-        method: "get",
-      }).then((res) => {
-        this.contract = res.data;
-        this.invoicePicList = this.contract.invoicePicList;
-        this.picList = this.contract.picList;
-        this.list = res.data.contractDraft.result;
-        this.tradePicList = this.contract.tradePicList;
-        this.getPageData();
-      });
-    },
-    isPDF(url) {
-      const fileType = ["pdf"];
-      const index = url.lastIndexOf(".");
-      const type = url.substr(index + 1);
-      return fileType.indexOf(type) === -1;
-    },
-    addNewBill(id) {
-      const cid = this.$route.query.id;
-      this.$router.push({
-        name: "addnewbill",
-        query: {
-          cid: cid,
-          id: id,
-        },
-      });
-    },
-    tapDetail(id) {
-      this.$router.push({
-        name: "billDetail",
-        query: {
-          id: id,
-        },
-      });
-    },
-
-    handleCurrentChange(val) {
-      this.currentPage = val;
-      this.getPageData();
-    },
-    jumpFirstPage() {
-      this.$refs.pagination.handleCurrentChange(1);
-      this.$emit("handleCurrentChange", 1);
-    },
-    jumpLastPage() {
-      const font = this.$refs.pagination;
-      const cpage = Math.ceil(font.total / font.pageSize);
-      font.handleCurrentChange(cpage);
-    },
-    getPageData() {
-      const start = (this.currentPage - 1) * this.pagesize;
-      const end = start + this.pagesize;
-      this.srcList = this.list.slice(start, end);
-      this.temporaryList = this.srcList;
-    },
-
-     getRowKey(row) {
-      return row.id;
-    },
-
-    /* 批量导出 */
-    handleAll(data) {
-      this.multipleSelection=data
-    },
-    handleSelectionChange(data) {
-			this.multipleSelection=data
-    },
-    /* 批量导出 */
-    ExportsContractDraft() {
-      if (this.multipleSelection == "") {
-        this.Exports()
-      } else {
-        var tableHeader = [
-          [
-            "序号",
-            "汇票名称",
-            "汇票编号",
-            "承兑人",
-            "金额",
-            "服务费",
-            "汇票状态",
-            "审核状态",
-          ],
-        ];
-        var dataList = [];
-        this.multipleSelection.forEach((item, index) => {
-          dataList.push([
-            index + 1,
-            item.name,
-            item.draftNo,
-            item.acceptorName,
-            item.money,
-            item.serviceMoney,
-            item.draftStatusText,
-            item.statusText,
-          ]);
-        });
-        dataConversionUtil.dataToExcel("汇票列表", tableHeader, dataList);
-        this.$message.success("导出成功!");
-      }
-    },
-    /* 全部导出 */
-    Exports() {
-      this.multipleSelection = this.temporaryList;
-      setTimeout(() => {
-        var tableHeader = [
-          [
-            "序号",
-            "汇票名称",
-            "汇票编号",
-            "承兑人",
-            "金额",
-            "服务费",
-            "汇票状态",
-            "审核状态",
-          ],
-        ];
-        var dataList = [];
-        this.multipleSelection.forEach((item, index) => {
-          dataList.push([
-            index + 1,
-            item.name,
-            item.draftNo,
-            item.acceptorName,
-            item.money,
-            item.serviceMoney,
-            item.draftStatusText,
-            item.statusText,
-          ]);
-        });
-        dataConversionUtil.dataToExcel("汇票列表", tableHeader, dataList);
-        this.$message.success("导出成功!");
-      }, 1000);
-    },
-
-    /* 审核成功发送请求  */
-    success() {
-      this.feed.feedback = this.contract.feedback;
-      /* 反馈图片赋值 */
-      this.feed.feedbackPicList = this.contract.feedbackPics;
-      /* 合同id赋值 */
-      this.feed.id = this.$route.query.id;
-      /* 反馈内容赋值 */
-      this.feed.approveStatus = 1;
-      this.$request({
-        url: "/api/Contract/approveContract",
-        method: "post",
-        data: this.feed,
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-
-    /* 审核失败发送请求  */
-    failed() {
-      this.feed.feedback = this.contract.feedback;
-      /* 反馈图片赋值 */
-      this.feed.feedbackPicList = this.contract.feedbackPics;
-      /* 合同id赋值 */
-      this.feed.id = this.$route.query.id;
-      this.feed.approveStatus = 2;
-      this.$request({
-        url: "/api/Contract/approveContract",
-        method: "post",
-        data: this.feed,
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    recoverContract() {
-      const id = this.$route.query.id;
-      this.$request({
-        url: "/api/Contract/manage",
-        method: "post",
-        data: {
-          ids: [id],
-          operateType: 2,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    deletedContract() {
-      const id = this.$route.query.id;
-      this.$request({
-        url: "/api/Contract/manage",
-        method: "post",
-        data: {
-          ids: [id],
-          operateType: 1,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    recoverContractDraft() {
-      const ids = Array.from(this.multipleSelection, ({ id }) => id);
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: ids,
-          operateType: 2,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    deletedContractDraft() {
-      const ids = Array.from(this.multipleSelection, ({ id }) => id);
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: ids,
-          operateType: 1,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    recover(id) {
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: [id],
-          operateType: 2,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    deleted(id) {
-      this.$request({
-        url: "/api/Contract/contractDraft/manager",
-        method: "post",
-        data: {
-          ids: [id],
-          operateType: 1,
-        },
-      }).then((res) => {
-        if (res.code === 200) {
-          this.$message({
-            type: "success",
-            message: res.msg,
-          });
-          this.getData();
-        } else {
-          this.$message({
-            type: "error",
-            message: "提交失败",
-          });
-          this.getData();
-        }
-      });
-    },
-    back() {
-      this.$router.go(-1);
-    },
-  },
-};
+	import {
+		dataConversionUtil
+	} from "../../utils/Excel.js";
+	import logo from "@/assets/pdf.png";
+	export default {
+		data() {
+			return {
+				dialogVisible: false,
+				role: "",
+				srcList: [],
+				temporaryList: [],
+				list: [],
+				listLoading: false,
+				contract: {},
+				currentPage: 1,
+				multipleSelection: [],
+				pagesize: 9999,
+				form: "",
+				invoicePicList: [],
+				picList: [],
+				tradePicList: [],
+				pdf: logo,
+				/* 审核反馈和审核截图的数据 */
+				feed: {
+					id: "",
+					feedback: "",
+					feedbackPicList: [],
+					approveStatus: "",
+				},
+				exportExcelData1: [], //导出列表缓存数据整页
+				exportExcelData2: [], //导出列表缓存数据单选
+			};
+		},
+
+		mounted() {
+			this.role = this.$store.state.user.userInfo.type;
+			this.checked = this.$store.state.user.checked;
+			this.getData();
+		},
+		methods: {
+			// 批量审核汇票 成功
+			batSuccessed() {
+				const ids = Array.from(this.multipleSelection, ({
+					id
+				}) => id);
+				let status = Array.from(this.multipleSelection, ({
+					status
+				}) => status)
+				if (status.includes(1)) {
+					this.$message({
+						type: 'error',
+						message: '未通过状态不能再次审核失败'
+					})
+				} else if (ids == "") {
+					this.$message({
+						type: 'error',
+						message: '请选择数据'
+					})
+				} else {
+					this.$request({
+						url: "/api/Contract/contractDraft/manager",
+						method: "post",
+						data: {
+							ids: ids,
+							operateType: 3,
+						},
+					}).then((res) => {
+						if (res.code === 200) {
+							this.$message({
+								type: "success",
+								message: res.msg,
+							});
+							this.$refs.multipleTable.clearSelection();
+							this.getData();
+						} else {
+		 				this.$message({
+								type: "danger",
+								message: res.msg,
+							});
+						}
+					});
+				}
+
+			},
+			// 批量审核汇票失败
+			batFailed() {
+				const ids = Array.from(this.multipleSelection, ({
+					id
+				}) => id);
+				let status = Array.from(this.multipleSelection, ({
+					status
+				}) => status)
+				if (status.includes(2)) {
+					this.$message({
+						type: 'error',
+						message: '未通过状态不能再次审核失败'
+					})
+				} else if (ids == "") {
+					this.$message({
+						type: 'error',
+						message: '请选择数据'
+					})
+				} else {
+					this.$request({
+						url: "/api/Contract/contractDraft/manager",
+						method: "post",
+						data: {
+							ids: ids,
+							operateType: 4,
+						},
+					}).then((res) => {
+						if (res.code === 200) {
+							this.$message({
+								type: "success",
+								message: res.msg,
+							});
+							this.$refs.multipleTable.clearSelection();
+							this.getData();
+						} else {
+							this.$message({
+								type: "danger",
+								message: res.msg,
+							});
+						}
+					});
+				}
+
+			},
+			getData() {
+				const id = this.$route.query.id;
+				this.$request({
+					url: "/api/Contract/" + id,
+					method: "get",
+				}).then((res) => {
+					this.contract = res.data;
+					this.invoicePicList = this.contract.invoicePicList;
+					this.picList = this.contract.picList;
+					this.list = res.data.contractDraft.result;
+					this.tradePicList = this.contract.tradePicList;
+					this.getPageData();
+				});
+			},
+			isPDF(url) {
+				const fileType = ["pdf"];
+				const index = url.lastIndexOf(".");
+				const type = url.substr(index + 1);
+				return fileType.indexOf(type) === -1;
+			},
+			addNewBill(id) {
+				const cid = this.$route.query.id;
+				this.$router.push({
+					name: "addnewbill",
+					query: {
+						cid: cid,
+						id: id,
+					},
+				});
+			},
+			tapDetail(id) {
+				this.$router.push({
+					name: "billDetail",
+					query: {
+						id: id,
+					},
+				});
+			},
+
+			handleCurrentChange(val) {
+				this.currentPage = val;
+				this.getPageData();
+			},
+			jumpFirstPage() {
+				this.$refs.pagination.handleCurrentChange(1);
+				this.$emit("handleCurrentChange", 1);
+			},
+			jumpLastPage() {
+				const font = this.$refs.pagination;
+				const cpage = Math.ceil(font.total / font.pageSize);
+				font.handleCurrentChange(cpage);
+			},
+			getPageData() {
+				const start = (this.currentPage - 1) * this.pagesize;
+				const end = start + this.pagesize;
+				this.srcList = this.list.slice(start, end);
+				this.temporaryList = this.srcList;
+			},
+
+			getRowKey(row) {
+				return row.id;
+			},
+
+			/* 批量导出 */
+			handleAll(data) {
+				this.multipleSelection = data
+				console.log(this.multipleSelection)
+			},
+			handleSelectionChange(data) {
+				this.multipleSelection = data
+				console.log(this.multipleSelection)
+			},
+			/* 批量导出 */
+			ExportsContractDraft() {
+				if (this.multipleSelection == "") {
+					this.Exports()
+				} else {
+					var tableHeader = [
+						[
+							"序号",
+							"汇票名称",
+							"汇票编号",
+							"承兑人",
+							"金额",
+							"服务费",
+							"汇票状态",
+							"审核状态",
+						],
+					];
+					var dataList = [];
+					this.multipleSelection.forEach((item, index) => {
+						dataList.push([
+							index + 1,
+							item.name,
+							item.draftNo,
+							item.acceptorName,
+							item.money,
+							item.serviceMoney,
+							item.draftStatusText,
+							item.statusText,
+						]);
+					});
+					dataConversionUtil.dataToExcel("汇票列表", tableHeader, dataList);
+					this.$message.success("导出成功!");
+				}
+			},
+			/* 全部导出 */
+			Exports() {
+				this.multipleSelection = this.temporaryList;
+				setTimeout(() => {
+					var tableHeader = [
+						[
+							"序号",
+							"汇票名称",
+							"汇票编号",
+							"承兑人",
+							"金额",
+							"服务费",
+							"汇票状态",
+							"审核状态",
+						],
+					];
+					var dataList = [];
+					this.multipleSelection.forEach((item, index) => {
+						dataList.push([
+							index + 1,
+							item.name,
+							item.draftNo,
+							item.acceptorName,
+							item.money,
+							item.serviceMoney,
+							item.draftStatusText,
+							item.statusText,
+						]);
+					});
+					dataConversionUtil.dataToExcel("汇票列表", tableHeader, dataList);
+					this.$message.success("导出成功!");
+				}, 1000);
+			},
+
+			/* 审核成功发送请求  */
+			success() {
+				this.feed.feedback = this.contract.feedback;
+				/* 反馈图片赋值 */
+				this.feed.feedbackPicList = this.contract.feedbackPics;
+				/* 合同id赋值 */
+				this.feed.id = this.$route.query.id;
+				/* 反馈内容赋值 */
+				this.feed.approveStatus = 1;
+				this.$request({
+					url: "/api/Contract/approveContract",
+					method: "post",
+					data: this.feed,
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+
+			/* 审核失败发送请求  */
+			failed() {
+				this.feed.feedback = this.contract.feedback;
+				/* 反馈图片赋值 */
+				this.feed.feedbackPicList = this.contract.feedbackPics;
+				/* 合同id赋值 */
+				this.feed.id = this.$route.query.id;
+				this.feed.approveStatus = 2;
+				this.$request({
+					url: "/api/Contract/approveContract",
+					method: "post",
+					data: this.feed,
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+			recoverContract() {
+				const id = this.$route.query.id;
+				this.$request({
+					url: "/api/Contract/manage",
+					method: "post",
+					data: {
+						ids: [id],
+						operateType: 2,
+					},
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+			deletedContract() {
+				const id = this.$route.query.id;
+				this.$request({
+					url: "/api/Contract/manage",
+					method: "post",
+					data: {
+						ids: [id],
+						operateType: 1,
+					},
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+			recoverContractDraft() {
+				const ids = Array.from(this.multipleSelection, ({
+					id
+				}) => id);
+				let status=Array.from(this.multipleSelection,({draftStatus})=>draftStatus)
+				if(status.includes(0)){
+					this.$message({
+						type:'error',
+						message:'正常状态不能再次恢复'
+					})
+				}else if(ids==""){
+					this.$message({
+						type:'error',
+						message:'请选择数据'
+					})
+				}else{
+					this.$request({
+						url: "/api/Contract/contractDraft/manager",
+						method: "post",
+						data: {
+							ids: ids,
+							operateType: 2,
+						},
+					}).then((res) => {
+						if (res.code === 200) {
+							this.$message({
+								type: "success",
+								message: res.msg,
+							});
+							this.$refs.multipleTable.clearSelection();
+							this.getData();
+						} else {
+							this.$message({
+								type: "error",
+								message: "提交失败",
+							});
+							this.getData();
+						}
+					});
+				}
+				
+			},
+			deletedContractDraft() {
+				const ids = Array.from(this.multipleSelection, ({
+					id
+				}) => id);
+				let status=Array.from(this.multipleSelection,({draftStatus})=>draftStatus)
+				if(status.includes(1)){
+					this.$message({
+						type:'error',
+						message:'删除状态不能再次删除'
+					})
+				}else if(ids==""){
+					this.$message({
+						type:'error',
+						message:'请选择数据'
+					})
+				}else{
+					this.$request({
+						url: "/api/Contract/contractDraft/manager",
+						method: "post",
+						data: {
+							ids: ids,
+							operateType: 1,
+						},
+					}).then((res) => {
+						if (res.code === 200) {
+							this.$message({
+								type: "success",
+								message: res.msg,
+							});
+							this.$refs.multipleTable.clearSelection();
+							this.getData();
+						} else {
+							this.$message({
+								type: "error",
+								message: "提交失败",
+							});
+							this.getData();
+						}
+					});
+				}
+				
+			},
+			recover(id) {
+				this.$request({
+					url: "/api/Contract/contractDraft/manager",
+					method: "post",
+					data: {
+						ids: [id],
+						operateType: 2,
+					},
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+			deleted(id) {
+				this.$request({
+					url: "/api/Contract/contractDraft/manager",
+					method: "post",
+					data: {
+						ids: [id],
+						operateType: 1,
+					},
+				}).then((res) => {
+					if (res.code === 200) {
+						this.$message({
+							type: "success",
+							message: res.msg,
+						});
+						this.getData();
+					} else {
+						this.$message({
+							type: "error",
+							message: "提交失败",
+						});
+						this.getData();
+					}
+				});
+			},
+			back() {
+				this.$router.go(-1);
+			},
+		},
+	};
 </script>
 
 <style lang="scss" scoped>
-.box-card {
-  width: 98%;
-  margin: 0 auto;
-  margin-top: 10px;
-}
-
-.el-textarea__inner {
-  padding: 30px 0;
-}
-
-.imgbox {
-  margin-left: 15px;
-}
-
-.titlein {
-  display: flex;
-  justify-content: space-between;
-  margin: 20px 0;
-
-  .titlename {
-    color: #bebdbb;
-  }
-
-  .meatatitle {
-    color: #1f242a;
-  }
-}
-
-.yusa {
-  display: flex;
-}
-
-.jas {
-  margin: 20px 20px;
-  margin-bottom: 0;
-}
-
-.sah {
-  display: block;
-  color: #68625b;
-  padding-bottom: 10px;
-}
-
-.grid-content {
-  margin: 15px 20px;
-}
-
-.bors {
-  height: 100%;
-}
-
-.aoiisp {
-  margin-left: 20px;
-  display: flex;
-  align-items: center;
-}
-
-.pagesip {
-  width: 100%;
-  margin: 20px auto;
-  display: flex;
-  // align-items: center;
-  justify-content: flex-end;
-}
-
-.el-pagination.is-background .el-pager li:not(.disabled).active {
-  background-color: #d8ab5a;
-}
-
-.el-col {
-  margin-bottom: 20px;
-}
-
-.boxas {
-  font-size: 18px;
-  width: 211px;
-  height: 40px;
-  background: linear-gradient(to right, #ffe1ad, #d8ab5a);
-  box-shadow: 0 10px 20px 1px rgba(179, 116, 5, 0.2);
-  border-radius: 0 26px 26px 0;
-  line-height: 40px;
-  text-align: center;
-}
-.el-button--danger{
-  margin-left: 10px;
-}
-::v-deep .el-textarea__inner{
-height: 150px !important;
-
-}
+	.box-card {
+		width: 98%;
+		margin: 0 auto;
+		margin-top: 10px;
+	}
+
+	.el-textarea__inner {
+		padding: 30px 0;
+	}
+
+	.imgbox {
+		margin-left: 15px;
+	}
+
+	.titlein {
+		display: flex;
+		justify-content: space-between;
+		margin: 20px 0;
+
+		.titlename {
+			color: #bebdbb;
+		}
+
+		.meatatitle {
+			color: #1f242a;
+		}
+	}
+
+	.yusa {
+		display: flex;
+	}
+
+	.jas {
+		margin: 20px 20px;
+		margin-bottom: 0;
+	}
+
+	.sah {
+		display: block;
+		color: #68625b;
+		padding-bottom: 10px;
+	}
+
+	.grid-content {
+		margin: 15px 20px;
+	}
+
+	.bors {
+		height: 100%;
+	}
+
+	.aoiisp {
+		margin-left: 20px;
+		display: flex;
+		align-items: center;
+	}
+
+	.pagesip {
+		width: 100%;
+		margin: 20px auto;
+		display: flex;
+		// align-items: center;
+		justify-content: flex-end;
+	}
+
+	.el-pagination.is-background .el-pager li:not(.disabled).active {
+		background-color: #d8ab5a;
+	}
+
+	.el-col {
+		margin-bottom: 20px;
+	}
+
+	.boxas {
+		font-size: 18px;
+		width: 211px;
+		height: 40px;
+		background: linear-gradient(to right, #ffe1ad, #d8ab5a);
+		box-shadow: 0 10px 20px 1px rgba(179, 116, 5, 0.2);
+		border-radius: 0 26px 26px 0;
+		line-height: 40px;
+		text-align: center;
+	}
+
+	.el-button--danger {
+		margin-left: 10px;
+	}
+
+	::v-deep .el-textarea__inner {
+		height: 150px !important;
+
+	}
 </style>

+ 1 - 0
src/views/contracts/new_file.vue

xqd
@@ -186,6 +186,7 @@ export default {
                 type: 'success',
                 message: '合同上传成功'
               })
+							this.$router.go(-1)
             }
           })
         } else {

+ 12 - 9
src/views/form/index.vue

xqd xqd xqd xqd xqd
@@ -93,7 +93,7 @@
 			</el-table-column>
 			<el-table-column label="出票人名称" align="center" prop="name">
 			</el-table-column>
-			<el-table-column label="账号" align="center" prop="bankAccount">
+			<el-table-column label="银行账号" align="center" prop="bankAccount">
 			</el-table-column>
 			<el-table-column align="center" prop="bankName" label="开户行名称">
 			</el-table-column>
@@ -251,11 +251,11 @@
 				});
 			},
 
-			addTicketdrawer() {
-				this.$router.push({
-					path: "/form/addTicketdrawer",
-				});
-			},
+			// addTicketdrawer() {
+			// 	this.$router.push({
+			// 		path: "/form/addTicketdrawer",
+			// 	});
+			// },
 			todetail(id) {
 				console.log(id);
 				this.$router.push({
@@ -428,7 +428,7 @@
         });
       } else if (
         this.tableData.bankAccount.length < 5 ||
-        this.tableData.bankAccount > 20
+        this.tableData.bankAccount.length > 20
       ) {
         this.$message({
           type: "error",
@@ -458,7 +458,7 @@
     },
     // 新增出票人弹窗
     addTicketdrawer() {
-      if (this.form.bankAccount.length < 5 || this.form.bankAccount > 20) {
+      if (this.form.bankAccount.length < 5 || this.form.bankAccount.length > 20) {
         this.$message({
           type: "error",
           message: "银行账号必须为5~20位!",
@@ -470,7 +470,10 @@
           data: this.form,
         }).then((res) => {
           if (res.code === 200) {
-            this.$message("添加成功!");
+            this.$message({
+				type:'success',
+				message:'添加成功'
+			});
             this.getAllList();
             this.dialogVisible2 = false;
           } else {

+ 1 - 0
src/views/login/index.vue

xqd
@@ -158,6 +158,7 @@ export default {
     },
   },
   mounted() {
+		console.log("发布日期为:2022.8.8 15:38")
     if (this.$route.query.checked) {
       this.checked = this.$route.query.checked;
     }

+ 1 - 0
src/views/management/index.vue

xqd
@@ -67,6 +67,7 @@
       element-loading-text="Loading"
       border
       fit
+	  ref="multipleTable"
       highlight-current-row
       @selection-change="handleSelectionChange"
       @select-all="handleAll"

+ 44 - 7
src/views/mine/index.vue

xqd xqd xqd xqd xqd xqd
@@ -112,11 +112,14 @@
 							<el-input v-model="salesmanform.realName" class="ipwidth" />
 						</el-form-item>
 						<el-form-item label="账号" >
-							<el-input v-model="salesmanform.account" class="ipwidth" />
+							<el-input v-model="salesmanform.account" class="ipwidth"  disabled/>
 						</el-form-item>
 						<el-form-item label="联系电话" >
 							<el-input v-model="salesmanform.mobile" class="ipwidth"  onkeyup="value=value.replace(/^\D*(\d*(?:\.\d{0,2})?).*$/g, '$1')"/>
 						</el-form-item>
+						<el-form-item label="" >
+							<el-button type="primary" @click="modify">保存修改</el-button>
+						</el-form-item>
 					</el-form>
 					<el-collapse v-model="password" style="width: 90%;float: right;">
 						<el-collapse-item title="修改密码" name="1">
@@ -128,9 +131,7 @@
 								show-password></el-input>
 							<el-button type="primary" @click="onSubmit">确认修改</el-button>
 						</el-collapse-item>
-						<el-collapse-item title="忘记密码">
-							<div>请联系系统管理员</div>
-						</el-collapse-item>
+						
 					</el-collapse>
 				</el-col>
 			</el-col>
@@ -170,6 +171,7 @@
 					realName:'',
 					account:'',
 					mobile:'',
+					id:'',
 				},
 				password: {
 					oldPassword: '',
@@ -199,8 +201,11 @@
 					url: '/api/Account',
 					method: 'get'
 				}).then((res) => {
-					console.log(res)
 					this.salesmanform = res.data
+					this.salesmanform.id=this.id
+					this.startform = {
+						...this.salesmanform
+					}
 				})
 			}
 		},
@@ -277,7 +282,7 @@
 				this.proxyFileArray.push(file);
 				this.form.proxyFile = this.proxyFileArray;
 			},
-			// 修改个人信息
+			// 修改供应商个人信息
 			update() {
 				if(JSON.stringify(this.startform)===JSON.stringify(this.form)){
 					this.$message({
@@ -309,7 +314,39 @@
 						}
 					})
 				}
-				
+			},
+			// 修改业务管理员个人信息
+			modify() {
+				if(JSON.stringify(this.startform)===JSON.stringify(this.salesmanform)){
+					this.$message({
+						type:'error',
+						message:'数据没有改变'
+					})
+				}else if(this.salesmanform.mobile.length!==11){
+					this.$message({
+						type:'error',
+						message:'联系电话必须11位'
+					})
+				}else{
+					this.$request({
+						url: '/api/Account/update',
+						method: 'post',
+						data: this.salesmanform
+					}).then((res) => {
+						if (res.code === 200) {
+							this.$message({
+								type: 'success',
+								message: '修改成功!'
+							})
+							this.startform={...this.salesmanform}
+						} else {
+							this.$message({
+								type: 'error',
+								message: '修改失败!'
+							})
+						}
+					})
+				}
 			},
 		},
 	}

+ 10 - 10
src/views/register/index.vue

xqd xqd xqd xqd xqd
@@ -108,10 +108,10 @@
             label-position="left"
           >
             <div class="title-container">
-              <p class="title">供商注册</p>
+              <p class="title">供商注册</p>
             </div>
             <el-form-item prop="name">
-              <span class="svg-container"> 供商 </span>
+              <span class="svg-container"> 供商 </span>
               <el-input
                 ref="name"
                 v-model="providerForm.name"
@@ -222,7 +222,7 @@
                   认证照片
                 </span>
                 <div class="boximg">
-                  <el-upload
+                  <!-- <el-upload
                     action="https://api.xrongm.com/api/File"
                     list-type="picture-card"
                     :on-success="handleAvatarSuccess"
@@ -232,11 +232,11 @@
 
                   <el-dialog :visible.sync="dialogVisible">
                     <img width="100%" :src="providerForm.identifyPics" alt="" />
-                  </el-dialog>
-				  <!-- <FileUpload
+                  </el-dialog> -->
+				  <FileUpload
 				  v-model="providerForm.identifyPics"
 				  accept=".jpg, .jpeg, .png, .pdf"
-				  /> -->
+				  />
                 </div>
                 <p class="usa">*注意上传法人手持身份证半身照</p>
               </el-form-item>
@@ -261,7 +261,7 @@
                   点击获取授权委托书
                 </span>
                 <div class="boximg">
-                 <el-upload
+                 <!-- <el-upload
                     action="https://api.xrongm.com/api/File"
                     list-type="picture-card"
                     :on-success="handleSuccess"
@@ -270,11 +270,11 @@
                   </el-upload>
                   <el-dialog :visible.sync="dialogVisible">
                     <img width="100%" :src="providerForm.proxyFile" alt="" />
-                  </el-dialog>
-				 <!-- <FileUpload
+                  </el-dialog> -->
+				 <FileUpload
 				  v-model="providerForm.proxyFile"
 				  accept=".jpg, .jpeg, .png, .pdf"
-				  /> -->
+				  />
                 </div>
                 <p class="usa">*注意上传法人签署的授权委托书</p>
               </el-form-item>

+ 0 - 3
src/views/shipments/shipments1.vue

xqd
@@ -147,9 +147,6 @@ export default {
       status: "",
       hpstatus: "",
       input4: "",
-      currentPage: 1,
-      pagesize: 11,
-
       pickerOptions: {
         shortcuts: [
           {

+ 1 - 2
src/views/table/index.vue

xqd xqd
@@ -160,7 +160,6 @@
 
     <el-table
       :row-key="getRowKey"
-      
       v-loading="listLoading"
       :data="temporaryList"
       element-loading-text="Loading"
@@ -378,7 +377,7 @@ export default {
     },
 
     addAcceptor() {
-		if(this.form.bankAccount.length<5||this.form.bankAccount>20){
+		if(this.form.bankAccount.length<5||this.form.bankAccount.length>20){
 			this.$message({
 			  type: "error",
 			  message: "银行账号必须为5~20位!",