소스 검색

三个通报发布

Luka 1 개월 전
부모
커밋
cd52133951

+ 157 - 157
src/components/FileUpload/index.vue

@@ -1,35 +1,35 @@
 <template>
-    <div class="upload-file">
-        <el-upload
-            ref="fileUpload"
-            multiple
-            :action="uploadFileUrl"
-            :before-upload="handleBeforeUpload"
-            :file-list="fileList"
-            :limit="limit"
-            :on-error="handleUploadError"
-            :on-exceed="handleExceed"
-            :on-success="handleUploadSuccess"
-            :show-file-list="false"
-            :headers="headers"
-            class="upload-file-uploader"
-        >
-            <!-- 上传按钮 -->
-            <el-button type="primary">{{ btnText }}</el-button>
-        </el-upload>
-        <!-- 上传提示 -->
-        <div v-if="showTip" class="el-upload__tip">
-            请上传
-            <template v-if="fileSize">
-                大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b>
-            </template>
-            <template v-if="fileType">
-                格式为 <b style="color: #f56c6c">{{ fileType.join('/') }}</b>
-            </template>
-            的文件
-        </div>
-        <!-- 文件列表 -->
-        <!-- <transition-group
+	<div class="upload-file">
+		<el-upload
+			ref="fileUpload"
+			multiple
+			:action="uploadFileUrl"
+			:before-upload="handleBeforeUpload"
+			:file-list="fileList"
+			:limit="limit"
+			:on-error="handleUploadError"
+			:on-exceed="handleExceed"
+			:on-success="handleUploadSuccess"
+			:show-file-list="false"
+			:headers="headers"
+			class="upload-file-uploader"
+		>
+			<!-- 上传按钮 -->
+			<el-button type="primary">{{ btnText }}</el-button>
+		</el-upload>
+		<!-- 上传提示 -->
+		<div v-if="showTip" class="el-upload__tip">
+			请上传
+			<template v-if="fileSize">
+				大小不超过 <b style="color: #f56c6c">{{ fileSize }}MB</b>
+			</template>
+			<template v-if="fileType">
+				格式为 <b style="color: #f56c6c">{{ fileType.join('/') }}</b>
+			</template>
+			的文件
+		</div>
+		<!-- 文件列表 -->
+		<!-- <transition-group
             class="upload-file-list el-upload-list el-upload-list--text"
             name="el-fade-in-linear"
             tag="ul"
@@ -48,7 +48,7 @@
                 </div>
             </li>
         </transition-group> -->
-    </div>
+	</div>
 </template>
 
 <script setup lang="ts">
@@ -57,41 +57,41 @@ import { ElMessage } from 'element-plus';
 import { getCurrentInstance, ComponentInternalInstance, ref, computed, watch } from 'vue';
 
 const props = defineProps({
-    modelValue: [String, Object, Array] as any,
-    // 数量限制
-    limit: {
-        type: Number,
-        default: 5,
-    },
-    // 大小限制(MB)
-    fileSize: {
-        type: Number,
-        default: 5,
-    },
-    // 文件类型, 例如['png', 'jpg', 'jpeg']
-    fileType: {
-        type: Array as () => Array<any>,
-        default: () => ['doc', 'xls', 'ppt', 'txt', 'pdf'],
-    },
-    // 是否显示提示
-    isShowTip: {
-        type: Boolean,
-        default: true,
-    },
-    action: {
-        type: String,
-        default: 'business/common/upload',
-    },
-    // 按钮文字
-    btnText: {
-        type: String,
-        default: '点击上传文件',
-    },
-    // 文件列表是否显示
-    showFileList: {
-        type: Boolean,
-        default: true,
-    },
+	modelValue: [String, Object, Array] as any,
+	// 数量限制
+	limit: {
+		type: Number,
+		default: 5,
+	},
+	// 大小限制(MB)
+	fileSize: {
+		type: Number,
+		default: 5,
+	},
+	// 文件类型, 例如['png', 'jpg', 'jpeg']
+	fileType: {
+		type: Array as () => Array<any>,
+		default: () => ['doc', 'xls', 'ppt', 'txt', 'pdf'],
+	},
+	// 是否显示提示
+	isShowTip: {
+		type: Boolean,
+		default: true,
+	},
+	action: {
+		type: String,
+		default: 'business/common/upload',
+	},
+	// 按钮文字
+	btnText: {
+		type: String,
+		default: '点击上传文件',
+	},
+	// 文件列表是否显示
+	showFileList: {
+		type: Boolean,
+		default: true,
+	},
 });
 const { proxy } = getCurrentInstance() as ComponentInternalInstance;
 const emit = defineEmits(['update:modelValue', 'handleSuccess']);
@@ -104,143 +104,143 @@ const fileList = ref<any[]>([]);
 const showTip = computed(() => props.isShowTip && (props.fileType || props.fileSize));
 
 watch(
-    () => props.modelValue,
-    val => {
-        if (val) {
-            let temp = 1;
-            // 首先将值转为数组
-            const list = Array.isArray(val) ? val : props.modelValue!.split(',');
-            // 然后将数组转为对象数组
-            fileList.value = list.map((item: any) => {
-                if (typeof item === 'string') {
-                    item = { name: item, url: item };
-                }
-                item.uid = item.uid || new Date().getTime() + temp++;
-                return item;
-            });
-        } else {
-            fileList.value = [];
-            return [];
-        }
-    },
-    { deep: true, immediate: true }
+	() => props.modelValue,
+	val => {
+		if (val) {
+			let temp = 1;
+			// 首先将值转为数组
+			const list = Array.isArray(val) ? val : props.modelValue!.split(',');
+			// 然后将数组转为对象数组
+			fileList.value = list.map((item: any) => {
+				if (typeof item === 'string') {
+					item = { name: item, url: item };
+				}
+				item.uid = item.uid || new Date().getTime() + temp++;
+				return item;
+			});
+		} else {
+			fileList.value = [];
+			return [];
+		}
+	},
+	{ deep: true, immediate: true }
 );
 
 // 上传前校检格式和大小
 function handleBeforeUpload(file: any) {
-    // 校检文件类型
-    if (props.fileType.length) {
-        const fileName = file.name.split('.');
-        const fileExt = fileName[fileName.length - 1];
-        const isTypeOk = props.fileType.indexOf(fileExt) >= 0;
-        if (!isTypeOk) {
-            proxy!.$modal.msgError(`文件格式不正确, 请上传${props.fileType.join('/')}格式文件!`);
-            return false;
-        }
-    }
-    // 校检文件大小
-    if (props.fileSize) {
-        const isLt = file.size / 1024 / 1024 < props.fileSize;
-        if (!isLt) {
-            proxy!.$modal.msgError(`上传文件大小不能超过 ${props.fileSize} MB!`);
-            return false;
-        }
-    }
-    proxy!.$modal.loading('正在上传文件,请稍候...');
-    number.value++;
-    return true;
+	// 校检文件类型
+	if (props.fileType.length) {
+		const fileName = file.name.split('.');
+		const fileExt = fileName[fileName.length - 1];
+		const isTypeOk = props.fileType.indexOf(fileExt) >= 0;
+		if (!isTypeOk) {
+			proxy!.$modal.msgError(`文件格式不正确, 请上传${props.fileType.join('/')}格式文件!`);
+			return false;
+		}
+	}
+	// 校检文件大小
+	if (props.fileSize) {
+		const isLt = file.size / 1024 / 1024 < props.fileSize;
+		if (!isLt) {
+			proxy!.$modal.msgError(`上传文件大小不能超过 ${props.fileSize} MB!`);
+			return false;
+		}
+	}
+	proxy!.$modal.loading('正在上传文件,请稍候...');
+	number.value++;
+	return true;
 }
 
 // 文件个数超出
 function handleExceed() {
-    proxy!.$modal.msgError(`上传文件数量不能超过 ${props.limit} 个!`);
+	proxy!.$modal.msgError(`上传文件数量不能超过 ${props.limit} 个!`);
 }
 
 // 上传失败
 function handleUploadError(err: any) {
-    proxy!.$modal.msgError('上传文件失败');
-    proxy!.$modal.closeLoading();
+	proxy!.$modal.msgError('上传文件失败');
+	proxy!.$modal.closeLoading();
 }
 
 // 上传成功回调
 function handleUploadSuccess(res: any, file: any) {
-    if (res.code === 200) {
-        uploadList.value.push({ name: res.fileName, url: res.fileName });
-        uploadedSuccessfully();
-        emit('handleSuccess', res);
-        ElMessage.success(res.msg || '上传成功');
-    } else {
-        number.value--;
-        proxy!.$modal.closeLoading();
-        proxy!.$modal.msgError(res.msg);
-        (proxy!.$refs.fileUpload as any).handleRemove(file);
-        uploadedSuccessfully();
-    }
+	if (res.code === 200) {
+		uploadList.value.push({ name: res.fileName, url: res.fileName });
+		uploadedSuccessfully();
+		emit('handleSuccess', res);
+		ElMessage.success(res.msg || '上传成功');
+	} else {
+		number.value--;
+		proxy!.$modal.closeLoading();
+		proxy!.$modal.msgError(res.msg);
+		(proxy!.$refs.fileUpload as any).handleRemove(file);
+		uploadedSuccessfully();
+	}
 }
 // 清空列表
 function clearList() {
-    (proxy!.$refs.fileUpload as any).clearFiles();
+	(proxy!.$refs.fileUpload as any).clearFiles();
 }
 // 删除文件
 function handleDelete(index: any) {
-    fileList.value.splice(index, 1);
-    emit('update:modelValue', listToString(fileList.value));
+	fileList.value.splice(index, 1);
+	emit('update:modelValue', listToString(fileList.value));
 }
 
 // 上传结束处理
 function uploadedSuccessfully() {
-    if (number.value > 0 && uploadList.value.length === number.value) {
-        fileList.value = fileList.value.filter(f => f.url !== undefined).concat(uploadList.value);
-        uploadList.value = [];
-        number.value = 0;
-        emit('update:modelValue', listToString(fileList.value));
-        proxy!.$modal.closeLoading();
-    }
+	if (number.value > 0 && uploadList.value.length === number.value) {
+		fileList.value = fileList.value.filter(f => f.url !== undefined).concat(uploadList.value);
+		uploadList.value = [];
+		number.value = 0;
+		emit('update:modelValue', listToString(fileList.value));
+		proxy!.$modal.closeLoading();
+	}
 }
 
 // 获取文件名称
 function getFileName(name: any) {
-    if (name.lastIndexOf('/') > -1) {
-        return name.slice(name.lastIndexOf('/') + 1);
-    } else {
-        return '';
-    }
+	if (name.lastIndexOf('/') > -1) {
+		return name.slice(name.lastIndexOf('/') + 1);
+	} else {
+		return '';
+	}
 }
 
 // 对象转成指定字符串分隔
 function listToString(list: any, separator?: any) {
-    let strs = '';
-    separator = separator || ',';
-    for (let i in list) {
-        if (list[i].url) {
-            strs += list[i].url + separator;
-        }
-    }
-    return strs !== '' ? strs.substr(0, strs.length - 1) : '';
+	let strs = '';
+	separator = separator || ',';
+	for (let i in list) {
+		if (list[i].url) {
+			strs += list[i].url + separator;
+		}
+	}
+	return strs !== '' ? strs.substr(0, strs.length - 1) : '';
 }
 
 defineExpose({
-    handleClea: clearList,
+	handleClea: clearList,
 });
 </script>
 
 <style scoped lang="scss">
 .upload-file-uploader {
-    margin-bottom: 5px;
+	margin-bottom: 5px;
 }
 .upload-file-list .el-upload-list__item {
-    border: 1px solid #e4e7ed;
-    line-height: 2;
-    margin-bottom: 10px;
-    position: relative;
+	border: 1px solid #e4e7ed;
+	line-height: 2;
+	margin-bottom: 10px;
+	position: relative;
 }
 .upload-file-list .ele-upload-list__item-content {
-    display: flex;
-    justify-content: space-between;
-    align-items: center;
-    color: inherit;
+	display: flex;
+	justify-content: space-between;
+	align-items: center;
+	color: inherit;
 }
 .ele-upload-list__item-content-action .el-link {
-    margin-right: 10px;
+	margin-right: 10px;
 }
 </style>

+ 111 - 0
src/views/notificationInfoInquiry/administrativePenalty/components/basicInformationOfAdministration.vue

@@ -0,0 +1,111 @@
+<template>
+	<div class="ship-info-form">
+		<el-collapse v-model="activeNames">
+			<el-collapse-item name="1">
+				<template #title="{ isActive }">
+					<div class="collapse-title">行政处罚基本信息</div>
+				</template>
+				<el-form
+					ref="ruleFormRef"
+					:model="formData"
+					label-width="130px"
+					size="default"
+					class="form-container mt20"
+				>
+					<el-row>
+						<el-col :span="6">
+							<el-form-item label="初查类型">
+								<div>{{ formData.chineseName }}</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船长证书号">
+								<div>413906534</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船长联系方式">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="检查岗">
+								<div>珠海湾仔</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="6">
+							<el-form-item label="检查日期">
+								<div>2025-02-13</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="检查员">
+								<div>吴迪</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船舶是否滞留">
+								<div>是</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="实习检查员">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="24">
+							<el-form-item label="是否专项检查">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="24">
+							<el-form-item label="备注">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="24">
+							<el-form-item label="检查行动">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+				</el-form>
+			</el-collapse-item>
+		</el-collapse>
+	</div>
+</template>
+
+<script setup lang="ts">
+const activeNames = ref(['1']);
+interface IProps {
+	formData: any;
+}
+const props = withDefaults(defineProps<IProps>(), {
+	formData: {},
+});
+</script>
+
+<style scoped>
+.ship-info-form {
+	background: #fff;
+	border-radius: 8px;
+	padding: 20px;
+	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
+}
+:deep .el-collapse-item__header {
+	color: #5070ae;
+	size: 24px;
+	background: linear-gradient(135deg, #d2e8ff, #fcfeff);
+	box-shadow: 0 8px 20px #fcfeff;
+	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
+	padding-left: 20px;
+}
+</style>

+ 90 - 107
src/views/notificationInfoInquiry/administrativePenalty/components/basicInformationOfVessel.vue

@@ -1,114 +1,97 @@
 <template>
-  <div class="ship-info-form">
-    <el-collapse v-model="activeNames">
-      <el-collapse-item name="1">
-        <template #title="{ isActive }">
-          <div class="collapse-title">
-            船舶基本信息
-          </div>
-        </template>
-        <el-form
-          ref="ruleFormRef"
-          :model="formData"
-          label-width="150px"
-          size="default"
-          class="form-container mt20"
-        >
-          <el-row>
-            <el-col :span="8">
-              <el-form-item label="船舶识别号"><div>CS20250719</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="中文船名"><div>{{ formData.chineseName }}</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="英文船名"><div>YUE SAN SH HUO</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="初次登记号"><div>YUE SAN SH HUO</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="船舶种类"><div>无</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="船籍港"><div>广州</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="船舶所有人"><div>无</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="船舶所有人联系方式"><div>15817883344</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="船舶状态"><div>已注销</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="注销内容"><div>所有权 国籍</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="英文注销内容"><div>OWNERSHIP NATION</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="不注销内容"><div>-</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="注销原因"><div>交易至国内</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="注销原因详情内容"><div>郭患平卖船给徐铭</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="注销原因详情内容"><div>船东申报船舶的值为人民币580万</div></el-form-item>
-            </el-col>
-          </el-row>
-          <el-row>
-            <el-col :span="8">
-              <el-form-item label="受理人"><div>李玉成</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="初审人"><div>李玉成</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="复审人"><div>李玉成</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="审批人"><div>李玉成</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="受理日期"><div>2025-08-14</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="初审日期"><div>2025-08-14</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="复审日期"><div>2025-08-14</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="操作人员"><div>李雪花</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="操作时间"><div>2025.10.1</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="证书编号"><div>2424132</div></el-form-item>
-            </el-col>
-            <el-col :span="8">
-              <el-form-item label="证书号码"><div>2049395385</div></el-form-item>
-            </el-col>
-          </el-row>
-        </el-form>
-      </el-collapse-item>
-    </el-collapse>
-  </div>
+	<div class="ship-info-form">
+		<el-collapse v-model="activeNames">
+			<el-collapse-item name="1">
+				<template #title="{ isActive }">
+					<div class="collapse-title">船舶基本信息</div>
+				</template>
+				<el-form
+					ref="ruleFormRef"
+					:model="formData"
+					label-width="130px"
+					size="default"
+					class="form-container mt20"
+				>
+					<el-row>
+						<el-col :span="6">
+							<el-form-item label="中文船名">
+								<div>{{ formData.chineseName }}</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="MMSI">
+								<div>413906534</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船籍港">
+								<div>广州</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船舶种类">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="6">
+							<el-form-item label="总吨">
+								<div>5257</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船舶类型">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="建成日期">
+								<div>2021.10.21</div>
+							</el-form-item>
+						</el-col>
+						<el-col :span="6">
+							<el-form-item label="船舶所有人">
+								<div>无</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+					<el-row>
+						<el-col :span="6">
+							<el-form-item label="船舶经营人">
+								<div>广州市建工船务有限公司</div>
+							</el-form-item>
+						</el-col>
+					</el-row>
+				</el-form>
+			</el-collapse-item>
+		</el-collapse>
+	</div>
 </template>
 
 <script setup lang="ts">
-  const activeNames = ref(['1']);
-  const formData = reactive({
-    chineseName: '测试'
-  })
+const activeNames = ref(['1']);
+interface IProps {
+	formData: any;
+}
+const props = withDefaults(defineProps<IProps>(), {
+	formData: {},
+});
 </script>
 
 <style scoped>
-@import '@/styles/collapse.scss';
-</style>
+.ship-info-form {
+	background: #fff;
+	border-radius: 8px;
+	padding: 20px;
+	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
+}
+:deep .el-collapse-item__header {
+	color: #5070ae;
+	size: 24px;
+	background: linear-gradient(135deg, #d2e8ff, #fcfeff);
+	box-shadow: 0 8px 20px #fcfeff;
+	text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
+	padding-left: 20px;
+}
+</style>

+ 18 - 15
src/views/notificationInfoInquiry/administrativePenalty/components/detail.vue

@@ -7,7 +7,7 @@
 		<!-- 船舶基本信息 -->
 		<BasicInformationOfVessel class="mb20" />
 		<!-- 船舶注销信息 -->
-		<ShipCancelInfo />
+		<BasicInformationOfAdministration />
 		<!-- 底部按钮区 -->
 		<div class="form-actions">
 			<slot name="btn">
@@ -22,7 +22,7 @@
 import { ref, onMounted, onBeforeUnmount } from 'vue';
 import { useRoute, useRouter } from 'vue-router';
 import BasicInformationOfVessel from './basicInformationOfVessel.vue';
-import ShipCancelInfo from './shipCancelInfo.vue';
+import BasicInformationOfAdministration from './basicInformationOfAdministration.vue';
 
 // --- 路由与Store ---
 const route = useRoute();
@@ -38,15 +38,15 @@ onMounted(async () => {
 	try {
 		switch (type as string) {
 			case 'add':
-				pageTitle.value = '船舶登记通报信息查询 新增信息';
+				pageTitle.value = '行政处罚通报信息查询 新增信息';
 				isEdit.value = false;
 				break;
 			case 'edit':
-				pageTitle.value = '船舶登记通报信息查询 编辑信息';
+				pageTitle.value = '行政处罚通报信息息查询 编辑信息';
 				isEdit.value = true;
 				break;
 			case 'detail':
-				pageTitle.value = '船舶登记通报信息查询';
+				pageTitle.value = '行政处罚通报信息查询';
 				isDetail.value = true;
 				break;
 			default:
@@ -54,7 +54,8 @@ onMounted(async () => {
 		}
 	} catch (error) {
 		handleBack();
-	} finally {}
+	} finally {
+	}
 });
 
 const handleBack = () => {
@@ -67,14 +68,16 @@ onBeforeUnmount(() => {
 });
 
 const handleSubmit = async () => {
-  // 调用子组件的校验方法
-  const isValid = await noticeChildRef.value.validateForm();
-  
-  if (isValid) {
-    console.log('校验通过,执行提交逻辑');
-  } else {
-    console.log('校验失败,请检查表单');
-  }
+	ElMessage.success('小编在努力开发中。。。');
+	return;
+	// 调用子组件的校验方法
+	const isValid = await noticeChildRef.value.validateForm();
+
+	if (isValid) {
+		console.log('校验通过,执行提交逻辑');
+	} else {
+		console.log('校验失败,请检查表单');
+	}
 };
 </script>
 
@@ -121,4 +124,4 @@ const handleSubmit = async () => {
 		gap: 10px;
 	}
 }
-</style>
+</style>

+ 0 - 27
src/views/notificationInfoInquiry/administrativePenalty/components/shipCancelInfo.vue

@@ -1,27 +0,0 @@
-<template>
-  <div class="ship-info-form">
-    <el-collapse v-model="activeNames">
-      <el-collapse-item name="1">
-        <template #title="{ isActive }">
-          <div class="collapse-title">
-            船舶注销信息
-          </div>
-        </template>
-        <div class="mt20">
-          粤三水货1223(CN20039027136) 于 2025-04-12 15:23:29因 船舶已转让,受让人为黄维持,联系电话13433322,船位信息:珠海斗门,在中华人民共和国佛山海事局进行注销。目前船位在中华人民共和国珠海海事局,下一登记机关为中华人民共和国佛山海事局。
-        </div>
-      </el-collapse-item>
-    </el-collapse>
-  </div>
-</template>
-
-<script setup lang="ts">
-  const activeNames = ref(['1']);
-  const formData = reactive({
-    chineseName: '测试'
-  })
-</script>
-
-<style scoped>
-@import '@/styles/collapse.scss';
-</style>

+ 2 - 0
src/views/notificationInfoInquiry/administrativePenalty/index.vue

@@ -103,6 +103,8 @@ const onMessageChange = (scope, newVal) => {
 };
 // 通报发布
 const handlePublish = releasedId => {
+	ElMessage.success('小编在努力开发中。。。');
+	return;
 	router.push({
 		path: '/notificationInfoInquiry/publish',
 		query: { type: 'edit', releasedId: releasedId },

+ 13 - 5
src/views/notificationInfoInquiry/publish/components/waterSafetyInformation.vue

@@ -131,19 +131,27 @@
 						</el-col>
 					</el-row>
 					<el-row :gutter="24">
+						<el-col :span="24">
+							<el-form-item label="上传附件">
+								<div style="color: #999999">
+									提示:目前支持的文件格式: *.gif, *.jpeg, *.jpg, *.png, *.rar, *.zip, *.doc, *.ppt, *.xls,
+									*.pdf, *.docx *.xlsx, *.bmp, *.xml,*.ofd,*.wps。 文件大小支持:100M以内。
+								</div>
+							</el-form-item>
+						</el-col>
 						<el-col :span="8">
-							<el-form-item label="查看附件" prop="smr">
-								<FileUpload v-model="item.smr" />
+							<el-form-item label="行政处罚决定" prop="smr">
+								<FileUpload :isShowTip="false" v-model="item.smr" />
 							</el-form-item>
 						</el-col>
 						<el-col :span="8">
 							<el-form-item label="通报事项的相关证据" prop="ertnmFilePath">
-								<FileUpload v-model="item.ertnmFilePath" />
+								<FileUpload :isShowTip="false" v-model="item.ertnmFilePath" />
 							</el-form-item>
 						</el-col>
 						<el-col :span="8">
 							<el-form-item label="通报事项的其他材料" prop="omfnmFilePath">
-								<FileUpload v-model="item.omfnmFilePath" />
+								<FileUpload :isShowTip="false" v-model="item.omfnmFilePath" />
 							</el-form-item>
 						</el-col>
 					</el-row>
@@ -169,7 +177,7 @@
 					<el-row :gutter="24">
 						<el-col :span="24">
 							<el-form-item label="安全管理建议附件">
-								<FileUpload v-model="item.smraFilePath" />
+								<FileUpload :isShowTip="false" v-model="item.smraFilePath" />
 							</el-form-item>
 						</el-col>
 					</el-row>

+ 9 - 6
src/views/notificationInfoInquiry/publish/index.vue

@@ -97,14 +97,17 @@ const handleSubmit = async type => {
 	const middleList = waterSafetyRef.value.getFormData();
 	const params = { ...shipFormData, middleList };
 	type === 'add' ? (params.releasedStatus = '2') : '1';
+	let response: any;
 	if (type === 'add') {
-		const isValid = await waterSafetyRef.value.validateForm();
-		const { valid } = await shipFormRef.value.validateForm();
-		if (isValid && valid) {
-			const response = await addMyPublishApi(params);
-		}
+		response = await addMyPublishApi(params);
+	} else {
+		response = await addMyPublishApi(params);
+	}
+	if (response.code === 200) {
+		ElMessage.success(response.msg);
+		handleBack();
 	} else {
-		const response = await addMyPublishApi(params);
+		ElMessage.error(response.msg);
 	}
 };
 </script>

+ 2 - 0
src/views/notificationInfoInquiry/securityCheck/components/detail.vue

@@ -54,6 +54,8 @@ const handleBack = () => {
 onBeforeUnmount(() => {});
 const noticeChildRef = ref<any>();
 const handleSubmit = async () => {
+	ElMessage.success('小编在努力开发中。。。');
+	return;
 	// 调用子组件的校验方法
 	const isValid = await noticeChildRef.value.validateForm();
 

+ 3 - 3
src/views/notificationInfoInquiry/securityCheck/config/content.config.ts

@@ -5,9 +5,9 @@ const contentConfig = {
 	},
 	propsList: [
 		{ type: 'index', label: '序号', fixed: true },
-		{ type: 'normal', label: '船舶识别号', prop: 'violationNumber', width: 140 },
-		{ type: 'normal', label: '中文船名', prop: 'englishVesselName', width: 140 },
-		{ type: 'normal', label: '船籍港', prop: 'vesselName', width: 140 },
+		{ type: 'normal', label: '船舶识别号', prop: 'ship_id', width: 140 },
+		{ type: 'normal', label: '中文船名', prop: 'ship_name_cn', width: 140 },
+		{ type: 'normal', label: '船籍港', prop: 'regport_name', width: 140 },
 		{ type: 'custom', label: '初查/复查', prop: 'TODO', width: 120 },
 		{ type: 'normal', label: '检查日期', prop: 'TODO' },
 		{ type: 'normal', label: '检查港', prop: 'TODO', width: 140 },

+ 2 - 0
src/views/notificationInfoInquiry/securityCheck/index.vue

@@ -103,6 +103,8 @@ const onMessageChange = (scope, newVal) => {
 };
 // 通报发布
 const handlePublish = releasedId => {
+	ElMessage.success('小编在努力开发中。。。');
+	return;
 	router.push({
 		path: '/notificationInfoInquiry/publish',
 		query: { type: 'edit', releasedId: releasedId },

+ 13 - 10
src/views/notificationInfoInquiry/shipRegistration/components/detail.vue

@@ -54,7 +54,8 @@ onMounted(async () => {
 		}
 	} catch (error) {
 		handleBack();
-	} finally {}
+	} finally {
+	}
 });
 
 const handleBack = () => {
@@ -67,14 +68,16 @@ onBeforeUnmount(() => {
 });
 
 const handleSubmit = async () => {
-  // 调用子组件的校验方法
-  const isValid = await noticeChildRef.value.validateForm();
-  
-  if (isValid) {
-    console.log('校验通过,执行提交逻辑');
-  } else {
-    console.log('校验失败,请检查表单');
-  }
+	ElMessage.success('小编在努力开发中。。。');
+	return;
+	// 调用子组件的校验方法
+	const isValid = await noticeChildRef.value.validateForm();
+
+	if (isValid) {
+		console.log('校验通过,执行提交逻辑');
+	} else {
+		console.log('校验失败,请检查表单');
+	}
 };
 </script>
 
@@ -121,4 +124,4 @@ const handleSubmit = async () => {
 		gap: 10px;
 	}
 }
-</style>
+</style>

+ 2 - 0
src/views/notificationInfoInquiry/shipRegistration/index.vue

@@ -103,6 +103,8 @@ const onMessageChange = (scope, newVal) => {
 };
 // 通报发布
 const handlePublish = releasedId => {
+	ElMessage.success('小编在努力开发中。。。');
+	return;
 	router.push({
 		path: '/notificationInfoInquiry/publish',
 		query: { type: 'edit', releasedId: releasedId },