浏览代码

根据规范优化样式/消息中心BUG修复

fanghuisheng 10 月之前
父节点
当前提交
49a2ddf2ff

+ 9 - 33
src/App.vue

@@ -1,11 +1,15 @@
 <script setup>
-import config from "./config";
-import { getToken, setToken, removeToken } from "@/utils/auth";
-import { defineComponent, getCurrentInstance, inject, nextTick, onMounted, watchEffect, ref } from "vue";
+/*----------------------------------依赖引入-----------------------------------*/
 import { onLoad, onShow, onHide, onLaunch, onReady } from "@dcloudio/uni-app";
-
-let tab = inject("$tab");
+import { defineComponent, getCurrentInstance, inject, nextTick, onMounted, watchEffect, ref } from "vue";
+/*----------------------------------接口引入-----------------------------------*/
+/*----------------------------------组件引入-----------------------------------*/
+/*----------------------------------store引入-----------------------------------*/
+/*----------------------------------公共方法引入-----------------------------------*/
+import config from "./config";
+/*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
+/*----------------------------------变量声明-----------------------------------*/
 
 function initApp() {
   //初始化获取安全区高度
@@ -20,26 +24,6 @@ function initApp() {
   //#endif
 }
 
-/**
- * @消息推送监听
- */
-function pushMessage() {
-  uni.onPushMessage((res) => {
-    const platform = uni.getSystemInfoSync().platform;
-    console.log("收到推送消息:", res); //监听推送消息
-
-    if (res.type === "click") {
-      if (platform == "android") {
-      } else {
-      }
-    } else if (res.type === "receive") {
-      if (platform == "android") {
-      } else {
-      }
-    }
-  });
-}
-
 // 设置手机通知权限
 function setPermissions() {
   // #ifdef APP-PLUS
@@ -131,14 +115,6 @@ watchEffect(() => {
 
 onLaunch(() => {
   console.log("App Launch");
-
-  //初始化默认主题
-  if (!proxy.$settingStore.themeColor) {
-    proxy.$settingStore.SET_THEMECOLOR(proxy.$constData.themeList[0]);
-  } else {
-    proxy.$settingStore.SET_THEMECOLOR(proxy.$settingStore.themeColor);
-  }
-
   initApp();
 });
 

+ 3 - 2
src/components/oa-calendar/uni-calendar.vue

@@ -413,6 +413,7 @@ $uni-bg-color-mask: rgba(
 $uni-border-color: #ededed;
 $uni-text-color: #333;
 $uni-bg-color-hover: #f1f1f1;
+$uni-font-size-sm:12px;
 $uni-font-size-base: 14px;
 $uni-text-color-placeholder: #808080;
 $uni-color-subtitle: #555555;
@@ -507,7 +508,7 @@ $uni-text-color-grey: #999;
   padding-left: 10px;
   height: 25px;
   line-height: 25px;
-  font-size: 12px;
+  font-size: $uni-font-size-sm;
   border-top-left-radius: 25px;
   border-bottom-left-radius: 25px;
   color: $uni-text-color;
@@ -593,7 +594,7 @@ $uni-text-color-grey: #999;
 }
 
 .uni-calendar__weeks-day-text {
-  font-size: 14px;
+  font-size: $uni-font-size-base;
 }
 
 .uni-calendar__box {

+ 5 - 1
src/config.js

@@ -9,7 +9,6 @@ export default {
   //#endif
 
   websiteUrl: "https://qhome.usky.cn",
-  // NODE_ENV=devlopment
   // 应用信息
   appInfo: {
     // 应用名称
@@ -26,6 +25,11 @@ export default {
     site_url: "http://www.usky.cn/",
     // 版权
     copyright: "Copyright © 2021- 2025 Usky. All Rights Reserved. 永天股份 版权所有",
+    // 备案编号
+    filingInfo: {
+      code: "ICP备案号:沪ICP备00000000号-10A",
+      href: "https://beian.miit.gov.cn/#/Integrated/index"
+    },
     // 政策协议
     agreements: [
       {

+ 2 - 2
src/manifest.json

@@ -31,7 +31,6 @@
             "Barcode" : {},
             "Camera" : {},
             "Fingerprint" : {},
-            "Contacts" : {},
             "Push" : {}
         },
         /* 应用发布信息 */
@@ -174,7 +173,8 @@
                 "androidStyle" : "default",
                 "android" : {
                     "hdpi" : "src/static/images/wt/bg.png"
-                }
+                },
+                "iosStyle" : "common"
             }
         },
         "nativePlugins" : {

+ 7 - 16
src/pages.json

@@ -89,12 +89,6 @@
         },
         {
           "path": "textview/index",
-          "style": {
-            "navigationBarTitleText": "消息详情"
-          }
-        },
-        {
-          "path": "textview/index1",
           "style": {
             "navigationBarTitleText": "浏览文本"
           }
@@ -143,6 +137,13 @@
             "enablePullDownRefresh": false
           }
         },
+        {
+          "path": "appMessage/details",
+          "style": {
+            "navigationBarTitleText": "消息详情",
+            "enablePullDownRefresh": false
+          }
+        },
         {
           "path": "alarmMessage/index",
           "style": {
@@ -200,16 +201,6 @@
           "path": "info/index",
           "style": {
             "navigationBarTitleText": "我的信息"
-            // "app-plus": {
-            //   "bounce": "none",
-            //   "titleNView": {
-            //     "type": "transparent",
-            //     "autoBackButton": true,
-            //     "backButton": { //自定义 backButton
-            //       "background": "rgba(0,0,0,0)"
-            //     }
-            //   }
-            // }
           }
         },
         {

+ 53 - 49
src/pages/business/mhxf/needMatter/index.vue

@@ -1,6 +1,6 @@
 <template>
   <u-sticky class="shadow-default" bgColor="#fff" style="top: 0">
-    <u-tabs :list="list" :current="current" @click="tabsClick" lineColor="#333" :activeStyle="{ color: '#333' }" :inactiveStyle="{ color: '#909399' }"></u-tabs>
+    <u-tabs :list="state.tabsList" :current="state.current" @click="tabsClick" lineColor="#333" :activeStyle="{ color: '#333' }" :inactiveStyle="{ color: '#909399' }"></u-tabs>
   </u-sticky>
 
   <scroll-view class="scroll-height" :scroll-y="true" :data-theme="'theme-' + proxy.$settingStore.themeColor.name" style="padding-bottom: 44px">
@@ -145,8 +145,8 @@
                         <view style="display: flex" v-for="(i, index) in 5" :key="index">
                           <view>{{ cl["reformPathName" + (index + 1)] }}</view>
                           <!-- <view style="margin: auto 0 auto auto">
-                        <u--image src="/static/images/needMatter/icon2.png" width="15px" height="15px"></u--image>
-                      </view> -->
+                            <u--image src="/static/images/needMatter/icon2.png" width="15px" height="15px"></u--image>
+                          </view> -->
                         </view>
                       </view>
                     </view>
@@ -160,21 +160,21 @@
 
           <view>
             <u-modal
-              :show="modalShow"
+              :show="state.modalShow"
               title="填报(火灾报警系统)"
               :showCancelButton="true"
               :showConfirmButton="true"
               :closeOnClickOverlay="true"
-              @close="modalShow = false"
-              @cancel="modalShow = false"
+              @close="state.modalShow = false"
+              @cancel="state.modalShow = false"
               @confirm="handleConfirm"
             >
               <view style="width: 100%">
                 <uni-section class="block mb20" title="图片上传:" type="line">
-                  <u-upload :fileList="fileList" name="6" @afterRead="afterRead" multiple :maxCount="5" width="80" height="80"> </u-upload>
+                  <u-upload :fileList="state.fileList" name="6" @afterRead="afterRead" multiple :maxCount="5" width="80" height="80"> </u-upload>
                 </uni-section>
                 <uni-section class="block mb20" title="备注:" type="line">
-                  <u--textarea v-model="textValue" placeholder="请输入内容"></u--textarea>
+                  <u-textarea v-model="state.textValue" placeholder="请输入内容"></u-textarea>
                 </uni-section>
               </view>
             </u-modal>
@@ -186,33 +186,40 @@
 </template>
 
 <script setup>
+/*----------------------------------依赖引入-----------------------------------*/
 import { onReady, onLoad, onShow, onNavigationBarButtonTap } from "@dcloudio/uni-app";
-import { ref, onMounted, inject, shallowRef, reactive, watchEffect, getCurrentInstance } from "vue";
-import { useStores, commonStores } from "@/store/modules/index";
-
+import { ref, toRefs, onMounted, inject, shallowRef, reactive, watchEffect, getCurrentInstance } from "vue";
+/*----------------------------------接口引入-----------------------------------*/
 import { mobileScheduleList, updateMobileReformStatus, uploadAvatar, addReformMaterial } from "@/api/business/mhxf/needMatter";
-
+/*----------------------------------组件引入-----------------------------------*/
+/*----------------------------------store引入-----------------------------------*/
+import { useStores, commonStores } from "@/store/modules/index";
+/*----------------------------------公共方法引入-----------------------------------*/
+/*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
-
 const useStore = useStores();
 const commonStore = commonStores(); //全局公共Store
+/*----------------------------------变量声明-----------------------------------*/
+const state = reactive({
+  current: 0,
+  classifyData: [],
+  modalShow: false,
+
+  arrList: {},
+  fileList: [],
+  textValue: "",
+
+  tabsList: [
+    { id: 0, name: "全部" },
+    { id: 1, name: "已接收" },
+    { id: 2, name: "进行中" },
+    { id: 3, name: "待办完成" },
+    { id: 4, name: "审核不通过" },
+    { id: 5, name: "审核通过" },
+  ],
+});
 
-const current = ref(0);
-const classifyData = ref([]);
-const modalShow = ref(false);
-
-const arrayList = ref({});
-const fileList = ref([]);
-const textValue = ref("");
-
-const list = ref([
-  { id: 0, name: "全部" },
-  { id: 1, name: "已接收" },
-  { id: 2, name: "进行中" },
-  { id: 3, name: "待办完成" },
-  { id: 4, name: "审核不通过" },
-  { id: 5, name: "审核通过" },
-]);
+const { classifyData } = toRefs(state);
 
 /**
  * @填报
@@ -228,10 +235,10 @@ function handleSubmit(el, type) {
       }
     });
   } else if (type === "填报") {
-    arrayList.value = el;
-    fileList.value = [];
-    textValue.value = "";
-    modalShow.value = true;
+    state.arrList = el;
+    state.fileList = [];
+    state.textValue = "";
+    state.modalShow = true;
   }
 }
 
@@ -243,9 +250,9 @@ function handleConfirm() {
   proxy.$modal.loading("加载中");
 
   let params = {
-    reformId: arrayList.value.reformId, //整改单编号
+    reformId: state.arrList.reformId, //整改单编号
     reformPerson: useStore.nickName, //整改提交人
-    reformRemark: textValue.value, //整改备注
+    reformRemark: state.textValue, //整改备注
     reformPath1: "", //整改相关图片或文件路径1
     reformPath2: "", //整改相关图片或文件路径2
     reformPath3: "", //整改相关图片或文件路径3
@@ -253,18 +260,15 @@ function handleConfirm() {
     reformPath5: "", //整改相关图片或文件路径5
   };
 
-  fileList.value.forEach((el, index) => {
+  state.fileList.forEach((el, index) => {
     params[`reformPath${index + 1}`] = el.url;
   });
 
   addReformMaterial(params).then((res) => {
     if (res.status === "SUCCESS") {
       proxy.$modal.closeLoading();
-
       proxy.$modal.msgSuccess("提交成功");
-
-      modalShow.value = false;
-
+      state.modalShow = false;
       goSearch();
     }
   });
@@ -306,7 +310,7 @@ function afterRead(event) {
 function uploadFilePromise(el) {
   let data = { name: "file", filePath: el.url };
   uploadAvatar(data).then((res) => {
-    fileList.value.push(res.data);
+    state.fileList.push(res.data);
   });
 }
 
@@ -315,17 +319,17 @@ function uploadFilePromise(el) {
  */
 function touchChange(e) {
   if (e == "右滑") {
-    if (current.value >= 1) {
-      current.value--;
+    if (state.current >= 1) {
+      state.current--;
     } else {
-      current.value = list.value.length - 1;
+      state.current = state.tabsList.length - 1;
     }
     goSearch();
   } else if (e == "左滑") {
-    if (current.value < list.value.length - 1) {
-      current.value++;
+    if (state.current < state.tabsList.length - 1) {
+      state.current++;
     } else {
-      current.value = 0;
+      state.current = 0;
     }
     goSearch();
   }
@@ -335,7 +339,7 @@ function touchChange(e) {
  * @tabs点击事件
  */
 function tabsClick(e) {
-  current.value = e.index;
+  state.current = e.index;
   goSearch();
 }
 
@@ -346,7 +350,7 @@ function goSearch() {
   classifySearch({
     companyId: "", //	单位Id
     reformId: "", //整改单编号
-    reformStatus: current.value == 0 ? "" : current.value, //整改状态(1 已接收、2 整改中、3 整改完成、4 审核不通过、5 审核通过)
+    reformStatus: state.current, //整改状态(1 已接收、2 整改中、3 整改完成、4 审核不通过、5 审核通过)
     pageNum: 1, //当前页
     pageSize: 20, //每页条数
   });

+ 57 - 0
src/pages/common/appMessage/details.vue

@@ -0,0 +1,57 @@
+<template>
+    <view>
+      <uni-card class="view-title" :title="data?.infoTitle || ''">
+        <view class="uni-body view-content">{{ data?.infoContent || "" }}</view>
+        <text class="uni-body view-time">{{ data?.createTime ? data.createTime.replace("T", " ") : "" }}</text>
+      </uni-card>
+      <oa-tabbar :tabbarValue="1"></oa-tabbar>
+    </view>
+  </template>
+  
+  <script setup>
+  import { onReady, onLoad, onShow, onNavigationBarButtonTap } from "@dcloudio/uni-app";
+  import { ref, onMounted, inject, shallowRef, reactive, getCurrentInstance, toRefs } from "vue";
+  import { getMceList } from "@/api/mine/info.js";
+  const { proxy } = getCurrentInstance();
+  const id = ref(); //消息id
+  const data = ref({});
+  function init() {
+    getMceList({
+      current: 1,
+      size: 10,
+      id: id.value,
+    }).then((requset) => {
+      data.value = requset.data.records[0];
+    });
+  }
+  onLoad((options) => {
+    id.value = options.id;
+    init();
+  });
+  
+  onShow(() => {
+    //调用系统主题颜色
+    proxy.$settingStore.systemThemeColor([1]);
+  });
+  </script>
+  
+  <style scoped>
+  .view-title {
+    font-weight: bold;
+  }
+  
+  .view-content {
+    font-size: 12px;
+    padding: 12px 0 0;
+    color: #333;
+    line-height: 24px;
+    font-weight: normal;
+    text-indent: 20px;
+  }
+  .view-time {
+    margin: 30px 0 10px;
+    font-size: 12px;
+    float: right;
+  }
+  </style>
+  

+ 1 - 1
src/pages/common/appMessage/index copy.vue

@@ -79,7 +79,7 @@ function tabsClick(e) {
  */
 function goContentDetails(e) {
   if (e.type == "通知公告") {
-    proxy.$tab.navigateTo(`/pages/common/textview/index1?title=${e.typeTitle}&content=${e.listContent}&contentTitle=${e.listTitle}`);
+    proxy.$tab.navigateTo(`/pages/common/textview/index?title=${e.typeTitle}&content=${e.listContent}&contentTitle=${e.listTitle}`);
   }
 }
 

+ 57 - 60
src/pages/common/appMessage/index.vue

@@ -1,18 +1,17 @@
 <template>
-  <scroll-view class="scroll-height" :scroll-y="true"  :data-theme="'theme-' + proxy.$settingStore.themeColor.name" style="padding-bottom: 64px">
+  <scroll-view class="scroll-height" :scroll-y="true" :data-theme="'theme-' + proxy.$settingStore.themeColor.name" style="padding-bottom: 64px">
     <view class="appMessage-container">
       <view class="content-area">
         <u-empty v-if="noticeList.length <= 0 && loading" text="暂无数据" mode="data" icon="http://cdn.uviewui.com/uview/empty/data.png"> </u-empty>
         <view :id="index == noticeList.length - 1 ? 'bottomInfo' : ''" v-for="(all, index) in noticeList" :key="index" v-show="noticeList.length > 0" @click="goContentDetails(all)">
-          
           <view class="content-area-center radius bg-white list-cell list-cell-arrow">
             <view class="">
               <!-- <image class="content-area-center-image-bg" :src="all.img" /> -->
               <view class="content-area-center-title font16">{{ all.infoTitle }}</view>
-              <view class="content-area-center-time font14 ">{{ all.createTime.substring(5,10) }} {{ all.createTime.substring(11,16) }}</view>
+              <view class="content-area-center-time font14">{{ all.createTime.substring(5, 10) }} {{ all.createTime.substring(11, 16) }}</view>
             </view>
             <view class="content-area-center-cont font14">{{ all.infoContent }}</view>
-            <view class="content-area-center-status font12" :style="{color: all.readFlag == 0 ? 'rgb(20, 158, 255)' : '#ccc' }">{{ all.readFlag == 0 ? '未读' : '已读' }}</view>
+            <view class="content-area-center-status font12" :style="{ color: all.readFlag == 0 ? 'rgb(20, 158, 255)' : '#ccc' }">{{ all.readFlag == 0 ? "未读" : "已读" }}</view>
           </view>
         </view>
       </view>
@@ -24,29 +23,22 @@
 <script setup>
 import { onLoad, onShow, onReady, onHide, onLaunch, onNavigationBarButtonTap, onPageScroll } from "@dcloudio/uni-app";
 import { ref, reactive, computed, getCurrentInstance, toRefs, inject } from "vue";
-import { getMceList,updateMceReceiveStatus } from "@/api/mine/info.js";
-import { storage_msgType } from "@/utils/storage"; 
+import { getMceList, updateMceReceiveStatus } from "@/api/mine/info.js";
+import { storageSystem } from "@/utils/storage";
 const { proxy } = getCurrentInstance();
-const infoType = ref()//消息类型
-const loading =ref(false)
+const infoType = ref(); //消息类型
+const loading = ref(false);
 const data = reactive({
   scrollIntoView: "",
   tabsCurrent: 0,
 
   allInfoList: [],
   noticeList: [],
-  pageTitle:undefined
+  pageTitle: undefined,
 });
 
 const { scrollIntoView, tabsCurrent, noticeList, pageTitle } = toRefs(data);
 
-/**
- * @初始化
- */
-function init() {
-  infoListApi();
-}
-
 /**
  * @tabs点击事件
  */
@@ -58,48 +50,45 @@ function tabsClick(e) {
  * @跳转相应类型系统
  */
 function goContentDetails(e) {
-  console.log(e)
-  if(e.infoType == 4){
+  console.log(e);
+  if (e.infoType == 4) {
     proxy.$tab.navigateTo(`/pages/business/fireIot/alarmManage/alarmDetails/index?id=${e.id}`).then(() => {
-      if(!e.readFlag){
-        updateMceReceiveStatus({id:e.id})
+      if (!e.readFlag) {
+        updateMceReceiveStatus({ id: e.id });
       }
-    })
-  }else{
-    proxy.$tab.navigateTo(`/pages/common/textview/index?id=${e.id}`).then(() => {
-      if(!e.readFlag){
-        updateMceReceiveStatus({id:e.id})
+    });
+  } else {
+    proxy.$tab.navigateTo(`/pages/common/appMessage/details?id=${e.id}`).then(() => {
+      if (!e.readFlag) {
+        updateMceReceiveStatus({ id: e.id });
       }
-    })
+    });
   }
-
 }
 
 /**
  * @通知公告列表
  * @api接口调用
  */
-function infoListApi() {
+function infoListApi(options) {
   proxy.$modal.loading("加载中");
-  let infoTypeList = storage_msgType.get("msgType")?.infoTypeStatic
+  let infoTypeList = storageSystem.get("infoList")?.infoTypeStatic;
   for (let i = 0; i < infoTypeList.length; i++) {
-    if(infoType.value == infoTypeList[i].infoType){
-      pageTitle.value = infoTypeList[i].label
+    if (infoType.value == infoTypeList[i].infoType) {
+      pageTitle.value = infoTypeList[i].label;
       break;
     }
   }
   uni.setNavigationBarTitle({
-    title: pageTitle.value 
+    title: pageTitle.value,
   });
   getMceList({
-    // current: 1,
-    // size: 10,
-    infoType: infoType.value
+    infoType: infoType.value,
   }).then((requset) => {
-    let data = requset.data.records
+    let data = requset.data.records;
     if (requset.status === "SUCCESS") {
-      noticeList.value = data
-      loading.value = true
+      noticeList.value = data;
+      loading.value = true;
       setTimeout(() => {
         scrollIntoView.value = "bottomInfo";
       }, 0);
@@ -115,19 +104,27 @@ function infoListApi() {
     setTimeout(() => {
       proxy.$modal.closeLoading();
     }, 100);
+
+    if ("id" in options) {
+      noticeList.value.forEach((e) => {
+        if (e.id == options.id) {
+          goContentDetails(e);
+        }
+      });
+    }
   });
 }
 
 onLoad((options) => {
-  infoType.value = options.type
-  console.log(options)
-  init();
+  infoType.value = options.type;
+
+  infoListApi(options);
 });
 
 onReady(() => {});
 
 onShow(() => {
-  init();
+  infoListApi({});
   //调用系统主题颜色
   proxy.$settingStore.systemThemeColor([1]);
 });
@@ -149,12 +146,12 @@ onNavigationBarButtonTap((e) => {
   padding-bottom: 1px;
 
   .content-area {
-    >div{
+    > div {
       vertical-align: middle;
     }
     &-center {
       margin: 14px 10px -2px;
-      width:calc(100% - 20px);
+      width: calc(100% - 20px);
       padding: 10px;
       overflow: hidden;
       position: relative;
@@ -168,38 +165,38 @@ onNavigationBarButtonTap((e) => {
         color: #000;
         display: inline-block;
         vertical-align: middle;
-        white-space: nowrap;      /* 确保文本在一行内显示 */
-        overflow: hidden;         /* 隐藏超出容器的内容 */
-        text-overflow: ellipsis;  /* 使用省略号表示被截断的文本 */
-        width: 70%;             /* 定义容器宽度 */
+        white-space: nowrap; /* 确保文本在一行内显示 */
+        overflow: hidden; /* 隐藏超出容器的内容 */
+        text-overflow: ellipsis; /* 使用省略号表示被截断的文本 */
+        width: 70%; /* 定义容器宽度 */
       }
       &-time {
         color: #909399;
-        float:right;
-        margin-right:14px;
+        float: right;
+        margin-right: 14px;
       }
       &-cont {
         color: #ccc;
-        margin-top:16px;
-        white-space: nowrap;      /* 确保文本在一行内显示 */
-        overflow: hidden;         /* 隐藏超出容器的内容 */
-        text-overflow: ellipsis;  /* 使用省略号表示被截断的文本 */
-        width: 100%;             /* 定义容器宽度 */
+        margin-top: 16px;
+        white-space: nowrap; /* 确保文本在一行内显示 */
+        overflow: hidden; /* 隐藏超出容器的内容 */
+        text-overflow: ellipsis; /* 使用省略号表示被截断的文本 */
+        width: 100%; /* 定义容器宽度 */
       }
       &-status {
-        margin-top:16px;
+        margin-top: 16px;
         text-align: right;
         width: 100%;
       }
     }
   }
 }
-.list-cell::after{
+.list-cell::after {
   position: absolute;
 }
-.list-cell-arrow::before{
+.list-cell-arrow::before {
   position: absolute;
-  top:18px;
-  right:10px;
+  top: 18px;
+  right: 10px;
 }
 </style>

+ 0 - 0
src/pages/common/appMessage/receiveSettings.vue


+ 4 - 4
src/pages/common/invoicing/index.vue

@@ -33,15 +33,15 @@
           </view>
           <view class="menu-item">
             <view> 联系方式:18621761642(同微信) </view>
-            <view class="iconfont oaIcon-copy menu-item-icon" style="font-size: 14px; color: #909399" @click="copy('18621761642')"> </view>
+            <view class="iconfont oaIcon-copy menu-item-icon" @click="copy('18621761642')"> </view>
           </view>
           <view class="menu-item">
             <view style="margin-right: 10px"> 邮箱:seven.li@chinausky.com </view>
-            <view class="iconfont oaIcon-copy menu-item-icon" style="font-size: 14px; color: #909399" @click="copy('seven.li@chinausky.com')"> </view>
+            <view class="iconfont oaIcon-copy menu-item-icon" @click="copy('seven.li@chinausky.com')"> </view>
           </view>
           <view class="menu-item">
-            <view> 客服电话:021-65376655</view>
-            <view class="iconfont oaIcon-dial menu-item-icon" style="font-size: 14px; color: #909399; margin-left: 5px" @click="proxy.$common.makePhoneCall('02165376655')"> </view>
+            <view style="margin-right: 10px"> 客服电话:021-65376655</view>
+            <view class="iconfont oaIcon-dial menu-item-icon" @click="proxy.$common.makePhoneCall('02165376655')"> </view>
           </view>
           <view class="menu-item">
             <view> 公司邮箱:admin@chinausky.com</view>

+ 13 - 23
src/pages/common/success/index.vue

@@ -1,10 +1,8 @@
 <template>
   <view id="success-container" :data-theme="'theme-' + proxy.$settingStore.themeColor.name">
-    <view>
-      <view style="display: flex">
-        <image style="width: 120px; height: 120px; margin: 50px auto 20px auto" src="@/static/images/common/success.png" />
-      </view>
-      <view style="text-align: center; font-weight: 600">{{ codeName }}</view>
+    <view class="content-section">
+      <image class="content-section-image" src="@/static/images/common/success.png" />
+      <view class="content-section-text">{{ codeName }}</view>
     </view>
 
     <view class="app-button-fixed" v-if="showNow" style="box-shadow: 0px 0px 15px 0 rgba(0, 0, 0, 0)">
@@ -61,26 +59,18 @@ onLoad((options) => {
   //#endif
   background-color: #ffffff;
 
-  .top {
-  }
-
-  .content {
-    display: flex;
-    margin: 30px 0;
-
-    .title {
-      margin: auto auto auto 0;
-      color: #000;
-      font-size: 18px;
-    }
-
-    .icons {
-      margin: auto 5px auto 0;
+  .content-section {
+    &-image {
+      display: flex;
+      width: 120px;
+      height: 120px;
+      margin: 50px auto 20px auto;
     }
 
-    .setting {
-      color: #2a98ff;
-      margin: auto 0;
+    &-text {
+      font-size: 16px;
+      text-align: center;
+      font-weight: 600;
     }
   }
 }

+ 32 - 37
src/pages/common/textview/index.vue

@@ -1,32 +1,35 @@
 <template>
-  <view>
-    <uni-card class="view-title" :title="data?.infoTitle || ''">
-      <view class="uni-body view-content">{{ data?.infoContent  || ''}}</view>
-      <text class="uni-body view-time">{{ data?.createTime ?  data.createTime.replace("T", " ") : ''}}</text>
-    </uni-card>
-    <oa-tabbar :tabbarValue="1"></oa-tabbar>
+  <view class="view-text">
+    <!-- <u-parse class="uni-body view-content" :content="content"></u-parse> -->
+    <h3 style="text-align: center; line-height: 45px">{{ contentTitle }}</h3>
+    <view>{{ content }}</view>
   </view>
 </template>
 
 <script setup>
 import { onReady, onLoad, onShow, onNavigationBarButtonTap } from "@dcloudio/uni-app";
 import { ref, onMounted, inject, shallowRef, reactive, getCurrentInstance, toRefs } from "vue";
-import { getMceList } from "@/api/mine/info.js";
+import { useStores, commonStores } from "@/store/modules/index";
+
+const useStore = useStores();
+
 const { proxy } = getCurrentInstance();
-const id = ref()//消息id
-const data = ref({});
-function init(){
-  getMceList({
-    current: 1,
-    size: 10,
-    id:id.value
-  }).then((requset) => {
-    data.value = requset.data.records[0]
-  })
-}
+
+const data = reactive({
+  title: "",
+  content: "",
+  contentTitle: "",
+});
+
+const { title, content, contentTitle } = toRefs(data);
+
 onLoad((options) => {
-  id.value = options.id
-  init()
+  title.value = options.title;
+  content.value = options.content;
+  contentTitle.value = options.contentTitle;
+  uni.setNavigationBarTitle({
+    title: options.title,
+  });
 });
 
 onShow(() => {
@@ -35,22 +38,14 @@ onShow(() => {
 });
 </script>
 
-<style scoped>
-.view-title {
-  font-weight: bold;
-}
-
-.view-content {
-  font-size: 26rpx;
-  padding: 12px 0 0;
-  color: #333;
-  line-height: 24px;
-  font-weight: normal;
-  text-indent: 20px;
-}
-.view-time {
-  margin:30px 0 10px;
-  font-size: 24rpx;
-  float: right;
+<style lang="scss" scoped>
+.view-text {
+  padding: 5px;
+  .view-content {
+    font-size: 12px;
+    color: #333;
+    line-height: 24px;
+    word-wrap: break-word;
+  }
 }
 </style>

+ 0 - 51
src/pages/common/textview/index1.vue

@@ -1,51 +0,0 @@
-<template>
-  <view class="view-text">
-    <!-- <u-parse class="uni-body view-content" :content="content"></u-parse> -->
-    <h3 style="text-align: center; line-height: 45px">{{ contentTitle }}</h3>
-    <view>{{ content }}</view>
-  </view>
-</template>
-
-<script setup>
-import { onReady, onLoad, onShow, onNavigationBarButtonTap } from "@dcloudio/uni-app";
-import { ref, onMounted, inject, shallowRef, reactive, getCurrentInstance, toRefs } from "vue";
-import { useStores, commonStores } from "@/store/modules/index";
-
-const useStore = useStores();
-
-const { proxy } = getCurrentInstance();
-
-const data = reactive({
-  title: "",
-  content: "",
-  contentTitle: "",
-});
-
-const { title, content, contentTitle } = toRefs(data);
-
-onLoad((options) => {
-  title.value = options.title;
-  content.value = options.content;
-  contentTitle.value = options.contentTitle;
-  uni.setNavigationBarTitle({
-    title: options.title,
-  });
-});
-
-onShow(() => {
-  //调用系统主题颜色
-  proxy.$settingStore.systemThemeColor([1]);
-});
-</script>
-
-<style lang="scss" scoped>
-.view-text {
-  padding: 5px;
-  .view-content {
-    font-size: 26rpx;
-    color: #333;
-    line-height: 24px;
-    word-wrap: break-word;
-  }
-}
-</style>

+ 4 - 4
src/pages/index.vue

@@ -89,7 +89,7 @@ import { scan_push, getHomePageData, getFunctionalModuleStatistics, getAppRouter
 import { useStores } from "@/store/modules/index";
 /*----------------------------------公共方法引入-----------------------------------*/
 import * as jwx from "@/utils/jssdk.js"; //引入js sdk的封装
-import { storageStystem } from "@/utils/storage"; // 公共方法引用
+import { storageSystem } from "@/utils/storage"; // 公共方法引用
 /*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
 const useStore = useStores();
@@ -162,7 +162,7 @@ function navItemClick(item) {
     });
     state.recentlyUsed = proxy.$common.sortEvent(state.recentlyUsed, 1);
 
-    storageStystem.set("homeList", state);
+    storageSystem.set("homeList", state);
 
     if (item.path.indexOf("http") != -1) {
       uni.navigateTo({
@@ -333,7 +333,7 @@ function getMobileBannerApi() {
 function getAppRoutersData() {
   getAppRouters().then((res) => {
     state.cuIconList = res.data;
-    storageStystem.set("homeList", state);
+    storageSystem.set("homeList", state);
 
     // plus.downloader
     //   .createDownload("http://172.16.120.165:9300/statics/202312/20231201113810A027.jpg", {}, (d, status) => {
@@ -350,7 +350,7 @@ onLoad((option) => {
 });
 
 onShow(() => {
-  var storages = storageStystem.get("homeList");
+  var storages = storageSystem.get("homeList");
   Object.keys(storages).forEach((key) => {
     state[key] = storages[key];
   });

+ 4 - 4
src/pages/info copy.vue

@@ -49,11 +49,11 @@ import { ref, onMounted, inject, shallowRef, reactive, getCurrentInstance, toRef
 import { getMceReceiveStatic } from "@/api/mine/info.js";
 /*----------------------------------组件引入-----------------------------------*/
 /*----------------------------------store引入-----------------------------------*/
-import { stystemStores } from "@/store/modules/index";
+import { systemStores } from "@/store/modules/index";
 /*----------------------------------公共方法引入-----------------------------------*/
 /*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
-const stystemStore = stystemStores();
+const systemStore = systemStores();
 const { sys_message_type } = proxy.useDict("sys_message_type");
 /*----------------------------------变量声明-----------------------------------*/
 
@@ -91,8 +91,8 @@ const { infoList } = toRefs(data);
 
 function init() {
   getMceReceiveStatic().then((res) => {
-    stystemStore.infoList.messageCountData = res.data;
-    stystemStore.infoList.messageTypeData = sys_message_type.value;
+    systemStore.infoList.messageCountData = res.data;
+    systemStore.infoList.messageTypeData = sys_message_type.value;
     res.data.infoTypeStatic.forEach((e) => {});
   });
 }

+ 11 - 13
src/pages/info.vue

@@ -55,20 +55,18 @@ import { getMceReceiveStatic, updateMceReceiveStatus } from "@/api/mine/info.js"
 /*----------------------------------组件引入-----------------------------------*/
 /*----------------------------------store引入-----------------------------------*/
 /*----------------------------------公共方法引入-----------------------------------*/
-import { storage_msgType } from "@/utils/storage";
+import { storageSystem } from "@/utils/storage";
 /*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
 const { sys_message_type } = proxy.useDict("sys_message_type");
 /*----------------------------------变量声明-----------------------------------*/
-
-const data = reactive({
+const state = reactive({
   infoList: {
     infoTypeStatic: [],
     total: 0,
   },
 });
-
-const { infoList } = toRefs(data);
+const { infoList } = toRefs(state);
 
 function init() {
   getMceReceiveStatic().then((res) => {
@@ -98,21 +96,21 @@ function init() {
     }
 
     proxy.$setting.setBadge(res.data.notReadCount); // 设置角标值
-    infoList.value = receiveStatic;
-    storage_msgType.set("msgType", receiveStatic);
+    state.infoList = receiveStatic;
+    storageSystem.set("infoList", receiveStatic);
   });
 }
+
 /**
  * 清除消息
  */
 function clearMsg() {
-  if (infoList.value.total > 0) {
-    updateMceReceiveStatus({ id: 0 }).then(() => {
-      proxy.$setting.setBadge(0); // 设置角标值
-      init();
-    });
-  }
+  updateMceReceiveStatus({ id: 0 }).then(() => {
+    proxy.$setting.setBadge(0); // 设置角标值
+    init();
+  });
 }
+
 function goAppMessage(path) {
   proxy.$tab.navigateTo(path);
 }

+ 2 - 0
src/pages/login.vue

@@ -74,6 +74,7 @@ import { reactive, getCurrentInstance, toRefs, inject, nextTick } from "vue";
 import { useStores, commonStores } from "@/store/modules/index";
 /*----------------------------------公共方法引入-----------------------------------*/
 import config from "@/config";
+import { storageSystem } from "@/utils/storage";
 /*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
 const useStore = useStores();
@@ -231,6 +232,7 @@ function login(data) {
     proxy.$modal.closeLoading();
     useStore.GetInfo().then((res) => {
       proxy.$tab.reLaunch("/pages/index");
+      proxy.$settingStore.initThemeColor(storageSystem.get("themeColor")); //初始化默认主题
     });
   });
 }

+ 2 - 2
src/pages/mine.vue

@@ -57,7 +57,7 @@
             <view class="menu-item">
               <view class="iconfont oaIcon-qinglihuancun menu-item-icon"></view>
               <view>清理缓存</view>
-              <view style="margin: 0 15px 0 auto; font-size: 14px; color: #909399">{{ proxy.$settingStore.currentSize }}</view>
+              <view class="text-right">{{ proxy.$settingStore.currentSize }}</view>
             </view>
           </view>
           <view class="list-cell list-cell-arrow" @click="handleToUpgrade" v-if="proxy.$common.isVisible()">
@@ -236,7 +236,7 @@ function goFunReport() {
  */
 function SetColor(item) {
   colorModal.value = false;
-  proxy.$settingStore.SET_THEMECOLOR(item);
+  proxy.$settingStore.initThemeColor(item);
   proxy.$settingStore.systemThemeColor([1, 2]);
 }
 

+ 42 - 16
src/pages/mine/about/index.vue

@@ -9,13 +9,13 @@
     </u-navbar>
 
     <view class="oa-header-section text-center">
-      <image style="width: 150rpx; height: 150rpx" mode="heightFix" :src="useStore.loginLogo" v-if="useStore.loginLogo" />
-      <image style="width: 150rpx; height: 150rpx" mode="heightFix" src="@/static/logo200.png" v-else />
+      <image style="width: 130rpx; height: 130rpx" mode="heightFix" :src="useStore.loginLogo" v-if="useStore.loginLogo" />
+      <image style="width: 130rpx; height: 130rpx" mode="heightFix" src="@/static/logo200.png" v-else />
       <uni-title type="h2" :title="useStore.loginTitle"></uni-title>
     </view>
 
     <view class="oa-content-section">
-      <view class="menu-list">
+      <view class="menu-list mt0 mlr0">
         <view class="list-cell list-cell-arrow">
           <view class="menu-item">
             <view>版本信息</view>
@@ -46,27 +46,48 @@
     </view>
 
     <view class="copyright">
-      <!-- <view>Copyright &copy; 2021 - 2025 Usky. All Rights Reserved. 永天股份 版权所有</view> -->
       <view>{{ copyright }}</view>
+      <u-text :text="filingInfo.code" :href="filingInfo.href" mode="link" align="center" size="12"></u-text>
     </view>
   </view>
 </template>
 
 <script setup>
-import config from "@/config";
+/*----------------------------------依赖引入-----------------------------------*/
 import { onReady, onLoad, onShow, onNavigationBarButtonTap } from "@dcloudio/uni-app";
 import { ref, reactive, computed, getCurrentInstance, toRefs, inject } from "vue";
+/*----------------------------------接口引入-----------------------------------*/
+/*----------------------------------组件引入-----------------------------------*/
+/*----------------------------------store引入-----------------------------------*/
 import { useStores, commonStores } from "@/store/modules/index";
-
-const useStore = useStores();
-
+/*----------------------------------公共方法引入-----------------------------------*/
+import config from "@/config";
+/*----------------------------------公共变量-----------------------------------*/
 const { proxy } = getCurrentInstance();
+const useStore = useStores();
+/*----------------------------------变量声明-----------------------------------*/
+const state = reactive({
+  url: computed(() => {
+    return config.appInfo.site_url;
+  }),
+  version: computed(() => {
+    return config.appInfo.version;
+  }),
+  email: computed(() => {
+    return config.appInfo.email;
+  }),
+  hotline: computed(() => {
+    return config.appInfo.hotline;
+  }),
+  copyright: computed(() => {
+    return config.appInfo.copyright;
+  }),
+  filingInfo: computed(() => {
+    return config.appInfo.filingInfo;
+  }),
+});
 
-const url = ref(config.appInfo.site_url);
-const version = ref(config.appInfo.version);
-const email = ref(config.appInfo.email);
-const hotline = ref(config.appInfo.hotline);
-const copyright = ref(config.appInfo.copyright);
+const { url, version, email, hotline, copyright, filingInfo } = toRefs(state);
 
 onShow(() => {
   //调用系统主题颜色
@@ -77,17 +98,22 @@ onShow(() => {
 <style lang="scss" scoped>
 .about-container {
   .copyright {
-    margin-top: 50rpx;
+    margin-top: 25px;
     text-align: center;
-    line-height: 60rpx;
+    line-height: 30px;
     color: #999;
+    font-size: 12px;
   }
 
   .oa-header-section {
     display: flex;
-    padding: 30rpx 0 0;
+    padding: 30rpx 0;
     flex-direction: column;
     align-items: center;
   }
+
+  :deep(.u-text__value) {
+    justify-content: center;
+  }
 }
 </style>

+ 2 - 2
src/permission.js

@@ -10,7 +10,7 @@ const whiteList = [
   "/pages/register",//注册
   "/pages/serveConfig",//服务器配置
   "/pages/serveConfigSelect",//服务器配置
-  "/pages/common/textview/index1",
+  "/pages/common/textview/index",//浏览文本
   "/pages/common/webview/index",
   "/pages/business/mhxf/unitInfoCollection/index",//单位信息采集
   "/pages/common/invoicing/index",//开票管理
@@ -20,7 +20,7 @@ const whiteList = [
   "/pages/common/repairReport/record",//报修历史
   "/pages/common/evaluate/record",//服务评价
   "/pages/common/NFC/index",//NFC读取
-  "/pages/common/textview/index",//消息详情
+  "/pages/common/appMessage/details",//消息详情
 ];
 
 // 检查地址白名单

+ 3 - 3
src/static/scss/global.scss

@@ -91,9 +91,9 @@
     }
 
     .text-right {
-      margin-left: auto;
-      margin-right: 34rpx;
-      color: #999;
+      margin: 0 15px 0 auto;
+      font-size: 14px;
+      color: #909399
     }
 
     .button {

+ 2 - 2
src/store/modules/index.js

@@ -2,12 +2,12 @@ import useStores from "@/store/modules/user.js";
 import commonStores from "@/store/modules/common.js";
 import settingStores from "@/store/modules/setting.js";
 import xunJianStores from "@/store/modules/xunJian.js";
-import stystemStores from "@/store/modules/stystem.js";
+import systemStores from "@/store/modules/system.js";
 
 export {
     useStores,
     commonStores,
     settingStores,
     xunJianStores,
-    stystemStores
+    systemStores
 };

+ 46 - 13
src/store/modules/setting.js

@@ -1,19 +1,20 @@
-import { storage } from "@/utils/storage";
-import { getToken, setToken, removeToken } from "@/utils/auth";
 import { defineStore } from "pinia";
+import { useStores } from "@/store/modules/index";
+import { storage, storageSystem } from "@/utils/storage";
+import { getToken, setToken, removeToken } from "@/utils/auth";
 // 接口引用
 import { uploadAvatar, updateUserProfile } from "@/api/system/user";
 import { baseAppInfoApi } from "@/api/common/index";
 import { checkUpdates } from "@/api/system/setting";
 // 组件引用
-import { useStores } from "@/store/modules/index";
 import config from "@/config";
 import tab from "@/plugins/tab.plugins.js";
 import modal from "@/plugins/modal.plugins.js";
 import common from "@/plugins/common.plugins.js";
 import setting from "@/plugins/setting.plugins.js";
+import constData from "@/plugins/constData.plugins.js";
 
-const settingStore = defineStore("storage-setting", {
+const settingStores = defineStore("storage-setting", {
     state: () => ({
         pushClientId: undefined,//应用消息推送cid
         currentSize: "",//APP缓存
@@ -32,8 +33,8 @@ const settingStore = defineStore("storage-setting", {
             latitude: "", //纬度
         },
 
-        themeColor: storage.get("themeColor"),//主题
-        fingerprintUserList: storage.get("fingerprintUserList"),//指纹登录用户数据
+        themeColor: storageSystem.get("themeColor"),//主题
+        fingerprintUserList: storageSystem.get("fingerprintUserList"),//指纹登录用户数据
         nfcWaiting: "请将手机靠近NFC标签", //nfc读取页面-提示文字-数据存储
     }),
     actions: {
@@ -116,6 +117,25 @@ const settingStore = defineStore("storage-setting", {
                 },
             });
         },
+        /**
+         * @消息推送监听
+         */
+        pushMessage() {
+            uni.onPushMessage((res) => {
+                const platform = uni.getSystemInfoSync().platform;
+                console.log("收到推送消息:", res); //监听推送消息
+
+                if (res.type === "click") {
+                    if (platform == "android") {
+                    } else {
+                    }
+                } else if (res.type === "receive") {
+                    if (platform == "android") {
+                    } else {
+                    }
+                }
+            });
+        },
         /**
          * @消息推送监听
          */
@@ -296,16 +316,29 @@ const settingStore = defineStore("storage-setting", {
                 });
             });
         },
-
-        SET_THEMECOLOR(themeColor) {
-            this.themeColor = themeColor;
-            storage.set("themeColor", themeColor);
+        /**
+         * @初始化默认主题
+         */
+        initThemeColor(themeColor) {
+            if (!themeColor) {
+                this.themeColor = constData.themeList[0];
+                storageSystem.set("themeColor", constData.themeList[0]);
+            } else {
+                this.themeColor = themeColor;
+                storageSystem.set("themeColor", themeColor);
+            }
         },
         SET_FINGERPRINT(array) {
             this.fingerprintUserList = array;
-            storage.set("fingerprintUserList", array);
-        }
+            storageSystem.set("fingerprintUserList", array);
+        },
+        SET_STORAGE_OBJECT_KEYS(LIST) {
+            Object.keys(LIST).forEach(function (key) {
+                storageSystem.set(key, LIST[key]);
+                settingStores()[key] = LIST[key];
+            });
+        },
     },
 });
 
-export default settingStore;
+export default settingStores;

+ 4 - 4
src/store/modules/stystem.js → src/store/modules/system.js

@@ -2,11 +2,11 @@
 import { defineStore } from "pinia";
 // 接口引用
 // 公共方法引用
-import { storage, storageStystem } from "@/utils/storage";
+import { storage, storageSystem } from "@/utils/storage";
 
-const stystemStores = defineStore(`storage-stystem`, {
+const systemStores = defineStore(`storage-system`, {
     state: () => ({
-        homeList: storageStystem.get("homeList"),
+        homeList: storageSystem.get("homeList"),
         infoList: {
             static: {
                 infoTypeStatic: [],
@@ -18,4 +18,4 @@ const stystemStores = defineStore(`storage-stystem`, {
     actions: {},
 });
 
-export default stystemStores;
+export default systemStores;

+ 4 - 5
src/store/modules/user.js

@@ -1,6 +1,6 @@
+import { defineStore } from "pinia";
 import { storage } from "@/utils/storage";
 import { getToken, setToken, removeToken } from "@/utils/auth";
-import { defineStore } from "pinia";
 // 接口引用
 import { login, logout, getInfo, getMobileTenantConfig, getCodeImg } from "@/api/login";
 import { getUserProfile, appAdd, appDel } from "@/api/system/user";
@@ -14,12 +14,13 @@ import setting from "@/plugins/setting.plugins.js";
 const useStores = defineStore("useStores", {
   state: () => ({
     token: getToken(),
+    wxOpenId: storage.get("wxOpenId"),//微信openId
     userId: storage.get("userId"),//用户ID
     name: storage.get("name"),//用户名称
     nickName: storage.get("nickName"),//用户昵称
     phonenumber: storage.get("phonenumber"),//用户手机号
-    avatar: storage.get("avatar"),
-    roles: storage.get("roles"),
+    avatar: storage.get("avatar"),//用户头像
+    roles: storage.get("roles"),//用户权限
     permissions: storage.get("permissions"),
 
     loginTitle: storage.get("loginTitle"),
@@ -35,8 +36,6 @@ const useStores = defineStore("useStores", {
 
     codeTime: 0,//验证码倒计时
     codeTimeInterval: null,//验证码倒计时定时器
-
-    wxOpenId: storage.get("wxOpenId"),//微信openId
   }),
   actions: {
     // 登录

+ 1 - 1
src/store/modules/xunJian.js

@@ -3,7 +3,7 @@ import { defineStore } from "pinia";
 // 接口引用
 import { updatePlan } from "@/api/business/zhaf/xunJian/plan.js";
 // 公共方法引用
-import { storage, storageStystem } from "@/utils/storage";
+import { storage, storageSystem } from "@/utils/storage";
 
 const xunJianStores = defineStore(`storage-xunJian`, {
   state: () => ({

+ 9 - 28
src/utils/storage.js

@@ -1,4 +1,4 @@
-import { useStores, stystemStores } from "@/store/modules/index";
+import { useStores } from "@/store/modules/index";
 // 存储变量名
 let storageKey = 'storage_data'
 
@@ -21,42 +21,23 @@ const storage = {
   }
 }
 
-const storageStystem = {
+const storageSystem = {
   set: function (key, value) {
-    let tmp = uni.getStorageSync(useStores().userId + "_storage_common")
+    let tmp = uni.getStorageSync(useStores().userId + "_storage_System")
     tmp = tmp ? tmp : {}
     tmp[key] = value
-    uni.setStorageSync(useStores().userId + "_storage_common", tmp)
+    uni.setStorageSync(useStores().userId + "_storage_System", tmp)
   },
   get: function (key) {
-    return uni.getStorageSync(useStores().userId + "_storage_common")[key] || ""
+    return uni.getStorageSync(useStores().userId + "_storage_System")[key] || ""
   },
   remove: function (key) {
-    delete uni.getStorageSync(useStores().userId + "_storage_common")[key]
-    uni.setStorageSync(useStores().userId + "_storage_common", uni.getStorageSync(useStores().userId + "_storage_common"))
+    delete uni.getStorageSync(useStores().userId + "_storage_System")[key]
+    uni.setStorageSync(useStores().userId + "_storage_System", uni.getStorageSync(useStores().userId + "_storage_System"))
   },
   clean: function () {
-    uni.removeStorageSync(useStores().userId + "_storage_common")
+    uni.removeStorageSync(useStores().userId + "_storage_System")
   }
 }
 
-const storage_msgType = {
-  set: function (key, value) {
-    let tmp = uni.getStorageSync(useStores().userId + "_storage_msgType")
-    tmp = tmp ? tmp : {}
-    tmp[key] = value
-    uni.setStorageSync(useStores().userId + "_storage_msgType", tmp)
-  },
-  get: function (key) {
-    return uni.getStorageSync(useStores().userId + "_storage_msgType")[key] || ""
-  },
-  remove: function (key) {
-    delete uni.getStorageSync(useStores().userId + "_storage_msgType")[key]
-    uni.setStorageSync(useStores().userId + "_storage_msgType", uni.getStorageSync(useStores().userId + "_storage_msgType"))
-  },
-  clean: function () {
-    uni.removeStorageSync(useStores().userId + "_storage_msgType")
-  }
-}
-
-export { storage, storageStystem, storage_msgType }
+export { storage, storageSystem }