From ac7d9e20978e710a54164b2e74ea464027754b7e Mon Sep 17 00:00:00 2001
From: Your Name <123456>
Date: 星期二, 02 八月 2022 09:09:57 +0800
Subject: [PATCH] Merge branch 'master' of https://sinanoaq.cn:8888/r/gtqt

---
 src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue |  458 +++++++++++++++++++++++++++------------------------------
 1 files changed, 216 insertions(+), 242 deletions(-)

diff --git a/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue b/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue
index 97994c2..4d5b471 100644
--- a/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue
+++ b/src/views/basicRightsManagement/personnelShiftManagement/shiftManagement/index.vue
@@ -1,6 +1,6 @@
 <template>
 	<div class="home-container">
-		<el-scrollbar height="100%">
+		<div style="height: 100%">
 		<el-row class="homeCard">
 			<el-col :span="8">
 				<div class="grid-content topInfo">
@@ -24,6 +24,7 @@
 						ref="multipleTableRef"
 						:data="tableData"
 						style="width: 100%"
+						height="calc(100% - 100px)"
 						:header-cell-style="{background: '#fafafa'}"
 						@selection-change="handleSelectionChange"
 				>
@@ -38,22 +39,22 @@
 						</template>
 					</el-table-column>
 				</el-table>
-			</div>
-			<div class="pageBtn">
-				<el-pagination
-						v-model:currentPage="currentPage"
-						v-model:page-size="pageSize"
-						:page-sizes="[10, 15]"
-						small=false
-						background
-						layout="total, sizes, prev, pager, next, jumper"
-						:total="100"
-						@size-change="handleSizeChange"
-						@current-change="handleCurrentChange"
-				/>
+				<div class="pageBtn">
+					<el-pagination
+							v-model:currentPage="currentPage"
+							v-model:page-size="pageSize"
+							:page-sizes="[10, 15]"
+							small=false
+							background
+							layout="total, sizes, prev, pager, next, jumper"
+							:total="100"
+							@size-change="handleSizeChange"
+							@current-change="handleCurrentChange"
+					/>
+				</div>
 			</div>
 		</div>
-		</el-scrollbar>
+		</div>
 		<el-dialog v-model="dialogDetails" title="排班方案">
 			<el-form :model="details" label-width="120px">
 				<el-form-item label="名称">
@@ -230,223 +231,227 @@
 	interface type {
 
 	}
-	// export default defineComponent({
-	// 	name: 'workCheckinRecord',
-	// 	setup() {
-			const userInfo = useUserInfo()
-			const { userInfos } = storeToRefs(userInfo);
-			const state  = reactive<stateType>({});
-			const currentPage = ref(1)
-			const pageSize = ref(10)
-			const chosenIndex = ref(-1)
-			const chosenShiftIndex = ref(-1)
-			const handleSizeChange = (val: number) => {
-				console.log(`${val} items per page`)
-			}
-			const handleCurrentChange = (val: number) => {
-				console.log(`current page: ${val}`)
-			}
-			const casProps = {
-				expandTrigger: 'hover',
-			}
-			const tableData = reactive(
-					[
+	const userInfo = useUserInfo()
+	const { userInfos } = storeToRefs(userInfo);
+	const state  = reactive<stateType>({});
+	const currentPage = ref(1)
+	const pageSize = ref(10)
+	const chosenIndex = ref(-1)
+	const chosenShiftIndex = ref(-1)
+	const handleSizeChange = (val: number) => {
+		console.log(`${val} items per page`)
+	}
+	const handleCurrentChange = (val: number) => {
+		console.log(`current page: ${val}`)
+	}
+	const casProps = {
+		expandTrigger: 'hover',
+	}
+	const tableData = reactive(
+			[
+			{
+				name: '三班三倒',
+				type: '循环班',
+				shiftSteps:[
 					{
-						name: '三班三倒',
-						type: '循环班',
-						shiftSteps:[
-							{
-								name: '第一班',
-								days: '5',
-								rest: '1',
-								timeRange: '三班三倒早班'
-							},
-							{
-								name: '第二班',
-								days: '5',
-								rest: '2',
-								timeRange: '三班三倒中班'
-							},
-							{
-								name: '第三班',
-								days: '5',
-								rest: '3',
-								timeRange: '三班三倒夜班'
-							}
-						]
+						name: '第一班',
+						days: '5',
+						rest: '1',
+						timeRange: '三班三倒早班'
 					},
 					{
-						name: '常白班',
-						type: '固定班'
+						name: '第二班',
+						days: '5',
+						rest: '2',
+						timeRange: '三班三倒中班'
+					},
+					{
+						name: '第三班',
+						days: '5',
+						rest: '3',
+						timeRange: '三班三倒夜班'
 					}
 				]
-			)
-			const handleChange = (value) => {
-				addRecord.value.content = []
-				console.log(JSON.parse(JSON.stringify(value)))
+			},
+			{
+				name: '常白班',
+				type: '固定班'
 			}
-			const addRef = ref<FormInstance>()
-			const addShiftRef = ref<FormInstance>()
-			const addRules = reactive<FormRules>({
-				name:[{required: true, message: '该内容不能为空',trigger:'blur'}],
-				type:[{required: true, message: '该内容不能为空',trigger:'blur'}],
-				timeRange:[{required: true, message: '该内容不能为空',trigger:'blur'}]
-			})
-			const addShiftRules = reactive<FormRules>({
-				name:[{required: true, message: '该内容不能为空',trigger:'blur'}],
-				days:[{required: true, message: '该内容不能为空',trigger:'blur'}],
-				rest:[{required: true,message: '该内容不能为空',trigger: 'blur'}],
-				timeRange:[{required: true, message: '该内容不能为空',trigger:'blur'}]
-			})
-			const dialogDetails = ref(false)
-			const dialogAddRecord = ref(false)
-			const deleteDialog = ref(false)
-			const deleteShiftDialog = ref(false)
-			const dialogAddShift = ref(false)
-			const addRecord = ref({})
-			const addShift = ref({})
-			const details = ref({})
-			const viewRecord = (row) =>{
-				details.value = JSON.parse(JSON.stringify(row))
-				dialogDetails.value = true
-			}
-			const deleteRecord = (index) =>{
-				chosenIndex.value = index
-				deleteDialog.value = true
-			}
-			const conFirmDelete = ()=> {
-				tableData.splice(chosenIndex.value,1)
-				deleteDialog.value = false
-			}
-			const confirmAddRecord = async (formEl: FormInstance | undefined) =>{
-				if (!formEl) return
-				await formEl.validate((valid, fields) => {
-					if (valid) {
-						if(chosenIndex.value == -1){
-							if(addRecord.value.type == '循环班' && (!addRecord.value.shiftSteps || addRecord.value.shiftSteps.length == 0)){
-								ElMessage({
-									message: '请先设置自定义排班后再提交',
-									type: 'warning',
-								})
-								return
-							}else{
-								tableData.unshift(addRecord.value)
-							}
-						}else{
-							if(addRecord.value.type == '循环班' && addRecord.value.shiftSteps.length == 0){
-								ElMessage({
-									message: '请先设置自定义排班后再提交',
-									type: 'warning',
-								})
-								return
-							}else{
-								if(addRecord.value.type == '固定班'){delete addRecord.value.shiftSteps}
-								console.log(addRecord.value,'addRecord')
-								tableData[chosenIndex.value] = addRecord.value
-							}
-						}
-						dialogAddRecord.value =false
-					} else {
-						console.log('error submit!', fields)
+		]
+	)
+	const handleChange = (value) => {
+		addRecord.value.content = []
+		console.log(JSON.parse(JSON.stringify(value)))
+	}
+	const addRef = ref<FormInstance>()
+	const addShiftRef = ref<FormInstance>()
+	const addRules = reactive<FormRules>({
+		name:[{required: true, message: '该内容不能为空',trigger:'blur'}],
+		type:[{required: true, message: '该内容不能为空',trigger:'blur'}],
+		timeRange:[{required: true, message: '该内容不能为空',trigger:'blur'}]
+	})
+	const addShiftRules = reactive<FormRules>({
+		name:[{required: true, message: '该内容不能为空',trigger:'blur'}],
+		days:[{required: true, message: '该内容不能为空',trigger:'blur'}],
+		rest:[{required: true,message: '该内容不能为空',trigger: 'blur'}],
+		timeRange:[{required: true, message: '该内容不能为空',trigger:'blur'}]
+	})
+	const dialogDetails = ref(false)
+	const dialogAddRecord = ref(false)
+	const deleteDialog = ref(false)
+	const deleteShiftDialog = ref(false)
+	const dialogAddShift = ref(false)
+	const addRecord = ref({})
+	const addShift = ref({})
+	const details = ref({})
+	const viewRecord = (row) =>{
+		details.value = JSON.parse(JSON.stringify(row))
+		dialogDetails.value = true
+	}
+	const deleteRecord = (index) =>{
+		chosenIndex.value = index
+		deleteDialog.value = true
+	}
+	const conFirmDelete = ()=> {
+		tableData.splice(chosenIndex.value,1)
+		deleteDialog.value = false
+	}
+	const confirmAddRecord = async (formEl: FormInstance | undefined) =>{
+		if (!formEl) return
+		await formEl.validate((valid, fields) => {
+			if (valid) {
+				if(chosenIndex.value == -1){
+					if(addRecord.value.type == '循环班' && (!addRecord.value.shiftSteps || addRecord.value.shiftSteps.length == 0)){
+						ElMessage({
+							message: '请先设置自定义排班后再提交',
+							type: 'warning',
+						})
+						return
+					}else{
+						tableData.unshift(addRecord.value)
 					}
-				})
-
-			}
-			const closeAdd =()=>{
-				addRecord.value={}
-				chosenIndex.value = -1
-				addShift.value={}
-				chosenShiftIndex.value = -1
-			}
-			const indexClear = ()=>{
-				chosenIndex.value = -1
-			}
-			const indexShiftClear = ()=>{
-				chosenShiftIndex.value = -1
-			}
-			const editRecord =(index, row)=>{
-				dialogAddRecord.value = true
-				chosenIndex.value = index
-				addRecord.value = JSON.parse(JSON.stringify(row))
-			}
-
-			// 添加删除排班步骤
-			const addFlow = (index) => {
-				dialogAddShift.value = true
-				chosenShiftIndex.value = index
-			}
-			const deleteFlow = (index) => {
-				deleteShiftDialog.value = true
-				chosenShiftIndex.value = index
-			}
-			const conFirmShiftDelete = () => {
-				addRecord.value.shiftSteps.splice( chosenShiftIndex.value,1)
-				deleteShiftDialog.value = false
-			}
-			const confirmAddShift = async (formEl: FormInstance | undefined) => {
-				if (!formEl) return
-				await formEl.validate((valid, fields) => {
-					if (valid) {
-						if(addRecord.value.shiftSteps){
-							addRecord.value.shiftSteps.splice(chosenShiftIndex.value+1,0,addShift.value)
-						}else{
-							addRecord.value.shiftSteps = []
-							addRecord.value.shiftSteps.unshift(addShift.value)
-						}
-						dialogAddShift.value = false
-					} else {
-						console.log('error submit!', fields)
+				}else{
+					if(addRecord.value.type == '循环班' && addRecord.value.shiftSteps.length == 0){
+						ElMessage({
+							message: '请先设置自定义排班后再提交',
+							type: 'warning',
+						})
+						return
+					}else{
+						if(addRecord.value.type == '固定班'){delete addRecord.value.shiftSteps}
+						console.log(addRecord.value,'addRecord')
+						tableData[chosenIndex.value] = addRecord.value
 					}
-				})
+				}
+				dialogAddRecord.value =false
+			} else {
+				console.log('error submit!', fields)
+			}
+		})
 
+	}
+	const closeAdd =()=>{
+		addRecord.value={}
+		chosenIndex.value = -1
+		addShift.value={}
+		chosenShiftIndex.value = -1
+	}
+	const indexClear = ()=>{
+		chosenIndex.value = -1
+	}
+	const indexShiftClear = ()=>{
+		chosenShiftIndex.value = -1
+	}
+	const editRecord =(index, row)=>{
+		dialogAddRecord.value = true
+		chosenIndex.value = index
+		addRecord.value = JSON.parse(JSON.stringify(row))
+	}
+
+	// 添加删除排班步骤
+	const addFlow = (index) => {
+		dialogAddShift.value = true
+		chosenShiftIndex.value = index
+	}
+	const deleteFlow = (index) => {
+		deleteShiftDialog.value = true
+		chosenShiftIndex.value = index
+	}
+	const conFirmShiftDelete = () => {
+		addRecord.value.shiftSteps.splice( chosenShiftIndex.value,1)
+		deleteShiftDialog.value = false
+	}
+	const confirmAddShift = async (formEl: FormInstance | undefined) => {
+		if (!formEl) return
+		await formEl.validate((valid, fields) => {
+			if (valid) {
+				if(addRecord.value.shiftSteps){
+					addRecord.value.shiftSteps.splice(chosenShiftIndex.value+1,0,addShift.value)
+				}else{
+					addRecord.value.shiftSteps = []
+					addRecord.value.shiftSteps.unshift(addShift.value)
+				}
+				dialogAddShift.value = false
+			} else {
+				console.log('error submit!', fields)
 			}
-			const closeAddShift =()=>{
-				addShift.value={}
-				chosenShiftIndex.value = -1
-			}
-			// 折线图
-			const renderMenu = async (value: string) => {
-				Session.set('projectId',value)
-				userInfos.value.projectId = value
-				await initBackEndControlRoutes();
-			};
-			// return {
-			// 	renderMenu,
-			// 	multipleTableRef,
-			// 	tableData,
-			// 	currentPage,
-			// 	pageSize,
-			// 	dialogDetails,
-			// 	details,
-			// 	deleteDialog,
-			// 	dialogAddRecord,
-			// 	viewRecord,
-			// 	deleteRecord,
-			// 	handleSizeChange,
-			// 	handleCurrentChange,
-			// 	Plus,
-			// 	Edit,
-			// 	Delete,
-			// 	Search,
-			// 	Download,
-			// 	handleSelectionChange,
-			// 	Refresh,
-			// 	...toRefs(state),
-			// };
-	// 	},
-	// });
+		})
+
+	}
+	const closeAddShift =()=>{
+		addShift.value={}
+		chosenShiftIndex.value = -1
+	}
+	// 折线图
+	const renderMenu = async (value: string) => {
+		Session.set('projectId',value)
+		userInfos.value.projectId = value
+		await initBackEndControlRoutes();
+	};
 </script>
 
 <style scoped lang="scss">
 	$homeNavLengh: 8;
 	.home-container {
-		height: 100%;
+		height: calc(100vh - 114px);
+		box-sizing: border-box;
 		overflow: hidden;
 		.homeCard{
 			width: 100%;
 			padding: 20px;
+			box-sizing: border-box;
 			background: #fff;
 			border-radius: 4px;
+
+			.main-card{
+				width: 100%;
+				height: 100%;
+				.cardTop{
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					margin-bottom: 20px;
+					.mainCardBtn{
+						margin: 0;
+					}
+				}
+				.pageBtn{
+					height: 60px;
+					display: flex;
+					align-items: center;
+					justify-content: right;
+
+					.demo-pagination-block + .demo-pagination-block {
+						margin-top: 10px;
+					}
+					.demo-pagination-block .demonstration {
+						margin-bottom: 16px;
+					}
+				}
+			}
+			&:last-of-type{
+				height: calc(100% - 100px);
+			}
 		}
 		.el-row{
 			display: flex;
@@ -470,37 +475,6 @@
 					white-space: nowrap;
 					margin-right: 20px;
 				}
-			}
-		}
-		.mainPages{
-			height: 100%;
-			display: flex;
-			flex-direction: column;
-			justify-content: space-between;
-		}
-		.main-card{
-			width: 100%;
-			.cardTop{
-				display: flex;
-				align-items: center;
-				justify-content: space-between;
-				margin-bottom: 20px;
-				.mainCardBtn{
-					margin: 0;
-				}
-			}
-		}
-		.pageBtn{
-			display: flex;
-			align-items: center;
-			justify-content: right;
-			margin-top: 20px;
-
-			.demo-pagination-block + .demo-pagination-block {
-				margin-top: 10px;
-			}
-			.demo-pagination-block .demonstration {
-				margin-bottom: 16px;
 			}
 		}
 	}

--
Gitblit v1.9.2