flx:修复高风险视频层级过高 点击事件失效

This commit is contained in:
Rain_ 2025-12-02 10:48:29 +08:00
parent 73bcf63d97
commit fe531b881d
10 changed files with 380 additions and 336 deletions

View File

@ -12,8 +12,8 @@
:show-center-play-btn="true" :show-loading="false" :show-error-msg="false" :object-fit="objectFit" :show-center-play-btn="true" :show-loading="false" :show-error-msg="false" :object-fit="objectFit"
class="video-player" @loadstart="onLoadStart" @loadedmetadata="onLoadedMetadata" @canplay="onCanPlay" class="video-player" @loadstart="onLoadStart" @loadedmetadata="onLoadedMetadata" @canplay="onCanPlay"
@play="onPlay" @pause="onPause" @error="onVideoError" @ended="onEnded" @timeupdate="onTimeUpdate" @play="onPlay" @pause="onPause" @error="onVideoError" @ended="onEnded" @timeupdate="onTimeUpdate"
@fullscreenchange="onFullscreenChange" @click="onVideoClick"> @fullscreenchange="onFullscreenChange">
<cover-view @click="videoClick" v-if="!error" class="maskleft"></cover-view> <cover-view @click="onVideoClick" v-if="!error && !loading" class="maskleft"></cover-view>
</video> </video>
<!-- 加载状态 - APP平台使用cover-view覆盖 --> <!-- 加载状态 - APP平台使用cover-view覆盖 -->
@ -682,10 +682,6 @@
</script> </script>
<style scoped lang="scss"> <style scoped lang="scss">
video {
object-fit: contain;
}
/deep/ .uni-video-slots { /deep/ .uni-video-slots {
display: flex; display: flex;
justify-content: space-between; justify-content: space-between;
@ -694,6 +690,13 @@
.maskleft { .maskleft {
width: calc(100% - 2rpx); width: calc(100% - 2rpx);
height: 80%; height: 80%;
/* #ifdef APP-PLUS */
// cover-view video
position: absolute;
top: 0;
left: 0;
z-index: 1000;
/* #endif */
} }
// .maskright { // .maskright {
@ -731,9 +734,9 @@
.video-player { .video-player {
width: calc(100% - 2rpx); width: calc(100% - 2rpx);
height: calc(100% - 2rpx); height: calc(100% - 2rpx);
// object-fit: contain; object-fit: contain;
position: relative; position: relative;
// z-index: 1; z-index: 1;
/* #ifdef APP-PLUS */ /* #ifdef APP-PLUS */
// swiper // swiper
// transform: translateZ(0); // transform: translateZ(0);
@ -823,6 +826,22 @@
/* APP平台 cover-view 样式 */ /* APP平台 cover-view 样式 */
/* #ifdef APP-PLUS */ /* #ifdef APP-PLUS */
cover-view.maskleft {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 80%;
z-index: 1000;
//
pointer-events: auto;
//
background-color: transparent;
//
right: 0;
bottom: 0;
}
cover-view.loading-overlay { cover-view.loading-overlay {
position: absolute; position: absolute;
top: 0; top: 0;

View File

@ -69,6 +69,7 @@
this.expanded = !this.expanded; this.expanded = !this.expanded;
}, },
toggleNodes(item) { toggleNodes(item) {
if (item.type != 2) return;
this.$emit("clickItem", item); this.$emit("clickItem", item);
}, },
}, },

View File

@ -27,7 +27,9 @@
v-for="(video, eIndex) in item" v-for="(video, eIndex) in item"
:key="eIndex"> :key="eIndex">
<my-player-m3u8 @retryClick="retryClick" @playerClick="onPlayerClick" :ref="`player-${video.itemId}`" :playerIndex="eIndex" <my-player-m3u8 @retryClick="retryClick" @playerClick="onPlayerClick" :ref="`player-${video.itemId}`" :playerIndex="eIndex"
:showMask="false" :src="video.url" :autoplay="true" /> :showMask="false" :src="video.url || ''" :autoplay="true" >
<!-- <cover-view @click="onPlayerClick(eIndex)" class="maskleft"></cover-view> -->
</my-player-m3u8>
</view> </view>
</view> </view>
</view> </view>
@ -354,10 +356,10 @@
justify-content: space-between; justify-content: space-between;
} }
// .maskleft { .maskleft {
// width: 30%; width: 100%;
// height: 80%; height: 80%;
// } }
// .maskright { // .maskright {
// width: 30%; // width: 30%;

View File

@ -59,8 +59,8 @@ if (process.env.NODE_ENV === 'development') {
// Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址 // Vue.prototype.url_config = 'http://jxj.zhgdyun.com:61212/' //杰哥内网穿透地址
// Vue.prototype.url_config = 'http://192.168.34.221:28890/' //郭圣雄本地 // Vue.prototype.url_config = 'http://192.168.34.221:28890/' //郭圣雄本地
// Vue.prototype.url_config = 'http://192.168.34.221:28888/' //郭圣雄本地 // Vue.prototype.url_config = 'http://192.168.34.221:28888/' //郭圣雄本地
Vue.prototype.url_config = 'http://192.168.34.221:8111/' //郭圣雄本地 // Vue.prototype.url_config = 'http://192.168.34.221:8111/' //郭圣雄本地
// Vue.prototype.url_config = 'http://192.168.34.221:19112/' //郭圣雄本地 Vue.prototype.url_config = 'http://192.168.34.221:19112/' //郭圣雄本地
// Vue.prototype.url_config = 'http://182.90.224.237:51234/' //郭圣雄本地 // Vue.prototype.url_config = 'http://182.90.224.237:51234/' //郭圣雄本地
// Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地 // Vue.prototype.url_config = 'http://192.168.34.155:19111/' //彭洁本地
// Vue.prototype.url_config = 'http://183.249.224.118:9000/'// 嘉兴项目 // Vue.prototype.url_config = 'http://183.249.224.118:9000/'// 嘉兴项目
@ -128,7 +128,7 @@ if (process.env.NODE_ENV === 'development') {
// Vue.prototype.work_url = 'http://117.146.73.156:19997' // 中新建工作流地址(外网) // Vue.prototype.work_url = 'http://117.146.73.156:19997' // 中新建工作流地址(外网)
// Vue.prototype.url_config = 'http://121.37.106.37:19999/'// 新能源智慧基建管理平台 // Vue.prototype.url_config = 'http://121.37.106.37:19999/'// 新能源智慧基建管理平台
// Vue.prototype.work_url = 'http://121.37.106.37:19997'// 新能源智慧基建管理平台工作流地址 // Vue.prototype.work_url = 'http://121.37.106.37:19997'// 新能源智慧基建管理平台工作流地址
// Vue.prototype.url_config = 'http://192.168.34.221:19112/' //郭圣雄本地
// Vue.prototype.url_config = 'http://101.43.164.214:11111/'// 百色通用 // Vue.prototype.url_config = 'http://101.43.164.214:11111/'// 百色通用
Vue.prototype.work_url = 'http://101.43.164.214:11131' // 工作流地址 通用 Vue.prototype.work_url = 'http://101.43.164.214:11131' // 工作流地址 通用
// Vue.prototype.url_config = 'http://101.43.164.214:11112/'// 新金湾 // Vue.prototype.url_config = 'http://101.43.164.214:11112/'// 新金湾

View File

@ -1,302 +1,302 @@
{ {
"name": "华润智慧电站", // "name" : "华润智慧电站", //
"appid": "__UNI__4AA4101", "appid" : "__UNI__4AA4101",
"description": "", "description" : "",
"versionName": "3.1.3", "versionName" : "3.1.3",
"versionCode": 313, "versionCode" : 313,
"transformPx": false, "transformPx" : false,
"sassImplementationName": "node-sass", "sassImplementationName" : "node-sass",
/* 5+App */ /* 5+App */
"app-plus": { "app-plus" : {
"orientation": [ "orientation" : [
// // // //
"portrait-primary", "portrait-primary",
"portrait-secondary", "portrait-secondary",
"landscape-primary", "landscape-primary",
"landscape-secondary" "landscape-secondary"
], ],
"plugins": { "plugins" : {
"Webview": { "Webview" : {
"allowFileAccess": true, "allowFileAccess" : true,
"allowUniversalAccessFromFileURLs": true, "allowUniversalAccessFromFileURLs" : true,
"allowFileAccessFromFileURLs": true // "allowFileAccessFromFileURLs" : true //
} }
}, },
"usingComponents": true, "usingComponents" : true,
"nvueCompiler": "uni-app", "nvueCompiler" : "uni-app",
"compilerVersion": 3, "compilerVersion" : 3,
"compression": { "compression" : {
"enable": true, "enable" : true,
"type": "br" // 使 Brotli "type" : "br" // 使 Brotli
}, },
"compatible": { "compatible" : {
"ignoreVersion": true "ignoreVersion" : true
}, },
"splashscreen": { "splashscreen" : {
"alwaysShowBeforeRender": true, "alwaysShowBeforeRender" : true,
"waiting": true, "waiting" : true,
"autoclose": true, "autoclose" : true,
"delay": 0 "delay" : 0
}, },
"nvue": { "nvue" : {
//JSONnvue //JSONnvue
"flex-direction": "row" //nvueflex-directionrowrow-reversecolumncolumn-reverse "flex-direction" : "row" //nvueflex-directionrowrow-reversecolumncolumn-reverse
}, },
/* */ /* */
"modules": { "modules" : {
"Maps": {}, "Maps" : {},
"VideoPlayer": {}, "VideoPlayer" : {},
"Bluetooth": {}, "Bluetooth" : {},
"SQLite": {}, "SQLite" : {},
"Fingerprint": {}, "Fingerprint" : {},
"Speech": {}, "Speech" : {},
"Record": {}, "Record" : {},
"Camera": {}, "Camera" : {},
"Geolocation": {}, "Geolocation" : {},
"LivePusher": {} "LivePusher" : {}
}, },
/* */ /* */
"distribute": { "distribute" : {
/* android */ /* android */
"android": { "android" : {
"permissions": [ "permissions" : [
"<uses-feature android:name=\"android.hardware.camera\"/>", "<uses-feature android:name=\"android.hardware.camera\"/>",
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>", "<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_CHECKIN_PROPERTIES\"/>", "<uses-permission android:name=\"android.permission.ACCESS_CHECKIN_PROPERTIES\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>", "<uses-permission android:name=\"android.permission.ACCESS_COARSE_LOCATION\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>", "<uses-permission android:name=\"android.permission.ACCESS_FINE_LOCATION\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_LOCATION_EXTRA_COMMANDS\"/>", "<uses-permission android:name=\"android.permission.ACCESS_LOCATION_EXTRA_COMMANDS\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_MOCK_LOCATION\"/>", "<uses-permission android:name=\"android.permission.ACCESS_MOCK_LOCATION\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>", "<uses-permission android:name=\"android.permission.ACCESS_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>", "<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.BLUETOOTH_PRIVILEGED\"/>", "<uses-permission android:name=\"android.permission.BLUETOOTH_PRIVILEGED\"/>",
"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>", "<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
"<uses-permission android:name=\"android.permission.CALL_PRIVILEGED\"/>", "<uses-permission android:name=\"android.permission.CALL_PRIVILEGED\"/>",
"<uses-permission android:name=\"android.permission.CAMERA\"/>", "<uses-permission android:name=\"android.permission.CAMERA\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>", "<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>", "<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>", "<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
"<uses-permission android:name=\"android.permission.INTERNET\"/>", "<uses-permission android:name=\"android.permission.INTERNET\"/>",
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>", "<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>", "<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
"<uses-permission android:name=\"android.permission.READ_LOGS\"/>", "<uses-permission android:name=\"android.permission.READ_LOGS\"/>",
"<uses-permission android:name=\"android.permission.READ_PHONE_STATE\" tools:node='remove'/>", "<uses-permission android:name=\"android.permission.READ_PHONE_STATE\" tools:node='remove'/>",
"<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" tools:node='remove'/>", "<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\" tools:node='remove'/>",
"<uses-permission android:name=\"android.permission.MANAGE_EXTERNAL_STORAGE\" tools:node='remove'/>", "<uses-permission android:name=\"android.permission.MANAGE_EXTERNAL_STORAGE\" tools:node='remove'/>",
"<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>", "<uses-permission android:name=\"android.permission.RECORD_AUDIO\"/>",
"<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>", "<uses-permission android:name=\"android.permission.USE_FINGERPRINT\"/>",
"<uses-permission android:name=\"android.permission.VIBRATE\"/>", "<uses-permission android:name=\"android.permission.VIBRATE\"/>",
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>", "<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>" "<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
], ],
"abiFilters": ["armeabi-v7a", "arm64-v8a", "x86"], "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ],
"targetSdkVersion": 30, "targetSdkVersion" : 30,
"permissionExternalStorage": { "permissionExternalStorage" : {
"request": "none", "request" : "none",
"prompt": "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。" "prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
}, },
"permissionPhoneState": { "permissionPhoneState" : {
"request": "none" "request" : "none"
} }
}, },
/* ios */ /* ios */
"ios": { "ios" : {
"idfa": false, "idfa" : false,
"dSYMs": false, "dSYMs" : false,
"privacyDescription": { "privacyDescription" : {
"NSPhotoLibraryUsageDescription": "允许照片访问以修改您的头像;在您使用智慧安全进行办公时添加照片到您所提交的表单。", "NSPhotoLibraryUsageDescription" : "允许照片访问以修改您的头像;在您使用智慧安全进行办公时添加照片到您所提交的表单。",
"NSCameraUsageDescription": "允许相机访问用于您在使用智慧安全工作期间拍摄照片、拍摄视频、扫描二维码。", "NSCameraUsageDescription" : "允许相机访问用于您在使用智慧安全工作期间拍摄照片、拍摄视频、扫描二维码。",
"NSLocationWhenInUseUsageDescription": "您的位置信息将用于您在使用智慧安全期间显示当地天气;新增巡检点、一键报警功能中获取您当前位置信息。", "NSLocationWhenInUseUsageDescription" : "您的位置信息将用于您在使用智慧安全期间显示当地天气;新增巡检点、一键报警功能中获取您当前位置信息。",
"NSMicrophoneUsageDescription": "允许麦克风访问用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能。", "NSMicrophoneUsageDescription" : "允许麦克风访问用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能。",
// 访 // 访
"NSDocumentsFolderUsageDescription": "需要访问应用文档目录以加载资源文件", "NSDocumentsFolderUsageDescription" : "需要访问应用文档目录以加载资源文件",
"NSDownloadsFolderUsageDescription": "需要访问下载目录", "NSDownloadsFolderUsageDescription" : "需要访问下载目录",
// //
"NSFileProviderDomainUsageDescription": "需要访问文件系统以加载解码器资源", "NSFileProviderDomainUsageDescription" : "需要访问文件系统以加载解码器资源",
"NSFileProviderPresentedItemUbiquityAttributesDescription": "需要访问文件系统资源" "NSFileProviderPresentedItemUbiquityAttributesDescription" : "需要访问文件系统资源"
}, },
// //
"UIFileSharingEnabled": true, "UIFileSharingEnabled" : true,
"LSSupportsOpeningDocumentsInPlace": true, "LSSupportsOpeningDocumentsInPlace" : true,
// //
"WKPreferences": { "WKPreferences" : {
"allowFileAccessFromFileURLs": true, "allowFileAccessFromFileURLs" : true,
"allowUniversalAccessFromFileURLs": true "allowUniversalAccessFromFileURLs" : true
}, },
// //
"com.apple.security.app-sandbox": true, "com.apple.security.app-sandbox" : true,
"com.apple.security.files.user-selected.read-write": true, "com.apple.security.files.user-selected.read-write" : true,
"com.apple.security.files.downloads.read-write": true "com.apple.security.files.downloads.read-write" : true
}, },
/* SDK */ /* SDK */
"sdkConfigs": { "sdkConfigs" : {
"maps": { "maps" : {
"amap": { "amap" : {
"appkey_ios": "9510eb01b56e6428646b256cc379f695", "appkey_ios" : "9510eb01b56e6428646b256cc379f695",
"appkey_android": "3b060f3a0ce4bafebeba1621dcd99c31" "appkey_android" : "3b060f3a0ce4bafebeba1621dcd99c31"
} }
}, },
"ad": {}, "ad" : {},
"geolocation": { "geolocation" : {
"amap": { "amap" : {
"__platform__": ["ios", "android"], "__platform__" : [ "ios", "android" ],
"appkey_ios": "9510eb01b56e6428646b256cc379f695", "appkey_ios" : "9510eb01b56e6428646b256cc379f695",
"appkey_android": "3b060f3a0ce4bafebeba1621dcd99c31" "appkey_android" : "3b060f3a0ce4bafebeba1621dcd99c31"
} }
} }
}, },
"icons": { "icons" : {
"android": { "android" : {
"hdpi": "unpackage/res/icons/72x72.png", "hdpi" : "unpackage/res/icons/72x72.png",
"xhdpi": "unpackage/res/icons/96x96.png", "xhdpi" : "unpackage/res/icons/96x96.png",
"xxhdpi": "unpackage/res/icons/144x144.png", "xxhdpi" : "unpackage/res/icons/144x144.png",
"xxxhdpi": "unpackage/res/icons/192x192.png" "xxxhdpi" : "unpackage/res/icons/192x192.png"
}, },
"ios": { "ios" : {
"appstore": "unpackage/res/icons/1024x1024.png", "appstore" : "unpackage/res/icons/1024x1024.png",
"ipad": { "ipad" : {
"app": "unpackage/res/icons/76x76.png", "app" : "unpackage/res/icons/76x76.png",
"app@2x": "unpackage/res/icons/152x152.png", "app@2x" : "unpackage/res/icons/152x152.png",
"notification": "unpackage/res/icons/20x20.png", "notification" : "unpackage/res/icons/20x20.png",
"notification@2x": "unpackage/res/icons/40x40.png", "notification@2x" : "unpackage/res/icons/40x40.png",
"proapp@2x": "unpackage/res/icons/167x167.png", "proapp@2x" : "unpackage/res/icons/167x167.png",
"settings": "unpackage/res/icons/29x29.png", "settings" : "unpackage/res/icons/29x29.png",
"settings@2x": "unpackage/res/icons/58x58.png", "settings@2x" : "unpackage/res/icons/58x58.png",
"spotlight": "unpackage/res/icons/40x40.png", "spotlight" : "unpackage/res/icons/40x40.png",
"spotlight@2x": "unpackage/res/icons/80x80.png" "spotlight@2x" : "unpackage/res/icons/80x80.png"
}, },
"iphone": { "iphone" : {
"app@2x": "unpackage/res/icons/120x120.png", "app@2x" : "unpackage/res/icons/120x120.png",
"app@3x": "unpackage/res/icons/180x180.png", "app@3x" : "unpackage/res/icons/180x180.png",
"notification@2x": "unpackage/res/icons/40x40.png", "notification@2x" : "unpackage/res/icons/40x40.png",
"notification@3x": "unpackage/res/icons/60x60.png", "notification@3x" : "unpackage/res/icons/60x60.png",
"settings@2x": "unpackage/res/icons/58x58.png", "settings@2x" : "unpackage/res/icons/58x58.png",
"settings@3x": "unpackage/res/icons/87x87.png", "settings@3x" : "unpackage/res/icons/87x87.png",
"spotlight@2x": "unpackage/res/icons/80x80.png", "spotlight@2x" : "unpackage/res/icons/80x80.png",
"spotlight@3x": "unpackage/res/icons/120x120.png" "spotlight@3x" : "unpackage/res/icons/120x120.png"
} }
} }
}, },
"splashscreen": { "splashscreen" : {
"android": { "android" : {
"hdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png", "hdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
"xhdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png", "xhdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
"xxhdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png" "xxhdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
}, },
"iosStyle": "common", "iosStyle" : "common",
"ios": { "ios" : {
"storyboard": "D:/work/JXJ2/unpackage/CustomStoryboard.zip", "storyboard" : "D:/work/JXJ2/unpackage/CustomStoryboard.zip",
"iphone": { "iphone" : {
"portrait-896h@3x": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png" "portrait-896h@3x" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
} }
}, },
"useOriginalMsgbox": true, "useOriginalMsgbox" : true,
"androidStyle": "common" "androidStyle" : "common"
} }
}, },
"nativePlugins": { "nativePlugins" : {
"DCTestUniPlugin": { "DCTestUniPlugin" : {
"__plugin_info__": { "__plugin_info__" : {
"name": "DCTestUniPlugin", "name" : "DCTestUniPlugin",
"description": "uni海康对讲插件", "description" : "uni海康对讲插件",
"platforms": "iOS", "platforms" : "iOS",
"url": "", "url" : "",
"android_package_name": "", "android_package_name" : "",
"ios_bundle_id": "", "ios_bundle_id" : "",
"isCloud": false, "isCloud" : false,
"bought": -1, "bought" : -1,
"pid": "", "pid" : "",
"parameters": {} "parameters" : {}
} }
} }
} }
}, },
/* */ /* */
"quickapp": {}, "quickapp" : {},
/* */ /* */
"mp-weixin": { "mp-weixin" : {
"appid": "wx130c0959e6234df0", "appid" : "wx130c0959e6234df0",
"setting": { "setting" : {
"urlCheck": false, "urlCheck" : false,
"es6": true, "es6" : true,
"postcss": true, "postcss" : true,
"minified": true "minified" : true
}, },
"usingComponents": true, "usingComponents" : true,
"permission": { "permission" : {
"scope.record": { "scope.record" : {
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能" "desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
} }
}, },
"requiredPrivateInfos": ["getRecorderManager"] "requiredPrivateInfos" : [ "getRecorderManager" ]
}, },
"mp-alipay": { "mp-alipay" : {
"usingComponents": true, "usingComponents" : true,
"permission": { "permission" : {
"scope.record": { "scope.record" : {
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能" "desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
} }
} }
}, },
"mp-baidu": { "mp-baidu" : {
"usingComponents": true, "usingComponents" : true,
"permission": { "permission" : {
"scope.record": { "scope.record" : {
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能" "desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
} }
} }
}, },
"mp-toutiao": { "mp-toutiao" : {
"usingComponents": true, "usingComponents" : true,
"permission": { "permission" : {
"scope.record": { "scope.record" : {
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能" "desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
} }
} }
}, },
"uniStatistics": { "uniStatistics" : {
"enable": false "enable" : false
}, },
"h5": { "h5" : {
"permissions": { "permissions" : {
"scope.record": { "scope.record" : {
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能" "desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
} }
}, },
"devServer": { "devServer" : {
"port": 8088, "port" : 8088,
"disableHostCheck": true, "disableHostCheck" : true,
"proxy": { "proxy" : {
"/": { "/" : {
"target": "http://192.168.0.129", "target" : "http://192.168.0.129",
"changeOrigin": true, "changeOrigin" : true,
"secure": false, "secure" : false,
"pathRewrite": { "pathRewrite" : {
"^/": "" "^/" : ""
} }
} }
} }
}, },
"sdkConfigs": { "sdkConfigs" : {
"maps": { "maps" : {
"amap": { "amap" : {
"key": "", "key" : "",
"securityJsCode": "", "securityJsCode" : "",
"serviceHost": "" "serviceHost" : ""
} }
} }
}, },
"router": { "router" : {
"mode": "hash", "mode" : "hash",
"base": "/app/" "base" : "/app/"
}, },
"optimization": { "optimization" : {
"treeShaking": { "treeShaking" : {
"enable": false "enable" : false
} }
}, },
"title": "智慧工地云", "title" : "智慧工地云",
"template": "" "template" : ""
}, },
"vueVersion": "2" "vueVersion" : "2"
} }

View File

@ -219,6 +219,24 @@
onLoad(opts) { onLoad(opts) {
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail')) this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
this.itemId = opts.id; this.itemId = opts.id;
this.list = [{
name: '设备监测',
isFlag: this.checkBtnPermission({key: 'equipmentMonitor', menuPath: '/project/bodyWornCamera/equipmentMonitor'}),
}, {
name: '录像中心',
isFlag: this.checkBtnPermission({key: 'videoCenter', menuPath: '/project/bodyWornCamera/equipmentMonitor'}),
}, {
name: '图片中心',
isFlag: this.checkBtnPermission({key: 'imageCenter', menuPath: '/project/bodyWornCamera/equipmentMonitor'}),
}, {
name: '音频中心',
isFlag: this.checkBtnPermission({key: 'audioCenter', menuPath: '/project/bodyWornCamera/equipmentMonitor'}),
}, {
name: '工作时长',
isFlag: this.checkBtnPermission({key: 'workingHour', menuPath: '/project/bodyWornCamera/equipmentMonitor'}),
}].filter(item => item.isFlag);
this.formInline.month = this.$dayjs().format("YYYY-MM-DD"); this.formInline.month = this.$dayjs().format("YYYY-MM-DD");
this.getPoliceCameraItemQueryByIdFn(); this.getPoliceCameraItemQueryByIdFn();
}, },

View File

@ -14,7 +14,7 @@
</view> </view>
<template v-if="mapData.length > 0"> <template v-if="mapData.length > 0">
<tree-menu :pageType="pageType" :iconShow="true" v-for="(item,index) in mapData" <tree-menu :pageType="pageType" :iconShow="true" v-for="(item,index) in mapData"
:key="item.companyId" :item="item" :expandedIndex="index" :treeIndex="treeIndex" :key="item.uniqueId" :item="item" :expandedIndex="index" :treeIndex="treeIndex"
@clickItem="clickTreeItem"></tree-menu> @clickItem="clickTreeItem"></tree-menu>
</template> </template>
</view> </view>

View File

@ -103,14 +103,14 @@
<view class="textarea_text"><text>{{workTicketInfo.workContent.length}}</text>/1000</view> <view class="textarea_text"><text>{{workTicketInfo.workContent.length}}</text>/1000</view>
</view> </view>
</view> </view>
<view class="box1"> <!-- <view class="box1">
<view>安全措施:</view> <view>安全措施:</view>
<view class="textarea"> <view class="textarea">
<u-input :clearable="false" v-model="workTicketInfo.safetyMeasure" :maxlength="1000" <u-input :clearable="false" v-model="workTicketInfo.safetyMeasure" :maxlength="1000"
placeholder="请输入" type="textarea" :border="true" /> placeholder="请输入" type="textarea" :border="true" />
<view class="textarea_text"><text>{{workTicketInfo.safetyMeasure.length}}</text>/1000</view> <view class="textarea_text"><text>{{workTicketInfo.safetyMeasure.length}}</text>/1000</view>
</view> </view>
</view> </view> -->
<view class="box1 box2"> <view class="box1 box2">
<view><text>*</text>作业票附件:</view> <view><text>*</text>作业票附件:</view>
<view class="imgBox_wrap"> <view class="imgBox_wrap">
@ -121,7 +121,7 @@
</image> </image>
<view @click="deleteImg(item,1)" style="margin: 5px;" class="deleteImg"></view> <view @click="deleteImg(item,1)" style="margin: 5px;" class="deleteImg"></view>
</view> </view>
<view class="addImgBox" @click="uploadImg(1)" v-if="workTicketAttachmentList.length<5"> <view class="addImgBox" @click="uploadImg(1)" v-if="workTicketAttachmentList.length<20">
<image src="/static/workTicketManage/index-icon8.png" class="icon-add"></image> <image src="/static/workTicketManage/index-icon8.png" class="icon-add"></image>
</view> </view>
</view> </view>
@ -901,17 +901,21 @@
count: 20 - that.workTicketAttachmentList.length, count: 20 - that.workTicketAttachmentList.length,
success(res) { success(res) {
const tempFilePaths = res.tempFilePaths; const tempFilePaths = res.tempFilePaths;
uni.uploadFile({ tempFilePaths.forEach((filePath, index) => {
url: that.url_config + 'upload/image', // uni.uploadFile({
filePath: tempFilePaths[0], url: that.url_config + 'upload/image', //
name: 'files', filePath: filePath,
success: (uploadFileRes) => { name: 'files',
let data = { success: (uploadFileRes) => {
name: JSON.parse(uploadFileRes.data).data[0].filename, let data = {
url: JSON.parse(uploadFileRes.data).data[0].imageUrl name: JSON.parse(uploadFileRes.data).data[0]
}; .filename,
that.workTicketAttachmentList.push(data) url: JSON.parse(uploadFileRes.data).data[0]
} .imageUrl
};
that.workTicketAttachmentList.push(data)
}
});
}); });
} }
}) })

View File

@ -65,7 +65,7 @@
<view>申请时间:</view> <view>申请时间:</view>
<view>{{workTicketInfo.applicationTime}}</view> <view>{{workTicketInfo.applicationTime}}</view>
</view> </view>
<view class="box-content"> <!-- <view class="box-content">
<view>安全措施:</view> <view>安全措施:</view>
<view v-if="lineHeightFlag2" <view v-if="lineHeightFlag2"
@click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1"> @click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
@ -75,7 +75,7 @@
<view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}" <view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}"
id="box-content_detail2" class="box-content_detail"> id="box-content_detail2" class="box-content_detail">
{{workTicketInfo.safetyMeasure}} {{workTicketInfo.safetyMeasure}}
</view> </view> -->
<view class="box-content"> <view class="box-content">
<view>作业内容:</view> <view>作业内容:</view>
<view v-if="lineHeightFlag1" <view v-if="lineHeightFlag1"

View File

@ -66,7 +66,7 @@
id="box-content_detail1" class="box-content_detail"> id="box-content_detail1" class="box-content_detail">
{{workTicketInfo.workContent}} {{workTicketInfo.workContent}}
</view> </view>
<view class="box-content"> <!-- <view class="box-content">
<view>安全措施:</view> <view>安全措施:</view>
<view v-if="lineHeightFlag2" <view v-if="lineHeightFlag2"
@click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1"> @click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
@ -76,7 +76,7 @@
<view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}" <view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}"
id="box-content_detail2" class="box-content_detail"> id="box-content_detail2" class="box-content_detail">
{{workTicketInfo.safetyMeasure}} {{workTicketInfo.safetyMeasure}}
</view> </view> -->
<view class="box-item"> <view class="box-item">
<view>施工区域:</view> <view>施工区域:</view>
<view>{{workTicketInfo.constructionAreaNames}}</view> <view>{{workTicketInfo.constructionAreaNames}}</view>