diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/.gitignore b/zdxt-web-client/zdxt-efcode-enterprise-app/.gitignore index 5af99e74..f0bf7487 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/.gitignore +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/.gitignore @@ -17,6 +17,7 @@ package-lock.json # Editor directories and files .idea .vscode +.qoder *.suo *.ntvs* *.njsproj diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.jpg b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.jpg deleted file mode 100644 index 6a94b884..00000000 Binary files a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.jpg and /dev/null differ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.png b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.png new file mode 100644 index 00000000..9f32c12a Binary files /dev/null and b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_ajxx.png differ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_jdm.png b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_jdm.png new file mode 100644 index 00000000..c87f5c47 Binary files /dev/null and b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_jdm.png differ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.jpg b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.jpg deleted file mode 100644 index 99a3ffa3..00000000 Binary files a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.jpg and /dev/null differ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.png b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.png new file mode 100644 index 00000000..e9ce87bd Binary files /dev/null and b/zdxt-web-client/zdxt-efcode-enterprise-app/src/assets/images/bg_zfxx.png differ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/router/enterprise-app/ent-main-router.js b/zdxt-web-client/zdxt-efcode-enterprise-app/src/router/enterprise-app/ent-main-router.js index a30e4877..8caf9acf 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/router/enterprise-app/ent-main-router.js +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/router/enterprise-app/ent-main-router.js @@ -124,6 +124,13 @@ const routes = [ name: "enforcementEvaluateDetail", meta: { title: "评价详情" }, component: () => import("@/views/enterprise/enforcement/enforcementEvaluateDetail.vue"), + }, + // 在线联系 + { + path: "/enterprise/enforcementChat", + name: "enforcementChat", + meta: { title: "在线联系" }, + component: () => import("@/views/enterprise/enforcement/enforcementChat.vue"), } ]; diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementCaseInfo.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementCaseInfo.vue index 9d94d4c3..69e8d8b0 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementCaseInfo.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementCaseInfo.vue @@ -260,23 +260,28 @@ const toDetailView = (item) => { top: 0; left: 0; padding: 0.1rem 0.3rem; - border-radius: 0.2rem 0 0.2rem 0; + // border-radius: 0.2rem 0 0.2rem 0; font-size: 0.28rem; color: #fff; font-weight: 500; z-index: 1; + height: 24px; + width: 52px; } .tag-blue { - background: linear-gradient(135deg, #4a9eff, #2d94fa); + background: url('../../../assets/images/bg_label_jc.png') no-repeat center center; + background-size: 100% 100%; } .tag-purple { - background: linear-gradient(135deg, #9b7cf5, #7c5cfb); + background: url('../../../assets/images/bg_label_cf.png') no-repeat center center; + background-size: 100% 100%; } .tag-orange { - background: linear-gradient(135deg, #ff9f5e, #f0853a); + background: url('../../../assets/images/bg_label_qz.png') no-repeat center center; + background-size: 100% 100%; } /* 卡片内容 */ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementChat.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementChat.vue new file mode 100644 index 00000000..dd482c45 --- /dev/null +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementChat.vue @@ -0,0 +1,596 @@ + + + + + diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluateDetail.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluateDetail.vue index 15124ba6..a4285870 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluateDetail.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/enforcement/enforcementEvaluateDetail.vue @@ -98,9 +98,11 @@ :class="{ active: evaluateForm.satisfaction === '满意' }" @click="evaluateForm.satisfaction = '满意'" > -
- -
+ 满意 满意
-
- -
+ 较满意 较满意
-
- -
+ 不满意 不满意
@@ -192,6 +198,12 @@ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue index 3cd92805..55ad2bd0 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/home/enterpriseHomeV2.vue @@ -46,7 +46,7 @@ -
+

执法案件信息

@@ -436,7 +436,7 @@ onMounted(() => { /* 执法监督码卡片 */ .supervision-card { - background: url('../../../assets/images/bg_jdm.jpg') center center no-repeat; + background: url('../../../assets/images/bg_jdm.jpg') center center no-repeat, linear-gradient(180deg, #7cc5fe 0%, #fff 100%); background-size: 100% 100%; border-radius: 16px; padding: 18px 20px; @@ -444,7 +444,6 @@ onMounted(() => { position: relative; overflow: hidden; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05); - h3 { font-size: 14px; color: #1a1a2e; @@ -461,9 +460,9 @@ onMounted(() => { .qr-image { width: 100px; - height: 100px; + // height: 100px; object-fit: contain; - border-radius: 16px; + border-radius: 40px; } } @@ -476,14 +475,14 @@ onMounted(() => { .info-card { flex: 1; - background: linear-gradient(135deg, #eaf3ff 0%, #d6eaff 60%, #c8e0f8 100%); border-radius: 16px; padding: 18px 16px; position: relative; overflow: hidden; min-height: 90px; box-shadow: 0 2px 12px rgba(0, 0, 0, 0.05); - + background: url('../../../assets/images/bg_zfxx.png') center center no-repeat, linear-gradient(180deg, #bbecfd 0%, #fff 100%); + background-size: 100% 100%; h4 { font-size: 14px; color: #1a1a2e; @@ -511,7 +510,10 @@ onMounted(() => { } } } - +.info-enforce{ + background: url('../../../assets/images/bg_ajxx.png') center center no-repeat, linear-gradient(180deg, #a6d1f9 0%, #fff 100%); + background-size: 100% 100%; +} /* ===== 底部导航 ===== */ .footer_body { flex-shrink: 0; diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue index c0961b91..30148de9 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/message/messageCenter.vue @@ -11,22 +11,7 @@
- -
-
- - - -
-
- -
-
消息中心
-
Message Center
-
- -
@@ -36,30 +21,16 @@ - + -
+
- - - - - - - {{ item.unreadCount > 99 ? '99+' : item.unreadCount }} + {{ item.unreadCount > 99 ? + '99+' : item.unreadCount }}
@@ -76,26 +47,15 @@ - + -
+
- - - - {{ item.unreadCount > 99 ? '99+' : item.unreadCount }} + {{ item.unreadCount > 99 ? + '99+' : item.unreadCount }}
@@ -157,42 +117,6 @@ const generateMessageMockData = () => { iconBg: 'icon-blue', unreadCount: 1, }, - { - id: 2, - title: '执法检查通知', - desc: '您有一条新的执法检查通知,请查收', - time: '2026-04-14 16:30', - icon: 'check', - iconBg: 'icon-orange', - unreadCount: 2, - }, - { - id: 3, - title: '系统公告', - desc: '系统将于今晚22:00进行维护升级', - time: '2026-04-13 09:00', - icon: 'notice', - iconBg: 'icon-green', - unreadCount: 0, - }, - { - id: 4, - title: '行政处罚提醒', - desc: '您的企业有一条行政处罚记录待处理', - time: '2026-04-12 14:20', - icon: 'law', - iconBg: 'icon-red', - unreadCount: 1, - }, - { - id: 5, - title: '执法评价邀请', - desc: '请您对本次执法进行评价', - time: '2026-04-10 11:15', - icon: 'check', - iconBg: 'icon-purple', - unreadCount: 0, - }, ]; }; @@ -217,15 +141,6 @@ const generateTodoMockData = () => { iconBg: 'icon-orange', unreadCount: 2, }, - { - id: 103, - title: '待确认登记', - desc: '有一条执法登记信息待您确认', - time: '2026-04-13 10:45', - icon: 'check', - iconBg: 'icon-blue', - unreadCount: 1, - }, ]; }; @@ -379,107 +294,22 @@ onMounted(() => { /* ===== 顶部蓝色背景区域 ===== */ .header-bg { - background: linear-gradient(180deg, #2b7de9 0%, #5ba3f5 40%, #a0cdf8 70%, #dceefb 90%, #eef5ff 100%); - padding: 20px 20px 30px; - position: relative; - overflow: hidden; - flex-shrink: 0; - z-index: 3; - - &::after { - content: ''; - position: absolute; - bottom: 0; - left: 0; - right: 0; - height: 60px; - background: linear-gradient(180deg, transparent, rgba(255,255,255,0.3)); - } + background: url('@/assets/images/bg_msg.jpg') center center no-repeat; + background-size: 100% 100%; + height: 220px; } .header-content { - display: flex; - align-items: center; - justify-content: center; - position: relative; - z-index: 1; - gap: 12px; -} - -/* 铃铛图标 */ -.bell-wrapper { - width: 60px; - height: 60px; - background: rgba(255, 255, 255, 0.25); - border-radius: 50%; - display: flex; - align-items: center; - justify-content: center; - backdrop-filter: blur(4px); -} - -.bell-icon { - width: 36px; - height: 36px; - color: rgba(255, 255, 255, 0.9); -} - -/* 标题 */ -.header-title { - text-align: center; - - .title-cn { - font-size: 24px; - font-weight: bold; - color: #fff; - letter-spacing: 3px; - text-shadow: 0 1px 4px rgba(0,0,0,0.15); - } - - .title-en { - font-size: 14px; - color: rgba(255, 255, 255, 0.7); - margin-top: 4px; - letter-spacing: 1px; - } -} - -/* 城市剪影装饰 */ -.cityscape-decoration { + background: url('@/assets/images/label_msg.png') center center no-repeat; + background-size: 100% 100%; position: absolute; - bottom: 0; - left: 0; - right: 0; - height: 80px; - opacity: 0.12; - - &::before { - content: ''; - position: absolute; - bottom: 0; - left: 8%; - width: 10%; - height: 50px; - background: rgba(255,255,255,0.5); - border-radius: 2px 2px 0 0; - } - - &::after { - content: ''; - position: absolute; - bottom: 0; - right: 12%; - width: 8%; - height: 70px; - background: rgba(255,255,255,0.4); - border-radius: 2px 2px 0 0; - box-shadow: - -25px 15px 0 rgba(255,255,255,0.3), - -50px 30px 0 rgba(255,255,255,0.2), - 25px 20px 0 rgba(255,255,255,0.25); - } + top: 5%; + left: 5%; + width: 260px; + height: 90px; } + /* ===== 内容区域 ===== */ .content-area { flex: 1; @@ -487,16 +317,17 @@ onMounted(() => { position: relative; z-index: 2; margin-top: -10px; - background: #f0f6ff; + // background: #105ccf; border-radius: 12px 12px 0 0; + top: -65px; } /* ===== Tab 样式覆盖 ===== */ :deep(.message-tabs .van-tabs__wrap) { background: #fff; border-radius: 12px 12px 0 0; - border-top-left-radius: 0.68rem; - border-top-right-radius: 0.68rem; + border-top-left-radius: 12px; + border-top-right-radius: 12px; } :deep(.message-tabs .van-tab) { @@ -553,23 +384,18 @@ onMounted(() => { /* 图标背景色 */ .icon-blue { - background: linear-gradient(135deg, #4a9eff, #2d94fa); + background: url('../../../assets/images/icon_pffw.jpg') center center no-repeat; + background-size: 100% 100%; } .icon-orange { - background: linear-gradient(135deg, #ff9f5e, #f0853a); -} - -.icon-green { - background: linear-gradient(135deg, #67c23a, #5daf34); + background: url('../../../assets/images/icon_zfyg.jpg') center center no-repeat; + background-size: 100% 100%; } .icon-red { - background: linear-gradient(135deg, #f56c6c, #e64340); -} - -.icon-purple { - background: linear-gradient(135deg, #9b7cf5, #7c5cfb); + background: url('../../../assets/images/icon_zfpj.jpg') center center no-repeat; + background-size: 100% 100%; } /* 红点角标 */ diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/complaintSuggestion.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/complaintSuggestion.vue index 8eef3c09..848ff0a2 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/complaintSuggestion.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/complaintSuggestion.vue @@ -60,26 +60,41 @@ { required: true, message: '请填写联系电话' }, { pattern: /^1[3-9]\d{9}$/, message: '请输入正确的手机号' } ]" class="contact-field" required /> + +
+ + 是否授权 + + + + 同意 + + + + 不同意 + + +
+
注:选择“同意”,处置部门将通过登记的联系人、联系电话与您联系,并对您的个人信息严格保密。
- - -
- - 是否授权 - - 同意 - 不同意 - -
- - + @@ -88,7 +103,8 @@ - + @@ -419,10 +435,9 @@ const onFailed = (errorInfo) => { .authorize-bar { display: flex; align-items: center; - background: #fff7e6; + background: #fff; border-radius: 0.2rem; - padding: 0.25rem 0.3rem; - margin-bottom: 0.27rem; + padding: 0.25rem 0.48rem; gap: 0.2rem; .authorize-text { @@ -430,13 +445,41 @@ const onFailed = (errorInfo) => { font-size: 0.32rem; color: #333; } + +} + +.remark-text { + font-size: 0.28rem; + color: #999; + padding:0px 20px 20px 20px; + box-sizing: border-box; } -.auth-option { +.custom-radio-icon { + width: 16px; + height: 16px; + border: 1px solid #c8c9cc; + border-radius: 3px; display: flex; align-items: center; - gap: 0.1rem; - cursor: pointer; + justify-content: center; + box-sizing: border-box; + + &.checked { + background-color: #2b7de9; + border-color: #2b7de9; + } +} + +:deep(.van-radio) { + margin-right: 0.2rem; + + &:last-child { + margin-right: 0; + } +} + +:deep(.van-radio__label) { font-size: 0.28rem; color: #333; } diff --git a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/myPage.vue b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/myPage.vue index 941ab30d..5d7d567d 100644 --- a/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/myPage.vue +++ b/zdxt-web-client/zdxt-efcode-enterprise-app/src/views/enterprise/my/myPage.vue @@ -4,17 +4,11 @@
- -
@@ -23,9 +17,6 @@