This commit is contained in:
shijing 2023-05-16 16:29:20 +08:00
parent d8802c0ef7
commit f6d4a707a4
63 changed files with 511 additions and 183 deletions

6
app.js
View File

@ -6,7 +6,6 @@ App({
var logs = wx.getStorageSync('logs') || []
logs.unshift(Date.now())
wx.setStorageSync('logs', logs)
// 登录
wx.showLoading({
title: '加载中...',
@ -30,6 +29,10 @@ App({
url: '/pages/login/login',
})
}
if(this.callBackUserinfo){
// debugger;
this.callBackUserinfo(res.data.userinfo);
}
}
}).then(res=>{
api.request('/crm/consumer/process/', 'GET').then(res => {
@ -89,6 +92,7 @@ App({
// });
},
globalData: {
session_key:'',
userInfo: {},
userinfo: {}, // 服务器传回的消费者信息
host: 'https://qw.ctc-zc.com/api',

View File

@ -10,6 +10,7 @@
"pages/login/registe/registe",
"pages/login/login",
"pages/lianxi/index",
"pages/lianxi/search",
"pages/subject/index",
"pages/lianxi/main",
"pages/about/about",
@ -74,9 +75,9 @@
},
{
"pagePath": "pages/material/index",
"iconPath": "images/ziyuan.png",
"selectedIconPath": "images/ziyuan1.png",
"text": "资料下载"
"iconPath": "images/file.png",
"selectedIconPath": "images/file1.png",
"text": "学习资料"
},
{
"pagePath": "pages/article/index",
@ -86,8 +87,8 @@
},
{
"pagePath": "pages/my/index",
"iconPath": "images/my.png",
"selectedIconPath": "images/my1.png",
"iconPath": "images/user.png",
"selectedIconPath": "images/user1.png",
"text": "个人中心"
}
]

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

BIN
images/file.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

BIN
images/file1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.0 KiB

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 658 B

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

BIN
images/user.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.4 KiB

BIN
images/user1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 693 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

View File

@ -1,9 +1,9 @@
<view class="page">
<view class="head">{{count}}条资讯</view>
<view class="weui-cells weui-cells_after-title" style="margin-top:0px;padding: 20rpx;">
<view class="weui-cells weui-cells_after-title" style="margin-top:0px;padding: 20rpx;background:none;">
<block wx:for="{{results}}" wx:key="unique">
<navigator url="detail?id={{item.id}}" style="margin-bottom: 20rpx;box-shadow: 0 0 13rpx 8rpx #f7f7f7;" hover-class="weui-cell_active">
<navigator url="detail?id={{item.id}}" style="margin-bottom: 20rpx;box-shadow: 0 0 13rpx 8rpx #f7f7f7;background: #ffffff;" hover-class="weui-cell_active">
<view class="weui-media-box__bd weui-media-box__bd_in-appmsg" style="padding: 20rpx;border: 1rpx solid #f7f7f7;border-radius: 10rpx;">
<view class="weui-media-box__title">
<text wx:if="{{item.is_top}}" style="color:red;font-size: 24rpx;border: 1rpx solid red;border-radius: 6rpx;display: inline-block;padding: 2rpx 10rpx;">置顶 </text>

View File

@ -1,3 +1,4 @@
.head{
color:#fff;
background-color: #438af4;

View File

@ -3,7 +3,7 @@
题量: {{tm_index+1}}/{{tmtotal}}
</view>
<scroll-view scroll-y="true" style="height: {{scrollHeight}}px;">
<view class="weui-article">
<view class="weui-article" style="background: #ffffff;">
<view class="weui-article__h2">{{tm_index+1}}.
<span class="txlabel">{{tm_current.type}}</span>
<span style="color:gray"> {{tm_current.questioncat_name}}</span>
@ -46,7 +46,7 @@
</label>
</checkbox-group>
</view>
<view class="weui-article" wx:if="{{answerP}}">
<view class="weui-article" style="background: #ffffff;" wx:if="{{answerP}}">
<view class="weui-article__h2" wx:if="{{is_right}}" style="color:green;font-weight:bold">回答正确!</view>
<view class="weui-article__h2" wx:else style="color:red;font-weight:bold">回答有误!</view>
<view class="weui-article__h2">正确答案是{{tm_current.right}},你的答案是{{tm_current.user_answer}}</view>

View File

@ -27,5 +27,4 @@
font-weight: 500;
font-size: 30rpx;
padding: 5rpx 10rpx;
}
}

View File

@ -2,10 +2,6 @@
const api = require("../../utils/request.js");
var util = require('../../utils/util.js')
Page({
/**
* 页面的初始数据
*/
data: {
ctms: [],
tm_index: 0,
@ -17,7 +13,7 @@ Page({
domain:getApp().globalData.mediahost,
},
radioChange: function (e) {
var that = this
var that = this;
that.data.currentTm['user_answer'] = e.detail.value
that.data.ctms[that.data.tm_index] = that.data.currentTm
that.showAnswer()
@ -28,9 +24,6 @@ Page({
that.data.ctms[that.data.tm_index] = that.data.currentTm
},
/**
* 生命周期函数--监听页面加载
*/
onLoad: function () {
var that = this
try {
@ -68,8 +61,7 @@ Page({
})
}else{
that.showTm(that.data.tm_index)
}
}
},
onUnload: function () {
try {
@ -77,20 +69,6 @@ Page({
} catch (e) { }
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
showTm: function (index) {
var that = this
var currentTm = that.data.ctms[index]
@ -158,11 +136,19 @@ Page({
})
},
showOptions: function () {
let currentTm = this.data.currentTm
let currentTm = this.data.currentTm;
// debugger;
console.log(currentTm)
let options = []
for (let key in currentTm.options) {
let option = {}
option.key = key
option.key = key;
if(currentTm.right==option.key){
option.right = true;
}else{
option.right = false;
}
option.value = '<p>' + currentTm.options[key].toString() + '</p>'
if (currentTm.user_answer && this.data.moShi == '看题模式') {
if (key == currentTm.user_answer || currentTm.user_answer.indexOf(key) != -1) {

View File

@ -18,7 +18,7 @@
</view>
</view>
<scroll-view scroll-y="true" style="height: {{scrollHeight}}px;">
<view class="weui-article">
<view class="weui-article" style="background: #ffffff;">
<view class="weui-article__h2">{{tm_index+1}}.
<span class="txlabel">{{currentTm.type}}</span>
<span style="color:gray"> {{currentTm.questioncat_name}}</span>
@ -32,10 +32,16 @@
<radio-group class="radio-group" bindchange="radioChange" wx:if="{{(currentTm.type=='单选' ||currentTm.type=='判断')}}">
<label class="weui-cell weui-cell_active weui-check__label" wx:for="{{options}}" wx:key="key">
<view class="weui-cell__bd">
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
<view style="font-weight:bold;color:green" wx:if="{{ !isTest && item.right}}">
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
</view>
<view wx:else>
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
</view>
</view>
<view class="weui-cell__ft">
<view class="weui-cell__ft" wx:if="{{isTest}}">
<radio class="weui-check" value="{{item.key}}" checked="{{item.checked}}" />
<i class="weui-icon-checked"></i>
</view>
@ -45,22 +51,27 @@
<view class="weui-cells weui-cells_checkbox">
<checkbox-group bindchange="checkboxChange" wx:if="{{currentTm.type=='多选'}}">
<label class="weui-cell weui-cell_active weui-check__label" wx:for="{{options}}" wx:key="key">
<view class="weui-cell__bd">
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
<view style="font-weight:bold;color:green" wx:if="{{ !isTest && item.right}}">
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
</view>
<view wx:else>
<view style="float:left;width:10%">{{item.key}}:</view>
<view style="float:left;width:90%"><mp-html content="{{item.value}}" domain="{{domain}}"/></view>
</view>
</view>
<view class="weui-cell__hd">
<view class="weui-cell__hd" wx:if="{{isTest}}">
<checkbox class="weui-check" value="{{item.key}}" checked="{{item.checked}}"/>
<i class="weui-icon-checked"></i>
</view>
</label>
</checkbox-group>
</view>
<view class="weui-article" wx:if="{{answerP||!isTest}}">
<view class="weui-article__h2" wx:if="{{isright}}" style="color:green;font-weight:bold">回答正确!</view>
<view class="weui-article__h2" wx:else style="color:red;font-weight:bold">回答有误!</view>
<view class="weui-article__h2">正确答案是{{currentTm.right}},你的答案是{{currentTm.user_answer}}</view>
<view class="weui-article" style="background: #ffffff;margin-top: 10rpx;" wx:if="{{answerP||!isTest}}">
<view class="weui-article__h2" wx:if="{{isright&&isTest}}" style="color:green;font-weight:bold">回答正确!</view>
<view class="weui-article__h2" wx:elif="{{isTest}}" style="color:red;font-weight:bold">回答有误!</view>
<view class="weui-article__h2">正确答案是{{currentTm.right}}<span wx:if="{{isTest}}" >,你的答案是{{currentTm.user_answer}}</span></view>
<view class="weui-article__title" style="font-size: 30rpx;">
<span style="color:#438af4;font-weight: bold;font-size: 34rpx;">解析: </span>
<span wx:if="{{tm_current.question.resolution}}">{{tm_current.question.resolution}}</span>

View File

@ -7,8 +7,8 @@
</view>
</view>
<view>
<view class="weui-cells__title">报考信息</view>
<view class="weui-cells weui-cells_form">
<view class="weui-cells__title">报考信息</view>
<view class="weui-cell weui-cell_active">
<view class="weui-cell__hd"><label class="weui-label">姓名</label></view>
<view class="weui-cell__bd">

View File

@ -76,13 +76,12 @@ Page({
}
return cat
},
/**
* 生命周期函数--监听页面隐藏
*/
onHide: function () {
},
searchItem(){
wx.navigateTo({
url: 'search',
})
},
/**
* 生命周期函数--监听页面卸载
*/

View File

@ -1,6 +1,7 @@
<!--pages/lianxi/index.wxml-->
<view class="page">
<view style="height:10px"></view>
<view class="searchBtn" bindtap="searchItem">搜题</view>
<view style="color:#438af4;font-weight:bold;text-align:center">{{workscopeName}}</view>
<block wx:for="{{questioncatData}}" wx:key="unique">
<view class="weui-panel weui-panel_access">

View File

@ -24,4 +24,13 @@
top: 50%;
right: 10rpx;
transform: translateY(-50%);
}
.searchBtn{
position: absolute;
right: 20rpx;
background: #438af4;
color: #ffffff;
font-size: 28rpx;
padding: 6rpx 30rpx;
border-radius: 8rpx;
}

View File

@ -27,6 +27,7 @@
</view>
<view wx:if="{{tm_current.img}}" style="text-align:center"><image src="{{tm_current.img}}" mode="aspectFit"></image></view>
</view>
<!-- 单选 判断 -->
<view class="weui-cells weui-cells_radio">
<radio-group class="radio-group" bindchange="radioChange" wx:if="{{(tm_current.type=='单选' ||tm_current.type=='判断')}}">

66
pages/lianxi/search.js Normal file
View File

@ -0,0 +1,66 @@
// pages/lianxi/search.js
const api = require("../../utils/request.js");
Page({
data: {
listData: [],
isLoad: true,
query:{
page:1,
limit:20,
search:''
}
},
onLoad: function () {
if (getApp().globalData.userinfo.workscope) {
} else {
wx.switchTab({
url: '/pages/main/main',
})
}
},
onShow: function () {
this.setData({
listData:[],
['query.search']:''
})
},
cancelSearch:function(){
this.setData({
listData:[],
['query.search']:''
})
},
search: function (e) {
// debugger;
console.log(e.detail.value)
this.setData({
['query.search']:e.detail.value
})
api.request('/question/question/', 'GET', this.data.query).then(res => {
if(res.data && res.data.results){
this.setData({
listData:res.data.results
})
console.log(res.data.results)
}else{
}
})
},
goDetail: function (e) {
console.log(e.currentTarget.dataset.id)
wx.navigateTo({
url: `/pages/question/detail?id=${e.currentTarget.dataset.id}`,
})
},
/**
* 页面相关事件处理函数--监听用户下拉动作
*/
onPullDownRefresh: function () {
},
/**
* 页面上拉触底事件的处理函数
*/
onReachBottom: function () {
},
})

4
pages/lianxi/search.json Normal file
View File

@ -0,0 +1,4 @@
{
"usingComponents": {},
"navigationBarTitleText": "题目搜索"
}

14
pages/lianxi/search.wxml Normal file
View File

@ -0,0 +1,14 @@
<view class="page">
<view class="weui-flex searchWrap">
<input class="weui-input searchInput" type="text" value="{{query.search}}" maxlength="10" bindinput="search" placeholder="搜索题目名称"/>
<icon class="weui-icon-clear" style="position: absolute;right: 50rpx;width: 70rpx;height: 70rpx;z-index: 100;" bindtap="cancelSearch"></icon>
</view>
<view class="lists">
<view wx:if="{{listData.length>0}}">
<view class="listItem" wx:for="{{listData}}" bindtap="goDetail" data-id="{{item.id}}">
{{item.name}}
</view>
</view>
<view wx:else style="text-align: center;"> 暂无数据</view>
</view>
</view>

46
pages/lianxi/search.wxss Normal file
View File

@ -0,0 +1,46 @@
.page{
height:100%;
box-sizing: border-box;
}
.searchWrap {
padding: 20rpx 40rpx;
display: flex;
position: fixed;
top: 0;
width: 100%;
z-index: 100;
box-sizing: border-box;
background: #efefef;
}
.searchInput{
height: 70rpx;
line-height: 70rpx;
padding: 10rpx 20rpx;
box-sizing: border-box;
border-radius: 35rpx;
background-color: #ffffff;
}
.searchBtn{
flex-shrink:0;
width: 120rpx;
text-align: center;
height: 70rpx;
line-height: 70rpx;
}
.lists{
height: 100%;
width: 100%;
overflow-y: scroll;
padding-top: 120rpx;
background: #ffffff;
box-sizing: border-box;
padding: 120rpx 20rpx 20rpx 20rpx;
}
.listItem{
border-bottom: 1rpx solid #dddddd;
line-height: 80rpx;
overflow:hidden;
white-space: nowrap;
text-overflow: ellipsis;
-o-text-overflow:ellipsis;
}

View File

@ -20,8 +20,8 @@ Page({
onShow: function () {
let that = this;
let userinfo = wx.getStorageSync('userinfo');
debugger;
console.log('registe:'+userinfo);
// debugger;
// console.log('registe:'+userinfo);
that.setData({
userinfo: userinfo
})
@ -111,14 +111,14 @@ Page({
},
tijiao(){
let userinfo = this.data.userinfo;
debugger;
if(userinfo.name!==''&&userinfo.name!==null&&userinfo.name!=='未知'){
api.request('/crm/consumer/improve/', 'POST', userinfo).then(res => {
debugger;
console.log('信息补全成功'+res)
// debugger;
// console.log('信息补全成功'+res)
wx.setStorageSync('userinfo', userinfo);
let usIn = wx.getStorageSync('userinfo');
console.log(usIn)
app.globalData.userinfo = userinfo;
// let usIn = wx.getStorageSync('userinfo');
// console.log(usIn)
wx.switchTab({
url: '/pages/main/main',
})

View File

@ -22,8 +22,8 @@ Page({
userinfo:{},
msgList: [
{ title: "欢迎使用气味培训平台" },
{ title: "欢迎使用气味培训平台" },
{ title: "欢迎使用气味培训平台" },
{ title: "培训报名、考证发证请关注新闻咨询" },
{ title: "注册用户有3次自助模考机会" },
]
},
imgH: function (e) {
@ -40,11 +40,25 @@ Page({
*/
onLoad: function (options) {
let that = this;
let userinfo = wx.getStorageSync('userinfo');
that.setData({
userinfo: userinfo,
search: that.search.bind(that)
})
if(app.globalData.userinfo&&app.globalData.userinfo.name!==undefined){
let userinfo = app.globalData.userinfo;
that.setData({
userinfo: userinfo,
search: that.search.bind(that)
})
}else{
// debugger;
app.callBackUserinfo=res=>{
if(app.globalData.userinfo&&app.globalData.userinfo.name!==undefined){
let userinfo = app.globalData.userinfo;
that.setData({
userinfo: userinfo,
search: that.search.bind(that)
})
}
}
}
api.request('/examtest/banner/', 'GET').then(res => {
if(res.data.length>0){
let images = []
@ -56,36 +70,37 @@ Page({
})
}
})
},
/**
* 生命周期函数--监听页面显示
*/
onShow: function () {
let that = this;
// let that = this;
this.getNum();
let userinfo = wx.getStorageSync('userinfo');
that.setData({
userinfo: userinfo
})
// let userinfo = wx.getStorageSync('userinfo');
// that.setData({
// userinfo: userinfo
// })
//获取用户信息判断返回信息是否有name如果有不做处理继续渲染页面如果没有则跳到信息完善页面
if(userinfo.role_name == '游客'||(userinfo.name!==''&&userinfo.name!==null&&userinfo.name!=='未知'&&userinfo.name!==undefined)){
// if(userinfo.role_name == '游客'||(userinfo.name!==''&&userinfo.name!==null&&userinfo.name!=='未知'&&userinfo.name!==undefined)){
}else{
wx.redirectTo({
url: '/pages/login/registe/registe',
})
}
Api.getBanners().then(res=>{
if(res.data.length>0){
let images = []
for(var i=0;i<res.data.length;i++){
images.push(app.globalData.mediahost + res.data[i].path)
}
that.setData({
background: images
})
}
});
// }else{
// wx.redirectTo({
// url: '/pages/login/registe/registe',
// })
// }
// Api.getBanners().then(res=>{
// if(res.data.length>0){
// let images = []
// for(var i=0;i<res.data.length;i++){
// images.push(app.globalData.mediahost + res.data[i].path)
// }
// that.setData({
// background: images
// })
// }
// });
},
/** 页面相关事件处理函数--监听用户下拉动作 */
onPullDownRefresh: function () {
@ -116,9 +131,21 @@ Page({
},
//业务介绍
goIntroduction(){
wx.navigateTo({
url: '/pages/main/Introduction/Introduction',
api.request('/cms/article/', 'GET', {page: 1,limit: 10}).then(res => {
let results = res.data.results;
let id = null;
for(let i=0;i<results.length;i++){
if(results[i].title=='国检集团气味评价板块介绍'){
id=results[i].id;
wx.navigateTo({
url: '/pages/article/detail?id='+id,
})
}
}
})
// wx.navigateTo({
// url: '/pages/article/detail?id=1',
// })
},
//成绩查询
goScore(){
@ -162,7 +189,7 @@ Page({
success(res) {
if (res.confirm) {
wx.navigateTo({
url: '/pages/article/detail?id=6',
url: '/pages/article/detail?id=3',
})
}
}

View File

@ -21,22 +21,34 @@
</block>
</swiper>
<!-- 快捷按钮 -->
<view class="listItemsWrap">
<view class="" style="margin-top: 20rpx;">
<a class="topItem" bindtap="goIntroduction">
<image class="topItemImg" src="/images/yewu.png" mode="widthFix"></image>
<view class="topItemText">业务介绍</view>
<view class="iconWrap" style="background: #fdbf46;">
<i class="iconfont icon-gonggao09" style="font-size: 70rpx;color: #ffffff;"></i>
</view>
<!-- <image class="topItemImg" src="/images/yewu.png" mode="widthFix"></image> -->
<view class="topItemText topItemTextBlod">业务介绍</view>
</a>
<a class="topItem" bindtap="goFile">
<image class="topItemImg" src="/images/ziyuan1.png" mode="widthFix"></image>
<view class="topItemText">资料下载</view>
<view class="iconWrap" style="background: #fed6e1;box-sizing: border-box;padding-left: 8rpx;">
<i class="iconfont icon-24gf-folderOpen" style="font-size: 75rpx;color: #ffffff;"></i>
</view>
<!-- <image class="topItemImg" src="/images/ziyuan1.png" mode="widthFix"></image> -->
<view class="topItemText topItemTextBlod">学习资料</view>
</a>
<a class="topItem" bindtap="goCertificate">
<image class="topItemImg" src="/images/zhengshuSearch.png" mode="widthFix"></image>
<view class="topItemText">证书查询</view>
<view class="iconWrap" style="background: #1ba37b;">
<i class="iconfont icon-fabuzhengshu" style="font-size: 77rpx;color: #ffffff;"></i>
</view>
<!-- <image class="topItemImg" src="/images/zhengshuSearch.png" mode="widthFix"></image> -->
<view class="topItemText topItemTextBlod">证书查询</view>
</a>
<a class="topItem" bindtap="goExam">
<image class="topItemImg" src="/images/zizhukaoshi.png" mode="widthFix"></image>
<view class="topItemText">参加考试</view>
<view class="iconWrap" style="background: #49c9e0;box-sizing: border-box;padding-top: 8rpx;">
<i class="iconfont icon-a-kaoshi5" style="font-size: 65rpx;color: #ffffff;"></i>
</view>
<!-- <image class="topItemImg" src="/images/zizhukaoshi.png" mode="widthFix"></image> -->
<view class="topItemText topItemTextBlod">参加考试</view>
</a>
</view>
<!-- <a class="topItem" bindtap="toThreshold">
@ -50,34 +62,42 @@
<!-- -->
<view class="listItemsWrap" >
<view class="listItemsTitle"> 人员考试</view>
<!-- <view class="listItemsTitle"> 人员考试</view> -->
<view wx:if="{{userinfo && userinfo.name}}">
<a class="topItem" bindtap="goLianxi">
<i class="iconfont icon-tiku" style="font-size: 70rpx;color: #1e89ef;"></i>
<!-- <image class="topItemImg" src="/images/lianxii.png" mode="widthFix"></image> -->
<view class="topItemText">题库练习</view>
</a>
<a class="topItem" bindtap="goYati">
<image class="topItemImg" src="/images/chengjichaxun.png" mode="widthFix"></image>
<i class="iconfont icon-kaoshi" style="font-size: 70rpx;color: #1e89ef;position: relative;top: -2rpx;"></i>
<!-- <image class="topItemImg" src="/images/chengjichaxun.png" mode="widthFix"></image> -->
<view class="topItemText">押卷模考</view>
</a>
<a class="topItem" bindtap="goMoni">
<image class="topItemImg" src="/images/yajuankaoshi.png" mode="widthFix"></image>
<i class="iconfont icon-a-kaoshi2" style="font-size: 72rpx;color: #1e89ef;position: relative;top: 1rpx;"></i>
<!-- <image class="topItemImg" src="/images/yajuankaoshi.png" mode="widthFix"></image> -->
<view class="topItemText">自助模考</view>
</a>
<a class="topItem" bindtap="goLianxi">
<image class="topItemImg" src="/images/lianxii.png" mode="widthFix"></image>
<view class="topItemText">题库练习</view>
</a>
<a class="topItem" bindtap="goCuoti">
<image class="topItemImg" src="/images/cuotiji2.png" mode="widthFix"></image>
<a class="topItem" bindtap="goCuoti" style="position: relative;">
<i class="iconfont icon-a-zuofei3" style="font-size: 70rpx;color: #1e89ef;"></i>
<!-- <image class="topItemImg" src="/images/cuotiji2.png" mode="widthFix"></image> -->
<view class="topItemText">错题集</view>
<view class="weui-badge" style="position: absolute;top: 1em;right: 1em;" wx:if="{{wrongnum!=0}}">{{wrongnum}}</view>
</a>
<a class="topItem" bindtap="goShoucang">
<image class="topItemImg" src="/images/shoucang.png" mode="widthFix"></image>
<i class="iconfont icon-guanzhu06" style="font-size: 70rpx;color: #1e89ef;"></i>
<!-- <image class="topItemImg" src="/images/shoucang.png" mode="widthFix"></image> -->
<view class="topItemText">收藏集</view>
</a>
<a class="topItem" bindtap="testList">
<image class="topItemImg" src="/images/kaoshijilu.png" mode="widthFix"></image>
<i class="iconfont icon-lishijilu-copy" style="font-size: 70rpx;color: #1e89ef;"></i>
<!-- <image class="topItemImg" src="/images/kaoshijilu.png" mode="widthFix"></image> -->
<view class="topItemText">考试记录</view>
</a>
<a class="topItem" bindtap="goVideo">
<image class="topItemImg" src="/images/video.png" mode="widthFix"></image>
<i class="iconfont icon-shipin" style="font-size: 70rpx;color: #1e89ef;"></i>
<!-- <image class="topItemImg" src="/images/video.png" mode="widthFix"></image> -->
<view class="topItemText fontAli">视频课程</view>
</a>
</view>

View File

@ -1,3 +1,6 @@
page{
background: #ffffff;
}
.page{
padding: 20rpx 30rpx;
}
@ -26,6 +29,10 @@
line-height: 40rpx;
margin-bottom: 10rpx;
color: #666666;
/* font-weight: 600; */
}
.topItemTextBlod{
font-weight: 600;
}
.searchWrap .weui-search-bar{
/* background-color: #438af4; */
@ -59,6 +66,14 @@
white-space: nowrap;
background: #f7f7f7;
}
.iconWrap{
width: 120rpx;
height: 120rpx;
border-radius: 70rpx;
background: #49c9e0;
margin: auto;
margin-bottom: 8rpx;
}
.listItemsWrap{
/* width: 96%; */
margin: 10rpx auto;

View File

@ -7,10 +7,9 @@ Page({
data: {
search:'',
active:0,
results: [
// {id:34232,name:'test',path:'',description:'test'},
// {id:34232,name:'test',path:'',description:'test'},
],
results: [],
infoShow:false,
infoItem:{},
cateData:['标准文件','文献','指南','未分类'],
query: {
page: 1,
@ -54,7 +53,13 @@ Page({
},
itemClick(e){
console.log(e.currentTarget.dataset)
let dataset = e.currentTarget.dataset;
this.setData({
infoItem:dataset,
infoShow:true
})
},
getList: function () {
var that = this
api.request('/cms/material/', 'GET', that.data.query).then(res => {
@ -109,22 +114,28 @@ Page({
that.data.query.page = that.data.query.page + 1
that.getList()
}
},
closeInfo(){
this.setData({
infoShow:false
})
},
downFile:function(e){
var that = this
wx.showLoading({
title: '正在下载...',
})
api.request('/cms/material/'+e.currentTarget.dataset.id+'/down/', 'GET').then(res => {
that.data.results[e.currentTarget.dataset.index].down_count = res.data.down_count;
let infoData = that.data.infoItem;
api.request('/cms/material/'+infoData.id+'/down/', 'GET').then(res => {
that.data.results[infoData.index].down_count = res.data.down_count;
let hostUrl = getApp().globalData.host.slice(0,-4);
var fileurl = hostUrl + res.data.path;
wx.downloadFile({
url: fileurl,
success(res) {
that.setData({
infoShow:false
})
wx.showLoading({
title: '成功,正在打开...',
})

View File

@ -3,7 +3,7 @@
"mp-searchbar": "weui-miniprogram/searchbar/searchbar",
"mp-halfScreenDialog": "weui-miniprogram/half-screen-dialog/half-screen-dialog"
},
"navigationBarTitleText": "资源下载",
"navigationBarTitleText": "学习资料",
"enablePullDownRefresh": true,
"onReachBottomDistance": 50
}

View File

@ -16,11 +16,11 @@
type: type,
}
</wxs>
<view class="page" style="height:calc(100%-112rpx);box-sizing: border-box;">
<view class="weui-flex searchWrap" style="background-color: #ffffff;">
<view class="page" style="height:100%;box-sizing: border-box;">
<!-- <view class="weui-flex searchWrap" style="background-color: #ffffff;">
<input class="weui-input searchInput" maxlength="10" bindinput="bindKeyInput" placeholder="搜索文档名称"/>
</view>
<view class="materialWrap" style="height:calc(100%-210rpx);">
</view> -->
<view class="materialWrap" style="height:100%;background: #ffffff;">
<view class="tabWrap">
<view wx:for="{{cateData}}" class="tabItem {{ item==query.cate?'activeType':'' }}" bindtap="typeChange" data-type="{{item}}">
<view class="activeLine" wx:if="{{item==query.cate}}"></view>{{item}}
@ -28,7 +28,7 @@
</view>
<view class="listWrap" style="width: calc(100%-200rpx);">
<block wx:for="{{results}}" wx:key="unique">
<view class="listItemWrap" bindtap="itemClick" data-id="{{item.id}}" data-name="{{item.name}}">
<view class="listItemWrap" bindtap="itemClick" data-description="{{item.description}}" data-name="{{item.name}}" data-downCount="{{item.down_count}}" data-type="{{item.type}}" data-cate="{{item.cate}}" data-id="{{item.id}}" data-index="{{index}}">
<view class="listItemImg">
<image wx:if="{{activeImage.type(item.path)=='pdf'}}" mode="widthFix" class="itemImg" src="/images/pdf.svg"></image>
<image wx:elif="{{activeImage.type(item.path)=='word'}}" mode="widthFix" class=itemImg" src="/images/word.svg"></image>
@ -43,11 +43,26 @@
下载量:<text style="color:darkblue;font-weight:bold">{{item.down_count}}</text>
</view>
</view>
</view>
<a class="downloadBtn" bindtap="downFile" data-id="{{item.id}}" data-index="{{index}}">下载</a>
<!-- <a class="downloadBtn" bindtap="downFile" data-id="{{item.id}}" data-index="{{index}}">下载</a> -->
</view>
</block>
</view>
</view>
</view>
</view>
<view class="infoViewWrap" wx:if="{{infoShow}}" bindtap="closeView">
<view class="infoView" style="text-align: center;">
<!-- <view style="text-align: center;">《{{infoItem.name}}》</view> -->
<view class="infoItem" wx:if="{{infoItem.name!==null}}">《{{infoItem.name}}》</view>
<view class="infoItem" wx:if="{{infoItem.description!==null}}"><view class="itemLeft">{{infoItem.type}}</view>{{infoItem.description}}</view>
<view class="infoItem" wx:if="{{infoItem.cate!==null}}"><view class="itemLeft">资料分类</view>{{infoItem.cate}}</view>
<view class="infoItem" wx:if="{{infoItem.downcount!==null}}"><view class="itemLeft">下载次数:</view>{{infoItem.downcount}}</view>
<a class="downloadBtn" bindtap="downFile" data-id="{{item.id}}" data-index="{{index}}">下载</a>
<view class="closeIcon" bindtap="closeInfo">
<view class="iconImg">
<icon class="weui-icon-close-thin"></icon>
</view>
</view>
</view>
</view>

View File

@ -1,28 +1,12 @@
.page{
padding-top: 105rpx;
padding-top: 1rpx;
}
.head{
color:#fff;
background-color: cornflowerblue;
text-align: center;
}
.searchWrap {
padding: 20rpx 40rpx;
display: flex;
border-bottom: 2rpx solid #eeeeee;
position: fixed;
top: 0;
width: 100%;
z-index: 100;
}
.searchInput{
height: 70rpx;
line-height: 70rpx;
padding: 10rpx 20rpx;
box-sizing: border-box;
border-radius: 35rpx;
background-color: #f6f6f6;
}
.searchBtn{
flex-shrink:0;
width: 120rpx;
@ -50,15 +34,17 @@
}
.tabWrap{
float: left;
height: 100%;
width: 200rpx;
border-right: 1rpx solid #eeeeee;
position: fixed;
top: 90rpx;
background: #ffffff;
}
.listWrap{
overflow: hidden;
margin-top:0px;
padding-left: 200rpx;
background: #ffffff;
}
.listItemWrap{
position: relative;
@ -77,42 +63,65 @@
border-bottom: 2rpx solid #eeeeee;
}
.downloadBtn{
position: absolute;
right: 10px;
width: 90rpx;
display: inline-block;
background: #438afc;
color: #ffffff;
text-align: center;
border-radius: 10rpx;
font-size: 24rpx;
bottom: 0;
transform: translateY(-50%);
padding: 10rpx 40rpx;
margin-top: 40rpx;
}
.weui-media-box__thumb{
width: 60rpx;
height: 80rpx;
}
.infoViewWrap{
position: fixed;
top: 0;
left: 0;
z-index: 99;
width: 100%;
height: 100%;
background: rgba(255,255,255,.5);
}
.infoView{
width: 90%;
padding: 50rpx 40rpx;
top: 200rpx;
position: absolute;
left: 5%;
border-radius: 20rpx;
box-sizing: border-box;
background-color: #ffffff;
box-shadow: 0 0 25rpx 5rpx #dddddd;
}
.infoItem{
font-size: 30rpx;
color: #666666;
padding-top: 30rpx;
}
.itemLeft{
width: 160rpx;
display: inline-block;
}
.closeIcon{
position: relative;
top: 150rpx;
border-radius: 38rpx;
}
.iconImg{
width: 50rpx;
height: 50rpx;
margin: auto;
line-height: 44rpx;
border-radius: 28rpx;
background-color: #ffffff;
border: 4rpx solid #666666;
box-shadow: 0 0 25rpx 10rpx #ffffff;
}

View File

@ -2,7 +2,7 @@
题目详情
</view>
<scroll-view scroll-y="true" style="height: {{scrollHeight}}px;">
<view class="weui-article">
<view class="weui-article" style="background: #ffffff;">
<view class="weui-article__h2">
<span class="txlabel">{{tm_current.type}}</span>
<span style="color:gray"> {{tm_current.questioncat_name}}</span>
@ -43,7 +43,7 @@
</label>
</checkbox-group>
</view>
<view class="weui-article" wx:if="{{answerP}}">
<view class="weui-article" wx:if="{{answerP}}" style="background: #ffffff;">
<view class="weui-article__h2" wx:if="{{is_right}}" style="color:green;font-weight:bold">回答正确!</view>
<view class="weui-article__h2" wx:else style="color:red;font-weight:bold">回答有误!</view>
<view class="weui-article__h2">正确答案是{{tm_current.right}},你的答案是{{tm_current.user_answer}}</view>
@ -55,5 +55,5 @@
</view>
</scroll-view>
<view class="btns">
<a class="weui-btn weui-btn_primary" bindtap="showAnswer">查看答案</a>
<a class="weui-btn weui-btn_primary" bindtap="showAnswer" style="background: #438af4;">查看答案</a>
</view>

View File

@ -1 +1,6 @@
/* pages/workscope/index.wxss */
/* pages/workscope/index.wxss */
.page{
padding: 20rpx;
background: #ffffff;
border-top: 1rpx solid #eeeeee;
}

View File

@ -0,0 +1,83 @@
@font-face {
font-family: 'iconfont'; /* Project id 4062099 */
src: url('//at.alicdn.com/t/c/font_4062099_ftu74nseh1i.woff2?t=1683856498491') format('woff2'),
url('//at.alicdn.com/t/c/font_4062099_ftu74nseh1i.woff?t=1683856498491') format('woff'),
url('//at.alicdn.com/t/c/font_4062099_ftu74nseh1i.ttf?t=1683856498491') format('truetype');
}
.iconfont {
font-family: "iconfont" !important;
font-size: 16px;
font-style: normal;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.icon-24gf-folderOpen:before {
content: "\eac5";
}
.icon-kaoshi:before {
content: "\e60d";
}
.icon-lishijilu-copy:before {
content: "\e620";
}
.icon-tiku:before {
content: "\e69b";
}
.icon-shipin:before {
content: "\e622";
}
.icon-fabuzhengshu:before {
content: "\e611";
}
.icon-wenjianjia:before {
content: "\e69e";
}
.icon-renzhengshu:before {
content: "\e6a3";
}
.icon-baifenkaohe:before {
content: "\ea04";
}
.icon-a-kaoshi2:before {
content: "\eb0d";
}
.icon-a-xiazai7:before {
content: "\ea68";
}
.icon-guanzhu06:before {
content: "\ea6b";
}
.icon-a-shoucang2:before {
content: "\ea6c";
}
.icon-a-zuofei3:before {
content: "\ea70";
}
.icon-xinwen09:before {
content: "\ea78";
}
.icon-gonggao09:before {
content: "\ea7a";
}
.icon-a-kaoshi5:before {
content: "\eb0a";
}