Compare commits

...

3 Commits

Author SHA1 Message Date
Lx
222dd08ee9 0416-2 2025-04-16 17:41:03 +08:00
Lx
b741f1140a Merge remote-tracking branch 'origin/master'
# Conflicts:
#	newPages/newIndex/index.vue
#	pages/login/login.vue
2025-04-16 17:23:22 +08:00
Lx
be1e341bda 0416 2025-04-16 17:14:38 +08:00
9 changed files with 175 additions and 96 deletions

View File

@ -55,9 +55,10 @@
gogogo(id) {
this.actindex = id;
if (id == 1) {
uni.reLaunch({
/* uni.switchTab({
url: '/newPages/newIndex/index'
})
}) */
uni.switchTab({ url: '/newPages/newIndex/index' });
}
if (id == 2) {
uni.reLaunch({
@ -65,10 +66,11 @@
})
}
if (id == 3) {
uni.reLaunch({
/* uni.switchTab({
// url: '/pages/my/my'
url: '/newPages/my/index'
})
}) */
uni.switchTab({ url: '/newPages/my/index' });
}
if (id == 4) {
uni.showToast({

View File

@ -3,7 +3,7 @@ module.exports = {
// baseUrl: 'https://vue.ruoyi.vip/prod-api',
imagesUrl: 'http://122.51.230.86:9000',
// baseUrl: 'http://localhost:48080',
// baseUrl: 'https://www.nuoyunr.com',
baseUrl: 'http://192.168.1.27:48080',
appId:'wx684fc832e96cee65',
appSecret:'d1fecac806c5f3cd9aca9f3d5c3759c7',

View File

@ -195,6 +195,7 @@
flex-direction: column;
padding: 0 20rpx;
box-sizing: border-box;
}
}
.messageItem {

View File

@ -102,7 +102,7 @@
</view>
</view>
<tabbar :msg='msg'></tabbar>
<!-- <tabbar :msg='msg'></tabbar> -->
<u-popup round="20" :show="showQrCode" @close="closeQrCode" mode="center" zoom="false" @open="openQrCode">
<view style="padding: 50rpx 50rpx 20rpx 50rpx">
<canvas id="qrcode" canvas-id="qrcode" style="width: 300rpx;height: 300rpx"/>
@ -175,7 +175,9 @@ export default {
},
onShow() {
if (getToken()) {
// this.findSelfInfo()
this.selfInfoLocal = getLocalUserInfo()
this.getUserInfo()
this.systemInfo()
}
},

View File

@ -37,15 +37,14 @@
</view>
<view class="itemContent">
<!-- 使用 scroll-view 包裹 SchoolInfo 组件 -->
<scroll-view class="school-scroll-view" scroll-y @scrolltolower="onReachBottomCus" refresher-enabled
@refresherrefresh="onRefresherrefresh" :refresher-triggered="isTriggered">
<scroll-view class="school-scroll-view" scroll-y>
<SchoolInfo style="" v-for="(school, index) in schoolList" :key="index" :schoolInfo="school"
@click="goSchoolDetail(school)" />
</scroll-view>
</view>
</view>
<tabbar :msg='msg'></tabbar>
<!-- <tabbar :msg='msg'></tabbar> -->
</view>
</template>
@ -106,6 +105,7 @@
};
},
onLoad(query) {
console.log('query', query)
// setInviteId('JLPXF1')
// this.getTenantIdByInviteId()
this.getSwiperList()
@ -117,10 +117,10 @@
//code
setInviteId(theRequest['inviteId'])
this.getTenantIdByInviteId()
//
// uni.reLaunch({
// url: '/pages/login/login'
// })
/* //先登
uni.reLaunch({
url: '/pages/login/login'
}) */
} else {
removeInviteId()
removeCoachId()
@ -146,7 +146,7 @@
uniqueCode: getInviteId()
}
}).then(res => {
console.log(123, res.data)
console.log(123)
if (res.data != null) {
this.qTenantId = res.data.tenantId
this.qCoachId = res.data.userId
@ -164,6 +164,7 @@
})
},
getList() {
console.log('getInviteId', getInviteId())
const params = {
pageNo: this.pageNo,
pageSize: this.pageSize,
@ -249,7 +250,7 @@
method: 'GET'
}).then(res => {
res.data.forEach(item => {
item.swiperPicture = this.imageUrl + item.swiperPicture
item.swiperPicture = this.imageUrl + '/' + item.swiperPicture
})
this.swiperList = res.data
})
@ -402,6 +403,7 @@
display: flex;
flex-direction: column;
row-gap: 20rpx;
margin-bottom: 200rpx;
}
.top_ {

View File

@ -99,11 +99,9 @@
}
],
"subPackages": [
{
"subPackages": [{
"root": "pagesA",
"pages": [
{
"pages": [{
"path": "appointmentAdd/index",
"style": {
"enablePullDownRefresh": true,
@ -199,7 +197,23 @@
"pages": []
}
],
"tabBar": {
"color": "#999999", //
"selectedColor": "#2c78f5", //
"list": [{
"pagePath": "newPages/newIndex/index",
"text": "首页",
"iconPath": "static/imgs/homeone.png",
"selectedIconPath": "static/imgs/hometwo.png"
},
{
"pagePath": "newPages/my/index",
"text": "我的",
"iconPath": "static/imgs/myone.png",
"selectedIconPath": "static/imgs/mytwo.png"
}
]
},
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "uni-app",

View File

@ -184,8 +184,9 @@ export default {
};
},
onLoad(options) {
console.log('options', options)
this.userInfo = getLocalUserInfo()
this.getUserOrderDetails()
// this.getUserOrderDetails()
this.process.subject = options.subject
this.opTenantId = options.tenantId
this.opCourseType = options.courseType
@ -200,6 +201,8 @@ export default {
this.process.userId = this.userInfo.id
this.process.coachId = options.coachId
this.process.userName = options.nickname
this.process.tenantId = options.tenantId
this.getCourseCompleteStatus();
},
onReady() {
//
@ -325,33 +328,35 @@ export default {
});
},
getUserOrderDetails() {
request({
url: '/app-api/small/drive/school-course-order/page',
method: 'GET',
params: {
userId: this.userInfo.id,
paymentStatus: '2',
ifEnd: 0,
},
tenantIdFlag: false
}).then(res => {
this.orderList = res.data.records;
if (res.data.records.length > 0) {
const tempData = res.data.records[0]
if (this.process.subject != 2 && this.process.subject != 3) {
this.process.courseId = tempData.courseId
}
// getUserOrderDetails() {
// request({
// url: '/app-api/small/drive/school-course-order/page',
// method: 'GET',
// params: {
// userId: this.userInfo.id,
// paymentStatus: '2',
// ifEnd: false,
// tenantId: 180,
// },
// tenantIdFlag: false
// }).then(res => {
// console.log('123123', res)
// this.orderList = res.data.records;
// if (res.data.records.length > 0) {
// const tempData = res.data.records[0]
// if (this.process.subject != 2 && this.process.subject != 3) {
// this.process.courseId = tempData.courseId
// }
if (this.process.subject != 2 && this.process.subject != 3) {
this.courseType = tempData.courseType
}
// if (this.process.subject != 2 && this.process.subject != 3) {
// this.courseType = tempData.courseType
// }
this.process.tenantId = tempData.tenantId
this.getCourseCompleteStatus()
}
});
},
// this.process.tenantId = tempData.tenantId
// this.getCourseCompleteStatus()
// }
// });
// },
getCourseCompleteStatus() {
request({
@ -362,10 +367,15 @@ export default {
courseId: this.process.courseId,
}
}).then(res => {
console.log('res123',res)
this.courseCompleteStatusList = res.data.records
if (this.courseCompleteStatusList.length > 0) {
const subject2 = this.courseCompleteStatusList.find(item => item.subject === 2)
const subject3 = this.courseCompleteStatusList.find(item => item.subject === 3)
const subject1Or4 = this.courseCompleteStatusList.find(item => item.subject === 1 || item.subject === 4)
if (subject1Or4) {
this.courseType = subject1Or4.courseType
}
if (subject2?.status === '2' && subject3?.status === '2') {
this.subjectColumns = [['科目一', '科目四']]
@ -383,7 +393,8 @@ export default {
},
saveData() {
if (!this.process.userId || !this.process.subject || !this.process.examScore || !this.process.examStatus || !this.process.examTime) {
console.log('process', this.process)
if (!this.process.userId || !this.process.subject || this.process.examScore === null || this.process.examStatus === null || !this.process.examTime) {
uni.showToast({title: '信息填写不完整', icon: 'none'});
return;
}
@ -396,24 +407,23 @@ export default {
},
saveDataOne() {
if (this.process.subject === 1 && this.courseCompleteStatusList.length <= 0) {
uni.showToast({title: '请联系驾校人员', icon: 'none'});
uni.showToast({title: '请联系驾校人员!', icon: 'none'});
return;
}
if (this.process.subject === 4 && this.courseCompleteStatusList.length <= 0) {
uni.showToast({title: '请联系驾校人员', icon: 'none'});
uni.showToast({title: '请联系驾校人员!', icon: 'none'});
return;
}
const postData = {
...this.process, // process
userName: this.userInfo.nickname,
remark: this.process.remark,
images: this.fileList?.map(item => item.url).join(',') || '',
}
// this.process.images = this.fileList?.map(item => item.url).join(',') || '';
if (!this.process.userId || !this.process.subject || !this.process.examScore || !this.process.examStatus || !this.process.examTime) {
if (!this.process.userId || !this.process.subject || this.process.examScore === null || this.process.examStatus === null || !this.process.examTime) {
uni.showToast({title: '信息填写不完整', icon: 'none'});
return;
}
@ -447,7 +457,6 @@ export default {
fraction: this.process.examScore,
ifPass: this.process.examStatus,
id: this.batchItemId,
userName: this.userInfo.nickname,
remark: this.process.remark,
images: this.fileList?.map(item => item.url).join(',') || '',
}
@ -456,7 +465,7 @@ export default {
this.process.fraction = this.process.examScore
this.process.ifPass = this.process.examStatus
this.process.images = this.fileList?.map(item => item.url).join(',') || ''; */
if (!this.process.userId || !this.process.subject || !this.process.examScore || !this.process.examStatus || !this.process.examTime) {
if (!this.process.userId || !this.process.subject || this.process.examScore === null || this.process.examStatus === null || !this.process.examTime) {
uni.showToast({title: '信息填写不完整', icon: 'none'});
return;
}

View File

@ -15,7 +15,7 @@
<view
class="box_5 flex-col" v-for="(item, index) in examList"
:key="index"
:style="{ height: ((item.subject != 2 && item.subject != 3) || getButtonInfo(item).text === '1') ? '230rpx' : 'auto' }">
:style="{ height: ((item.subject != 2 && item.subject != 3) || (getButtonInfo(item).text === '1' || getButtonInfo(item).text === '2')) ? '230rpx' : 'auto' }">
<view class="block_3 flex-row justify-between">
<view class="text-group_1 flex-col justify-between">
@ -45,9 +45,8 @@
<text class="text_8">考试地址</text>
<text class="text_9">{{ item.addr }}</text>
</view>
<view class="block_5 flex-row" v-if="(item.subject == 2 || item.subject == 3) && getButtonInfo(item).text !== '1'">
<view class="block_5 flex-row" v-if="(item.subject == 2 || item.subject == 3) && (getButtonInfo(item).text !== '1' && getButtonInfo(item).text !== '2')">
<view class="text-wrapper_4 flex-col" @click="handleButtonClick(item)" >
<text class="text_10">{{ getButtonInfo(item).text }}</text>
</view>
</view>
@ -153,13 +152,12 @@ export default {
//
onEnterScoreClick() {
if (this.courseList.length > 0) {
console.log('123123123', this.courseList)
this.pickerColumns = this.courseList.map(item => ({
label: item.courseName,
value: item.courseId
}));
this.pickerShow = true;
} else if (this.courseList.length === 1) {
this.goToScoreEntry(this.courseList[0]);
} else {
this.$u.toast("暂无课程信息");
}
@ -174,7 +172,7 @@ export default {
this.getProcess(selectedCourse.courseId).then(processData => {
if (!processData || processData.length === 0) {
uni.showToast({
title: '请联系驾校负责人',
title: '暂无课程进度信息',
icon: 'none'
});
return;
@ -201,10 +199,14 @@ export default {
//
goToScoreEntry(course) {
console.log('course', course)
/* uni.navigateTo({
url: `/pagesA/examinationAdd/index?courseId=${course.value}&courseType=${course.courseType}&userId=${course.userId}&tenantId=${course.tenantId}&coachId=${course.coachUserId}`
}); */
this.$u.route({
url: '/pagesA/examinationAdd/index',
params: {
courseId: course.value,
courseId: course.courseId,
courseType: course.courseType,
userId: course.userId,
tenantId: course.tenantId,
@ -242,7 +244,10 @@ export default {
userId: this.userInfo.id,
}
}).then(res => {
this.examList = res.data
// this.examList = res.data
this.examList = res.data.sort((a, b) => {
return a.subject - b.subject;
});
// this.getExamTwoList()
this.isTriggered = false
})
@ -267,6 +272,7 @@ export default {
url: '/app-api/small/drive/school-course-order/getCourseByLoginUser',
method: 'GET'
}).then(res => {
console.log('课程', res)
this.courseList = res.data
})
},
@ -318,7 +324,7 @@ export default {
if (item.fraction == null) {
return {text: '成绩录入', type: 'input'}
} else if (!item.ifPass) {
return {text: '考试未通过', type: 'failed'}
return {text: '2', type: 'failed'}
} else if (!item.ifEvaluate) {
return {text: '开始评价', type: 'evaluate'}
}else {

View File

@ -284,6 +284,55 @@ export default {
//
async getListAll() {
this.columnjl = []
let res = await request({
url: '/app-api/dl-drive-school-coach-small/queryCoachByCourseId',
method: 'GET',
params: {
courseId: this.courseId,
},
tenantIdFlag: false
})
console.log('data',res.data)
// 1. subject23
const filteredData = res.data.filter(coach =>
coach.subject === '2' || coach.subject === '3'
);
// 2. - coachId
const uniqueCoaches = [];
const coachIds = new Set(); // 使SetcoachId
filteredData.forEach(coach => {
if (!coachIds.has(coach.coachId)) {
coachIds.add(coach.coachId);
uniqueCoaches.push(coach);
}
});
this.columnjl = [
uniqueCoaches.map(coach => ({
label: coach.coachName,
value: coach
}))
];
if (this.localStaffType === '02' && this.localCoachId) {
console.log('123123',this.localStaffType)
console.log('321321', this.localCoachId)
console.log('coach', uniqueCoaches) // 使
const defaultCoach = uniqueCoaches.find(coach =>
String(coach.coachId) === String(this.localCoachId)
);
console.log('111222333', defaultCoach)
if (defaultCoach) {
this.jlName = defaultCoach.coachName;
this.jlId = defaultCoach.coachId;
}
}
},
/* async getListAll() {
this.columnjl = []
let res = await request({
url: '/app-api/dl-drive-school-coach-small/queryCoachByCourseId',
@ -299,6 +348,16 @@ export default {
const filteredData = res.data.filter(coach =>
coach.subject === '2' || coach.subject === '3'
);
// - coachId
const uniqueCoaches = [];
const coachIds = new Set();
filteredData.forEach(coach => {
if (!coachIds.has(coach.coachId)) {
coachIds.add(coach.coachId);
uniqueCoaches.push(coach);
}
});
this.columnjl = [
filteredData.map(coach => ({
@ -320,25 +379,8 @@ export default {
this.jlId = defaultCoach.coachId;
}
}
},
/* async getListAll() {
this.columnjl = []
let res = await request({
url: '/app-api/dl-drive-school-coach-small/list',
method: 'GET',
params: {
tenantId: this.tenantId,
},
tenantIdFlag: false
})
this.columnjl = [
res.data.map(coach => ({
label: coach.name,
value: coach
}))
];
}, */
getsexindex(index) {
this.sex = index
},
@ -353,8 +395,9 @@ export default {
jlconfirm(e) {
console.log('e', e)
this.jlName = e.value[0].label; //
this.jlId = e.value[0].value.userId; // ID
this.jlId = e.value[0].value.coachId; // ID
this.showjl = false;
console.log('jlId',this.jlId)
},
jlcancel() {
this.showjl = false