提交 45e13e52 authored 作者: 刘旭's avatar 刘旭

更新

上级 d0cf9173
......@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8" />
<link rel="icon" href="" type="png/x-icon" />
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
<!-- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests"> -->
<link rel="stylesheet" href="./src/static/iconfont/iconfont.css" />
<script>
var coverSupport =
......
......@@ -54,11 +54,11 @@ defineProps({
},
backIconName: {
type: String,
default: "arrow-left",
// default: "arrow-left",
},
iconName: {
type: String,
default: "more-dot-fill",
// default: "more-dot-fill",
},
background: {
type: String,
......@@ -76,9 +76,9 @@ defineProps({
type: Boolean,
default: true,
},
})
});
const emits = defineEmits(["handleRight", "goback", "submit"])
const emits = defineEmits(["handleRight", "goback", "submit"]);
const sheetState = reactive({
list: [
......@@ -96,31 +96,31 @@ const sheetState = reactive({
},
],
show: false,
})
});
const handleRight = () => {
sheetState.show = true
sheetState.show = true;
// emits('handleRight')
}
};
// 点击左侧返回图标
const handleLeftIconClick = () => {
uni.navigateBack()
}
uni.navigateBack();
};
const onConfirm = (index: number) => {
const item = sheetState.list[index]
console.log(item)
const item = sheetState.list[index];
console.log(item);
// switch (item.options.operate) {
// case 'save':
// break;
// }
}
};
const submit = () => {
emits("submit")
}
emits("submit");
};
</script>
<style lang="scss" scoped>
......
......@@ -2,6 +2,7 @@
<!-- <headers title="我的班级" /> -->
<view style="padding: 0 32rpx 168rpx">
<u-tabs
v-show="!parentCurrent"
:list="tabsState.list"
:is-scroll="false"
v-model="tabsState.current"
......@@ -75,11 +76,18 @@ const tabsState = reactive({
],
current: 0,
});
const status = ref("loadmore");
const addressBookList = ref([] as any);
const parentCurrent = ref();
onLoad((options: any) => {
listQuery.classId = options.classId;
if (options.current != 2) {
tabsState.current = options.current;
parentCurrent.value = options.current;
listQuery.type = 1;
}
init();
});
......@@ -119,6 +127,7 @@ const init = async () => {
listQuery.total = res.total;
}
};
// 上拉加载数据
onReachBottom(() => {
// 判断是否还有下一页数据
......
......@@ -106,6 +106,7 @@ const toAddressBook = () => {
url: "/pages/class/addressBook?classId=" + props.classItem.classId,
});
};
const toCourseArrange = () => {
uni.navigateTo({
url: "/pages/class/courseArrange?classId=" + props.classItem.classId,
......@@ -114,13 +115,13 @@ const toCourseArrange = () => {
const toEvaluate = () => {
uni.navigateTo({
url: "/pages/class/classEvaluate?classId=" + props.classItem.classId,
url:
"/pages/class/classEvaluate?classId=" +
props.classItem.classId +
"&current=" +
props.current,
});
};
const contact = (tel: string) => {
location.href = "tel:" + tel;
};
</script>
<style lang="scss" scoped>
......
......@@ -48,7 +48,7 @@ const tagList = ref([
{ type: "info", name: "正常" },
{ type: "info", name: "缺勤" },
{ type: "info", name: "请假" },
{ type: "info", name: "补签" },
// { type: "info", name: "补签" },
]);
const detailList = ref([] as any);
......
......@@ -17,7 +17,9 @@
<view class="item">
<u-icon size="34" name="account" />
<block v-for="(item, i) in courseItem.Management">
<text>&nbsp;{{ item.teachName }}&nbsp;</text>
<text style="color: #05a8ff" @tap="toSeeMore"
>&nbsp;{{ item.teachName }}&nbsp;</text
>
</block>
</view>
<view class="item">
......
......@@ -107,12 +107,12 @@ const fillRef = ref();
const tagList = [
{ color: "#04A7FF", status: "正常出勤" },
{ color: "#FF3333", status: "缺勤" },
{ color: "#FF0606", status: "缺勤" },
{ color: "#5363FF", status: "未签退" },
{ color: "#5363FF", status: "签到请假" },
{ color: "#5363FF", status: "签退请假" },
{ color: "#19be6b", status: "已补签" },
{ color: "#19be6b", status: "签退补签" },
{ color: "#5363FF", status: "请假" },
{ color: "#5363FF", status: "请假" },
{ color: "#19be6b", status: "正常出勤" },
{ color: "#19be6b", status: "正常出勤" },
// { color: "#5363FF", status: "未签到" },
] as any;
......@@ -131,9 +131,8 @@ const state: any = computed(() => {
"QD-QT": tagList[0],
"QD-": tagList[2],
"QDQJ-": tagList[3],
// "QDQJ-QT": tagList[3],
"QD-QTQJ": tagList[4],
"QDBQ-": tagList[5],
"QDBQ-": tagList[1],
"QD-QTBQ": tagList[6],
// "-QT": tagList[7],
} as any;
......@@ -147,13 +146,14 @@ const state: any = computed(() => {
return data;
});
// 签到状态
const signInStatus = (status: string) => {
if (status) {
return status === "QDBQ"
? "已补签"
: status === "QD"
return status === "QDBQ" || status === "QD"
? "已签到"
: status === "QDQJ"
: // : status === "QD"
// ? "已签到"
status === "QDQJ"
? "签到请假"
: "未签到";
} else {
......@@ -161,15 +161,17 @@ const signInStatus = (status: string) => {
}
};
// 签退状态
const signOutStatus = (status: string) => {
if (props.detailItem?.State[0]?.Value[0].SingIn === "QDBQ") {
return "已补签";
} else if (status) {
return status === "QTBQ"
? "签退补签"
: status === "QT"
// if (props.detailItem?.State[0]?.Value[0].SingIn === "QDBQ") {
// return "已补签";
// } else
if (status) {
return status === "QTBQ" || status === "QT"
? "已签退"
: status === "QTQJ"
: // : status === "QT"
// ? "已签退"
status === "QTQJ"
? "签退请假"
: "未签退";
} else {
......@@ -177,11 +179,14 @@ const signOutStatus = (status: string) => {
}
};
// 请假
const leave = () => {
fillState.label = "请假";
fillRef.value.init("签到请假");
fillState.show = true;
};
// 补签
const repair = () => {
fillState.label = "补签";
fillRef.value.init("签到补签");
......
......@@ -17,48 +17,6 @@
{{ Teachs[0].teachMsg }}
</view>
</view>
<!-- <block v-for="(item, index) in Teachs">
<u-card :show-head="false" :show-foot="false" margin="0">
<template #body>
<u-section
title="讲师介绍"
font-size="34"
:arrow="false"
:right="false"
line-color="#2979ff"
/>
<view class="info">
<u-image
width="100rpx"
height="100rpx"
border-radius="10"
:src="baseUrl + '/' + item.Url"
/>
<view class="info-text">
<text>{{ item.teachName }}</text>
<text>{{ item.teachTle }}</text>
</view>
</view>
<view class="detail">
{{ item.teachMsg }}
</view>
</template>
</u-card>
<u-card :show-head="false" :show-foot="false" margin="0">
<template #body>
<u-section
title="课程介绍"
font-size="34"
:arrow="false"
:right="false"
line-color="#2979ff"
/>
<view class="detail">
{{ item.courseMsg }}
</view>
</template>
</u-card>
</block> -->
</view>
</template>
......
......@@ -8,14 +8,13 @@
<u-image
width="240rpx"
height="240rpx"
:src="baseUrl + '/' + globalStore.infoData?.Image"
mode="aspectFit"
:src="'data:image/png;base64,' + globalStore.infoData?.img"
border-radius="24"
/>
<text class="name">{{ globalStore.infoData?.Name }}</text>
<view v-if="globalStore.Phone" class="info">
<text>{{
globalStore.infoData.Type == "BZR" ? "班主任" : "讲师"
}}</text>
<text>班主任</text>
</view>
</view>
......@@ -24,28 +23,6 @@
<view class="title">服务功能</view>
</view>
<!-- <view class="user-menu">
<view class="content">
<u-grid :col="3">
<u-grid-item @tap="toClass">
<u-icon name="man-add-fill" :size="53"></u-icon>
<view class="grid-text">管理班级</view>
</u-grid-item>
<u-grid-item @tap="toCourse">
<u-icon name="grid-fill" :size="53"></u-icon>
<view class="grid-text">我的课程</view>
</u-grid-item>
<u-grid-item @tap="toSetPositioning">
<u-icon name="list-dot" :size="53"></u-icon>
<view class="grid-text">设置考勤定位</view>
</u-grid-item>
<u-grid-item @tap="toTeachPoints">
<u-icon name="search" :size="53"></u-icon>
<view class="grid-text">现场教学点</view>
</u-grid-item>
</u-grid>
</view>
</view> -->
<view class="user-menu">
<view
class="menu-item"
......@@ -53,7 +30,6 @@
:key="item.id"
@tap="gridChange(item.id)"
>
<!-- Ribbon2 Ribbon5 -->
<u-image :src="item.src" width="120rpx" height="120rpx" />
<text>{{ item.name }}</text>
</view>
......@@ -70,7 +46,6 @@
<script setup lang="ts">
import { useGlobalStore } from "@/store/useStore";
import { baseUrl } from "@/utils/request";
const globalStore = useGlobalStore();
......
......@@ -17,15 +17,17 @@
<text class="line"></text>
<text>{{ lecturerItem.FTITLE }}</text>
</view>
<view class="body-left-header-right-bottom"
>党性学习第一节</view
>
<view class="body-left-header-right-bottom">{{
lecturerItem.FCANCOURSE
}}</view>
</view>
</view>
<view class="body-left-bottom">
<view class="item"
>可授课程:{{ lecturerItem.FCANCOURSE }}
<view class="item-sub">查看全部可授课程</view>
<view class="item-sub" @tap="showTaughts"
>查看全部可授课程</view
>
</view>
<view class="item">课酬参考:{{ lecturerItem.FSALARY }}</view>
<view class="item"
......@@ -53,11 +55,13 @@
</template>
</u-card>
</view>
<taughtsPopup ref="taughtsRef" v-model:show="show" />
</template>
<script setup lang="ts">
import { baseUrl } from "@/utils/request";
import { hidePhoneNumber, toast } from "@/utils/util";
import taughtsPopup from "./taughtsPopup.vue";
const props = defineProps({
lecturerItem: {
......@@ -65,13 +69,16 @@ const props = defineProps({
} as any,
});
const show = ref(false);
const taughtsRef = ref();
const downTitleImage = () => {
try {
uni.downloadFile({
url: baseUrl + "/" + props.lecturerItem.FTITLEPROVE, // 这里是你接口地址 若要传参 直接 url拼接参数即可
success: (res) => {
console.log(res, "res");
var tempFilePath = res.tempFilePath; // 这里拿到后端返回的图片路径
const tempFilePath = res.tempFilePath; // 这里拿到后端返回的图片路径
const url = tempFilePath;
const a = document.createElement("a");
a.href = url;
......@@ -86,6 +93,12 @@ const downTitleImage = () => {
toast("下载失败");
}
};
const showTaughts = () => {
taughtsRef.value.taughtList = props.lecturerItem.FCANCOURSES;
console.log(taughtsRef.value.taughtList);
show.value = true;
};
</script>
<style lang="scss" scoped>
......
<template>
<u-popup
v-model="props.show"
mode="center"
closeable
width="400rpx"
border-radius="24"
@close="handleClose"
>
<view class="taught">
<view class="title">可授课程</view>
<u-table>
<u-tr>
<u-th>课程</u-th>
</u-tr>
<u-tr v-for="(item, index) in taughtList" :key="index">
<u-td>{{ item.FDATAVALUE }}</u-td>
</u-tr>
</u-table>
</view>
</u-popup>
</template>
<script setup lang="ts">
const props = defineProps({
show: {
type: Boolean,
default: false,
},
});
const emits = defineEmits(["update:show"]);
const formRef = ref();
const taughtList = ref();
const handleClose = () => {
formRef.value?.resetFields();
emits("update:show", false);
};
defineExpose({
taughtList,
});
</script>
<style lang="scss" scoped>
.taught {
padding: 40rpx 32rpx;
.title {
font-size: 34rpx;
font-weight: 500;
color: #000000;
margin-bottom: 32rpx;
}
}
</style>
......@@ -8,7 +8,12 @@
/>
</view>
<view class="logo">
<u-image src="../../static/img/logo.png" width="100%" height="240rpx" />
<u-image
src="../../static/img/logo.png"
width="100%"
height="240rpx"
mode="aspectFit"
/>
<view class="logo-detail">培训系统</view>
</view>
<view class="container">
......@@ -63,7 +68,7 @@ const hideshow = ref(true);
const docmHeight = document.documentElement.clientHeight;
const data = reactive({
formData: {
Phone: "15077060245",
Phone: "16673514373",
Password: "123456",
} as Login.LoginForm,
rules: {
......
......@@ -145,7 +145,6 @@ export const hidePhoneNumber = (phoneNumber: string) => {
};
export const callPhone = (phone: string) => {
console.log(phone);
if (!phone) return toast("电话号码为空");
location.href = "tel:" + phone;
};
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论