Merge branch 'master' into outside-the-system
# Conflicts: # config/index.js # manifest.json # unpackage/dist/build/app-plus/app-config-service.js # unpackage/dist/build/app-plus/app-service.js # unpackage/dist/build/app-plus/manifest.json # unpackage/dist/dev/app-plus/app-config-service.js # unpackage/dist/dev/app-plus/app-service.js # unpackage/dist/dev/app-plus/manifest.jsonoutside-the-system
@ -1,40 +1,16 @@
|
|||||||
<script setup>
|
<script>
|
||||||
import { onLaunch, onShow, onHide } from "@dcloudio/uni-app";
|
export default {
|
||||||
/* import location from "./utils/location"; */
|
onLaunch: function() {
|
||||||
onLaunch(() => {
|
},
|
||||||
/* location.startLocationService((res)=>{
|
onShow: function() {
|
||||||
console.log(JSON.stringify(res),'JSON.stringify(res)');
|
console.log('App Show')
|
||||||
uni.showToast({
|
},
|
||||||
duration:1000,
|
onHide: function() {
|
||||||
icon:'none',
|
console.log('App Hide')
|
||||||
title:JSON.stringify(res)
|
}
|
||||||
})
|
}
|
||||||
},()=>{
|
|
||||||
|
|
||||||
}) */
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
onShow(() => {
|
|
||||||
|
|
||||||
})
|
|
||||||
onHide(() => {
|
|
||||||
plus.geolocation.clearWatch(LocationId)
|
|
||||||
console.log("App Hide")
|
|
||||||
})
|
|
||||||
uni.getPushClientId({
|
|
||||||
success: (res) => {
|
|
||||||
let push_clientid = res.cid
|
|
||||||
console.log('客户端推送标识cid:',push_clientid)
|
|
||||||
},
|
|
||||||
fail(err) {
|
|
||||||
console.log(err)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
uni.onPushMessage((res)=>{
|
|
||||||
console.log(JSON.stringify(res),);
|
|
||||||
})
|
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style>
|
<style>
|
||||||
|
/*每个页面公共css */
|
||||||
</style>
|
</style>
|
||||||
|
@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"version" : "1",
|
||||||
|
"prompt" : "template",
|
||||||
|
"title" : "服务协议和隐私政策",
|
||||||
|
"message" : " 请你务必审慎阅读、充分理解“平台服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
|
||||||
|
"buttonAccept" : "同意并接受",
|
||||||
|
"buttonRefuse" : "不同意",
|
||||||
|
"second" : {
|
||||||
|
"title" : "确认提示",
|
||||||
|
"message" : " 进入应用前,你需先同意<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>,否则将退出应用。",
|
||||||
|
"buttonAccept" : "同意并继续",
|
||||||
|
"buttonRefuse" : "退出应用"
|
||||||
|
},
|
||||||
|
"disagreeMode" : {
|
||||||
|
"support" : false,
|
||||||
|
"loadNativePlugins" : false,
|
||||||
|
"visitorEntry" : false,
|
||||||
|
"showAlways" : false
|
||||||
|
},
|
||||||
|
"styles" : {
|
||||||
|
"backgroundColor" : "#ffffff",
|
||||||
|
"borderRadius" : "5px",
|
||||||
|
"title" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonAccept" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonRefuse" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonVisitor" : {
|
||||||
|
"color" : "#009"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -1,25 +0,0 @@
|
|||||||
/* 非空验证 */
|
|
||||||
const vefEmpty = (key,msg) => {
|
|
||||||
if (key === '' || key === undefined || key === null) {
|
|
||||||
uni.showToast({
|
|
||||||
title: msg,
|
|
||||||
duration: 2000,
|
|
||||||
icon: 'none'
|
|
||||||
});
|
|
||||||
return false
|
|
||||||
} else {
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const addZero = (num) => {
|
|
||||||
if (num < 10) {
|
|
||||||
num = `0${num}`;
|
|
||||||
}
|
|
||||||
return num;
|
|
||||||
};
|
|
||||||
|
|
||||||
export default {
|
|
||||||
vefEmpty,
|
|
||||||
addZero
|
|
||||||
}
|
|
@ -1,17 +1,22 @@
|
|||||||
const env = 'dev';
|
const env = 'dev';
|
||||||
const configs = {
|
const configs = {
|
||||||
|
LocalTest: {
|
||||||
|
apiBaseUrl: 'https://warehouse.szjixun.cn/oa_backend',
|
||||||
|
h5Url:'http://192.168.88.53:8080/#/'
|
||||||
|
},
|
||||||
dev: {
|
dev: {
|
||||||
apiBaseUrl: 'https://warehouse.szjixun.cn/oa_backend',
|
apiBaseUrl: 'https://warehouse.szjixun.cn/oa_backend',
|
||||||
h5Url: 'http://192.168.88.49:8080/#/'
|
h5Url:'http://192.168.88.50:8080/#/'
|
||||||
},
|
},
|
||||||
test: {
|
test: {
|
||||||
apiBaseUrl: 'https://warehouse.szjixun.cn/oa_backend',
|
apiBaseUrl: 'https://warehouse.szjixun.cn/oa_backend',
|
||||||
h5Url: 'http://114.218.158.24:9051/#/'
|
h5Url:'http://114.218.158.24:8042/#/'
|
||||||
},
|
},
|
||||||
prod: {
|
prod: {
|
||||||
apiBaseUrl: 'https://oa-b.szjixun.cn/#/',
|
apiBaseUrl: 'https://oa-a.szjixun.cn/api',
|
||||||
h5Url: 'https://oa-b.szjixun.cn/#/'
|
h5Url:'https://oa-a.szjixun.cn/#/'
|
||||||
},
|
},
|
||||||
}
|
};
|
||||||
|
|
||||||
const config = configs[env];
|
const config = configs[env];
|
||||||
export default config;
|
export default config;
|
||||||
|
@ -0,0 +1 @@
|
|||||||
|
|
@ -1,10 +0,0 @@
|
|||||||
uni.addInterceptor({
|
|
||||||
returnValue (res) {
|
|
||||||
if (!(!!res && (typeof res === "object" || typeof res === "function") && typeof res.then === "function")) {
|
|
||||||
return res;
|
|
||||||
}
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
res.then((res) => res[0] ? reject(res[0]) : resolve(res[1]));
|
|
||||||
});
|
|
||||||
},
|
|
||||||
});
|
|
@ -0,0 +1,81 @@
|
|||||||
|
{
|
||||||
|
"id": "uni-config-center",
|
||||||
|
"displayName": "uni-config-center",
|
||||||
|
"version": "0.0.3",
|
||||||
|
"description": "uniCloud 配置中心",
|
||||||
|
"keywords": [
|
||||||
|
"配置",
|
||||||
|
"配置中心"
|
||||||
|
],
|
||||||
|
"repository": "",
|
||||||
|
"engines": {
|
||||||
|
"HBuilderX": "^3.1.0"
|
||||||
|
},
|
||||||
|
"dcloudext": {
|
||||||
|
"sale": {
|
||||||
|
"regular": {
|
||||||
|
"price": "0.00"
|
||||||
|
},
|
||||||
|
"sourcecode": {
|
||||||
|
"price": "0.00"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"contact": {
|
||||||
|
"qq": ""
|
||||||
|
},
|
||||||
|
"declaration": {
|
||||||
|
"ads": "无",
|
||||||
|
"data": "无",
|
||||||
|
"permissions": "无"
|
||||||
|
},
|
||||||
|
"npmurl": "",
|
||||||
|
"type": "unicloud-template-function"
|
||||||
|
},
|
||||||
|
"directories": {
|
||||||
|
"example": "../../../scripts/dist"
|
||||||
|
},
|
||||||
|
"uni_modules": {
|
||||||
|
"dependencies": [],
|
||||||
|
"encrypt": [],
|
||||||
|
"platforms": {
|
||||||
|
"cloud": {
|
||||||
|
"tcb": "y",
|
||||||
|
"aliyun": "y"
|
||||||
|
},
|
||||||
|
"client": {
|
||||||
|
"App": {
|
||||||
|
"app-vue": "u",
|
||||||
|
"app-nvue": "u"
|
||||||
|
},
|
||||||
|
"H5-mobile": {
|
||||||
|
"Safari": "u",
|
||||||
|
"Android Browser": "u",
|
||||||
|
"微信浏览器(Android)": "u",
|
||||||
|
"QQ浏览器(Android)": "u"
|
||||||
|
},
|
||||||
|
"H5-pc": {
|
||||||
|
"Chrome": "u",
|
||||||
|
"IE": "u",
|
||||||
|
"Edge": "u",
|
||||||
|
"Firefox": "u",
|
||||||
|
"Safari": "u"
|
||||||
|
},
|
||||||
|
"小程序": {
|
||||||
|
"微信": "u",
|
||||||
|
"阿里": "u",
|
||||||
|
"百度": "u",
|
||||||
|
"字节跳动": "u",
|
||||||
|
"QQ": "u"
|
||||||
|
},
|
||||||
|
"快应用": {
|
||||||
|
"华为": "u",
|
||||||
|
"联盟": "u"
|
||||||
|
},
|
||||||
|
"Vue": {
|
||||||
|
"vue2": "y",
|
||||||
|
"vue3": "u"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"name": "uni-config-center",
|
||||||
|
"version": "0.0.3",
|
||||||
|
"description": "配置中心",
|
||||||
|
"main": "index.js",
|
||||||
|
"keywords": [],
|
||||||
|
"author": "DCloud",
|
||||||
|
"license": "Apache-2.0"
|
||||||
|
}
|
@ -0,0 +1,85 @@
|
|||||||
|
{
|
||||||
|
"id": "uni-id-common",
|
||||||
|
"displayName": "uni-id-common",
|
||||||
|
"version": "1.0.17",
|
||||||
|
"description": "包含uni-id token生成、校验、刷新功能的云函数公共模块",
|
||||||
|
"keywords": [
|
||||||
|
"uni-id-common",
|
||||||
|
"uniCloud",
|
||||||
|
"token",
|
||||||
|
"权限"
|
||||||
|
],
|
||||||
|
"repository": "https://gitcode.net/dcloud/uni-id-common",
|
||||||
|
"engines": {
|
||||||
|
"HBuilderX": "^3.1.0"
|
||||||
|
},
|
||||||
|
"dcloudext": {
|
||||||
|
"sale": {
|
||||||
|
"regular": {
|
||||||
|
"price": "0.00"
|
||||||
|
},
|
||||||
|
"sourcecode": {
|
||||||
|
"price": "0.00"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"contact": {
|
||||||
|
"qq": ""
|
||||||
|
},
|
||||||
|
"declaration": {
|
||||||
|
"ads": "无",
|
||||||
|
"data": "无",
|
||||||
|
"permissions": "无"
|
||||||
|
},
|
||||||
|
"npmurl": "",
|
||||||
|
"type": "unicloud-template-function"
|
||||||
|
},
|
||||||
|
"uni_modules": {
|
||||||
|
"dependencies": ["uni-config-center"],
|
||||||
|
"encrypt": [],
|
||||||
|
"platforms": {
|
||||||
|
"cloud": {
|
||||||
|
"tcb": "y",
|
||||||
|
"aliyun": "y",
|
||||||
|
"alipay": "n"
|
||||||
|
},
|
||||||
|
"client": {
|
||||||
|
"Vue": {
|
||||||
|
"vue2": "u",
|
||||||
|
"vue3": "u"
|
||||||
|
},
|
||||||
|
"App": {
|
||||||
|
"app-vue": "u",
|
||||||
|
"app-nvue": "u"
|
||||||
|
},
|
||||||
|
"H5-mobile": {
|
||||||
|
"Safari": "u",
|
||||||
|
"Android Browser": "u",
|
||||||
|
"微信浏览器(Android)": "u",
|
||||||
|
"QQ浏览器(Android)": "u"
|
||||||
|
},
|
||||||
|
"H5-pc": {
|
||||||
|
"Chrome": "u",
|
||||||
|
"IE": "u",
|
||||||
|
"Edge": "u",
|
||||||
|
"Firefox": "u",
|
||||||
|
"Safari": "u"
|
||||||
|
},
|
||||||
|
"小程序": {
|
||||||
|
"微信": "u",
|
||||||
|
"阿里": "u",
|
||||||
|
"百度": "u",
|
||||||
|
"字节跳动": "u",
|
||||||
|
"QQ": "u",
|
||||||
|
"钉钉": "u",
|
||||||
|
"快手": "u",
|
||||||
|
"飞书": "u",
|
||||||
|
"京东": "u"
|
||||||
|
},
|
||||||
|
"快应用": {
|
||||||
|
"华为": "u",
|
||||||
|
"联盟": "u"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
# uni-id-common
|
||||||
|
|
||||||
|
文档请参考:[uni-id-common](https://uniapp.dcloud.net.cn/uniCloud/uni-id-common.html)
|
@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"name": "uni-id-common",
|
||||||
|
"version": "1.0.17",
|
||||||
|
"description": "uni-id token生成、校验、刷新",
|
||||||
|
"main": "index.js",
|
||||||
|
"homepage": "https://uniapp.dcloud.io/uniCloud/uni-id-common.html",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "git+https://gitee.com/dcloud/uni-id-common.git"
|
||||||
|
},
|
||||||
|
"author": "DCloud",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"dependencies": {
|
||||||
|
"uni-config-center": "file:../../../../../uni-config-center/uniCloud/cloudfunctions/common/uni-config-center"
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="io.dcloud.uts.permissionrequest">
|
||||||
|
</manifest>
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"minSdkVersion": "21"
|
||||||
|
}
|
@ -0,0 +1,115 @@
|
|||||||
|
import { UnregisterRequestPermissionTipsListener, RegisterRequestPermissionTipsListener, RequestPermissionTipsListener, SetRequestPermissionTips } from "../interface";
|
||||||
|
import RelativeLayout from 'android.widget.RelativeLayout';
|
||||||
|
import LinearLayout from 'android.widget.LinearLayout';
|
||||||
|
import Color from 'android.graphics.Color';
|
||||||
|
import TextView from 'android.widget.TextView';
|
||||||
|
import ViewGroup from 'android.view.ViewGroup';
|
||||||
|
import Activity from 'android.app.Activity';
|
||||||
|
import HashMap from 'java.util.HashMap';
|
||||||
|
import AnimationUtils from 'android.view.animation.AnimationUtils';
|
||||||
|
import R from 'io.dcloud.uts.permissionrequest.R'
|
||||||
|
import Html from 'android.text.Html';
|
||||||
|
import View from 'android.view.View';
|
||||||
|
|
||||||
|
let PermissionTipsView : View | null = null
|
||||||
|
let permissionTips : HashMap<String, String> = new HashMap<String, String>()
|
||||||
|
var permissionListener : RequestPermissionListener | null = null
|
||||||
|
var listener : RequestPermissionTipsListener | null = null
|
||||||
|
export const unregisterRequestPermissionTipsListener : UnregisterRequestPermissionTipsListener = (l : RequestPermissionTipsListener | null) => {
|
||||||
|
listener = null;
|
||||||
|
if (permissionListener != null) {
|
||||||
|
permissionListener!.stop()
|
||||||
|
permissionListener = null
|
||||||
|
}
|
||||||
|
if (PermissionTipsView != null) {
|
||||||
|
if (PermissionTipsView!.getParent() != null) {
|
||||||
|
PermissionTipsView!.setAnimation(null);
|
||||||
|
((PermissionTipsView!.getParent()) as ViewGroup).removeView(PermissionTipsView)
|
||||||
|
}
|
||||||
|
PermissionTipsView = null
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const registerRequestPermissionTipsListener : RegisterRequestPermissionTipsListener = (l : RequestPermissionTipsListener | null) => {
|
||||||
|
listener = l
|
||||||
|
if (permissionListener == null) {
|
||||||
|
permissionListener = uni.createRequestPermissionListener()
|
||||||
|
permissionListener!.onRequest((permissions : Array<string>) => {
|
||||||
|
if (listener != null)
|
||||||
|
listener!.onRequest?.invoke(permissions)
|
||||||
|
})
|
||||||
|
permissionListener!.onConfirm((permissions : Array<string>) => {
|
||||||
|
let activity = UTSAndroid.getUniActivity()!
|
||||||
|
if (PermissionTipsView != null && PermissionTipsView!.getParent() != null) {
|
||||||
|
PermissionTipsView!.setAnimation(null);
|
||||||
|
((PermissionTipsView!.getParent()) as ViewGroup).removeView(PermissionTipsView)
|
||||||
|
}
|
||||||
|
if (permissions.length > 0) {
|
||||||
|
PermissionTipsView = createPermissionWindow(activity, permissions);
|
||||||
|
if (PermissionTipsView != null) {
|
||||||
|
(activity.findViewById(android.R.id.content) as ViewGroup).addView(PermissionTipsView!)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (listener != null)
|
||||||
|
listener!.onConfirm?.invoke(permissions)
|
||||||
|
|
||||||
|
})
|
||||||
|
permissionListener!.onComplete((permissions : Array<string>) => {
|
||||||
|
// clearTimeout(timeoutRequestId)
|
||||||
|
let activity = UTSAndroid.getUniActivity()!
|
||||||
|
if (PermissionTipsView != null) {
|
||||||
|
PermissionTipsView!.setAnimation(AnimationUtils.loadAnimation(activity, R.anim.popupwindow_exit));
|
||||||
|
((PermissionTipsView!.getParent()) as ViewGroup).removeView(PermissionTipsView!)
|
||||||
|
PermissionTipsView = null
|
||||||
|
}
|
||||||
|
if (listener != null) {
|
||||||
|
var permissionStatus = {}
|
||||||
|
for (var p in permissions) {
|
||||||
|
permissionStatus[p] = UTSAndroid.checkSystemPermissionGranted(UTSAndroid.getUniActivity()!, [p]) ? "grant" : "denied"
|
||||||
|
}
|
||||||
|
listener!.onComplete?.invoke(permissionStatus)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export const setRequestPermissionTips : SetRequestPermissionTips = (tips : UTSJSONObject) => {
|
||||||
|
permissionTips.clear()
|
||||||
|
for (var k in tips) {
|
||||||
|
permissionTips.put(k, tips[k] != null ? tips[k].toString() : "")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function createPermissionWindow(activity : Activity, permissions : Array<string>) : ViewGroup | null {
|
||||||
|
let rootView = new RelativeLayout(activity);
|
||||||
|
rootView.setBackgroundColor(Color.TRANSPARENT);
|
||||||
|
let backgroundView = new LinearLayout(activity);
|
||||||
|
backgroundView.setPadding(30, 0, 30, 30);
|
||||||
|
backgroundView.setOrientation(1)
|
||||||
|
backgroundView.setBackgroundResource(R.drawable.dcloud_permission_background);
|
||||||
|
let permissionTipsList : Array<string> = new Array<string>()
|
||||||
|
for (var p in permissions) {
|
||||||
|
if (permissionTips.containsKey(p) && permissionTipsList.indexOf(permissionTips.get(p)) == -1) {
|
||||||
|
permissionTipsList.push(permissionTips.get(p)!)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (var p in permissionTipsList) {
|
||||||
|
let text = new TextView(activity);
|
||||||
|
text.setText(Html.fromHtml(p, Html.FROM_HTML_SEPARATOR_LINE_BREAK_HEADING))
|
||||||
|
text.setPadding(0, 30, 0, 0)
|
||||||
|
text.setTextSize((5 * UTSAndroid.getScale()).toFloat())
|
||||||
|
text.setTextColor(Color.BLACK)
|
||||||
|
backgroundView.addView(text)
|
||||||
|
}
|
||||||
|
if (backgroundView.getChildCount() == 0) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
let rll = new RelativeLayout.LayoutParams(-1, -2)
|
||||||
|
rll.topMargin = (UTSAndroid.getStatusBarHeight() * UTSAndroid.getScale()).toInt();
|
||||||
|
rll.leftMargin = 30;
|
||||||
|
rll.rightMargin = 30;
|
||||||
|
rll.bottomMargin = 30;
|
||||||
|
rootView.addView(backgroundView, rll)
|
||||||
|
rootView.setAnimation(AnimationUtils.loadAnimation(activity, R.anim.popupwindow_enter));
|
||||||
|
return rootView;
|
||||||
|
}
|
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<translate xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:duration="200"
|
||||||
|
android:fromYDelta="-100%"
|
||||||
|
android:toYDelta="0" >
|
||||||
|
</translate>
|
@ -0,0 +1,5 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<translate xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
android:duration="200"
|
||||||
|
android:fromYDelta="0"
|
||||||
|
android:toYDelta="-100%" />
|
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<shape xmlns:android="http://schemas.android.com/apk/res/android" >
|
||||||
|
<corners android:radius="8dp" />
|
||||||
|
<!-- <stroke android:color="@color/black" android:width="2dp"/>-->
|
||||||
|
<solid android:color="#ffffff"/>
|
||||||
|
</shape>
|
@ -0,0 +1,19 @@
|
|||||||
|
export type RequestPermissionTipsListener = {
|
||||||
|
onRequest ?: ((permissions : Array<string>) => void) | null,
|
||||||
|
onConfirm ?: ((permission : Array<string>) => void) | null,
|
||||||
|
onComplete ?: ((permissions : UTSJSONObject) => void) | null
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export type RegisterRequestPermissionTipsListener = (listener : RequestPermissionTipsListener | null) => void
|
||||||
|
export type UnregisterRequestPermissionTipsListener = (listener : RequestPermissionTipsListener | null) => void
|
||||||
|
export type SetRequestPermissionTips = (tips : UTSJSONObject) => void
|
||||||
|
|
||||||
|
export interface Uni {
|
||||||
|
|
||||||
|
registerRequestPermissionTipsListener : RegisterRequestPermissionTipsListener,
|
||||||
|
|
||||||
|
unregisterRequestPermissionTipsListener : UnregisterRequestPermissionTipsListener
|
||||||
|
|
||||||
|
setRequestPermissionTips : SetRequestPermissionTips
|
||||||
|
}
|
@ -0,0 +1,30 @@
|
|||||||
|
[appleAppid]
|
||||||
|
appleAppid=com.fonchain.attendance
|
||||||
|
|
||||||
|
[appstore]
|
||||||
|
appstore=70695af7d1a0be20d1ba633bf98ec76e
|
||||||
|
|
||||||
|
[iosStyle]
|
||||||
|
iosStyle=storyboard
|
||||||
|
|
||||||
|
[universalLinks]
|
||||||
|
universalLinks=
|
||||||
|
spaceid=
|
||||||
|
|
||||||
|
[universalLinks_qq]
|
||||||
|
universalLinks_qq=
|
||||||
|
spaceid_qq=
|
||||||
|
|
||||||
|
[universalLinks_weibo]
|
||||||
|
universalLinks_weibo=
|
||||||
|
spaceid_weibo=
|
||||||
|
|
||||||
|
[iphone]
|
||||||
|
app%402x=efbc54bca681a68f352e357693dd0adc
|
||||||
|
app%403x=07cc7fe6568729d8260f2ea5400cdb1c
|
||||||
|
notification%402x=6dab6ded0ca82920d3ae1cf618bc07ca
|
||||||
|
notification%403x=8b4f295e9144a8e30070a2b64c5593bb
|
||||||
|
settings%402x=4291cf8010e170f83b69d002111be23b
|
||||||
|
settings%403x=94c1b4514f88af3d1cc1f496471c16b3
|
||||||
|
spotlight%402x=7862b7a531181221e609694960355fd3
|
||||||
|
spotlight%403x=efbc54bca681a68f352e357693dd0adc
|
@ -0,0 +1,3 @@
|
|||||||
|
iosProfile=D:/WebstormProjects/oa-base/files/ios/oa_dev_20240104.mobileprovision
|
||||||
|
ioscertFile=D:/WebstormProjects/oa-base/files/ios/20230714_dev.p12
|
||||||
|
ioscertPassword=uecGPNMV8s+KLcdEgW/MRg==
|
@ -0,0 +1 @@
|
|||||||
|
{"dir":"/Users/seaman/srv/bdserver.dcloud.net.cn/service/storage/app/package/IOS/queue/b87978d0-38da-11ef-862d-698846b5d25e/wgtRoot/__UNI__4796942/"}
|
After Width: | Height: | Size: 27 KiB |
After Width: | Height: | Size: 3.1 KiB |
After Width: | Height: | Size: 6.5 KiB |
After Width: | Height: | Size: 1.2 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 7.1 KiB |
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 7.9 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 5.1 KiB |
After Width: | Height: | Size: 5.7 KiB |
After Width: | Height: | Size: 2.0 KiB |
@ -0,0 +1,23 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<title>View</title>
|
||||||
|
<link rel="stylesheet" href="app.css" />
|
||||||
|
<script>var __uniConfig = {"globalStyle":{},"darkmode":false}</script>
|
||||||
|
<script>
|
||||||
|
var coverSupport = 'CSS' in window && typeof CSS.supports === 'function' && (CSS.supports('top: env(a)') ||
|
||||||
|
CSS.supports('top: constant(a)'))
|
||||||
|
document.write(
|
||||||
|
'<meta name="viewport" content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0' +
|
||||||
|
(coverSupport ? ', viewport-fit=cover' : '') + '" />')
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="app"></div>
|
||||||
|
<script src="uni-app-view.umd.js"></script>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"version" : "1",
|
||||||
|
"prompt" : "template",
|
||||||
|
"title" : "服务协议和隐私政策",
|
||||||
|
"message" : " 请你务必审慎阅读、充分理解“平台服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
|
||||||
|
"buttonAccept" : "同意并接受",
|
||||||
|
"buttonRefuse" : "不同意",
|
||||||
|
"second" : {
|
||||||
|
"title" : "确认提示",
|
||||||
|
"message" : " 进入应用前,你需先同意<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>,否则将退出应用。",
|
||||||
|
"buttonAccept" : "同意并继续",
|
||||||
|
"buttonRefuse" : "退出应用"
|
||||||
|
},
|
||||||
|
"disagreeMode" : {
|
||||||
|
"support" : false,
|
||||||
|
"loadNativePlugins" : false,
|
||||||
|
"visitorEntry" : false,
|
||||||
|
"showAlways" : false
|
||||||
|
},
|
||||||
|
"styles" : {
|
||||||
|
"backgroundColor" : "#ffffff",
|
||||||
|
"borderRadius" : "5px",
|
||||||
|
"title" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonAccept" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonRefuse" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonVisitor" : {
|
||||||
|
"color" : "#009"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,11 @@
|
|||||||
|
|
||||||
|
;(function(){
|
||||||
|
let u=void 0,isReady=false,onReadyCallbacks=[],isServiceReady=false,onServiceReadyCallbacks=[];
|
||||||
|
const __uniConfig = {"pages":[],"globalStyle":{"backgroundColor":"#F8F8F8","navigationBar":{"backgroundColor":"#F8F8F8","titleText":"uni-app","type":"default","titleColor":"#000000"},"isNVue":false},"nvue":{"compiler":"uni-app","styleCompiler":"uni-app","flex-direction":"column"},"renderer":"auto","appname":"OA系统","splashscreen":{"alwaysShowBeforeRender":true,"autoclose":true},"compilerVersion":"4.15","entryPagePath":"pages/index/index","entryPageQuery":"","realEntryPagePath":"","networkTimeout":{"request":60000,"connectSocket":60000,"uploadFile":60000,"downloadFile":60000},"locales":{},"darkmode":false,"themeConfig":{}};
|
||||||
|
const __uniRoutes = [{"path":"pages/index/index","meta":{"isQuit":true,"isEntry":true,"navigationBar":{"titleText":"uni-app","style":"custom","type":"default"},"isNVue":false}}].map(uniRoute=>(uniRoute.meta.route=uniRoute.path,__uniConfig.pages.push(uniRoute.path),uniRoute.path='/'+uniRoute.path,uniRoute));
|
||||||
|
__uniConfig.styles=[];//styles
|
||||||
|
__uniConfig.onReady=function(callback){if(__uniConfig.ready){callback()}else{onReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"ready",{get:function(){return isReady},set:function(val){isReady=val;if(!isReady){return}const callbacks=onReadyCallbacks.slice(0);onReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
|
||||||
|
__uniConfig.onServiceReady=function(callback){if(__uniConfig.serviceReady){callback()}else{onServiceReadyCallbacks.push(callback)}};Object.defineProperty(__uniConfig,"serviceReady",{get:function(){return isServiceReady},set:function(val){isServiceReady=val;if(!isServiceReady){return}const callbacks=onServiceReadyCallbacks.slice(0);onServiceReadyCallbacks.length=0;callbacks.forEach(function(callback){callback()})}});
|
||||||
|
service.register("uni-app-config",{create(a,b,c){if(!__uniConfig.viewport){var d=b.weex.config.env.scale,e=b.weex.config.env.deviceWidth,f=Math.ceil(e/d);Object.assign(__uniConfig,{viewport:f,defaultFontSize:16})}return{instance:{__uniConfig:__uniConfig,__uniRoutes:__uniRoutes,global:u,window:u,document:u,frames:u,self:u,location:u,navigator:u,localStorage:u,history:u,Caches:u,screen:u,alert:u,confirm:u,prompt:u,fetch:u,XMLHttpRequest:u,WebSocket:u,webkit:u,print:u}}}});
|
||||||
|
})();
|
||||||
|
|
@ -0,0 +1 @@
|
|||||||
|
(function(){})();
|
@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"version" : "1",
|
||||||
|
"prompt" : "template",
|
||||||
|
"title" : "服务协议和隐私政策",
|
||||||
|
"message" : " 请你务必审慎阅读、充分理解“平台服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
|
||||||
|
"buttonAccept" : "同意并接受",
|
||||||
|
"buttonRefuse" : "不同意",
|
||||||
|
"second" : {
|
||||||
|
"title" : "确认提示",
|
||||||
|
"message" : " 进入应用前,你需先同意<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>,否则将退出应用。",
|
||||||
|
"buttonAccept" : "同意并继续",
|
||||||
|
"buttonRefuse" : "退出应用"
|
||||||
|
},
|
||||||
|
"disagreeMode" : {
|
||||||
|
"support" : false,
|
||||||
|
"loadNativePlugins" : false,
|
||||||
|
"visitorEntry" : false,
|
||||||
|
"showAlways" : false
|
||||||
|
},
|
||||||
|
"styles" : {
|
||||||
|
"backgroundColor" : "#ffffff",
|
||||||
|
"borderRadius" : "5px",
|
||||||
|
"title" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonAccept" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonRefuse" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonVisitor" : {
|
||||||
|
"color" : "#009"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"hash": "fd84dcc1",
|
||||||
|
"configHash": "8979c8e1",
|
||||||
|
"lockfileHash": "e3b0c442",
|
||||||
|
"browserHash": "4c910bc0",
|
||||||
|
"optimized": {},
|
||||||
|
"chunks": {}
|
||||||
|
}
|
@ -0,0 +1,3 @@
|
|||||||
|
{
|
||||||
|
"type": "module"
|
||||||
|
}
|
@ -0,0 +1,36 @@
|
|||||||
|
{
|
||||||
|
"version" : "1",
|
||||||
|
"prompt" : "template",
|
||||||
|
"title" : "服务协议和隐私政策",
|
||||||
|
"message" : " 请你务必审慎阅读、充分理解“平台服务协议”和“隐私政策”各条款,包括但不限于:为了更好的向你提供服务,我们需要收集你的设备标识、操作日志等信息用于分析、优化应用性能。<br/> 你可阅读<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>了解详细信息。如果你同意,请点击下面按钮开始接受我们的服务。",
|
||||||
|
"buttonAccept" : "同意并接受",
|
||||||
|
"buttonRefuse" : "不同意",
|
||||||
|
"second" : {
|
||||||
|
"title" : "确认提示",
|
||||||
|
"message" : " 进入应用前,你需先同意<a href=\"https://oa.szjixun.cn/#/pages/login/serveInfo\">《用户服务协议》</a>和<a href=\"https://oa.szjixun.cn/#/pages/login/privateInfo\">《隐私政策》</a>,否则将退出应用。",
|
||||||
|
"buttonAccept" : "同意并继续",
|
||||||
|
"buttonRefuse" : "退出应用"
|
||||||
|
},
|
||||||
|
"disagreeMode" : {
|
||||||
|
"support" : false,
|
||||||
|
"loadNativePlugins" : false,
|
||||||
|
"visitorEntry" : false,
|
||||||
|
"showAlways" : false
|
||||||
|
},
|
||||||
|
"styles" : {
|
||||||
|
"backgroundColor" : "#ffffff",
|
||||||
|
"borderRadius" : "5px",
|
||||||
|
"title" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonAccept" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonRefuse" : {
|
||||||
|
"color" : "#000"
|
||||||
|
},
|
||||||
|
"buttonVisitor" : {
|
||||||
|
"color" : "#009"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 27 KiB |