Преглед на файлове

物料档案、企业档案

AlanWong преди 2 години
родител
ревизия
2e3ae208d1

+ 113 - 0
src/views/audit/Information/index.vue

@@ -0,0 +1,113 @@
+<template>
+	<div class="information">
+		<div style="margin: 0 0 30px 40px;">
+			<by-tool :propConfig="toolConfig" @clickHandle="clickHandle" />
+		</div>
+		<div class="clearfix">
+			<div class="field-box">
+				<div class="left-field">机构名称:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">机构负责人:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">供应商id:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">分销商id:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">联系电话:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">手机号码:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">电子邮箱:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">类型(字典):</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">状态:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">邮编:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">联系地址:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">纳税人识别号:</div>
+				<div class="right-field">123</div>
+			</div>
+			<div class="field-box">
+				<div class="left-field">备注:</div>
+				<div class="right-field">123</div>
+			</div>
+		</div>
+
+	</div>
+</template>
+
+<script lang="ts">
+	import { Component, Vue } from "vue-property-decorator";
+	@Component
+	export default class Information extends Vue {
+		toolConfig = {
+			tools: {
+				add:true,
+				export: true,
+				search: true,
+				refresh: true
+			}
+		}
+		clickHandle(e : string) {
+			console.log(e);
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.information {
+		padding: 50px 30px 50px 0px;
+	}
+
+	.field-box {
+		width: 25%;
+		float: left;
+		margin-bottom: 60px;
+	}
+
+	.field-box:nth-of-type(4n) {
+		margin-right: 0;
+	}
+
+	.left-field {
+		float: left;
+		width: 120px;
+		text-align: right;
+		line-height: 22px;
+		color: #333;
+		// word-wrap: break-word; // 换行
+	}
+
+	.right-field {
+		float: left;
+		width: calc(100% - 120px);
+		line-height: 22px;
+		color: #333;
+		border-bottom: 1px solid #ddd;
+	}
+</style>

+ 282 - 0
src/views/audit/archivePage/index.vue

@@ -0,0 +1,282 @@
+<template>
+	<div class="bill">
+		<div class="bill-left">
+			<div class="bill-tab">
+				<div class="title">导航</div>
+				<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
+			</div>
+
+		</div>
+		<div class="bill-main">
+			<div class="bill-box" :class="{'on-show':showTab == 'bill'}">
+				<moduleView style="padding: 0 16px 16px;" :propConfig="config" @clickHandle="clickHandle" />
+			</div>
+		</div>
+	</div>
+</template>
+<script lang="ts">
+	import { Component, Prop, Vue, Watch } from "vue-property-decorator";
+	import VueViews from '@/benyun/compVue/VueViews'
+	import moduleView from "@/benyun/components/moduleView/moduleView.vue";
+	@Component({ components: { moduleView } })
+	export default class ArchivePage extends VueViews {
+		showTab = "bill"
+		data : any = [{
+			label: '一级 1',
+			id: '1',
+			children: [{
+				label: '二级 1-1',
+				id: '2',
+				children: [{
+					id: '3',
+					label: '三级 1-1-1'
+				}]
+			}]
+		}, {
+			label: '一级 2',
+			id: '2',
+			children: [{
+				label: '二级 2-1',
+				id: '1',
+				children: [{
+					label: '三级 2-1-1',
+					id: '3',
+				}]
+			}, {
+				label: '二级 2-2',
+				id: '1',
+				children: [{
+					label: '三级 2-2-1',
+					id: '3',
+				}]
+			}]
+		}, {
+			label: '一级 3',
+			id: '3',
+			children: [{
+				label: '二级 3-1',
+				id: '2',
+				children: [{
+					label: '三级 3-1-1',
+					id: '1'
+				}]
+			}, {
+				label: '二级 3-2',
+				id: '1',
+				children: [{
+					label: '三级 3-2-1',
+					id: '2'
+				}]
+			}]
+		}]
+		defaultProps : any = {
+			children: 'children',
+			label: 'label'
+		}
+		config : any = {
+			search: {
+				attr: {
+					size: 'mini',
+					rules: {
+						name: [{
+							required: true, message: '请输入名称', trigger: 'blur'
+						}]
+					}
+				},
+				columns: [
+					[{
+						span: 6,
+						label: '创建时间',
+						prop: 'created',
+						component: 'by-date-picker',
+						compConfig: {
+							format: 'yyyy-MM-dd',
+							type: 'datetime'
+						}
+					}]
+				]
+			},
+			tool: {
+				tools: {
+					add: true,
+					edit: true,
+					delete: true,
+					export: true,
+					search: true,
+					refresh: true
+				},
+				audit: {
+					add: 'audit:collaborationLog:add',
+					edit: 'audit:collaborationLog:edit',
+					delete: 'audit:collaborationLog:remove',
+					export: 'audit:collaborationLog:export'
+				}
+			},
+			table: {
+				attr: {
+					size: 'mini',
+					seq: true,
+					align: 'center',
+					checkbox: true
+				},
+				columns: [{
+					title: '创建时间',
+					field: 'created'
+				},
+				{
+					title: '订单号',
+					field: 'order_no'
+				},
+				{
+					title: '订单类型',
+					field: 'order_type'
+				},
+				{
+					title: '操作',
+					action: true,
+					plugins: [{
+						icon: 'el-icon-edit',
+						name: '编辑',
+						audit: '',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item)
+							}
+						}
+					}, {
+						name: '查看',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item);
+								console.log('this:', this)
+							}
+						}
+					}]
+				}]
+			},
+			request: {
+				url: '/system/audit/collaborationLog'
+			}
+		}
+
+		created() {
+
+		}
+		handleNodeClick(e : any) {
+			if (e.id == '1') {
+
+			}
+		}
+		//左侧tab切换
+		tabChange(t : string) {
+			this.showTab = t;
+		}
+		search(v : any, n : string) {
+			this.$emit('search', {
+				type: n,
+				value: v
+			})
+		}
+		clickHandle(e : any, name : any) {
+			console.log(e, name);
+		}
+
+	}
+</script>
+<style lang="scss" scoped>
+	.bill {
+		width: 100%;
+		height: 990px;
+		box-sizing: border-box;
+		display: flex;
+		padding: 16px;
+
+		.bill-left {
+			position: relative;
+			border-right: solid #EEE 1px;
+			padding-right: 16px;
+			flex-shrink: 0;
+
+			// box-sizing: border-box;
+			.bill-tab {
+				width: 200px;
+				height: 100%;
+				transition: all .5s;
+				overflow: hidden;
+			}
+
+			.title {
+				font-size: 16px;
+				padding-bottom: 16px;
+				width: 200px;
+			}
+
+			.bill-nav {
+				font-size: 14px;
+				height: 30px;
+				line-height: 30px;
+				width: 200px;
+				box-sizing: border-box;
+				padding: 0 8px;
+				cursor: pointer;
+				margin-bottom: 2px;
+				border-radius: 5px;
+			}
+
+			.onBill {
+				background-color: #bde3f7;
+			}
+
+			.bill-nav:hover {
+				background-color: #bde3f7;
+			}
+
+			.close {
+				height: 22px;
+				width: 22px;
+				border-radius: 50%;
+				border: solid #EEE 1px;
+				position: absolute;
+				top: 30px;
+				right: -11px;
+				background-color: #FFF;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+				cursor: pointer;
+			}
+		}
+
+		.bill-main {
+			width: calc(100% - 16px);
+			box-sizing: border-box;
+			margin-left: 16px;
+			position: relative;
+
+			.bill-box {
+				width: 100%;
+				position: absolute;
+				left: 0;
+				top: 0;
+				opacity: 0;
+				z-index: -1;
+				transition: all .5s;
+
+				.bill-tool,
+				.table-tool {
+					width: 100%;
+					padding-bottom: 16px;
+				}
+
+				.form {
+					margin-bottom: 8px;
+				}
+			}
+
+			.on-show {
+				opacity: 1;
+				z-index: 1;
+			}
+		}
+	}
+</style>

+ 282 - 0
src/views/audit/productClassification/index.vue

@@ -0,0 +1,282 @@
+<template>
+	<div class="bill">
+		<div class="bill-left">
+			<div class="bill-tab">
+				<div class="title">导航</div>
+				<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
+			</div>
+
+		</div>
+		<div class="bill-main">
+			<div class="bill-box" :class="{'on-show':showTab == 'bill'}">
+				<moduleView style="padding: 0 16px 16px;" :propConfig="config" @clickHandle="clickHandle" />
+			</div>
+		</div>
+	</div>
+</template>
+<script lang="ts">
+	import { Component, Prop, Vue, Watch } from "vue-property-decorator";
+	import VueViews from '@/benyun/compVue/VueViews'
+	import moduleView from "@/benyun/components/moduleView/moduleView.vue";
+	@Component({ components: { moduleView } })
+	export default class ArchivePage extends VueViews {
+		showTab = "bill"
+		data : any = [{
+			label: '一级 1',
+			id: '1',
+			children: [{
+				label: '二级 1-1',
+				id: '2',
+				children: [{
+					id: '3',
+					label: '三级 1-1-1'
+				}]
+			}]
+		}, {
+			label: '一级 2',
+			id: '2',
+			children: [{
+				label: '二级 2-1',
+				id: '1',
+				children: [{
+					label: '三级 2-1-1',
+					id: '3',
+				}]
+			}, {
+				label: '二级 2-2',
+				id: '1',
+				children: [{
+					label: '三级 2-2-1',
+					id: '3',
+				}]
+			}]
+		}, {
+			label: '一级 3',
+			id: '3',
+			children: [{
+				label: '二级 3-1',
+				id: '2',
+				children: [{
+					label: '三级 3-1-1',
+					id: '1'
+				}]
+			}, {
+				label: '二级 3-2',
+				id: '1',
+				children: [{
+					label: '三级 3-2-1',
+					id: '2'
+				}]
+			}]
+		}]
+		defaultProps : any = {
+			children: 'children',
+			label: 'label'
+		}
+		config : any = {
+			search: {
+				attr: {
+					size: 'mini',
+					rules: {
+						name: [{
+							required: true, message: '请输入名称', trigger: 'blur'
+						}]
+					}
+				},
+				columns: [
+					[{
+						span: 6,
+						label: '创建时间',
+						prop: 'created',
+						component: 'by-date-picker',
+						compConfig: {
+							format: 'yyyy-MM-dd',
+							type: 'datetime'
+						}
+					}]
+				]
+			},
+			tool: {
+				tools: {
+					add: true,
+					edit: true,
+					delete: true,
+					export: true,
+					search: true,
+					refresh: true
+				},
+				audit: {
+					add: 'audit:collaborationLog:add',
+					edit: 'audit:collaborationLog:edit',
+					delete: 'audit:collaborationLog:remove',
+					export: 'audit:collaborationLog:export'
+				}
+			},
+			table: {
+				attr: {
+					size: 'mini',
+					seq: true,
+					align: 'center',
+					checkbox: true
+				},
+				columns: [{
+					title: '创建时间',
+					field: 'created'
+				},
+				{
+					title: '订单号',
+					field: 'order_no'
+				},
+				{
+					title: '订单类型',
+					field: 'order_type'
+				},
+				{
+					title: '操作',
+					action: true,
+					plugins: [{
+						icon: 'el-icon-edit',
+						name: '编辑',
+						audit: '',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item)
+							}
+						}
+					}, {
+						name: '查看',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item);
+								console.log('this:', this)
+							}
+						}
+					}]
+				}]
+			},
+			request: {
+				url: '/system/audit/collaborationLog'
+			}
+		}
+
+		created() {
+
+		}
+		handleNodeClick(e : any) {
+			if (e.id == '1') {
+
+			}
+		}
+		//左侧tab切换
+		tabChange(t : string) {
+			this.showTab = t;
+		}
+		search(v : any, n : string) {
+			this.$emit('search', {
+				type: n,
+				value: v
+			})
+		}
+		clickHandle(e : any, name : any) {
+			console.log(e, name);
+		}
+
+	}
+</script>
+<style lang="scss" scoped>
+	.bill {
+		width: 100%;
+		height: 990px;
+		box-sizing: border-box;
+		display: flex;
+		padding: 16px;
+
+		.bill-left {
+			position: relative;
+			border-right: solid #EEE 1px;
+			padding-right: 16px;
+			flex-shrink: 0;
+
+			// box-sizing: border-box;
+			.bill-tab {
+				width: 200px;
+				height: 100%;
+				transition: all .5s;
+				overflow: hidden;
+			}
+
+			.title {
+				font-size: 16px;
+				padding-bottom: 16px;
+				width: 200px;
+			}
+
+			.bill-nav {
+				font-size: 14px;
+				height: 30px;
+				line-height: 30px;
+				width: 200px;
+				box-sizing: border-box;
+				padding: 0 8px;
+				cursor: pointer;
+				margin-bottom: 2px;
+				border-radius: 5px;
+			}
+
+			.onBill {
+				background-color: #bde3f7;
+			}
+
+			.bill-nav:hover {
+				background-color: #bde3f7;
+			}
+
+			.close {
+				height: 22px;
+				width: 22px;
+				border-radius: 50%;
+				border: solid #EEE 1px;
+				position: absolute;
+				top: 30px;
+				right: -11px;
+				background-color: #FFF;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+				cursor: pointer;
+			}
+		}
+
+		.bill-main {
+			width: calc(100% - 16px);
+			box-sizing: border-box;
+			margin-left: 16px;
+			position: relative;
+
+			.bill-box {
+				width: 100%;
+				position: absolute;
+				left: 0;
+				top: 0;
+				opacity: 0;
+				z-index: -1;
+				transition: all .5s;
+
+				.bill-tool,
+				.table-tool {
+					width: 100%;
+					padding-bottom: 16px;
+				}
+
+				.form {
+					margin-bottom: 8px;
+				}
+			}
+
+			.on-show {
+				opacity: 1;
+				z-index: 1;
+			}
+		}
+	}
+</style>

+ 282 - 0
src/views/audit/productManagement/index.vue

@@ -0,0 +1,282 @@
+<template>
+	<div class="bill">
+		<div class="bill-left">
+			<div class="bill-tab">
+				<div class="title">导航</div>
+				<el-tree :data="data" :props="defaultProps" @node-click="handleNodeClick"></el-tree>
+			</div>
+
+		</div>
+		<div class="bill-main">
+			<div class="bill-box" :class="{'on-show':showTab == 'bill'}">
+				<moduleView style="padding: 0 16px 16px;" :propConfig="config" @clickHandle="clickHandle" />
+			</div>
+		</div>
+	</div>
+</template>
+<script lang="ts">
+	import { Component, Prop, Vue, Watch } from "vue-property-decorator";
+	import VueViews from '@/benyun/compVue/VueViews'
+	import moduleView from "@/benyun/components/moduleView/moduleView.vue";
+	@Component({ components: { moduleView } })
+	export default class ArchivePage extends VueViews {
+		showTab = "bill"
+		data : any = [{
+			label: '一级 1',
+			id: '1',
+			children: [{
+				label: '二级 1-1',
+				id: '2',
+				children: [{
+					id: '3',
+					label: '三级 1-1-1'
+				}]
+			}]
+		}, {
+			label: '一级 2',
+			id: '2',
+			children: [{
+				label: '二级 2-1',
+				id: '1',
+				children: [{
+					label: '三级 2-1-1',
+					id: '3',
+				}]
+			}, {
+				label: '二级 2-2',
+				id: '1',
+				children: [{
+					label: '三级 2-2-1',
+					id: '3',
+				}]
+			}]
+		}, {
+			label: '一级 3',
+			id: '3',
+			children: [{
+				label: '二级 3-1',
+				id: '2',
+				children: [{
+					label: '三级 3-1-1',
+					id: '1'
+				}]
+			}, {
+				label: '二级 3-2',
+				id: '1',
+				children: [{
+					label: '三级 3-2-1',
+					id: '2'
+				}]
+			}]
+		}]
+		defaultProps : any = {
+			children: 'children',
+			label: 'label'
+		}
+		config : any = {
+			search: {
+				attr: {
+					size: 'mini',
+					rules: {
+						name: [{
+							required: true, message: '请输入名称', trigger: 'blur'
+						}]
+					}
+				},
+				columns: [
+					[{
+						span: 6,
+						label: '创建时间',
+						prop: 'created',
+						component: 'by-date-picker',
+						compConfig: {
+							format: 'yyyy-MM-dd',
+							type: 'datetime'
+						}
+					}]
+				]
+			},
+			tool: {
+				tools: {
+					add: true,
+					edit: true,
+					delete: true,
+					export: true,
+					search: true,
+					refresh: true
+				},
+				audit: {
+					add: 'audit:collaborationLog:add',
+					edit: 'audit:collaborationLog:edit',
+					delete: 'audit:collaborationLog:remove',
+					export: 'audit:collaborationLog:export'
+				}
+			},
+			table: {
+				attr: {
+					size: 'mini',
+					seq: true,
+					align: 'center',
+					checkbox: true
+				},
+				columns: [{
+					title: '创建时间',
+					field: 'created'
+				},
+				{
+					title: '订单号',
+					field: 'order_no'
+				},
+				{
+					title: '订单类型',
+					field: 'order_type'
+				},
+				{
+					title: '操作',
+					action: true,
+					plugins: [{
+						icon: 'el-icon-edit',
+						name: '编辑',
+						audit: '',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item)
+							}
+						}
+					}, {
+						name: '查看',
+						event: {
+							click: (item : any) => {
+								console.log('该行数据:', item);
+								console.log('this:', this)
+							}
+						}
+					}]
+				}]
+			},
+			request: {
+				url: '/system/audit/collaborationLog'
+			}
+		}
+
+		created() {
+
+		}
+		handleNodeClick(e : any) {
+			if (e.id == '1') {
+
+			}
+		}
+		//左侧tab切换
+		tabChange(t : string) {
+			this.showTab = t;
+		}
+		search(v : any, n : string) {
+			this.$emit('search', {
+				type: n,
+				value: v
+			})
+		}
+		clickHandle(e : any, name : any) {
+			console.log(e, name);
+		}
+
+	}
+</script>
+<style lang="scss" scoped>
+	.bill {
+		width: 100%;
+		height: 990px;
+		box-sizing: border-box;
+		display: flex;
+		padding: 16px;
+
+		.bill-left {
+			position: relative;
+			border-right: solid #EEE 1px;
+			padding-right: 16px;
+			flex-shrink: 0;
+
+			// box-sizing: border-box;
+			.bill-tab {
+				width: 200px;
+				height: 100%;
+				transition: all .5s;
+				overflow: hidden;
+			}
+
+			.title {
+				font-size: 16px;
+				padding-bottom: 16px;
+				width: 200px;
+			}
+
+			.bill-nav {
+				font-size: 14px;
+				height: 30px;
+				line-height: 30px;
+				width: 200px;
+				box-sizing: border-box;
+				padding: 0 8px;
+				cursor: pointer;
+				margin-bottom: 2px;
+				border-radius: 5px;
+			}
+
+			.onBill {
+				background-color: #bde3f7;
+			}
+
+			.bill-nav:hover {
+				background-color: #bde3f7;
+			}
+
+			.close {
+				height: 22px;
+				width: 22px;
+				border-radius: 50%;
+				border: solid #EEE 1px;
+				position: absolute;
+				top: 30px;
+				right: -11px;
+				background-color: #FFF;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+				cursor: pointer;
+			}
+		}
+
+		.bill-main {
+			width: calc(100% - 16px);
+			box-sizing: border-box;
+			margin-left: 16px;
+			position: relative;
+
+			.bill-box {
+				width: 100%;
+				position: absolute;
+				left: 0;
+				top: 0;
+				opacity: 0;
+				z-index: -1;
+				transition: all .5s;
+
+				.bill-tool,
+				.table-tool {
+					width: 100%;
+					padding-bottom: 16px;
+				}
+
+				.form {
+					margin-bottom: 8px;
+				}
+			}
+
+			.on-show {
+				opacity: 1;
+				z-index: 1;
+			}
+		}
+	}
+</style>