Compare commits
No commits in common. "3c9d2b01f02a3efbfb6ed636284f4e96cc6b6f4c" and "b17fe89b16cbc661a6b14409d68ad89feb5c1b6c" have entirely different histories.
3c9d2b01f0
...
b17fe89b16
|
|
@ -7,7 +7,6 @@ export default {
|
||||||
userStore.fetchUserInfo()
|
userStore.fetchUserInfo()
|
||||||
}
|
}
|
||||||
// #ifdef APP-PLUS
|
// #ifdef APP-PLUS
|
||||||
plus.screen.lockOrientation('portrait-primary')
|
|
||||||
if (userStore.isLogin) {
|
if (userStore.isLogin) {
|
||||||
plus.navigator.closeSplashscreen()
|
plus.navigator.closeSplashscreen()
|
||||||
} else {
|
} else {
|
||||||
|
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
||||||
{
|
|
||||||
"prompt" : "none"
|
|
||||||
}
|
|
||||||
|
|
@ -98,10 +98,6 @@
|
||||||
"spotlight@3x" : "unpackage/res/icons/120x120.png"
|
"spotlight@3x" : "unpackage/res/icons/120x120.png"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
|
||||||
"splashscreen" : {
|
|
||||||
"androidStyle" : "common",
|
|
||||||
"useOriginalMsgbox" : false
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -60,7 +60,7 @@
|
||||||
|
|
||||||
<view class="h-40vh flex-center flex-col">
|
<view class="h-40vh flex-center flex-col">
|
||||||
<view
|
<view
|
||||||
:disabled="!(Check && isType)"
|
:disabled="noCheck"
|
||||||
@click="clockIn"
|
@click="clockIn"
|
||||||
class="w-220rpx h-220rpx rounded-full overflow-hidden card-shadow1 flex-center btn"
|
class="w-220rpx h-220rpx rounded-full overflow-hidden card-shadow1 flex-center btn"
|
||||||
>
|
>
|
||||||
|
|
@ -71,9 +71,9 @@
|
||||||
</view>
|
</view>
|
||||||
|
|
||||||
<view class="mt-40rpx text-center flex-center flex-col">
|
<view class="mt-40rpx text-center flex-center flex-col">
|
||||||
<!-- <view v-if="isGPS === false" class="text-primary text-26rpx"
|
<view v-if="isGPS === false" class="text-primary text-26rpx"
|
||||||
>定位失败,请检查手机定位权限是否开启</view
|
>定位失败,请检查手机定位权限是否开启</view
|
||||||
> -->
|
>
|
||||||
|
|
||||||
<view class="text-hex-999 text-26rpx">{{ detail.description }}</view>
|
<view class="text-hex-999 text-26rpx">{{ detail.description }}</view>
|
||||||
<view
|
<view
|
||||||
|
|
@ -127,20 +127,9 @@ const form = reactive({
|
||||||
})
|
})
|
||||||
const rules = ref({})
|
const rules = ref({})
|
||||||
|
|
||||||
const Check = computed(() => {
|
const noCheck = computed(() => {
|
||||||
return detail.value.enable
|
return !detail.value.enable
|
||||||
})
|
})
|
||||||
const isType = computed(() => {
|
|
||||||
if (detail.value.type == 2) {
|
|
||||||
if (form.type == 2) {
|
|
||||||
return true
|
|
||||||
} else {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return true
|
|
||||||
})
|
|
||||||
|
|
||||||
const maxDistance = computed(() => {
|
const maxDistance = computed(() => {
|
||||||
return detail.value.maxDistance
|
return detail.value.maxDistance
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -33,12 +33,6 @@
|
||||||
</template>
|
</template>
|
||||||
</uv-steps-item>
|
</uv-steps-item>
|
||||||
<uv-steps-item title="下班打卡">
|
<uv-steps-item title="下班打卡">
|
||||||
<template #icon>
|
|
||||||
<view
|
|
||||||
class="w-16rpx h-16rpx rounded-full"
|
|
||||||
:style="{ background: current.last_time ? '#3c9cff' : '#999' }"
|
|
||||||
></view>
|
|
||||||
</template>
|
|
||||||
<template #desc>
|
<template #desc>
|
||||||
<view class="text-24rpx text-hex-999">{{ current.last_time }}</view>
|
<view class="text-24rpx text-hex-999">{{ current.last_time }}</view>
|
||||||
<view class="flex" v-if="!current.last_time">
|
<view class="flex" v-if="!current.last_time">
|
||||||
|
|
@ -50,7 +44,7 @@
|
||||||
<view
|
<view
|
||||||
@click="goC"
|
@click="goC"
|
||||||
class="flex text-24rpx mt-10rpx"
|
class="flex text-24rpx mt-10rpx"
|
||||||
v-if="current?.sign_status != 1"
|
v-if="current?.sign_status == 2 || current?.sign_status == 3"
|
||||||
>
|
>
|
||||||
<view class="text-hex-3c9cff">补卡申请></view>
|
<view class="text-hex-3c9cff">补卡申请></view>
|
||||||
<view>更新打卡</view>
|
<view>更新打卡</view>
|
||||||
|
|
@ -59,27 +53,23 @@
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
<script setup>
|
<script setup>
|
||||||
import { ref, computed } from 'vue'
|
import { ref } from 'vue'
|
||||||
import { http } from '@/utils/request'
|
import { http } from '@/utils/request'
|
||||||
import CuNavbar from '@/components/cu-navbar/index'
|
import CuNavbar from '@/components/cu-navbar/index'
|
||||||
import { onLoad,onShow } from '@dcloudio/uni-app'
|
import { onLoad,onShow } from '@dcloudio/uni-app'
|
||||||
import { timeFormat } from '@climblee/uv-ui/libs/function/index'
|
import { timeFormat } from '@climblee/uv-ui/libs/function/index'
|
||||||
import CuCalendars from '@/components/cu-calendars/uv-calendars'
|
import CuCalendars from '@/components/cu-calendars/uv-calendars'
|
||||||
const selected = ref([])
|
const selected = ref([])
|
||||||
const time = ref('')
|
|
||||||
const date = ref('')
|
|
||||||
onShow(() => {
|
onShow(() => {
|
||||||
getData()
|
getData()
|
||||||
})
|
})
|
||||||
|
|
||||||
const current = computed(
|
const current = ref(null)
|
||||||
() => selected.value.find((e) => e.date == date.value)?.data ?? {}
|
|
||||||
)
|
|
||||||
|
|
||||||
const getData = async () => {
|
const getData = async (date) => {
|
||||||
const res = await http.get('/hr/sign', {
|
const res = await http.get('/hr/sign', {
|
||||||
params: {
|
params: {
|
||||||
time: time.value,
|
time: date,
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
if (!current.value)
|
if (!current.value)
|
||||||
|
|
@ -102,12 +92,11 @@ const getData = async () => {
|
||||||
}
|
}
|
||||||
|
|
||||||
const onChange = ({ year, month }) => {
|
const onChange = ({ year, month }) => {
|
||||||
time.value = `${year}-${month}`
|
getData(`${year}-${month}`)
|
||||||
getData()
|
|
||||||
}
|
}
|
||||||
|
|
||||||
const onChangeDay = (e) => {
|
const onChangeDay = (e) => {
|
||||||
date.value = e.fulldate
|
current.value = e.extraInfo?.data
|
||||||
}
|
}
|
||||||
|
|
||||||
const goC = () => {
|
const goC = () => {
|
||||||
|
|
|
||||||
|
|
@ -68,7 +68,8 @@ const rules = reactive({
|
||||||
{ required: true, message: '请输入新登录密码' },
|
{ required: true, message: '请输入新登录密码' },
|
||||||
{
|
{
|
||||||
min: 6,
|
min: 6,
|
||||||
message: '密码不能少于6位字符',
|
max: 15,
|
||||||
|
message: '密码长度在 6 到 15 个字符',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
validator: (rule, value) => {
|
validator: (rule, value) => {
|
||||||
|
|
|
||||||
|
|
@ -124,7 +124,9 @@ const rules = computed(() => {
|
||||||
phone: [
|
phone: [
|
||||||
{ required: true, message: '请输入手机号' },
|
{ required: true, message: '请输入手机号' },
|
||||||
{
|
{
|
||||||
max: 11,
|
validator: (rule, value) => {
|
||||||
|
return mobile(value)
|
||||||
|
},
|
||||||
message: '请输入正确的手机号',
|
message: '请输入正确的手机号',
|
||||||
},
|
},
|
||||||
],
|
],
|
||||||
|
|
@ -133,7 +135,8 @@ const rules = computed(() => {
|
||||||
{ required: !isEdit.value, message: '请输入登录密码' },
|
{ required: !isEdit.value, message: '请输入登录密码' },
|
||||||
{
|
{
|
||||||
min: 6,
|
min: 6,
|
||||||
message: '密码不能少于6位字符',
|
max: 15,
|
||||||
|
message: '密码长度在 6 到 15 个字符',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
validator: (rule, value) => {
|
validator: (rule, value) => {
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@
|
||||||
<uv-form-item required label="性别" prop="sex" @click="openPicker">
|
<uv-form-item required label="性别" prop="sex" @click="openPicker">
|
||||||
<uv-input
|
<uv-input
|
||||||
placeholder="请选择性别"
|
placeholder="请选择性别"
|
||||||
readonly
|
disabled
|
||||||
inputAlign="right"
|
inputAlign="right"
|
||||||
:border="`none`"
|
:border="`none`"
|
||||||
v-model="form.sex"
|
v-model="form.sex"
|
||||||
|
|
@ -58,7 +58,7 @@
|
||||||
>
|
>
|
||||||
<uv-input
|
<uv-input
|
||||||
placeholder="请选择日期"
|
placeholder="请选择日期"
|
||||||
readonly
|
disabled
|
||||||
inputAlign="right"
|
inputAlign="right"
|
||||||
:border="`none`"
|
:border="`none`"
|
||||||
v-model="form.first_work_time"
|
v-model="form.first_work_time"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue