From d8b41fff43a2cee6a8f714ffa807623b15803786 Mon Sep 17 00:00:00 2001
From: quanyawei <401863037@qq.com>
Date: Fri, 20 Oct 2023 15:21:35 +0800
Subject: [PATCH] fix:立行立改Uniapp小程序新建项目

---
 pages/actionChange/components/rectificationInfor.vue |  263 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 263 insertions(+), 0 deletions(-)

diff --git a/pages/actionChange/components/rectificationInfor.vue b/pages/actionChange/components/rectificationInfor.vue
new file mode 100644
index 0000000..8f532aa
--- /dev/null
+++ b/pages/actionChange/components/rectificationInfor.vue
@@ -0,0 +1,263 @@
+<template>
+	<view class="">
+		<!-- ������������ -->
+		<view class="workOrderDetail">
+			<view class="headerCont">
+				<p class="title">������������</p>
+			</view>
+			<u-line color="#bbb" />
+			<view>
+				<view class="mainContent">
+					<u--form labelPosition="left" label-width="70" :model="form" :border-bottom="false" :rules="rules"
+						ref="uForm">
+						<view class="formItemContent">
+							<u-form-item label="������������:" required :border-bottom="false">
+								<view class="" v-if="pageState">
+									{{ dictObj.yesOrNo[basicInfor.isChange] ||''}}
+								</view>
+								<u-radio-group v-else v-model="form.isChange" @change="radioGroupChange">
+									<u-radio :key="index" v-for="(item, index) in list"
+										:custom-style="{marginRight: '8px'}" :label="item.name" :name="item.value" />
+								</u-radio-group>
+							</u-form-item>
+						</view>
+						<view class="formItemContent">
+							<u-form-item label="���������:" prop="changeName" :border-bottom="false" required>
+								<view class="" v-if="pageState">
+									{{ basicInfor.changeName ||''}}
+								</view>
+								<u-input v-else v-model="form.changeName" border="none" placeholder="���������" type="text" />
+							</u-form-item>
+						</view>
+						<view class="formItemContent">
+							<u-form-item label="������������" prop="changeDescribe" :border-bottom="false" required>
+								<view class="" v-if="pageState">
+									{{ basicInfor.changeDescribe ||''}}
+								</view>
+								<u--textarea v-else v-model="form.changeDescribe" border="none" placeholder="���������������" />
+							</u-form-item>
+						</view>
+						
+						<view class="formItemContent">
+							<u-form-item label="������������" :border-bottom="false">
+								<view class="fileBox" v-if="pageState">
+									<cl-upload v-model="fileList" :add="false" :action="`''`" cloud-type="other"
+										:remove="false" />
+								</view>
+								<view class="fileBox" v-else>
+									<fileUpload class="rowTipContenetAll" :sys-code="sysCode"
+										@handleFile="handleFile" />
+								</view>
+							</u-form-item>
+						</view>
+					</u--form>
+				</view>
+			</view>
+		</view>
+	</view>
+</template>
+<script>
+	import fileUpload from '../components/fileUpload.vue'
+	export default {
+		components: {
+			fileUpload
+		},
+		props: {
+			basicInfor: {
+				type: Object,
+				default: () => {}
+			},
+		},
+		watch: {
+			basicInfor: {
+				handler: function(newValue, oldValue) {
+					// ������������������
+					this.basicInfor = newValue
+				},
+				deep: true
+			}
+		},
+		computed: {
+			pageState() {
+				return this.basicInfor.pageState === 'view' || this.basicInfor.state >= 30
+			}
+		},
+		data() {
+			return {
+				sysCode: '1010202',
+				list: [{
+						name: '���',
+						value: 0,
+					},
+					{
+						name: '���',
+						value: 1,
+					},
+				],
+				form: {
+					isChange: 0,
+					changeName: '',
+					changeDescribe: '',
+				},
+				dictObj: this.$storage.getJson('dictObj'),
+				fileList: [],
+				fileBaseList: [],
+				baseUrl: this.$storage.get('baseUrl'),
+				rules: {
+					'changeName': {
+						required: true,
+						message: '���������',
+						trigger: ['blur', 'change']
+					},
+					'changeDescribe': {
+						required: true,
+						message: '���������',
+						trigger: ['blur', 'change']
+					},
+				}
+			}
+		},
+		onLoad: function(option) {
+			//option���object������������������������������������������������
+			console.log(option) //���������������������������������������
+		},
+		onReady() {
+			//onReady ���uni-app���������������������������
+			this.$refs.uForm.setRules(this.rules)
+		},
+		mounted() {
+			if (this.basicInfor.fileChangeList && this.basicInfor.fileChangeList.length > 0) {
+				this.basicInfor.fileChangeList.forEach(item => {
+					let name = item.fileType === 1 ? 'name.png' : 'name.mp4'
+					this.fileList.push(`${this.baseUrl}/file/preview/${item.fileId}?${name}`) // ������
+				})
+				console.log('this.fileList', this.basicInfor.fileBaseList)
+				console.log('this.fileList', this.fileList)
+			}
+		},
+		methods: {
+			radioGroupChange(e) {
+				console.log('radioGroupe���e', e)
+			},
+			handleFile(data) {
+				this.fileBaseList = data
+				this.form.fileChangeList = this.fileBaseList
+			},
+			formVali() {
+				return new Promise((resolve, reject) => {
+					if (!this.pageState) {
+						this.$refs.uForm.validate().then(res => {
+								resolve(true)
+							})
+							.catch(errors => {
+								reject(false)
+								uni.$u.toast('������������')
+							})
+					} else {
+						resolve(true)
+					}
+
+				});
+
+			}
+		},
+	}
+</script>
+
+<style scoped lang="scss">
+	/deep/.u-line {
+		margin: 19.23rpx 0px !important;
+	}
+
+	.workOrderDetail {
+		border: 1px solid #bbb;
+		border-radius: 5px;
+		min-height: 288.46rpx;
+		margin: 19.23rpx;
+		padding: 19.23rpx;
+		color: #101010;
+		font-weight: 700;
+		font-size: 26.92rpx;
+
+		.headerCont {
+			display: flex;
+			justify-content: space-between;
+			font-size: 15px;
+		}
+
+		.mainContent {
+			margin-bottom: 10px;
+			font-weight: 500;
+
+			.rowTip {
+				padding: 8px 0;
+				border-bottom: 1px dashed #bbb;
+
+				.wholeLine {
+					display: flex;
+					width: 100%;
+					align-items: center;
+
+					.rowTipContenetLabel {
+						min-width: 125rpx;
+					}
+				}
+
+				.rowTipContenetAll {
+					width: calc(100% - 125rpx; );
+				}
+
+				.rowTipContenet {
+					width: 50%;
+					text-align: left;
+					overflow: hidden;
+					text-overflow: ellipsis;
+					white-space: nowrap;
+
+					.butsName {
+						display: inline-block;
+						margin-left: 19.23rpx;
+						color: #1990ff;
+					}
+				}
+			}
+
+			.rowTipContenet_right {
+				text-align: right !important;
+			}
+		}
+	}
+
+	.formItemContent {
+		/deep/.u-form-item {
+			padding: 8px 0;
+			border-bottom: 1px dashed #bbb;
+		}
+
+		/deep/.u-form-item__body,
+		/deep/.u-textarea {
+			padding: 0 !important;
+		}
+
+		/deep/.u-form-item__body__left__content__label,
+		/deep/.u-radio__text {
+			font-size: 13px !important;
+		}
+	}
+
+	.fileBox {
+		display: -webkit-box;
+		display: -webkit-flex;
+		display: flex;
+		position: relative;
+		width: 100%;
+		height: 100%;
+		-webkit-box-orient: vertical;
+		-webkit-box-direction: normal;
+		-webkit-flex-direction: column;
+		flex-direction: column;
+		-webkit-box-pack: center;
+		-webkit-justify-content: center;
+		justify-content: center;
+	}
+</style>
\ No newline at end of file

--
Gitblit v1.8.0