flx:修复高风险视频层级过高 点击事件失效
This commit is contained in:
parent
73bcf63d97
commit
fe531b881d
@ -12,8 +12,8 @@
|
||||
:show-center-play-btn="true" :show-loading="false" :show-error-msg="false" :object-fit="objectFit"
|
||||
class="video-player" @loadstart="onLoadStart" @loadedmetadata="onLoadedMetadata" @canplay="onCanPlay"
|
||||
@play="onPlay" @pause="onPause" @error="onVideoError" @ended="onEnded" @timeupdate="onTimeUpdate"
|
||||
@fullscreenchange="onFullscreenChange" @click="onVideoClick">
|
||||
<cover-view @click="videoClick" v-if="!error" class="maskleft"></cover-view>
|
||||
@fullscreenchange="onFullscreenChange">
|
||||
<cover-view @click="onVideoClick" v-if="!error && !loading" class="maskleft"></cover-view>
|
||||
</video>
|
||||
|
||||
<!-- 加载状态 - APP平台使用cover-view覆盖 -->
|
||||
@ -682,10 +682,6 @@
|
||||
</script>
|
||||
|
||||
<style scoped lang="scss">
|
||||
video {
|
||||
object-fit: contain;
|
||||
}
|
||||
|
||||
/deep/ .uni-video-slots {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
@ -694,6 +690,13 @@
|
||||
.maskleft {
|
||||
width: calc(100% - 2rpx);
|
||||
height: 80%;
|
||||
/* #ifdef APP-PLUS */
|
||||
// cover-view 在 video 内部需要绝对定位才能覆盖并接收点击事件
|
||||
position: absolute;
|
||||
top: 0;
|
||||
left: 0;
|
||||
z-index: 1000;
|
||||
/* #endif */
|
||||
}
|
||||
|
||||
// .maskright {
|
||||
@ -731,9 +734,9 @@
|
||||
.video-player {
|
||||
width: calc(100% - 2rpx);
|
||||
height: calc(100% - 2rpx);
|
||||
// object-fit: contain;
|
||||
object-fit: contain;
|
||||
position: relative;
|
||||
// z-index: 1;
|
||||
z-index: 1;
|
||||
/* #ifdef APP-PLUS */
|
||||
// 防止在swiper中滑动时错位
|
||||
// transform: translateZ(0);
|
||||
@ -823,6 +826,22 @@
|
||||
|
||||
/* APP平台 cover-view 样式 */
|
||||
/* #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 {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
|
||||
@ -69,6 +69,7 @@
|
||||
this.expanded = !this.expanded;
|
||||
},
|
||||
toggleNodes(item) {
|
||||
if (item.type != 2) return;
|
||||
this.$emit("clickItem", item);
|
||||
},
|
||||
},
|
||||
|
||||
@ -27,7 +27,9 @@
|
||||
v-for="(video, eIndex) in item"
|
||||
:key="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>
|
||||
@ -354,10 +356,10 @@
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
// .maskleft {
|
||||
// width: 30%;
|
||||
// height: 80%;
|
||||
// }
|
||||
.maskleft {
|
||||
width: 100%;
|
||||
height: 80%;
|
||||
}
|
||||
|
||||
// .maskright {
|
||||
// width: 30%;
|
||||
|
||||
6
main.js
6
main.js
@ -59,8 +59,8 @@ if (process.env.NODE_ENV === 'development') {
|
||||
// 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:28888/' //郭圣雄本地
|
||||
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:8111/' //郭圣雄本地
|
||||
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://192.168.34.155:19111/' //彭洁本地
|
||||
// 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.url_config = 'http://121.37.106.37:19999/'// 新能源智慧基建管理平台
|
||||
// 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.work_url = 'http://101.43.164.214:11131' // 工作流地址 通用
|
||||
// Vue.prototype.url_config = 'http://101.43.164.214:11112/'// 新金湾
|
||||
|
||||
602
manifest.json
602
manifest.json
@ -1,302 +1,302 @@
|
||||
{
|
||||
"name": "华润智慧电站", //中建四局
|
||||
"appid": "__UNI__4AA4101",
|
||||
"description": "",
|
||||
"versionName": "3.1.3",
|
||||
"versionCode": 313,
|
||||
"transformPx": false,
|
||||
"sassImplementationName": "node-sass",
|
||||
/* 5+App特有相关 */
|
||||
"app-plus": {
|
||||
"orientation": [
|
||||
// //竖屏正方向
|
||||
"portrait-primary",
|
||||
"portrait-secondary",
|
||||
"landscape-primary",
|
||||
"landscape-secondary"
|
||||
],
|
||||
"plugins": {
|
||||
"Webview": {
|
||||
"allowFileAccess": true,
|
||||
"allowUniversalAccessFromFileURLs": true,
|
||||
"allowFileAccessFromFileURLs": true // 新增此配置
|
||||
}
|
||||
},
|
||||
"usingComponents": true,
|
||||
"nvueCompiler": "uni-app",
|
||||
"compilerVersion": 3,
|
||||
"compression": {
|
||||
"enable": true,
|
||||
"type": "br" // 使用 Brotli 压缩
|
||||
},
|
||||
"compatible": {
|
||||
"ignoreVersion": true
|
||||
},
|
||||
"splashscreen": {
|
||||
"alwaysShowBeforeRender": true,
|
||||
"waiting": true,
|
||||
"autoclose": true,
|
||||
"delay": 0
|
||||
},
|
||||
"nvue": {
|
||||
//可选,JSON对象,nvue页面相关配置
|
||||
"flex-direction": "row" //可选,字符串类型,nvue页面的flex-direction默认值,可取值row、row-reverse、column、column-reverse
|
||||
},
|
||||
/* 模块配置 */
|
||||
"modules": {
|
||||
"Maps": {},
|
||||
"VideoPlayer": {},
|
||||
"Bluetooth": {},
|
||||
"SQLite": {},
|
||||
"Fingerprint": {},
|
||||
"Speech": {},
|
||||
"Record": {},
|
||||
"Camera": {},
|
||||
"Geolocation": {},
|
||||
"LivePusher": {}
|
||||
},
|
||||
/* 应用发布信息 */
|
||||
"distribute": {
|
||||
/* android打包配置 */
|
||||
"android": {
|
||||
"permissions": [
|
||||
"<uses-feature android:name=\"android.hardware.camera\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
|
||||
"<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_FINE_LOCATION\"/>",
|
||||
"<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_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.BLUETOOTH_PRIVILEGED\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CALL_PRIVILEGED\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
|
||||
"<uses-permission android:name=\"android.permission.INTERNET\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
||||
"<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.WRITE_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.USE_FINGERPRINT\"/>",
|
||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
|
||||
],
|
||||
"abiFilters": ["armeabi-v7a", "arm64-v8a", "x86"],
|
||||
"targetSdkVersion": 30,
|
||||
"permissionExternalStorage": {
|
||||
"request": "none",
|
||||
"prompt": "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
|
||||
},
|
||||
"permissionPhoneState": {
|
||||
"request": "none"
|
||||
}
|
||||
},
|
||||
/* ios打包配置 */
|
||||
"ios": {
|
||||
"idfa": false,
|
||||
"dSYMs": false,
|
||||
"privacyDescription": {
|
||||
"NSPhotoLibraryUsageDescription": "允许照片访问以修改您的头像;在您使用智慧安全进行办公时添加照片到您所提交的表单。",
|
||||
"NSCameraUsageDescription": "允许相机访问用于您在使用智慧安全工作期间拍摄照片、拍摄视频、扫描二维码。",
|
||||
"NSLocationWhenInUseUsageDescription": "您的位置信息将用于您在使用智慧安全期间显示当地天气;新增巡检点、一键报警功能中获取您当前位置信息。",
|
||||
"NSMicrophoneUsageDescription": "允许麦克风访问用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能。",
|
||||
// 添加文件访问权限描述
|
||||
"NSDocumentsFolderUsageDescription": "需要访问应用文档目录以加载资源文件",
|
||||
"NSDownloadsFolderUsageDescription": "需要访问下载目录",
|
||||
// 新增以下权限描述
|
||||
"NSFileProviderDomainUsageDescription": "需要访问文件系统以加载解码器资源",
|
||||
"NSFileProviderPresentedItemUbiquityAttributesDescription": "需要访问文件系统资源"
|
||||
},
|
||||
// 启用文件共享
|
||||
"UIFileSharingEnabled": true,
|
||||
"LSSupportsOpeningDocumentsInPlace": true,
|
||||
// 新增以下配置
|
||||
"WKPreferences": {
|
||||
"allowFileAccessFromFileURLs": true,
|
||||
"allowUniversalAccessFromFileURLs": true
|
||||
},
|
||||
// 新增沙盒扩展权限
|
||||
"com.apple.security.app-sandbox": true,
|
||||
"com.apple.security.files.user-selected.read-write": true,
|
||||
"com.apple.security.files.downloads.read-write": true
|
||||
},
|
||||
/* SDK配置 */
|
||||
"sdkConfigs": {
|
||||
"maps": {
|
||||
"amap": {
|
||||
"appkey_ios": "9510eb01b56e6428646b256cc379f695",
|
||||
"appkey_android": "3b060f3a0ce4bafebeba1621dcd99c31"
|
||||
}
|
||||
},
|
||||
"ad": {},
|
||||
"geolocation": {
|
||||
"amap": {
|
||||
"__platform__": ["ios", "android"],
|
||||
"appkey_ios": "9510eb01b56e6428646b256cc379f695",
|
||||
"appkey_android": "3b060f3a0ce4bafebeba1621dcd99c31"
|
||||
}
|
||||
}
|
||||
},
|
||||
"icons": {
|
||||
"android": {
|
||||
"hdpi": "unpackage/res/icons/72x72.png",
|
||||
"xhdpi": "unpackage/res/icons/96x96.png",
|
||||
"xxhdpi": "unpackage/res/icons/144x144.png",
|
||||
"xxxhdpi": "unpackage/res/icons/192x192.png"
|
||||
},
|
||||
"ios": {
|
||||
"appstore": "unpackage/res/icons/1024x1024.png",
|
||||
"ipad": {
|
||||
"app": "unpackage/res/icons/76x76.png",
|
||||
"app@2x": "unpackage/res/icons/152x152.png",
|
||||
"notification": "unpackage/res/icons/20x20.png",
|
||||
"notification@2x": "unpackage/res/icons/40x40.png",
|
||||
"proapp@2x": "unpackage/res/icons/167x167.png",
|
||||
"settings": "unpackage/res/icons/29x29.png",
|
||||
"settings@2x": "unpackage/res/icons/58x58.png",
|
||||
"spotlight": "unpackage/res/icons/40x40.png",
|
||||
"spotlight@2x": "unpackage/res/icons/80x80.png"
|
||||
},
|
||||
"iphone": {
|
||||
"app@2x": "unpackage/res/icons/120x120.png",
|
||||
"app@3x": "unpackage/res/icons/180x180.png",
|
||||
"notification@2x": "unpackage/res/icons/40x40.png",
|
||||
"notification@3x": "unpackage/res/icons/60x60.png",
|
||||
"settings@2x": "unpackage/res/icons/58x58.png",
|
||||
"settings@3x": "unpackage/res/icons/87x87.png",
|
||||
"spotlight@2x": "unpackage/res/icons/80x80.png",
|
||||
"spotlight@3x": "unpackage/res/icons/120x120.png"
|
||||
}
|
||||
}
|
||||
},
|
||||
"splashscreen": {
|
||||
"android": {
|
||||
"hdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
|
||||
"xhdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
|
||||
"xxhdpi": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
|
||||
},
|
||||
"iosStyle": "common",
|
||||
"ios": {
|
||||
"storyboard": "D:/work/JXJ2/unpackage/CustomStoryboard.zip",
|
||||
"iphone": {
|
||||
"portrait-896h@3x": "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
|
||||
}
|
||||
},
|
||||
"useOriginalMsgbox": true,
|
||||
"androidStyle": "common"
|
||||
}
|
||||
},
|
||||
"nativePlugins": {
|
||||
"DCTestUniPlugin": {
|
||||
"__plugin_info__": {
|
||||
"name": "DCTestUniPlugin",
|
||||
"description": "uni海康对讲插件",
|
||||
"platforms": "iOS",
|
||||
"url": "",
|
||||
"android_package_name": "",
|
||||
"ios_bundle_id": "",
|
||||
"isCloud": false,
|
||||
"bought": -1,
|
||||
"pid": "",
|
||||
"parameters": {}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
/* 快应用特有相关 */
|
||||
"quickapp": {},
|
||||
/* 小程序特有相关 */
|
||||
"mp-weixin": {
|
||||
"appid": "wx130c0959e6234df0",
|
||||
"setting": {
|
||||
"urlCheck": false,
|
||||
"es6": true,
|
||||
"postcss": true,
|
||||
"minified": true
|
||||
},
|
||||
"usingComponents": true,
|
||||
"permission": {
|
||||
"scope.record": {
|
||||
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
},
|
||||
"requiredPrivateInfos": ["getRecorderManager"]
|
||||
},
|
||||
"mp-alipay": {
|
||||
"usingComponents": true,
|
||||
"permission": {
|
||||
"scope.record": {
|
||||
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mp-baidu": {
|
||||
"usingComponents": true,
|
||||
"permission": {
|
||||
"scope.record": {
|
||||
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mp-toutiao": {
|
||||
"usingComponents": true,
|
||||
"permission": {
|
||||
"scope.record": {
|
||||
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"uniStatistics": {
|
||||
"enable": false
|
||||
},
|
||||
"h5": {
|
||||
"permissions": {
|
||||
"scope.record": {
|
||||
"desc": "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
},
|
||||
"devServer": {
|
||||
"port": 8088,
|
||||
"disableHostCheck": true,
|
||||
"proxy": {
|
||||
"/": {
|
||||
"target": "http://192.168.0.129",
|
||||
"changeOrigin": true,
|
||||
"secure": false,
|
||||
"pathRewrite": {
|
||||
"^/": ""
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sdkConfigs": {
|
||||
"maps": {
|
||||
"amap": {
|
||||
"key": "",
|
||||
"securityJsCode": "",
|
||||
"serviceHost": ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"router": {
|
||||
"mode": "hash",
|
||||
"base": "/app/"
|
||||
},
|
||||
"optimization": {
|
||||
"treeShaking": {
|
||||
"enable": false
|
||||
}
|
||||
},
|
||||
"title": "智慧工地云",
|
||||
"template": ""
|
||||
},
|
||||
"vueVersion": "2"
|
||||
}
|
||||
"name" : "华润智慧电站", //中建四局
|
||||
"appid" : "__UNI__4AA4101",
|
||||
"description" : "",
|
||||
"versionName" : "3.1.3",
|
||||
"versionCode" : 313,
|
||||
"transformPx" : false,
|
||||
"sassImplementationName" : "node-sass",
|
||||
/* 5+App特有相关 */
|
||||
"app-plus" : {
|
||||
"orientation" : [
|
||||
// //竖屏正方向
|
||||
"portrait-primary",
|
||||
"portrait-secondary",
|
||||
"landscape-primary",
|
||||
"landscape-secondary"
|
||||
],
|
||||
"plugins" : {
|
||||
"Webview" : {
|
||||
"allowFileAccess" : true,
|
||||
"allowUniversalAccessFromFileURLs" : true,
|
||||
"allowFileAccessFromFileURLs" : true // 新增此配置
|
||||
}
|
||||
},
|
||||
"usingComponents" : true,
|
||||
"nvueCompiler" : "uni-app",
|
||||
"compilerVersion" : 3,
|
||||
"compression" : {
|
||||
"enable" : true,
|
||||
"type" : "br" // 使用 Brotli 压缩
|
||||
},
|
||||
"compatible" : {
|
||||
"ignoreVersion" : true
|
||||
},
|
||||
"splashscreen" : {
|
||||
"alwaysShowBeforeRender" : true,
|
||||
"waiting" : true,
|
||||
"autoclose" : true,
|
||||
"delay" : 0
|
||||
},
|
||||
"nvue" : {
|
||||
//可选,JSON对象,nvue页面相关配置
|
||||
"flex-direction" : "row" //可选,字符串类型,nvue页面的flex-direction默认值,可取值row、row-reverse、column、column-reverse
|
||||
},
|
||||
/* 模块配置 */
|
||||
"modules" : {
|
||||
"Maps" : {},
|
||||
"VideoPlayer" : {},
|
||||
"Bluetooth" : {},
|
||||
"SQLite" : {},
|
||||
"Fingerprint" : {},
|
||||
"Speech" : {},
|
||||
"Record" : {},
|
||||
"Camera" : {},
|
||||
"Geolocation" : {},
|
||||
"LivePusher" : {}
|
||||
},
|
||||
/* 应用发布信息 */
|
||||
"distribute" : {
|
||||
/* android打包配置 */
|
||||
"android" : {
|
||||
"permissions" : [
|
||||
"<uses-feature android:name=\"android.hardware.camera\"/>",
|
||||
"<uses-feature android:name=\"android.hardware.camera.autofocus\"/>",
|
||||
"<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_FINE_LOCATION\"/>",
|
||||
"<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_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.ACCESS_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.BLUETOOTH_PRIVILEGED\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CALL_PHONE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CALL_PRIVILEGED\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CAMERA\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_NETWORK_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.CHANGE_WIFI_STATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.FLASHLIGHT\"/>",
|
||||
"<uses-permission android:name=\"android.permission.INTERNET\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MODIFY_AUDIO_SETTINGS\"/>",
|
||||
"<uses-permission android:name=\"android.permission.MOUNT_UNMOUNT_FILESYSTEMS\"/>",
|
||||
"<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.WRITE_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.USE_FINGERPRINT\"/>",
|
||||
"<uses-permission android:name=\"android.permission.VIBRATE\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WAKE_LOCK\"/>",
|
||||
"<uses-permission android:name=\"android.permission.WRITE_SETTINGS\"/>"
|
||||
],
|
||||
"abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ],
|
||||
"targetSdkVersion" : 30,
|
||||
"permissionExternalStorage" : {
|
||||
"request" : "none",
|
||||
"prompt" : "应用保存运行状态等信息,需要获取读写手机存储(系统提示为访问设备上的照片、媒体内容和文件)权限,请允许。"
|
||||
},
|
||||
"permissionPhoneState" : {
|
||||
"request" : "none"
|
||||
}
|
||||
},
|
||||
/* ios打包配置 */
|
||||
"ios" : {
|
||||
"idfa" : false,
|
||||
"dSYMs" : false,
|
||||
"privacyDescription" : {
|
||||
"NSPhotoLibraryUsageDescription" : "允许照片访问以修改您的头像;在您使用智慧安全进行办公时添加照片到您所提交的表单。",
|
||||
"NSCameraUsageDescription" : "允许相机访问用于您在使用智慧安全工作期间拍摄照片、拍摄视频、扫描二维码。",
|
||||
"NSLocationWhenInUseUsageDescription" : "您的位置信息将用于您在使用智慧安全期间显示当地天气;新增巡检点、一键报警功能中获取您当前位置信息。",
|
||||
"NSMicrophoneUsageDescription" : "允许麦克风访问用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能。",
|
||||
// 添加文件访问权限描述
|
||||
"NSDocumentsFolderUsageDescription" : "需要访问应用文档目录以加载资源文件",
|
||||
"NSDownloadsFolderUsageDescription" : "需要访问下载目录",
|
||||
// 新增以下权限描述
|
||||
"NSFileProviderDomainUsageDescription" : "需要访问文件系统以加载解码器资源",
|
||||
"NSFileProviderPresentedItemUbiquityAttributesDescription" : "需要访问文件系统资源"
|
||||
},
|
||||
// 启用文件共享
|
||||
"UIFileSharingEnabled" : true,
|
||||
"LSSupportsOpeningDocumentsInPlace" : true,
|
||||
// 新增以下配置
|
||||
"WKPreferences" : {
|
||||
"allowFileAccessFromFileURLs" : true,
|
||||
"allowUniversalAccessFromFileURLs" : true
|
||||
},
|
||||
// 新增沙盒扩展权限
|
||||
"com.apple.security.app-sandbox" : true,
|
||||
"com.apple.security.files.user-selected.read-write" : true,
|
||||
"com.apple.security.files.downloads.read-write" : true
|
||||
},
|
||||
/* SDK配置 */
|
||||
"sdkConfigs" : {
|
||||
"maps" : {
|
||||
"amap" : {
|
||||
"appkey_ios" : "9510eb01b56e6428646b256cc379f695",
|
||||
"appkey_android" : "3b060f3a0ce4bafebeba1621dcd99c31"
|
||||
}
|
||||
},
|
||||
"ad" : {},
|
||||
"geolocation" : {
|
||||
"amap" : {
|
||||
"__platform__" : [ "ios", "android" ],
|
||||
"appkey_ios" : "9510eb01b56e6428646b256cc379f695",
|
||||
"appkey_android" : "3b060f3a0ce4bafebeba1621dcd99c31"
|
||||
}
|
||||
}
|
||||
},
|
||||
"icons" : {
|
||||
"android" : {
|
||||
"hdpi" : "unpackage/res/icons/72x72.png",
|
||||
"xhdpi" : "unpackage/res/icons/96x96.png",
|
||||
"xxhdpi" : "unpackage/res/icons/144x144.png",
|
||||
"xxxhdpi" : "unpackage/res/icons/192x192.png"
|
||||
},
|
||||
"ios" : {
|
||||
"appstore" : "unpackage/res/icons/1024x1024.png",
|
||||
"ipad" : {
|
||||
"app" : "unpackage/res/icons/76x76.png",
|
||||
"app@2x" : "unpackage/res/icons/152x152.png",
|
||||
"notification" : "unpackage/res/icons/20x20.png",
|
||||
"notification@2x" : "unpackage/res/icons/40x40.png",
|
||||
"proapp@2x" : "unpackage/res/icons/167x167.png",
|
||||
"settings" : "unpackage/res/icons/29x29.png",
|
||||
"settings@2x" : "unpackage/res/icons/58x58.png",
|
||||
"spotlight" : "unpackage/res/icons/40x40.png",
|
||||
"spotlight@2x" : "unpackage/res/icons/80x80.png"
|
||||
},
|
||||
"iphone" : {
|
||||
"app@2x" : "unpackage/res/icons/120x120.png",
|
||||
"app@3x" : "unpackage/res/icons/180x180.png",
|
||||
"notification@2x" : "unpackage/res/icons/40x40.png",
|
||||
"notification@3x" : "unpackage/res/icons/60x60.png",
|
||||
"settings@2x" : "unpackage/res/icons/58x58.png",
|
||||
"settings@3x" : "unpackage/res/icons/87x87.png",
|
||||
"spotlight@2x" : "unpackage/res/icons/80x80.png",
|
||||
"spotlight@3x" : "unpackage/res/icons/120x120.png"
|
||||
}
|
||||
}
|
||||
},
|
||||
"splashscreen" : {
|
||||
"android" : {
|
||||
"hdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
|
||||
"xhdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png",
|
||||
"xxhdpi" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
|
||||
},
|
||||
"iosStyle" : "common",
|
||||
"ios" : {
|
||||
"storyboard" : "D:/work/JXJ2/unpackage/CustomStoryboard.zip",
|
||||
"iphone" : {
|
||||
"portrait-896h@3x" : "C:/Users/86173/Desktop/6d9e3eaea01d7138ad9cffaf4739cf0.png"
|
||||
}
|
||||
},
|
||||
"useOriginalMsgbox" : true,
|
||||
"androidStyle" : "common"
|
||||
}
|
||||
},
|
||||
"nativePlugins" : {
|
||||
"DCTestUniPlugin" : {
|
||||
"__plugin_info__" : {
|
||||
"name" : "DCTestUniPlugin",
|
||||
"description" : "uni海康对讲插件",
|
||||
"platforms" : "iOS",
|
||||
"url" : "",
|
||||
"android_package_name" : "",
|
||||
"ios_bundle_id" : "",
|
||||
"isCloud" : false,
|
||||
"bought" : -1,
|
||||
"pid" : "",
|
||||
"parameters" : {}
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
/* 快应用特有相关 */
|
||||
"quickapp" : {},
|
||||
/* 小程序特有相关 */
|
||||
"mp-weixin" : {
|
||||
"appid" : "wx130c0959e6234df0",
|
||||
"setting" : {
|
||||
"urlCheck" : false,
|
||||
"es6" : true,
|
||||
"postcss" : true,
|
||||
"minified" : true
|
||||
},
|
||||
"usingComponents" : true,
|
||||
"permission" : {
|
||||
"scope.record" : {
|
||||
"desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
},
|
||||
"requiredPrivateInfos" : [ "getRecorderManager" ]
|
||||
},
|
||||
"mp-alipay" : {
|
||||
"usingComponents" : true,
|
||||
"permission" : {
|
||||
"scope.record" : {
|
||||
"desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mp-baidu" : {
|
||||
"usingComponents" : true,
|
||||
"permission" : {
|
||||
"scope.record" : {
|
||||
"desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"mp-toutiao" : {
|
||||
"usingComponents" : true,
|
||||
"permission" : {
|
||||
"scope.record" : {
|
||||
"desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
}
|
||||
},
|
||||
"uniStatistics" : {
|
||||
"enable" : false
|
||||
},
|
||||
"h5" : {
|
||||
"permissions" : {
|
||||
"scope.record" : {
|
||||
"desc" : "您的位置信息将用于您在使用智慧安全期间进行语音对讲、语音记录、语音识别等功能"
|
||||
}
|
||||
},
|
||||
"devServer" : {
|
||||
"port" : 8088,
|
||||
"disableHostCheck" : true,
|
||||
"proxy" : {
|
||||
"/" : {
|
||||
"target" : "http://192.168.0.129",
|
||||
"changeOrigin" : true,
|
||||
"secure" : false,
|
||||
"pathRewrite" : {
|
||||
"^/" : ""
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"sdkConfigs" : {
|
||||
"maps" : {
|
||||
"amap" : {
|
||||
"key" : "",
|
||||
"securityJsCode" : "",
|
||||
"serviceHost" : ""
|
||||
}
|
||||
}
|
||||
},
|
||||
"router" : {
|
||||
"mode" : "hash",
|
||||
"base" : "/app/"
|
||||
},
|
||||
"optimization" : {
|
||||
"treeShaking" : {
|
||||
"enable" : false
|
||||
}
|
||||
},
|
||||
"title" : "智慧工地云",
|
||||
"template" : ""
|
||||
},
|
||||
"vueVersion" : "2"
|
||||
}
|
||||
|
||||
@ -219,6 +219,24 @@
|
||||
onLoad(opts) {
|
||||
this.projectDetail = JSON.parse(uni.getStorageSync('projectDetail'))
|
||||
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.getPoliceCameraItemQueryByIdFn();
|
||||
},
|
||||
|
||||
@ -14,7 +14,7 @@
|
||||
</view>
|
||||
<template v-if="mapData.length > 0">
|
||||
<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>
|
||||
</template>
|
||||
</view>
|
||||
|
||||
@ -103,14 +103,14 @@
|
||||
<view class="textarea_text"><text>{{workTicketInfo.workContent.length}}</text>/1000</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="box1">
|
||||
<!-- <view class="box1">
|
||||
<view>安全措施:</view>
|
||||
<view class="textarea">
|
||||
<u-input :clearable="false" v-model="workTicketInfo.safetyMeasure" :maxlength="1000"
|
||||
placeholder="请输入" type="textarea" :border="true" />
|
||||
<view class="textarea_text"><text>{{workTicketInfo.safetyMeasure.length}}</text>/1000</view>
|
||||
</view>
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="box1 box2">
|
||||
<view><text>*</text>作业票附件:</view>
|
||||
<view class="imgBox_wrap">
|
||||
@ -121,7 +121,7 @@
|
||||
</image>
|
||||
<view @click="deleteImg(item,1)" style="margin: 5px;" class="deleteImg"></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>
|
||||
</view>
|
||||
</view>
|
||||
@ -901,17 +901,21 @@
|
||||
count: 20 - that.workTicketAttachmentList.length,
|
||||
success(res) {
|
||||
const tempFilePaths = res.tempFilePaths;
|
||||
uni.uploadFile({
|
||||
url: that.url_config + 'upload/image', //仅为示例,非真实的接口地址
|
||||
filePath: tempFilePaths[0],
|
||||
name: 'files',
|
||||
success: (uploadFileRes) => {
|
||||
let data = {
|
||||
name: JSON.parse(uploadFileRes.data).data[0].filename,
|
||||
url: JSON.parse(uploadFileRes.data).data[0].imageUrl
|
||||
};
|
||||
that.workTicketAttachmentList.push(data)
|
||||
}
|
||||
tempFilePaths.forEach((filePath, index) => {
|
||||
uni.uploadFile({
|
||||
url: that.url_config + 'upload/image', //仅为示例,非真实的接口地址
|
||||
filePath: filePath,
|
||||
name: 'files',
|
||||
success: (uploadFileRes) => {
|
||||
let data = {
|
||||
name: JSON.parse(uploadFileRes.data).data[0]
|
||||
.filename,
|
||||
url: JSON.parse(uploadFileRes.data).data[0]
|
||||
.imageUrl
|
||||
};
|
||||
that.workTicketAttachmentList.push(data)
|
||||
}
|
||||
});
|
||||
});
|
||||
}
|
||||
})
|
||||
|
||||
@ -65,7 +65,7 @@
|
||||
<view>申请时间:</view>
|
||||
<view>{{workTicketInfo.applicationTime}}</view>
|
||||
</view>
|
||||
<view class="box-content">
|
||||
<!-- <view class="box-content">
|
||||
<view>安全措施:</view>
|
||||
<view v-if="lineHeightFlag2"
|
||||
@click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
|
||||
@ -75,7 +75,7 @@
|
||||
<view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}"
|
||||
id="box-content_detail2" class="box-content_detail">
|
||||
{{workTicketInfo.safetyMeasure}}
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="box-content">
|
||||
<view>作业内容:</view>
|
||||
<view v-if="lineHeightFlag1"
|
||||
|
||||
@ -66,7 +66,7 @@
|
||||
id="box-content_detail1" class="box-content_detail">
|
||||
{{workTicketInfo.workContent}}
|
||||
</view>
|
||||
<view class="box-content">
|
||||
<!-- <view class="box-content">
|
||||
<view>安全措施:</view>
|
||||
<view v-if="lineHeightFlag2"
|
||||
@click="workTicketInfo.expandMoreShow1 = !workTicketInfo.expandMoreShow1">
|
||||
@ -76,7 +76,7 @@
|
||||
<view :class="{'webkit-clamp_2': lineHeightFlag2 && !workTicketInfo.expandMoreShow1}"
|
||||
id="box-content_detail2" class="box-content_detail">
|
||||
{{workTicketInfo.safetyMeasure}}
|
||||
</view>
|
||||
</view> -->
|
||||
<view class="box-item">
|
||||
<view>施工区域:</view>
|
||||
<view>{{workTicketInfo.constructionAreaNames}}</view>
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user