| | |
| | | "version" : "1.0", |
| | | "configurations" : [ |
| | | { |
| | | "playground" : "standard", |
| | | "playground" : "custom", |
| | | "type" : "uni-app:app-android" |
| | | }, |
| | | { |
| | |
| | | <script> |
| | | |
| | | var jpushModule = uni.requireNativePlugin("JG-JPush") |
| | | export default { |
| | | onLaunch: function() { |
| | | console.warn('当前组件仅支持 uni_modules 目录结构 ,请升级 HBuilderX 到 3.1.0 版本以上!') |
| | | console.log('App Launch') |
| | | // uni.hideTabBar({}); |
| | | // uni.clearStorageSync(); |
| | | // uni.clearStorage(); |
| | | }, |
| | | onShow: function() { |
| | | console.log('App Show') |
| | | // uni.hideTabBar(); |
| | | // uni.clearStorageSync(); |
| | | // uni.clearStorage(); |
| | | }, |
| | | onHide: function() { |
| | | // uni.clearStorageSync(); |
| | | console.log('App Hide') |
| | | onLaunch: function() { |
| | | console.log('App Launch',jpushModule) |
| | | jpushModule.initJPushService(); |
| | | jpushModule.setLoggerEnable(true); |
| | | jpushModule.addConnectEventListener(result=>{ |
| | | let connectEnable = result.connectEnable |
| | | uni.$emit('connectStatusChange',connectEnable) |
| | | }); |
| | | //消息回调——点击通知栏消息 跳转指定页面 |
| | | jpushModule.addNotificationListener(result=>{ |
| | | console.log(result) |
| | | if (result.notificationEventType == "notificationOpened") { |
| | | //判断是否登录 |
| | | if (uni.getStorageSync('tk')) { |
| | | //工作通知——工作人员工作通知页 |
| | | if (result.title.includes('工作通知')){ |
| | | uni.navigateTo({ |
| | | url: '/pages/tabBar/notice/notice', |
| | | complete(res) { |
| | | console.log(res); |
| | | } |
| | | }) |
| | | //信息审核——领导审核页 |
| | | }else if(result.title == '您有新的信息需要审批'){ |
| | | uni.navigateTo({ |
| | | url: '/pages/tabBar/examine/examine', |
| | | complete(res) { |
| | | console.log(res); |
| | | } |
| | | }) |
| | | //审核结果——首页(后续加pc端信息发布页) |
| | | }else if(result.title.includes('信息审核')){ |
| | | uni.navigateTo({ |
| | | url: '/pages/tabBar/information/information', |
| | | complete(res) { |
| | | console.log(res); |
| | | } |
| | | }) |
| | | } |
| | | }else { |
| | | //未登录跳转首页 |
| | | uni.navigateTo({ |
| | | url: '/pages/index/index', |
| | | complete(res) { |
| | | console.log(res); |
| | | } |
| | | }) |
| | | uni.showToast({ |
| | | icon: 'none', |
| | | title: '请先登录', |
| | | duration: 3000 |
| | | }) |
| | | } |
| | | } |
| | | }); |
| | | jpushModule.addCustomMessageListener(result=>{ |
| | | let type = result.type |
| | | let messageType = result.messageType |
| | | let content = result.content |
| | | uni.showToast({ |
| | | icon: 'none', |
| | | title: JSON.stringify(result), |
| | | duration: 3000 |
| | | }) |
| | | }); |
| | | jpushModule.addLocalNotificationListener(result=>{ |
| | | let messageID = result.messageID |
| | | let title = result.title |
| | | let content = result.content |
| | | let extras = result.extras |
| | | uni.showToast({ |
| | | icon: 'none', |
| | | title: JSON.stringify(result), |
| | | duration: 3000 |
| | | }) |
| | | }) |
| | | |
| | | |
| | | // jpushModule.addGeofenceListener(result => { |
| | | // let code = result.code |
| | | // let type = result.type |
| | | // let geofenceId = result.geofenceId |
| | | // let userInfo = result.userInfo |
| | | // uni.showToast({ |
| | | // icon: 'none', |
| | | // title: '触发地理围栏', |
| | | // duration: 3000 |
| | | // }) |
| | | // }) |
| | | // jpushModule.setIsAllowedInMessagePop(true) |
| | | // jpushModule.pullInMessage(result => { |
| | | // let code = result.code |
| | | // console.log(code) |
| | | // }) |
| | | |
| | | // jpushModule.addInMessageListener(result => { |
| | | // let eventType = result.eventType |
| | | // let messageType = result.messageType |
| | | // let content = result.content |
| | | // console.log('inMessageListener', eventType, messageType, content) |
| | | |
| | | // uni.showToast({ |
| | | // icon: 'none', |
| | | // title: JSON.stringify(result), |
| | | // duration: 3000 |
| | | // }) |
| | | // }) |
| | | |
| | | }, |
| | | onShow: function() { |
| | | console.log('App Show') |
| | | }, |
| | | onHide: function() { |
| | | jpushModule.initJPushService(); |
| | | console.log('App Hide') |
| | | } |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <style lang="scss"> |
| | |
| | | |
| | | let VUE_APP_BASE_URL= null; |
| | | if (process.env.NODE_ENV == 'development') { |
| | | VUE_APP_BASE_URL = 'http://192.168.0.38:8086' |
| | | // VUE_APP_BASE_URL = 'http://121.239.169.30:13001' |
| | | // VUE_APP_BASE_URL = 'http://192.168.0.38:8086' |
| | | VUE_APP_BASE_URL = 'http://121.239.169.30:13001' |
| | | }else { |
| | | VUE_APP_BASE_URL = 'http://121.239.169.30:13001' |
| | | } |
| | |
| | | "autoclose" : true, |
| | | "delay" : 0 |
| | | }, |
| | | "modules" : {}, |
| | | "modules" : { |
| | | "Push" : {} |
| | | }, |
| | | /* 模块配置 */ |
| | | "distribute" : { |
| | | /* 应用发布信息 */ |
| | |
| | | }, |
| | | /* ios打包配置 */ |
| | | "sdkConfigs" : { |
| | | "ad" : {} |
| | | "ad" : {}, |
| | | "push" : {} |
| | | }, |
| | | "icons" : { |
| | | "android" : { |
| | |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | "nativePlugins" : { |
| | | "JG-JCore" : { |
| | | "JPUSH_APPKEY_ANDROID" : "d6ee424771aad696af857325", |
| | | "JPUSH_APPKEY_IOS" : "", |
| | | "JPUSH_CHANNEL_ANDROID" : "developer-default", |
| | | "JPUSH_CHANNEL_IOS" : "", |
| | | "__plugin_info__" : { |
| | | "name" : "极光JCore官方SDK", |
| | | "description" : "极光JCore官方SDK HBuilder插件版本", |
| | | "platforms" : "Android,iOS", |
| | | "url" : "https://ext.dcloud.net.cn/plugin?id=4028", |
| | | "android_package_name" : "com.natural.calamities", |
| | | "ios_bundle_id" : "", |
| | | "isCloud" : true, |
| | | "bought" : 1, |
| | | "pid" : "4028", |
| | | "parameters" : { |
| | | "JPUSH_APPKEY_ANDROID" : { |
| | | "des" : "[Android]极光portal配置应用信息时分配的AppKey", |
| | | "key" : "d6ee424771aad696af857325", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_APPKEY_IOS" : { |
| | | "des" : "[iOS]极光portal配置应用信息时分配的AppKey", |
| | | "key" : "JCore:APP_KEY", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_CHANNEL_ANDROID" : { |
| | | "des" : "[Android]用于统计分发渠道,不需要可填默认值developer-default", |
| | | "key" : "JPUSH_CHANNEL", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_CHANNEL_IOS" : { |
| | | "des" : "[iOS]用于统计分发渠道,不需要可填默认值developer-default", |
| | | "key" : "JCore:CHANNEL", |
| | | "value" : "" |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | "JG-JPush" : { |
| | | "JPUSH_ADVERTISINGID_IOS" : "", |
| | | "JPUSH_DEFAULTINITJPUSH_IOS" : "", |
| | | "JPUSH_GOOGLE_API_KEY" : "", |
| | | "JPUSH_GOOGLE_APP_ID" : "", |
| | | "JPUSH_GOOGLE_PROJECT_ID" : "", |
| | | "JPUSH_GOOGLE_PROJECT_NUMBER" : "", |
| | | "JPUSH_GOOGLE_STORAGE_BUCKET" : "", |
| | | "JPUSH_HONOR_APPID" : "", |
| | | "JPUSH_HUAWEI_APPID" : "", |
| | | "JPUSH_ISPRODUCTION_IOS" : "", |
| | | "JPUSH_MEIZU_APPID" : "", |
| | | "JPUSH_MEIZU_APPKEY" : "", |
| | | "JPUSH_OPPO_APPID" : "", |
| | | "JPUSH_OPPO_APPKEY" : "", |
| | | "JPUSH_OPPO_APPSECRET" : "", |
| | | "JPUSH_VIVO_APPID" : "", |
| | | "JPUSH_VIVO_APPKEY" : "", |
| | | "JPUSH_XIAOMI_APPID" : "", |
| | | "JPUSH_XIAOMI_APPKEY" : "", |
| | | "__plugin_info__" : { |
| | | "name" : "极光JPush官方SDK", |
| | | "description" : "极光JPush官方SDK HBuilder插件版本", |
| | | "platforms" : "Android,iOS", |
| | | "url" : "https://ext.dcloud.net.cn/plugin?id=4035", |
| | | "android_package_name" : "com.natural.calamities", |
| | | "ios_bundle_id" : "", |
| | | "isCloud" : true, |
| | | "bought" : 1, |
| | | "pid" : "4035", |
| | | "parameters" : { |
| | | "JPUSH_ADVERTISINGID_IOS" : { |
| | | "des" : "[iOS]广告标识符(IDFA)如果不需要使用IDFA,可不填", |
| | | "key" : "JPush:ADVERTISINGID", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_DEFAULTINITJPUSH_IOS" : { |
| | | "des" : "[iOS]是否默认初始化,是填true,不是填false或者不填", |
| | | "key" : "JPush:DEFAULTINITJPUSH", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_GOOGLE_API_KEY" : { |
| | | "des" : "厂商google api_key,示例:asxa1232", |
| | | "key" : "google_api_key", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_GOOGLE_APP_ID" : { |
| | | "des" : "厂商google mobilesdk_app_id,示例:12346578", |
| | | "key" : "google_app_id", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_GOOGLE_PROJECT_ID" : { |
| | | "des" : "厂商google project_id ,示例:12346578", |
| | | "key" : "project_id", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_GOOGLE_PROJECT_NUMBER" : { |
| | | "des" : "厂商google project_number,示例:12346578", |
| | | "key" : "gcm_defaultSenderId", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_GOOGLE_STORAGE_BUCKET" : { |
| | | "des" : "厂商google storage_bucket,示例:12346578", |
| | | "key" : "google_storage_bucket", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_HONOR_APPID" : { |
| | | "des" : "厂商HONOR-appId,示例:12346578", |
| | | "key" : "com.hihonor.push.app_id", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_HUAWEI_APPID" : { |
| | | "des" : "厂商HUAWEI-appId,示例:appid=12346578", |
| | | "key" : "com.huawei.hms.client.appid", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_ISPRODUCTION_IOS" : { |
| | | "des" : "[iOS]是否是生产环境,是填true,不是填false或者不填", |
| | | "key" : "JPush:ISPRODUCTION", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_MEIZU_APPID" : { |
| | | "des" : "厂商MEIZU-appId,示例:MZ-12345678", |
| | | "key" : "MEIZU_APPID", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_MEIZU_APPKEY" : { |
| | | "des" : "厂商MEIZU-appKey,示例:MZ-12345678", |
| | | "key" : "MEIZU_APPKEY", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_OPPO_APPID" : { |
| | | "des" : "厂商OPPO-appId,示例:OP-12345678", |
| | | "key" : "OPPO_APPID", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_OPPO_APPKEY" : { |
| | | "des" : "厂商OPPO-appkey,示例:OP-12345678", |
| | | "key" : "OPPO_APPKEY", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_OPPO_APPSECRET" : { |
| | | "des" : "厂商OPPO-appSecret,示例:OP-12345678", |
| | | "key" : "OPPO_APPSECRET", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_VIVO_APPID" : { |
| | | "des" : "厂商VIVO-appId,示例:12345678", |
| | | "key" : "com.vivo.push.app_id", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_VIVO_APPKEY" : { |
| | | "des" : "厂商VIVO-appkey,示例:12345678", |
| | | "key" : "com.vivo.push.api_key", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_XIAOMI_APPID" : { |
| | | "des" : "厂商XIAOMI-appId,示例:MI-12345678", |
| | | "key" : "XIAOMI_APPID", |
| | | "value" : "" |
| | | }, |
| | | "JPUSH_XIAOMI_APPKEY" : { |
| | | "des" : "厂商XIAOMI-appKey,示例:MI-12345678", |
| | | "key" : "XIAOMI_APPKEY", |
| | | "value" : "" |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | /* SDK配置 */ |
| | |
| | | } |
| | | }, |
| | | { |
| | | "path" : "pages/tabBar/information/information", |
| | | "style" : |
| | | { |
| | | "navigationStyle": "custom", |
| | | "navigationBarTitleText": "", |
| | | "enablePullDownRefresh": true, |
| | | "app-plus": { |
| | | "scrollIndicator": "none", |
| | | "pullToRefresh": { |
| | | "support": true, |
| | | "color": "#000000", |
| | | "style": "circle" |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | { |
| | | "path" : "pages/tabBar/examine/examine", |
| | | "style" : |
| | | { |
| | |
| | | "list": [ |
| | | { |
| | | "pagePath": "pages/tabBar/notice/notice" |
| | | // "iconPath": "static/notice1.png", |
| | | // "selectedIconPath": "static/notice1-selected.png", |
| | | // "text": "工作通知" |
| | | }, |
| | | { |
| | | "pagePath": "pages/tabBar/response/response" |
| | | // "iconPath": "static/mine1.png", |
| | | // "selectedIconPath": "static/mine1-selected.png", |
| | | // "text": "我的叫应" |
| | | }, |
| | | { |
| | | "pagePath": "pages/tabBar/information/information" |
| | | }, |
| | | { |
| | | "pagePath": "pages/tabBar/examine/examine" |
| | | // "iconPath": "static/notice1.png", |
| | | // "selectedIconPath": "static/notice1-selected.png", |
| | | // "text": "通知审核" |
| | | }, |
| | | { |
| | | "pagePath": "pages/tabBar/count/count" |
| | | // "iconPath": "static/mine1.png", |
| | | // "selectedIconPath": "static/mine1-selected.png", |
| | | // "text": "信息统计" |
| | | } |
| | | |
| | | ] |
| | |
| | | </view> |
| | | <view> |
| | | <u-form :model="form" ref="uForm" class="form" > |
| | | <u-form-item ><u-input color="#fff" v-model="form.name" placeholder="请输入用户名" /></u-form-item> |
| | | <u-form-item ><u-input color="#fff" v-model="form.pwd" type="password" placeholder="请输入密码" /></u-form-item> |
| | | <u-form-item style="width: 75%;"><u-input color="#fff" v-model="form.name" placeholder="请输入用户名" /></u-form-item> |
| | | <u-form-item style="margin-top: 10px;width: 75%;" ><u-input color="#fff" v-model="form.pwd" type="password" placeholder="请输入密码" /></u-form-item> |
| | | <!-- <view class="loginPsw"> |
| | | <u-checkbox-group > |
| | | <u-checkbox disabled="true"></u-checkbox><text style="color: #fff;">自动登录</text> |
| | | </u-checkbox-group> |
| | | <text style="color: lightblue;">忘记密码</text> |
| | | </view> --> |
| | | <u-form-item ><u-button type="primary" style="width: 100%;" @click="Login">登录</u-button></u-form-item> |
| | | <view style="color: white;margin-left:25%;margin-top: 70%;">技术支持:中国科学院</view> |
| | | <u-form-item style="margin-top: 10px;width: 75%;"> |
| | | <u-button :loading="isLogining" type="primary" style="width: 100%;" @click="Login">登录</u-button> |
| | | </u-form-item> |
| | | <view style="color: white;margin-top: 150px;">技术支持:中国科学院</view> |
| | | </u-form> |
| | | </view> |
| | | </view> |
| | |
| | | <script> |
| | | import {login} from '../../api/index.js'; |
| | | import store from '@/store/index.js' |
| | | const jpushModule = uni.requireNativePlugin('JG-JPush') |
| | | export default { |
| | | data() { |
| | | return { |
| | | form: { |
| | | name: '', |
| | | pwd: '' |
| | | pwd: '', |
| | | registrationId: '' |
| | | }, |
| | | type: '' |
| | | type: '', |
| | | //极光推送 |
| | | connectStatus: '未连接', |
| | | registrationID: '未获得', |
| | | isLogining: false |
| | | } |
| | | }, |
| | | onShow() { |
| | | uni.clearStorageSync(); |
| | | uni.clearStorage(); |
| | | }, |
| | | onLoad() { |
| | | this.connect() |
| | | }, |
| | | methods: { |
| | | Login(){ |
| | | this.isLogining = true; |
| | | login(this.form).then(res => { |
| | | console.log("res",res) |
| | | if (res.code === 100) { |
| | | this.isLogining = false; |
| | | //登录成功后 |
| | | //设置别名 |
| | | jpushModule.setAlias({ |
| | | 'alias': this.phone, |
| | | 'sequence': 1 |
| | | }) |
| | | uni.setStorageSync("tk", res.data.tk); |
| | | uni.setStorageSync("uid",res.data.uid); |
| | | uni.setStorageSync('user', res.data); |
| | | uni.setStorageSync('roleName', res.data.role.roleName); |
| | | console.log("登录--------",res.data.tk) |
| | | if(res.data.role.roleName == '工作人员'){ |
| | | this.$store.commit('setRoleId', 'user_other'); |
| | | uni.switchTab({ |
| | |
| | | } |
| | | } |
| | | }).catch(err=>{ |
| | | this.form.name = ''; |
| | | this.form.pwd = ''; |
| | | this.isLogining = false; |
| | | }) |
| | | }, |
| | | connect() { |
| | | uni.$on('connectStatusChange', (connectStatus) => { |
| | | console.log('进入连接') |
| | | var connectStr = '' |
| | | if (connectStatus == true) { |
| | | connectStr = '已连接' |
| | | this.getRegistrationID() |
| | | } else { |
| | | connectStr = '未连接' |
| | | } |
| | | console.log('监听到了连接状态变化 --- ', connectStr) |
| | | this.connectStatus = connectStr |
| | | }) |
| | | }, |
| | | //获取推送ID |
| | | getRegistrationID() { |
| | | jpushModule.getRegistrationID(result => { |
| | | let registerID = result.registerID |
| | | console.log('registerID',registerID) |
| | | this.registrationID = registerID |
| | | this.form.registrationId = registerID; |
| | | uni.setStorageSync('registrationID', registerID); |
| | | console.log("iddd",uni.getStorageSync('registrationID')) |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | .box{ |
| | | width: 100%; |
| | | height: 100vh; |
| | | background: url('../../static/bg.jpeg') no-repeat; |
| | | background: url('../../static/shu.jpg') no-repeat; |
| | | background-size: 100% 100%; |
| | | background-attachment: fixed;/* 不设置的话页面滑动时,背景会不铺满*/ |
| | | display: flex; |
| | |
| | | text-shadow:0 0 1px #000; |
| | | } |
| | | .form{ |
| | | width: 80%; |
| | | margin: 100px auto 0px; |
| | | |
| | | width: 100%; |
| | | display: flex; |
| | | flex-direction: column; |
| | | align-items: center; |
| | | margin-top: 25%; |
| | | } |
| | | .loginPsw{ |
| | | margin-bottom: 20px; |
| | |
| | | <view class="contentList"> |
| | | <view class="buttonGroup"> |
| | | <view style="display: flex;"> |
| | | <view class="buttonAll all" |
| | | :class="{ 'active': selectedSaleAnalysis === 'all'}" |
| | | @click="handleButtonClick({label: 'all',name: '全部'})"> |
| | | 全部 |
| | | </view> |
| | | <view v-for="(button, index) in buttons" :key="index" class="buttonItem" |
| | | :class="{ 'active': selectedSaleAnalysis === button.label, |
| | | 'all': button.label === 'all', |
| | | 'red': button.label === 'red', |
| | | 'orange':button.label === 'orange', |
| | | 'yellow':button.label === 'yellow', |
| | |
| | | </view> |
| | | </view> |
| | | <view class="switchBtn"> |
| | | <text style="margin-right: 7px;">是否紧临</text> |
| | | <text style="margin-right: 7px;">仅紧临</text> |
| | | <u-switch v-model="checked" size="20" @change="clickSwitch"></u-switch> |
| | | </view> |
| | | </view> |
| | |
| | | <view class="content" @click="toDetail(item)"> |
| | | <text>[{{item.colorContent}}]</text> |
| | | <text>{{item.title}},{{item.content}}</text> |
| | | <view style="float: right; width: 80px;margin-top: 3px;"> |
| | | <view style="float: right; width: 80px;margin-top: -5px;"> |
| | | <u-button v-if="item.buttonContent == '已审核通过'" size="mini" class="buttonCo" style="background-color:rgb(17, 204, 33);color: white"> |
| | | {{item.buttonContent}} |
| | | </u-button> |
| | |
| | | return { |
| | | data: { |
| | | pageIndex: 1, |
| | | pageSize: 1000, |
| | | pageSize: 10, |
| | | searchParams: { |
| | | emergType: 1,//1-紧急;2-常规 |
| | | warningLevel: 1,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警 |
| | | reviewStatus: 0//1:未审核,2:已审核,3:审核已驳回 |
| | | emergType: null,//1-紧急;2-常规 |
| | | warningLevel: null,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警 |
| | | reviewStatus: null//1:未审核,2:已审核,3:审核已驳回 |
| | | } |
| | | }, |
| | | page: 'pages/tabBar/examine/examine', |
| | | checked: true, |
| | | checked: false, |
| | | isReadOnly: false, |
| | | statusBarHeight: 0, |
| | | buttons: [{ |
| | | label: 'red', |
| | | name: '红' |
| | | }, |
| | | { |
| | | label: 'orange', |
| | | name: '橙' |
| | | }, |
| | | { |
| | | label: 'yellow', |
| | | name: '黄' |
| | | }, |
| | | { |
| | | label: 'blue', |
| | | name: '蓝' |
| | | }, |
| | | buttons: [ |
| | | { |
| | | label: 'red', |
| | | name: '红' |
| | | }, |
| | | { |
| | | label: 'orange', |
| | | name: '橙' |
| | | }, |
| | | { |
| | | label: 'yellow', |
| | | name: '黄' |
| | | }, |
| | | { |
| | | label: 'blue', |
| | | name: '蓝' |
| | | }, |
| | | ], |
| | | selectedSaleAnalysis: 'red', |
| | | selectedSaleAnalysis: 'all', |
| | | examineList: [], |
| | | } |
| | | }, |
| | |
| | | methods: { |
| | | getExanineList() { |
| | | this.data.searchParams.reviewStatus = this.isReadOnly ? 1 : null; |
| | | this.data.searchParams.emergType = this.checked ? 1 : 2; |
| | | this.data.searchParams.warningLevel = this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4; |
| | | this.data.searchParams.emergType = this.checked ? 1 : null; |
| | | this.data.searchParams.warningLevel = this.selectedSaleAnalysis == 'all' ? null : this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4; |
| | | getExamine(this.data).then(res => { |
| | | if(res.code == 100) { |
| | | this.examineList = res.data ? res.data : []; |
| | |
| | | if(this.examineList.length > 0) { |
| | | |
| | | this.examineList.forEach((item, index) => { |
| | | this.examineList[index].colorContent = this.data.searchParams.warningLevel == 1 ? '红色预警': this.data.searchParams.warningLevel == 2 ? '橙色预警': this.data.searchParams.warningLevel == 3 ? '黄色预警':'蓝色预警'; |
| | | this.examineList[index].colorContent = item.warningLevel == 1 ? '红色预警': item.warningLevel == 2 ? '橙色预警': item.warningLevel == 3 ? '黄色预警':'蓝色预警'; |
| | | this.examineList[index].buttonContent = item.reviewStatus == 1 ? '待审核': item.reviewStatus == 2 ? '已审核通过' : '已驳回'; |
| | | this.examineList[index].role = 'leader'; |
| | | this.examineList[index].warningLevel = this.data.searchParams.warningLevel; |
| | | this.examineList[index].warningLevel = item.warningLevel; |
| | | }); |
| | | } |
| | | } |
| | |
| | | chooseRead(e) { |
| | | this.isReadOnly = e; |
| | | this.getExanineList(); |
| | | // if(e) { |
| | | // this.examineList = this.examineList.filter(item => item.reviewStatus == 1); |
| | | // }else { |
| | | // this.getExanineList(); |
| | | // } |
| | | }, |
| | | toDetail(item) { |
| | | console.log("item",item) |
| | |
| | | align-items: center; |
| | | justify-content: space-between; |
| | | } |
| | | .buttonAll{ |
| | | margin-left:5px; |
| | | color: white; |
| | | display: flex; |
| | | flex-direction: row; |
| | | justify-content: center; |
| | | align-items: center; |
| | | width: 35px; |
| | | height: 30px; |
| | | border-radius: 5px; |
| | | font-size: 12px; |
| | | font-weight: 700; |
| | | } |
| | | .buttonItem{ |
| | | margin-left:5px; |
| | | color: white; |
| | |
| | | border-radius: 5px; |
| | | } |
| | | .active { |
| | | border: 1px solid gray; |
| | | border: 1.5px solid #8d8d8d; |
| | | } |
| | | .all { |
| | | background-color: rgb(17,204,33); |
| | | } |
| | | .red { |
| | | background-color: red; |
| | |
| | | <text v-if="detailData.reviewStatus == 1" class="responseStatus" |
| | | style='color: red;'>待审核</text> |
| | | <text v-else-if="detailData.reviewStatus == 2" class="responseStatus" |
| | | style='color: rgb(17, 204, 33);'>已审核通过</text> |
| | | style='color: rgb(17, 204, 33);'>审核通过</text> |
| | | <text v-else class="responseStatus" |
| | | style='color: rgb(153, 148, 143);'>已驳回</text> |
| | | </view> |
| | | <view class="textTop" v-else-if="detailData.role == 'infoPeople'"> |
| | | <text ><b>审核状态:</b></text> |
| | | <text v-if="detailData.reviewStatus == 1" class="responseStatus" |
| | | style='color: red;'>待审核</text> |
| | | <text v-else-if="detailData.reviewStatus == 2" class="responseStatus" |
| | | style='color: rgb(17, 204, 33);'>审核通过</text> |
| | | <text v-else class="responseStatus" |
| | | style='color: rgb(153, 148, 143);'>已驳回</text> |
| | | </view> |
| | |
| | | @click="reject" |
| | | >审核驳回</u-button> |
| | | </view> |
| | | <view v-if="detailData.role == 'infoPeople' && detailData.reviewStatus == 2" class="btn"> |
| | | <u-button |
| | | style="background-color:rgb(6, 202, 23);color: white;width: 180px;" |
| | | @click="infoSend" |
| | | >确认发布</u-button> |
| | | </view> |
| | | </view> |
| | | </view> |
| | | </template> |
| | |
| | | <script> |
| | | import VUE_APP_BASE_URL from '../../../common/constant.js' |
| | | import { submit } from '../../../api/examine.js' |
| | | import { publishInfo } from '../../../api/information.js' |
| | | export default { |
| | | data() { |
| | | return { |
| | |
| | | let test = options.data && JSON.parse(decodeURIComponent(options.data)); |
| | | this.detailData = test; |
| | | console.log("wwwwwwww",this.detailData) |
| | | if(this.detailData.role == 'leader') { |
| | | if(this.detailData.role == 'leader' || this.detailData.role == 'infoPeople' ) { |
| | | this.detailData.attachments = this.detailData.attachment; |
| | | if (this.detailData.attachments){ |
| | | this.detailData.attachments.forEach((item,index) => { |
| | |
| | | } |
| | | }) |
| | | }, |
| | | openFile(item) { |
| | | let fileUrl = ''; |
| | | console.log("iiii",item) |
| | | if(this.detailData.role == 'leader'){ |
| | | fileUrl = VUE_APP_BASE_URL + item.attachment; |
| | | }else { |
| | | fileUrl = VUE_APP_BASE_URL + item.attachement; |
| | | } |
| | | console.log("urlllllllll",fileUrl) |
| | | uni.downloadFile({ |
| | | url: fileUrl, |
| | | header: {}, |
| | | success:function(res){ |
| | | console.log("下载res",res); |
| | | var filePath = res.tempFilePath; |
| | | const sidx = filePath.lastIndexOf('('); |
| | | const eidx = filePath.lastIndexOf(')'); |
| | | // 用于处理文档打开问题(ps:第一次打开 第二次无法打开问题) |
| | | if (sidx > -1 && eidx > -1) { |
| | | const restr = filePath.substr(sidx, eidx - sidx + 1); |
| | | filePath = filePath.replace(restr, ''); |
| | | } |
| | | // plus.runtime.openFile(filePath) |
| | | uni.openDocument({ |
| | | filePath: filePath, |
| | | success:function(){ |
| | | console.log('成功') |
| | | }, |
| | | fail:function(){ |
| | | uni.showToast({ |
| | | icon: 'none', |
| | | title: '暂不支持此类型', |
| | | duration: 2000 |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | //信息发布 |
| | | infoSend() { |
| | | publishInfo({id: this.detailData.id}).then(res => { |
| | | if(res.code==100) { |
| | | this.goBack(); |
| | | } |
| | | }) |
| | | console.log("信息发布") |
| | | }, |
| | | openFile(item) { |
| | | let fileUrl = ''; |
| | | console.log("iiii",item) |
| | | if(this.detailData.role == 'leader' || this.detailData.role == 'infoPeople' ){ |
| | | fileUrl = VUE_APP_BASE_URL + item.attachment; |
| | | }else { |
| | | fileUrl = VUE_APP_BASE_URL + item.attachement; |
| | | } |
| | | console.log("urlllllllll",fileUrl) |
| | | uni.downloadFile({ |
| | | url: fileUrl, |
| | | header: {}, |
| | | success:function(res){ |
| | | console.log("下载res",res); |
| | | var filePath = res.tempFilePath; |
| | | const sidx = filePath.lastIndexOf('('); |
| | | const eidx = filePath.lastIndexOf(')'); |
| | | // 用于处理文档打开问题(ps:第一次打开 第二次无法打开问题) |
| | | if (sidx > -1 && eidx > -1) { |
| | | const restr = filePath.substr(sidx, eidx - sidx + 1); |
| | | filePath = filePath.replace(restr, ''); |
| | | } |
| | | // plus.runtime.openFile(filePath) |
| | | uni.openDocument({ |
| | | filePath: filePath, |
| | | success:function(){ |
| | | console.log('成功') |
| | | }, |
| | | fail:function(){ |
| | | uni.showToast({ |
| | | icon: 'none', |
| | | title: '暂不支持此类型', |
| | | duration: 2000 |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | justify-content: space-around; |
| | | width: 100%; |
| | | } |
| | | |
| | | </style> |
| | |
| | | <!-- 真正的导航栏内容 --> |
| | | <view class="navBar" > |
| | | <view class="barText">{{user.name}}收到的工作通知</view> |
| | | <!-- <view class="barText">{{registerID}}</view> --> |
| | | <!-- <view style="flex: 1;" @click="loginOut">退出</view> --> |
| | | </view> |
| | | </view> |
| | |
| | | <view style="display: flex;flex-direction: column;"> |
| | | <view class="buttonGroup"> |
| | | <view style="display: flex;"> |
| | | <view class="buttonAll all" |
| | | :class="{ 'active': selectedSaleAnalysis === 'all'}" |
| | | @click="handleButtonClick({label: 'all',name: '全部'})"> |
| | | 全部 |
| | | </view> |
| | | <view v-for="(button, index) in buttons" :key="index" class="buttonItem" |
| | | :class="{ 'active': selectedSaleAnalysis === button.label, |
| | | 'red': button.label === 'red', |
| | |
| | | </view> |
| | | </view> |
| | | <view class="switchBtn"> |
| | | <text style="margin-right: 7px;">是否紧临</text> |
| | | <text style="margin-right: 7px;">仅紧临</text> |
| | | <u-switch v-model="checked" size="20" @change="clickSwitch"></u-switch> |
| | | </view> |
| | | </view> |
| | |
| | | tabBarLists: [], |
| | | // 状态栏高度 |
| | | statusBarHeight: 0, |
| | | checked: true, |
| | | checked: false, |
| | | isReadOnly: false, |
| | | showDialog: false, |
| | | data: { |
| | | pageIndex: 1, |
| | | pageSize: 1000, |
| | | pageSize: 10000000, |
| | | searchParams: { |
| | | emergType: 1,//1-紧急;2-常规 |
| | | warningLevel: 1,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警 |
| | | emergType: null,//1-紧急;2-常规 |
| | | warningLevel: null,//1-红色预警;2-橙色预警;3-黄色预警;4-蓝色预警 |
| | | readStatus: null//0-未读,1-已读 |
| | | } |
| | | }, |
| | |
| | | name: '蓝' |
| | | }, |
| | | ], |
| | | selectedSaleAnalysis: 'red', |
| | | selectedSaleAnalysis: 'all', |
| | | noticeListCopy: [], |
| | | noticeListCopyRead:[], |
| | | noticeList: [], |
| | | user: { |
| | | name: '' |
| | | }, |
| | | page: 'pages/tabBar/notice/notice' |
| | | page: 'pages/tabBar/notice/notice', |
| | | registerID: '' |
| | | } |
| | | }, |
| | | onShow () { |
| | | this.tabBarLists = uni.getStorageSync('tabBarList'); |
| | | this.user.name = uni.getStorageSync('user').realName + uni.getStorageSync('user').name; |
| | | // this.selectedSaleAnalysis = 'red', |
| | | this.user.name = uni.getStorageSync('user').name; |
| | | this.getNoticeList(); |
| | | // this.registerID = uni.getStorageSync('registrationID'); |
| | | // this.page = this.$route.meta.pagePath; |
| | | }, |
| | | onLoad() { |
| | |
| | | methods: { |
| | | getNoticeList() { |
| | | this.data.searchParams.readStatus = this.isReadOnly ? 0 : null; |
| | | this.data.searchParams.emergType = this.checked ? 1 : 2; |
| | | this.data.searchParams.warningLevel = this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4; |
| | | this.data.searchParams.emergType = this.checked ? 1 : null ; |
| | | this.data.searchParams.warningLevel = this.selectedSaleAnalysis =='all' ? null : this.selectedSaleAnalysis =='red' ? 1 : this.selectedSaleAnalysis =='orange' ? 2: this.selectedSaleAnalysis =='yellow'? 3 : 4; |
| | | getNotice(this.data).then(res => { |
| | | console.log("res",res); |
| | | console.log("dddddr",res); |
| | | if (res.code == 100) { |
| | | this.noticeList = res.data ? res.data : []; |
| | | this.noticeListCopy = this.noticeList; |
| | |
| | | height: 30px; |
| | | border-radius: 5px; |
| | | } |
| | | .buttonAll{ |
| | | margin-left:5px; |
| | | color: white; |
| | | display: flex; |
| | | flex-direction: row; |
| | | justify-content: center; |
| | | align-items: center; |
| | | width: 35px; |
| | | height: 30px; |
| | | border-radius: 5px; |
| | | font-size: 12px; |
| | | font-weight: 700; |
| | | } |
| | | .all { |
| | | background-color: rgb(17,204,33); |
| | | } |
| | | .active { |
| | | border: 1px solid gray; |
| | | border: 1.5px solid #8d8d8d; |
| | | } |
| | | .red { |
| | | background-color: red; |
| | |
| | | "iconPath": "/static/mine1.png", |
| | | "selectedIconPath": "/static/mine1-selected.png", |
| | | "text": "我的叫应" |
| | | }, |
| | | { |
| | | "pagePath": "pages/tabBar/information/information", |
| | | "iconPath": "/static/send.png", |
| | | "selectedIconPath": "/static/send_selected.png", |
| | | "text": "信息发布" |
| | | } |
| | | ] |
| | | |
| | |
| | | // import Vue from 'vue' |
| | | // import Vuex from 'vuex' |
| | | // import tabBar from './modules/tabBar.js' |
| | | // import getters from './getters.js' |
| | | |
| | | // Vue.use(Vuex) |
| | | |
| | | // const store = new Vuex.Store({ |
| | | // modules: { |
| | | // tabBar |
| | | // }, |
| | | // getters |
| | | // }) |
| | | |
| | | // export default store |
| | | import Vue from 'vue' |
| | | import Vuex from 'vuex' |
| | | Vue.use(Vuex) |