diff --git a/components/LockDatetimePicker/LockDatetimePicker.vue b/components/LockDatetimePicker/LockDatetimePicker.vue
index 911b896..0f3dcf6 100644
--- a/components/LockDatetimePicker/LockDatetimePicker.vue
+++ b/components/LockDatetimePicker/LockDatetimePicker.vue
@@ -6,10 +6,10 @@
{{ timeFormat(time, 'yyyy-mm-dd h:M') }}
-
+ @close="close" @cancel="close">
@@ -22,7 +22,7 @@ export default {
title: String,
value: Number,
minDate: Number,
- placeholder: String,
+ maxDate: Number,
type: {
type: String,
default: 'datetime'
@@ -39,6 +39,24 @@ export default {
},
methods: {
timeFormat,
+ formatter(type, value) {
+ if (type === 'year') {
+ return `${value}年`;
+ }
+ if (type === 'month') {
+ return `${value}月`;
+ }
+ if (type === 'day') {
+ return `${value}日`;
+ }
+ if (type === 'hour') {
+ return `${value}时`;
+ }
+ if (type === 'minute') {
+ return `${value}分`;
+ }
+ return value;
+ },
filter(mode, options) {
if (mode === 'minute' && this.type === 'datehour') {
return options.filter((option) => option === '00')
diff --git a/manifest.json b/manifest.json
index 8d2ba3d..bca47ef 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,8 +2,8 @@
"name" : "wx-starlock",
"appid" : "__UNI__933D519",
"description" : "",
- "versionName" : "1.0.1",
- "versionCode" : "18",
+ "versionName" : "1.0.2",
+ "versionCode" : "22",
"transformPx" : false,
/* 小程序特有相关 */
"mp-weixin" : {
diff --git a/pages/createKey/createKey.vue b/pages/createKey/createKey.vue
index 3faf3b0..5bcfba2 100644
--- a/pages/createKey/createKey.vue
+++ b/pages/createKey/createKey.vue
@@ -10,26 +10,28 @@
:list="tabs" :autoplay="false"
:circular="true" :current="currnetIndex" @change="changeSwiper">
-
-
- 接收者可使用此小程序开关锁
- 发送钥匙
+ 接收者可使用此小程序开关锁
+ 小程序暂不支持邮箱登录,若接收者账号为邮箱可先使用星星锁APP登录,绑定手机号后可使用小程序登录
+ 发送
-
-
+ @changeTime="changeTemporaryValidTime" :maxDate="maxDate">
+ @changeTime="changeTemporaryInvalidTime" :maxDate="maxDate">
- 接收者在有效期内可以不限次数使用
- 发送钥匙
+ 接收者在有效期内可以不限次数使用
+ 小程序暂不支持邮箱登录,若接收者账号为邮箱可先使用星星锁APP登录,绑定手机号后可使用小程序登录
+ 发送
@@ -62,6 +64,7 @@ export default {
temporaryValidTime: Number(new Date()),
temporaryInvalidTime: Number(new Date()),
minDate: Number(new Date()),
+ maxDate: Number(4133951940000),
currnetIndex: 0,
deviceInfo: null,
pending: false
@@ -77,7 +80,7 @@ export default {
},
async onLoad () {
this.deviceInfo = await this.getDeviceInfo()
- this.temporaryInvalidTime = this.setTime()
+ // this.temporaryInvalidTime = this.setTime()
},
methods: {
...mapActions(useBasicStore, ['getDeviceInfo', 'backAndToast', 'getNetworkType']),
@@ -212,8 +215,6 @@ page {
}
.text {
- margin-top: 40rpx;
- margin-bottom: 50rpx;
color: #262626;
font-size: 26rpx;
padding: 0 32rpx;
diff --git a/pages/createPassword/createPassword.vue b/pages/createPassword/createPassword.vue
index 4710779..2843629 100644
--- a/pages/createPassword/createPassword.vue
+++ b/pages/createPassword/createPassword.vue
@@ -10,17 +10,17 @@
:list="tabs" :autoplay="false"
:circular="true" :current="currnetIndex" @change="changeSwiper">
-
{{ text }}
获取密码
-
-
+
{{ text }}
获取密码
@@ -51,10 +51,11 @@ export default {
temporaryName: '',
temporaryTime: Number(new Date()),
minDate: Number(new Date()),
+ maxDate: Number(4133951940000),
currnetIndex: 0,
deviceInfo: null,
pending: false,
- text: '密码生成后,请在当日23:59前使用一次进行激活,否则过点后未激活则失效。密码激活后,有效期内不限次数使用。'
+ text: '密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。密码激活后,有效期内不限次数使用。'
}
},
components: {
@@ -68,14 +69,37 @@ export default {
async onLoad() {
this.deviceInfo = await this.getDeviceInfo()
this.temporaryTime = this.setTime()
+ this.minDate = Number(this.getNextFullHour())
+ this.maxDate = Number(this.getFutureTimestamp())
},
methods: {
...mapActions(useBasicStore, ['getDeviceInfo', 'backAndToast', 'getNetworkType']),
...mapActions(useLockStore, ['getPasswordList', 'updatePasswordSearch']),
+ // 获取下一个整点时间
+ getNextFullHour() {
+ const now = new Date()
+ const currentHour = now.getHours()
+ now.setHours(currentHour);
+ now.setMinutes(0);
+ now.setSeconds(0);
+ now.setMilliseconds(0);
+
+ return now;
+ },
+ getFutureTimestamp() {
+ const currentDate = new Date();
+
+ const year = currentDate.getFullYear();
+ const month = currentDate.getMonth();
+ const day = currentDate.getDate();
+
+ const futureDate = new Date(year + 3, month, day, 23, 0, 0);
+
+ return futureDate.getTime();
+ },
setTime() {
const now = new Date()
now.setMinutes(0, 0, 0)
- now.setDate(now.getDate() + 1)
return now.getTime()
},
diff --git a/pages/keyDetail/keyDetail.vue b/pages/keyDetail/keyDetail.vue
index 2da44aa..17b2aec 100644
--- a/pages/keyDetail/keyDetail.vue
+++ b/pages/keyDetail/keyDetail.vue
@@ -1,7 +1,7 @@
- 名称
+ 姓名
{{ currentKeyInfo.keyName }}
@@ -39,7 +39,7 @@
发送时间
{{ timeFormat(currentKeyInfo.sendDate, 'yyyy-mm-dd h:M') }}
- 删除钥匙
+ 删除
diff --git a/pages/passwordDetail/passwordDetail.vue b/pages/passwordDetail/passwordDetail.vue
index f2d4002..2f96906 100644
--- a/pages/passwordDetail/passwordDetail.vue
+++ b/pages/passwordDetail/passwordDetail.vue
@@ -5,7 +5,7 @@
{{ currentPasswordInfo.keyboardPwd }}
- 名称
+ 姓名
{{ currentPasswordInfo.keyboardPwdName }}
@@ -16,7 +16,7 @@
{{ timeFormat(currentPasswordInfo.endDate, 'yyyy-mm-dd h:M') }}
- {{ currentPasswordInfo.timeText }}
+ {{ currentPasswordInfo.timeText.slice(0, -3) }}
@@ -27,8 +27,7 @@
发送时间
{{ timeFormat(currentPasswordInfo.sendDate, 'yyyy-mm-dd h:M') }}
- 密码生成后,请在当日23:59前使用一次进行激活,否则过0点后未激活则失效。
- 删除密码
+ 删除
diff --git a/stores/bluetooth.js b/stores/bluetooth.js
index 69e57d9..79e479d 100644
--- a/stores/bluetooth.js
+++ b/stores/bluetooth.js
@@ -495,7 +495,7 @@ export const useBluetoothStore = defineStore('ble', {
if(searchNumber === 0 && searchTipFlag) {
uni.showModal({
title: '提示',
- content: '长时间未搜索到任何设备,请确认微信的附近设备权限开启后再试',
+ content: '长时间未搜索到任何设备,请确认微信的附近设备权限开启后再试(鸿蒙系统在设置-隐私-定位服务中开启位置信息权限)',
showCancel: false,
success() {
uni.openAppAuthorizeSetting({
@@ -756,15 +756,33 @@ export const useBluetoothStore = defineStore('ble', {
return new Promise((resolve) => {
uni.startBluetoothDevicesDiscovery({
success: function () {
- timer2 = setTimeout(() => {
- uni.stopBluetoothDevicesDiscovery()
- clearInterval(timer1)
- resolve({ code: -1 })
- }, 10500)
+ let searchFlag = false
+ timer2 = setTimeout(async () => {
+ uni.stopBluetoothDevicesDiscovery()
+ clearInterval(timer1)
+ if (!searchFlag) {
+ uni.showModal({
+ title: '提示',
+ content: '长时间未搜索到任何设备,请确认微信的附近设备权限开启后再试(鸿蒙系统在设置-隐私-定位服务中开启位置信息权限)',
+ showCancel: false,
+ success () {
+ uni.openAppAuthorizeSetting({
+ success (res) {
+ console.log(res)
+ }
+ })
+ }
+ })
+ }
+ resolve({ code: -1 })
+ }, 10500)
timer1 = setInterval(() => {
uni.getBluetoothDevices({
success(res) {
const deviceList = res.devices
+ if(searchFlag === false && res.devices.length > 0) {
+ searchFlag = true
+ }
for(let i = 0; i < deviceList.length; i++) {
if(deviceList[i]?.name === that.currentLockInfo.name) {
const uuid = deviceList[i]?.advertisServiceUUIDs[0]