Merge branch 'wyd_branch' into develop

# Conflicts:
#	doc/files/page_1/data.js
#	doc/files/page_1/styles.css
#	doc/page_1.html
#	doc/界面图.rp
#	doc/软件工程 用例描述(1).docx
develop
王壕 2 years ago
commit 7a82f2c89b

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 50 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 24 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 49 KiB

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,135 @@
// const app = getApp()
Page({
data: {
realName: '',
number: '',
isDisabled: true //表示页面加载完成时disabled为禁用状态
},
onLoad: function(options) {
let number = options.number
let realName = options.realName
this.setData({
number,
realName
})
},
save: function() {
let realName = this.data.realName;
let number=this.data.number
let skey = wx.getStorageSync('skey')
wx.request({
url: 'http://192.168.58.210:81/save',
method: 'GET',
data: {
skey:skey,
number:number,
realName:realName
},
success: function(res :any) {
if (res.data.error == true) {
wx.showToast({
title: res.data.message,
icon: 'none',
duration: 2000
})
} else {
wx.showToast({
title: res.data.message,
icon: 'success',
duration: 5000
})
wx.removeStorageSync('info')
wx.navigateBack({
delta: 2
})
}
}
})
},
inputRealName: function(e :any) {
var realName = e.detail.value
this.setData({
realName
})
console.log(realName)
if (realName !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
inputNumber: function(e :any) {
var number = e.detail.value
this.setData({
number
})
// console.log()
if (number !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
onReady: function() {
},
/**
* --
*/
onShow: function() {
},
/**
* --
*/
onHide: function() {
},
/**
* --
*/
onUnload: function() {
},
/**
* --
*/
onPullDownRefresh: function() {
},
/**
*
*/
onReachBottom: function() {
},
/**
*
*/
onShareAppMessage: function() {
}
})

@ -0,0 +1,15 @@
<!--pages/bd/bd.wxml-->
<view>
<view class="btn-area" id="buttonContainer">
<view class='binding-item'>
<view>姓名</view>
<input type="text" placeholder="请输入您的真实姓名" value="{{realName}}" bindinput="inputRealName"></input>
</view>
<view class='binding-item'>
<view>学号</view>
<input type="number" placeholder="请输入您的学号" value="{{number}}" bindinput="inputNumber"></input>
</view>
<button type="submit" bindtap="save" class="save" disabled='{{isDisabled}}'>提交</button>
</view>
</view>

@ -0,0 +1,30 @@
/* pages/bd/bd.wxss */
.binding-item {
margin: 40rpx;
padding-top: 20rpx;
padding-bottom: 40rpx;
display: flex;
font-size: 32rpx;
/* 在模拟器为iphone 6 时1px=2rpx 这里设置32rpx即16px */
border-bottom: 1rpx solid #dedede;
}
.binding-item input {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
padding-left: 20rpx;
}
.binding-btn{
background-color:#19be6b;
padding: 28rpx;
margin: 40rpx;
color: pink;
text-align: center;
}
.button{
margin-top: 30rpx;
margin-bottom: 30rpx;
}

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<svg version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="73px" height="69px" xmlns="http://www.w3.org/2000/svg">
<g transform="matrix(1 0 0 1 -753 -1495 )">
<path d="M 789.5 1495 C 809.94 1495 826 1510.18 826 1529.5 C 826 1548.82 809.94 1564 789.5 1564 C 769.06 1564 753 1548.82 753 1529.5 C 753 1510.18 769.06 1495 789.5 1495 Z " fill-rule="nonzero" fill="#02a7f0" stroke="none" />
<path d="M 789.5 1495.5 C 809.66 1495.5 825.5 1510.46 825.5 1529.5 C 825.5 1548.54 809.66 1563.5 789.5 1563.5 C 769.34 1563.5 753.5 1548.54 753.5 1529.5 C 753.5 1510.46 769.34 1495.5 789.5 1495.5 Z " stroke-width="1" stroke="#797979" fill="none" />
</g>
</svg>

@ -0,0 +1,941 @@
<!DOCTYPE html>
<html>
<head>
<title>Page 1</title>
<meta http-equiv="X-UA-Compatible" content="IE=edge"/>
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
<link href="resources/css/axure_rp_page.css" type="text/css" rel="stylesheet"/>
<link href="data/styles.css" type="text/css" rel="stylesheet"/>
<link href="files/page_1/styles.css" type="text/css" rel="stylesheet"/>
<script src="resources/scripts/jquery-3.2.1.min.js"></script>
<script src="resources/scripts/axure/axQuery.js"></script>
<script src="resources/scripts/axure/globals.js"></script>
<script src="resources/scripts/axutils.js"></script>
<script src="resources/scripts/axure/annotation.js"></script>
<script src="resources/scripts/axure/axQuery.std.js"></script>
<script src="resources/scripts/axure/doc.js"></script>
<script src="resources/scripts/messagecenter.js"></script>
<script src="resources/scripts/axure/events.js"></script>
<script src="resources/scripts/axure/recording.js"></script>
<script src="resources/scripts/axure/action.js"></script>
<script src="resources/scripts/axure/expr.js"></script>
<script src="resources/scripts/axure/geometry.js"></script>
<script src="resources/scripts/axure/flyout.js"></script>
<script src="resources/scripts/axure/model.js"></script>
<script src="resources/scripts/axure/repeater.js"></script>
<script src="resources/scripts/axure/sto.js"></script>
<script src="resources/scripts/axure/utils.temp.js"></script>
<script src="resources/scripts/axure/variables.js"></script>
<script src="resources/scripts/axure/drag.js"></script>
<script src="resources/scripts/axure/move.js"></script>
<script src="resources/scripts/axure/visibility.js"></script>
<script src="resources/scripts/axure/style.js"></script>
<script src="resources/scripts/axure/adaptive.js"></script>
<script src="resources/scripts/axure/tree.js"></script>
<script src="resources/scripts/axure/init.temp.js"></script>
<script src="resources/scripts/axure/legacy.js"></script>
<script src="resources/scripts/axure/viewer.js"></script>
<script src="resources/scripts/axure/math.js"></script>
<script src="resources/scripts/axure/jquery.nicescroll.min.js"></script>
<script src="data/document.js"></script>
<script src="files/page_1/data.js"></script>
<script type="text/javascript">
$axure.utils.getTransparentGifPath = function() { return 'resources/images/transparent.gif'; };
$axure.utils.getOtherPath = function() { return 'resources/Other.html'; };
$axure.utils.getReloadPath = function() { return 'resources/reload.html'; };
</script>
</head>
<body>
<div id="base" class="">
<!-- Unnamed (Rectangle) -->
<div id="u0" class="ax_default box_1">
<div id="u0_div" class=""></div>
<div id="u0_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u1" class="ax_default box_3">
<div id="u1_div" class=""></div>
<div id="u1_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u2" class="ax_default image">
<img id="u2_img" class="img " src="images/page_1/u2.svg"/>
<div id="u2_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u3" class="ax_default image">
<img id="u3_img" class="img " src="images/page_1/u3.svg"/>
<div id="u3_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u4" class="ax_default image">
<img id="u4_img" class="img " src="images/page_1/u2.svg"/>
<div id="u4_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u5" class="ax_default heading_3">
<div id="u5_div" class=""></div>
<div id="u5_text" class="text ">
<p><span>菜单</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u6" class="ax_default heading_3">
<div id="u6_div" class=""></div>
<div id="u6_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u7" class="ax_default box_3">
<div id="u7_div" class=""></div>
<div id="u7_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u8" class="ax_default heading_3">
<div id="u8_div" class=""></div>
<div id="u8_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u9" class="ax_default heading_3">
<div id="u9_div" class=""></div>
<div id="u9_text" class="text ">
<p><span>我的</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u10" class="ax_default box_3">
<div id="u10_div" class=""></div>
<div id="u10_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u11" class="ax_default ellipse">
<img id="u11_img" class="img " src="images/page_1/u11.svg"/>
<div id="u11_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u12" class="ax_default ellipse">
<img id="u12_img" class="img " src="images/page_1/u12.svg"/>
<div id="u12_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u13" class="ax_default ellipse">
<img id="u13_img" class="img " src="images/page_1/u11.svg"/>
<div id="u13_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u14" class="ax_default box_3">
<div id="u14_div" class=""></div>
<div id="u14_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u15" class="ax_default box_3">
<div id="u15_div" class=""></div>
<div id="u15_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u16" class="ax_default box_3">
<div id="u16_div" class=""></div>
<div id="u16_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u17" class="ax_default label">
<div id="u17_div" class=""></div>
<div id="u17_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u18" class="ax_default heading_3">
<div id="u18_div" class=""></div>
<div id="u18_text" class="text ">
<p><span>任务名称1</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u19" class="ax_default label">
<div id="u19_div" class=""></div>
<div id="u19_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u20" class="ax_default label">
<div id="u20_div" class=""></div>
<div id="u20_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u21" class="ax_default heading_3">
<div id="u21_div" class=""></div>
<div id="u21_text" class="text ">
<p><span>任务名称2</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u22" class="ax_default heading_3">
<div id="u22_div" class=""></div>
<div id="u22_text" class="text ">
<p><span>任务名称3</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u23" class="ax_default box_2">
<div id="u23_div" class=""></div>
<div id="u23_text" class="text ">
<p><span>公告栏</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u24" class="ax_default box_1">
<div id="u24_div" class=""></div>
<div id="u24_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u25" class="ax_default box_3">
<div id="u25_div" class=""></div>
<div id="u25_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u26" class="ax_default image">
<img id="u26_img" class="img " src="images/page_1/u2.svg"/>
<div id="u26_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u27" class="ax_default image">
<img id="u27_img" class="img " src="images/page_1/u3.svg"/>
<div id="u27_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u28" class="ax_default image">
<img id="u28_img" class="img " src="images/page_1/u2.svg"/>
<div id="u28_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u29" class="ax_default heading_3">
<div id="u29_div" class=""></div>
<div id="u29_text" class="text ">
<p><span>菜单</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u30" class="ax_default heading_3">
<div id="u30_div" class=""></div>
<div id="u30_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u31" class="ax_default box_3">
<div id="u31_div" class=""></div>
<div id="u31_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u32" class="ax_default heading_3">
<div id="u32_div" class=""></div>
<div id="u32_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u33" class="ax_default heading_3">
<div id="u33_div" class=""></div>
<div id="u33_text" class="text ">
<p><span>我的</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u34" class="ax_default box_1">
<div id="u34_div" class=""></div>
<div id="u34_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u35" class="ax_default box_3">
<div id="u35_div" class=""></div>
<div id="u35_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u36" class="ax_default image">
<img id="u36_img" class="img " src="images/page_1/u2.svg"/>
<div id="u36_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u37" class="ax_default image">
<img id="u37_img" class="img " src="images/page_1/u3.svg"/>
<div id="u37_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u38" class="ax_default image">
<img id="u38_img" class="img " src="images/page_1/u2.svg"/>
<div id="u38_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u39" class="ax_default heading_3">
<div id="u39_div" class=""></div>
<div id="u39_text" class="text ">
<p><span>菜单</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u40" class="ax_default heading_3">
<div id="u40_div" class=""></div>
<div id="u40_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u41" class="ax_default box_3">
<div id="u41_div" class=""></div>
<div id="u41_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u42" class="ax_default heading_3">
<div id="u42_div" class=""></div>
<div id="u42_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u43" class="ax_default heading_3">
<div id="u43_div" class=""></div>
<div id="u43_text" class="text ">
<p><span>我的</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u44" class="ax_default box_3">
<div id="u44_div" class=""></div>
<div id="u44_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u45" class="ax_default box_3">
<div id="u45_div" class=""></div>
<div id="u45_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u46" class="ax_default box_3">
<div id="u46_div" class=""></div>
<div id="u46_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u47" class="ax_default heading_2">
<div id="u47_div" class=""></div>
<div id="u47_text" class="text ">
<p><span>发布任务</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u48" class="ax_default heading_2">
<div id="u48_div" class=""></div>
<div id="u48_text" class="text ">
<p><span>发布接龙</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u49" class="ax_default box_3">
<div id="u49_div" class=""></div>
<div id="u49_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u50" class="ax_default heading_2">
<div id="u50_div" class=""></div>
<div id="u50_text" class="text ">
<p><span>查看任务进度</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u51" class="ax_default box_3">
<div id="u51_div" class=""></div>
<div id="u51_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u52" class="ax_default heading_3">
<div id="u52_div" class=""></div>
<div id="u52_text" class="text ">
<p><span>任务名称1</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u53" class="ax_default box_3">
<div id="u53_div" class=""></div>
<div id="u53_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u54" class="ax_default heading_3">
<div id="u54_div" class=""></div>
<div id="u54_text" class="text ">
<p><span>任务名称2</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u55" class="ax_default box_3">
<div id="u55_div" class=""></div>
<div id="u55_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u56" class="ax_default heading_3">
<div id="u56_div" class=""></div>
<div id="u56_text" class="text ">
<p><span>任务名称3</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u57" class="ax_default heading_3">
<div id="u57_div" class=""></div>
<div id="u57_text" class="text ">
<p><span>完成进度100%</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u58" class="ax_default heading_3">
<div id="u58_div" class=""></div>
<div id="u58_text" class="text ">
<p><span>完成进度100%</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u59" class="ax_default heading_3">
<div id="u59_div" class=""></div>
<div id="u59_text" class="text ">
<p><span>完成进度100%</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u60" class="ax_default box_1">
<div id="u60_div" class=""></div>
<div id="u60_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u61" class="ax_default box_3">
<div id="u61_div" class=""></div>
<div id="u61_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u62" class="ax_default image">
<img id="u62_img" class="img " src="images/page_1/u3.svg"/>
<div id="u62_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u63" class="ax_default image">
<img id="u63_img" class="img " src="images/page_1/u2.svg"/>
<div id="u63_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u64" class="ax_default heading_3">
<div id="u64_div" class=""></div>
<div id="u64_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u65" class="ax_default box_3">
<div id="u65_div" class=""></div>
<div id="u65_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u66" class="ax_default heading_3">
<div id="u66_div" class=""></div>
<div id="u66_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u67" class="ax_default heading_3">
<div id="u67_div" class=""></div>
<div id="u67_text" class="text ">
<p><span>我的</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u68" class="ax_default box_3">
<div id="u68_div" class=""></div>
<div id="u68_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u69" class="ax_default ellipse">
<img id="u69_img" class="img " src="images/page_1/u11.svg"/>
<div id="u69_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u70" class="ax_default ellipse">
<img id="u70_img" class="img " src="images/page_1/u12.svg"/>
<div id="u70_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u71" class="ax_default ellipse">
<img id="u71_img" class="img " src="images/page_1/u11.svg"/>
<div id="u71_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u72" class="ax_default box_3">
<div id="u72_div" class=""></div>
<div id="u72_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u73" class="ax_default box_3">
<div id="u73_div" class=""></div>
<div id="u73_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u74" class="ax_default box_3">
<div id="u74_div" class=""></div>
<div id="u74_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u75" class="ax_default label">
<div id="u75_div" class=""></div>
<div id="u75_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u76" class="ax_default heading_3">
<div id="u76_div" class=""></div>
<div id="u76_text" class="text ">
<p><span>任务名称1</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u77" class="ax_default label">
<div id="u77_div" class=""></div>
<div id="u77_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u78" class="ax_default label">
<div id="u78_div" class=""></div>
<div id="u78_text" class="text ">
<p><span>开始时间:&nbsp; 截止时间:</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u79" class="ax_default heading_3">
<div id="u79_div" class=""></div>
<div id="u79_text" class="text ">
<p><span>任务名称2</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u80" class="ax_default heading_3">
<div id="u80_div" class=""></div>
<div id="u80_text" class="text ">
<p><span>任务名称3</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u81" class="ax_default box_2">
<div id="u81_div" class=""></div>
<div id="u81_text" class="text ">
<p><span>公告栏</span></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u82" class="ax_default image">
<img id="u82_img" class="img " src="images/page_1/u82.svg"/>
<div id="u82_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u83" class="ax_default ellipse">
<img id="u83_img" class="img " src="images/page_1/u83.svg"/>
<div id="u83_text" class="text ">
<p><span>头像</span></p>
</div>
</div>
<!-- Unnamed (Shape) -->
<div id="u84" class="ax_default box_3">
<img id="u84_img" class="img " src="images/page_1/u84.svg"/>
<div id="u84_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u85" class="ax_default box_1">
<div id="u85_div" class=""></div>
<div id="u85_text" class="text ">
<p><span>已绑定,点击可重新绑定&nbsp; &nbsp;&nbsp; &gt;</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u86" class="ax_default box_1">
<div id="u86_div" class=""></div>
<div id="u86_text" class="text ">
<p><span>设置</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u87" class="ax_default box_1">
<div id="u87_div" class=""></div>
<div id="u87_text" class="text ">
<p><span>信息反馈</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u88" class="ax_default box_1">
<div id="u88_div" class=""></div>
<div id="u88_text" class="text ">
<p><span>个人信息</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u89" class="ax_default box_1">
<div id="u89_div" class=""></div>
<div id="u89_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u90" class="ax_default box_3">
<div id="u90_div" class=""></div>
<div id="u90_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u91" class="ax_default image">
<img id="u91_img" class="img " src="images/page_1/u3.svg"/>
<div id="u91_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u92" class="ax_default image">
<img id="u92_img" class="img " src="images/page_1/u2.svg"/>
<div id="u92_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u93" class="ax_default heading_3">
<div id="u93_div" class=""></div>
<div id="u93_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u94" class="ax_default box_3">
<div id="u94_div" class=""></div>
<div id="u94_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u95" class="ax_default heading_3">
<div id="u95_div" class=""></div>
<div id="u95_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u96" class="ax_default heading_3">
<div id="u96_div" class=""></div>
<div id="u96_text" class="text ">
<p><span>我的</span></p>
</div>
</div>
<!-- Unnamed (Image) -->
<div id="u97" class="ax_default image">
<img id="u97_img" class="img " src="images/page_1/u82.svg"/>
<div id="u97_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u98" class="ax_default ellipse">
<img id="u98_img" class="img " src="images/page_1/u83.svg"/>
<div id="u98_text" class="text ">
<p><span>头像</span></p>
</div>
</div>
<!-- Unnamed (Shape) -->
<div id="u99" class="ax_default box_3">
<img id="u99_img" class="img " src="images/page_1/u84.svg"/>
<div id="u99_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u100" class="ax_default box_1">
<div id="u100_div" class=""></div>
<div id="u100_text" class="text ">
<p><span>已绑定,点击可重新绑定&nbsp; &nbsp;&nbsp; &gt;</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u101" class="ax_default box_1">
<div id="u101_div" class=""></div>
<div id="u101_text" class="text ">
<p><span>设置</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u102" class="ax_default box_1">
<div id="u102_div" class=""></div>
<div id="u102_text" class="text ">
<p><span>信息反馈</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u103" class="ax_default box_1">
<div id="u103_div" class=""></div>
<div id="u103_text" class="text ">
<p><span>个人信息</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u104" class="ax_default heading_1">
<div id="u104_div" class=""></div>
<div id="u104_text" class="text ">
<p><span>管理员界面</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u105" class="ax_default heading_1">
<div id="u105_div" class=""></div>
<div id="u105_text" class="text ">
<p><span>用户界面</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u106" class="ax_default box_1">
<div id="u106_div" class=""></div>
<div id="u106_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u107" class="ax_default box_3">
<div id="u107_div" class=""></div>
<div id="u107_text" class="text " style="display:none; visibility: hidden">
<p></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u108" class="ax_default heading_3">
<div id="u108_div" class=""></div>
<div id="u108_text" class="text ">
<p><span>班级通</span></p>
</div>
</div>
<!-- Unnamed (Ellipse) -->
<div id="u109" class="ax_default ellipse">
<img id="u109_img" class="img " src="images/page_1/u109.svg"/>
<div id="u109_text" class="text ">
<p><span>头像</span></p>
</div>
</div>
<!-- Unnamed (Rectangle) -->
<div id="u110" class="ax_default box_1">
<div id="u110_div" class=""></div>
<div id="u110_text" class="text ">
<p><span>授权登录</span></p>
</div>
</div>
</div>
<script src="resources/scripts/axure/ios.js"></script>
</body>
</html>

Binary file not shown.

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-10-04T14:49:01.928Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36 Edg/105.0.1343.53" etag="MlyywT5YBIKq-AjO62rY" version="20.4.0" type="device"><diagram id="3hDiKduUeePXRZQxbaUP" name="第 1 页">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</diagram></mxfile>

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,24 @@
// index.ts
// 获取应用实例
const app = getApp<IAppOption>()
Page({
data: {
taskList: [],
motto: 'Hello World',
},
onShow() {
// let list = [
// { id: 1, title: "任务一", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" },
// { id: 2, title: "任务二", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" },
// { id: 3, title: "任务三", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" }
// ]
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
onLoad() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
})

@ -0,0 +1,33 @@
<view class="wrip-view">
<!-- 轮播区域 -->
<view>
<view class="swip">
<text class="swip-text">公告栏</text>
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}">
<block wx:for="{{3}}" wx:key="*this">
<swiper-item>
<view class="swiper-item">
<image src="/static/index/spwr01.jpg"></image>
</view>
</swiper-item>
</block>
</swiper>
</view>
</view>
<!-- 任务列表 -->
<view class="task" wx:if="{{taskList.length!=0}}">
<block wx:for="{{taskList}}" wx:key="id">
<view class="task-item">
<view class="task-item-title"> {{item.title}}: </view>
<view class="task-item-text">
<text> 开始时间:{{item.startTime}} </text>
<text> 截止时间:{{item.endTime}} </text>
</view>
</view>
</block>
</view>
<view class="error" wx:else>
暂无数据
</view>
</view>

@ -0,0 +1,43 @@
.wrip-view {
height: 100%;
}
.swip {
background: rgb(243, 243, 243);
position: relative;
}
.swip-text {
position: absolute;
width: 100%;
z-index: 100;
text-align: center;
font-size: 20px;
color: rgb(95, 95, 95);
}
.task {
padding: 8px;
}
.task-item {
padding: 8px 4px 10px 4px;
margin: 10px 0;
border-radius: 10px;
background-color: #fff;
}
.task-item-title {
font-family: "楷体";
font-size: 18px;
margin-bottom: 6px;
}
.task-item-text {
font-size: 10px;
color: rgb(146, 146, 146);
}
.error{
text-align: center;
padding: 20px;
}

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,135 @@
// const app = getApp()
Page({
data: {
realName: '',
number: '',
isDisabled: true //表示页面加载完成时disabled为禁用状态
},
onLoad: function(options) {
let number = options.number
let realName = options.realName
this.setData({
number,
realName
})
},
save: function() {
let realName = this.data.realName;
let number=this.data.number
let skey = wx.getStorageSync('skey')
wx.request({
url: 'http://192.168.58.210:81/save',
method: 'GET',
data: {
skey:skey,
number:number,
realName:realName
},
success: function(res :any) {
if (res.data.error == true) {
wx.showToast({
title: res.data.message,
icon: 'none',
duration: 2000
})
} else {
wx.showToast({
title: res.data.message,
icon: 'success',
duration: 5000
})
wx.removeStorageSync('info')
wx.navigateBack({
delta: 2
})
}
}
})
},
inputRealName: function(e :any) {
var realName = e.detail.value
this.setData({
realName
})
console.log(realName)
if (realName !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
inputNumber: function(e :any) {
var number = e.detail.value
this.setData({
number
})
// console.log()
if (number !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
onReady: function() {
},
/**
* --
*/
onShow: function() {
},
/**
* --
*/
onHide: function() {
},
/**
* --
*/
onUnload: function() {
},
/**
* --
*/
onPullDownRefresh: function() {
},
/**
*
*/
onReachBottom: function() {
},
/**
*
*/
onShareAppMessage: function() {
}
})

@ -0,0 +1,15 @@
<!--pages/bd/bd.wxml-->
<view>
<view class="btn-area" id="buttonContainer">
<view class='binding-item'>
<view>姓名</view>
<input type="text" placeholder="请输入您的真实姓名" value="{{realName}}" bindinput="inputRealName"></input>
</view>
<view class='binding-item'>
<view>学号</view>
<input type="number" placeholder="请输入您的学号" value="{{number}}" bindinput="inputNumber"></input>
</view>
<button type="submit" bindtap="save" class="save" disabled='{{isDisabled}}'>提交</button>
</view>
</view>

@ -0,0 +1,30 @@
/* pages/bd/bd.wxss */
.binding-item {
margin: 40rpx;
padding-top: 20rpx;
padding-bottom: 40rpx;
display: flex;
font-size: 32rpx;
/* 在模拟器为iphone 6 时1px=2rpx 这里设置32rpx即16px */
border-bottom: 1rpx solid #dedede;
}
.binding-item input {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
padding-left: 20rpx;
}
.binding-btn{
background-color:#19be6b;
padding: 28rpx;
margin: 40rpx;
color: pink;
text-align: center;
}
.button{
margin-top: 30rpx;
margin-bottom: 30rpx;
}

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,24 @@
// index.ts
// 获取应用实例
const app = getApp<IAppOption>()
Page({
data: {
taskList: [],
motto: 'Hello World',
},
onShow() {
// let list = [
// { id: 1, title: "任务一", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" },
// { id: 2, title: "任务二", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" },
// { id: 3, title: "任务三", startTime: "2022-10-01", endTime: "1020-20-22", end: "40" }
// ]
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
onLoad() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
})

@ -0,0 +1,33 @@
<view class="wrip-view">
<!-- 轮播区域 -->
<view>
<view class="swip">
<text class="swip-text">公告栏</text>
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}">
<block wx:for="{{3}}" wx:key="*this">
<swiper-item>
<view class="swiper-item">
<image src="/static/index/spwr01.jpg"></image>
</view>
</swiper-item>
</block>
</swiper>
</view>
</view>
<!-- 任务列表 -->
<view class="task" wx:if="{{taskList.length!=0}}">
<block wx:for="{{taskList}}" wx:key="id">
<view class="task-item">
<view class="task-item-title"> {{item.title}}: </view>
<view class="task-item-text">
<text> 开始时间:{{item.startTime}} </text>
<text> 截止时间:{{item.endTime}} </text>
</view>
</view>
</block>
</view>
<view class="error" wx:else>
暂无数据
</view>
</view>

@ -0,0 +1,43 @@
.wrip-view {
height: 100%;
}
.swip {
background: rgb(243, 243, 243);
position: relative;
}
.swip-text {
position: absolute;
width: 100%;
z-index: 100;
text-align: center;
font-size: 20px;
color: rgb(95, 95, 95);
}
.task {
padding: 8px;
}
.task-item {
padding: 8px 4px 10px 4px;
margin: 10px 0;
border-radius: 10px;
background-color: #fff;
}
.task-item-title {
font-family: "楷体";
font-size: 18px;
margin-bottom: 6px;
}
.task-item-text {
font-size: 10px;
color: rgb(146, 146, 146);
}
.error{
text-align: center;
padding: 20px;
}

@ -0,0 +1,3 @@
{
"navigationBarTitleText": "任务信息列表"
}

@ -0,0 +1,137 @@
// pages/list/list.js
Page({
/**
*
*/
data: {
list:[]
},
/**
* --
*/
onLoad: function () {
},
/**
* --
*/
onReady: function () {
},
/**
* --
* Show
*/
onShow: function () {
//这里的this是指窗口而在request中this是指onShow方法(因为是页面调用onShow,onShow调用request),所以要先定义
var that = this;
wx.request({
//后端接口提供的url
url: 'http://localhost:8080/task/taskList',
method:'GET',
//需要传入的参数
data:{},
success:function(res :any){
var list = res.data.data;
if(list == null){
//如果获取数据失败,提示使用者
var toastText = '获取数据失败' + res.data.msg;
wx.showToast({
title: toastText,
//显示时长为2s
duration:2000
})
}else{
that.setData({
list:list
})
}
}
})
},
/**
* --
*/
onHide: function () {
},
/**
* --
*/
onUnload: function () {
},
/**
* --
*/
onPullDownRefresh: function () {
},
/**
*
*/
onReachBottom: function () {
},
/**
*
*/
onShareAppMessage: function () {
},
addTask: function(){
wx.navigateTo({
url: '../operation/operation',
})
},
//e表示响应的控件
delTask: function(e :any){
var that = this;
//相当于confirm窗口
wx.showModal({
title: '提示',
//这里的变量名需要与响应控件的data-后面的变量名相同
content: '确认要删除['+e.target.dataset.name+']吗?',
success:function(sm){
if(sm.confirm){
wx.request({
url: 'http://localhost:8080/task/delete',
data: {'id':e.target.dataset.id},
header: {
//默认是 'content-type': 'application/json'要传post的参数必须写成这样要传delete参数则为null
"content-type": "application/x-www-form-urlencoded"
},
method: 'DELETE',
success: function(res:any) {
var result = res.data.success;
var toastText='删除成功';
if(result == true){
that.data.list.splice(e.target.dataset.index,1);
that.setData({
list:that.data.list
});
}else{
toastText = '删除失败';
}
wx.showToast({
title: toastText,
duration:2000
})
},
})
}
}
})
}
})

@ -0,0 +1,27 @@
<!--pages/list/list.wxml-->
<view class='container'>
<view class='widget'>
<text class='column'>ID</text>
<text class='column'>名字</text>
<text class='column'>信息</text>
<text class='column'>时间</text>
<text class='link-column'>操作</text>
</view>
<scroll-view scroll-y="true">
<!--遍历list变量名要和js中的名字相同且item是定值不可修改 -->
<block class='widget' wx:for="{{list}}">
<view class='widget'>
<text class='column'>{{item.id}}</text>
<text class='column'>{{item.name}}</text>
<text class='column'>{{item.property}}</text>
<text class='column'>{{item.deadtime}}</text>
<view class='link-column'>
<navigator class='link' url='../operation/operation?id={{item.id}}'>编辑</navigator>|
<text class='link' bindtap='delTask' data-id='{{item.id}}' data-index='{{index}}' data-name='{{item.name}}'>删除
</text>
</view>
</view>
</block>
</scroll-view>
<button type='primary' bindtap='addTask'>添加任务信息</button>
</view>

@ -0,0 +1,37 @@
/* pages/list/list.wxss */
.container{
height: 100%;
display: table;
align-items: center;
justify-content: space-between;
box-sizing: border-box;
padding-top: 10rpx;
padding-bottom: 10rpx;
text-align: center;
}
.widget{
position: relative;
margin-top: 5rpx;
margin-bottom: 5rpx;
padding-top: 10rpx;
padding-bottom: 10rpx;
padding-left: 40rpx;
padding-right: 40rpx;
border: #ddd 1px solid;
}
.column{
width: 4rem;
display: table-cell;
}
.link-column{
width: 6rem;
display: table-cell;
}
.link{
color: blue;
display: inline-table;
}

@ -0,0 +1,99 @@
// logs.ts
// const util = require('../../utils/util.js')
import { formatTime } from '../../utils/util'
Page({
data: {
logs: [],
taskList: [],
taskFlag: false,
releaseFlag: false,
from: {
taskName: "",
end: ""
}
},
inputFrom(event: any) {
if (event.currentTarget.dataset.gater == "from.end") {
let num = event.detail.value;
if (num.length == 4) num += "-";
if (num.length == 7) num += "-";
this.setData({ [`from.end`]: num })
} else if(event.currentTarget.dataset.gater == "from.taskName"){
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}else{
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}
},
addSelect() {
const { taskName, end } = this.data.from;
if (end.length != 10) return;
if (!taskName || !end) {
wx.showToast({
title: "请填写任务名称和任务进度",
icon: 'error',
});
return;
}
const list = wx.getStorageSync("taskList") || [];
const index = list.findIndex((item: any) => item.title == taskName);
if (index >= 0) {
wx.showToast({
title: "任务名称重复",
icon: 'error',
});
return;
}
const data = {
id: list.length + 1,
title: taskName,
startTime: formatTime(new Date), endTime: end, end: '40',
}
list.push(data)
wx.setStorageSync("taskList", list);
wx.showToast({
title: "发布成功",
icon: 'success',
});
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
atReleaseFlag() {
const user = wx.getStorageSync("userInfo");
console.log(user)
if (user!=null) {
wx.showToast({
title: "请先登录",
icon: 'error',
});
return;
}
this.setData({ releaseFlag: !this.data.releaseFlag })
},
atTaskFlag() {
this.setData({ taskFlag: !this.data.taskFlag })
},
onShow() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
onLoad() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
// this.setData({
// logs: (wx.getStorageSync('logs') || []).map((log: string) => {
// return {
// date: formatTime(new Date(log)),
// timeStamp: log
// }
// }),
// })
},
})

@ -0,0 +1,50 @@
<view class="wrip-view">
<view>
<view catchtap="atReleaseFlag">
<navigator url="/pages/list/list" hover-class="navigator-hover" class="title">发布任务</navigator>
</view>
<!-- <view class="title" catchtap="atReleaseFlag">
发布任务
</view>
<view wx:if="{{releaseFlag}}" class="release-view">
<label>任务名称
<input type="text" data-gater="from.taskName" value="{{from.taskName}}" bindinput="inputFrom" placeholder="输入任务名称" />
</label>
<label>任务结束时间
<input type="number" maxlength="20" data-gater="from.end" value="{{from.end}}" bindinput="inputFrom" placeholder="输入任务结束时间" />
</label>
<label>任务类型
<input type="file" name="upload" maxlength="10" value="{{from.type}}" bindinput="inputFrom" placeholder="输入任务类型" />
</label>
<label>任务详情
<input type="text" data-gater="from.taskdetail" value="{{from.taskdetail}}" bindinput="inputFrom" placeholder="输入任务详情" />
</label>
<button catchtap="addSelect">发布</button>
</view> -->
</view>
<view>
<view class="title">发布接龙</view>
</view>
<view>
<view class="title" catchtap="atTaskFlag">查看任务进度</view>
<view class="task" wx:if="{{taskFlag}}">
<view wx:if="{{taskList.length!=0}}">
<block wx:for="{{taskList}}" wx:key="id">
<view class="task-item">
<view class="task-item-title"> {{item.title}}: </view>
<view class="task-item-text">
<text>完成进度:{{item.end}} </text>
</view>
<view class="task-item-backg" style="width: {{item.end+'%'}};"></view>
</view>
</block>
</view>
<view wx:else>
暂无任务
</view>
</view>
</view>
</view>

@ -0,0 +1,78 @@
.wrip-view {
height: 100%;
padding: 0 12px;
}
.task {
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.task-item {
padding: 4px 0;
margin: 10px 0;
border-radius: 10px;
position: relative;
z-index: 100;
background-color: #fff;
overflow: hidden;
}
.task-item-backg {
position: absolute;
top: 0;
background: #77bef0;
height: 100%;
width: 100%;
z-index: -1;
border-radius: 10px 0 0 10px;
}
.task-item-title {
font-family: "楷体";
font-size: 18px;
margin-bottom: 6px;
margin-left: 10px;
}
.task-item-text {
text-align: right;
font-family: "楷体";
font-size: 14px;
margin-right: 10px;
}
.title {
background: #fff;
display: inline-block;
border-radius: 4px;
padding: 4px;
margin: 10px 0;
position: relative;
}
.title::after {
content: "";
position: absolute;
top: 50%;
width: 100vw;
height: 4px;
background: #fff;
}
.release-view{
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.release-view input{
border: 1px #ccc solid;
border-radius: 4px;
margin: 6px 0;
padding: 4px;
}

@ -0,0 +1,77 @@
// logs.ts
// const util = require('../../utils/util.js')
// import { formatTime } from '../../utils/util'
Page({
data: {
userInfo: {},
key:{},
},
atLogin() {
wx.getUserProfile({
desc: '展示用户信息',
success: (res) => {
this.setData({
userInfo: res.userInfo,
})
// wx.setStorageSync("userInfo", res.userInfo);
wx.setStorage({
key:"userInfo",
data:this.data.userInfo,
// userInfo:res.userInfo,
encrypt: true, // 若开启加密存储setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
success() {
wx.getStorage({
key: "key",
encrypt: true, // 若开启加密存储setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
success(res) {
console.log(res.data)
}
})
}
})
 wx.login({
      success: function(login_res){
        if(login_res.code){
          wx.request({
            url:'http://192.168.58.210:81/atlogin',
            method:'GET',
            data:{
              code:login_res.code,
            },
success:function(res :any){
console.log(res)
let skey=res.data.skey
console.log(skey)
wx.setStorageSync('skey',skey)
}
          })
        }else{
          console.log('登录失败!'+login_res.errMsg)
        }
      }
    })   
}
})
},   
onShow() {
const userInfo = wx.getStorageSync("userInfo");
if (userInfo!=null) return;
this.setData({
userInfo: userInfo,
})
  
},
onLoad() {
const userInfo = wx.getStorageSync("userInfo");
if (userInfo!=null) return;
this.setData({
userInfo: userInfo,
})
},
})

@ -0,0 +1,23 @@
<view class="wrip">
<view class="my-head">
<view class="my-head-box">
<view class="head-box-child">
<view wx:if="{{!userInfo.avatarUrl}}" catchtap="atLogin">
登录
</view>
<view wx:else>
<image src="{{userInfo.avatarUrl}}"></image>
</view>
</view>
</view>
</view>
<view>
<view class="my-box">
<view class="my-top">
<navigator url="/pages/bd/bd" hover-class="navigator-hover">已绑定,点击可重新绑定</navigator>
</view>
</view>
</view>
</view>

@ -0,0 +1,58 @@
.wrip {
padding: 10px;
}
.log-list {
display: flex;
flex-direction: column;
padding: 40rpx;
}
.log-item {
margin: 10rpx;
}
.my-head {
margin: 0 0 10px 0;
}
.my-head-box {
height: 160px;
background: white;
border-radius: 5px;
position: relative;
background-image: linear-gradient(to right top, #d16ba5, #c777b9, #ba83ca, #aa8fd8, #9a9ae1, #8aa7ec, #79b3f4, #69bff8, #52cffe, #41dfff, #46eefa, #5ffbf1);
}
.my-box {
height: 140px;
background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12);
border-radius: 5px;
}
.head-box-child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80px;
height: 80px;
border-radius: 50%;
text-align: center;
border: 1px #ccc solid;
color: rgb(255, 255, 255);
line-height: 80px;
overflow: hidden;
}
.head-box-child image {
width: 100%;
height: 80px;
}
.my-top {
padding: 4px;
color: white;
box-shadow: rgba(116, 116, 116, 0.521) 0 0 10px ;
background: rgba(204, 204, 204, 0.384);
}

@ -0,0 +1,3 @@
{
"navigationBarTitleText": "任务信息表单"
}

@ -0,0 +1,129 @@
// logs.ts
// const util = require('../../utils/util.js')
import { formatTime } from '../../utils/util'
Page({
data: {
logs: [],
taskList: [],
taskFlag: false,
releaseFlag: false,
id:undefined,
name:'',
property:'',
stuid:'',
deadtime:'',
addUrl:'http://localhost:8080/task/addTask',
updateUrl:'http://localhost:8080/task/taskInfo',
from: {
taskName: "",
end: ""
}
},
inputFrom(event:any) {
if (event.currentTarget.dataset.gater == "from.end") {
let num = event.detail.value;
if (num.length == 4) num += "-";
if (num.length == 7) num += "-";
this.setData({ [`from.end`]: num })
} else if(event.currentTarget.dataset.gater == "from.taskName"){
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}else{
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}
},
addSelect() {
const { taskName, end } = this.data.from;
if (end.length != 10) return;
if (!taskName || !end) {
wx.showToast({
title: "请填写任务名称和任务进度",
icon: 'error',
});
return;
}
const list = wx.getStorageSync("taskList") || [];
const index = list.findIndex((item:any) => item.title == taskName);
if (index >= 0) {
wx.showToast({
title: "任务名称重复",
icon: 'error',
});
return;
}
const data = {
id: list.length + 1,
title: taskName,
startTime: formatTime(new Date), endTime: end, end: '40',
}
list.push(data)
wx.setStorageSync("taskList", list);
wx.showToast({
title: "发布成功",
icon: 'success',
});
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
formSubmit:function(e:any){
// var that = this;
//获取表单值
var formData = e.detail.value;
var url = this.data.addUrl;
if(this.data.id != undefined){
//如果是编辑按钮跳转
formData.id = this.data.id;
url = this.data.updateUrl;
}
console.log(JSON.stringify(formData));
wx.request({
url: url,
//将其转换成JSON
data: JSON.stringify(formData),
method: 'POST',
success: function(res:any) {
var result = res.data.success;
var toastText = '请求成功';
if(!result){
toastText = '请求失败'+res.data.msg;
}
wx.showToast({
title: toastText,
duration: 2000,
})
if(result){
wx.redirectTo({
//操作结束后跳转回列表页
url: '../list/list',
})
}
},
})
},
atTaskFlag() {
this.setData({ taskFlag: !this.data.taskFlag })
},
onShow() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
onLoad() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
// this.setData({
// logs: (wx.getStorageSync('logs') || []).map((log: string) => {
// return {
// date: formatTime(new Date(log)),
// timeStamp: log
// }
// }),
// })
},
})

@ -0,0 +1,19 @@
<view class="release-view">
<form bindsubmit='formSubmit' bindreset='formReset'>
<label>任务名称
<input type="text" data-gater="from.taskName" value="{{from.taskName}}" bindinput="inputFrom" placeholder="输入任务名称" />
</label>
<label>任务结束时间
<input type="number" maxlength="20" data-gater="from.end" value="{{from.end}}" bindinput="inputFrom" placeholder="输入任务结束时间" />
</label>
<label>任务详情
<input type="text" data-gater="from.taskdetail" value="{{from.taskdetail}}" bindinput="inputFrom" placeholder="输入任务详情" />
</label>
<view class='row'>
<button type='primary' form-type='submit' catchtap="addSelect">提交</button>
<button type='primary' form-type='reset'>清空</button>
</view>
</form>
</view>

@ -0,0 +1,69 @@
/* pages/opration/opration.wxss */
.row input {
font-size: 0.7rem;
flex-grow: 3;
border: ipx solid #09c;
display: inline-block;
border-radius: 0.3rem;
box-shadow: 0 0 0.15rem #aaa;
padding: 0.3rem;
}
.row button {
padding: 0.3rem;
margin: 3rem 1rem;
}
.container {
padding: 1rem;
font-size: 0.9rem;
line-height: 1.5rem;
}
.row {
display: flex;
align-items: center;
margin-bottom: 0.8rem;
}
.row text {
flex-grow: 1.5;
text-align: right;
}
.form-box picker{
margin: 30rpx 30rpx 0 0;
color: rgb(153, 153, 153);
}
.title {
background: #fff;
display: inline-block;
border-radius: 4px;
padding: 4px;
margin: 10px 0;
position: relative;
}
.title::after {
content: "";
position: absolute;
top: 50%;
width: 100vw;
height: 4px;
background: #fff;
}
.release-view{
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.release-view input{
border: 1px #ccc solid;
border-radius: 4px;
margin: 6px 0;
padding: 4px;
}

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,66 @@
// pages/uploadfile/uploadfile.ts
Page({
/**
*
*/
data: {
},
/**
* --
*/
onLoad() {
},
/**
* --
*/
onReady() {
},
/**
* --
*/
onShow() {
},
/**
* --
*/
onHide() {
},
/**
* --
*/
onUnload() {
},
/**
* --
*/
onPullDownRefresh() {
},
/**
*
*/
onReachBottom() {
},
/**
*
*/
onShareAppMessage() {
}
})

@ -0,0 +1,2 @@
<!--pages/uploadfile/uploadfile.wxml-->
<text>文件提交</text>

@ -0,0 +1 @@
/* pages/uploadfile/uploadfile.wxss */

@ -0,0 +1,3 @@
{
"usingComponents": {}
}

@ -0,0 +1,135 @@
// const app = getApp()
Page({
data: {
realName: '',
number: '',
isDisabled: true //表示页面加载完成时disabled为禁用状态
},
onLoad: function(options) {
let number = options.number
let realName = options.realName
this.setData({
number,
realName
})
},
save: function() {
let realName = this.data.realName;
let number=this.data.number
let skey = wx.getStorageSync('skey')
wx.request({
url: 'http://127.0.0.1:81/atbind',
method: 'GET',
data: {
skey:skey,
studentnumber:number,
name:realName
},
success: function(res :any) {
if (res.data.error == true) {
wx.showToast({
title: res.data.message,
icon: 'none',
duration: 2000
})
} else {
wx.showToast({
title: res.data.message,
icon: 'success',
duration: 5000
})
wx.removeStorageSync('info')
wx.navigateBack({
delta: 2
})
}
}
})
},
inputRealName: function(e :any) {
var realName = e.detail.value
this.setData({
realName
})
console.log(realName)
if (realName !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
inputNumber: function(e :any) {
var number = e.detail.value
this.setData({
number
})
// console.log()
if (number !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
onReady: function() {
},
/**
* --
*/
onShow: function() {
},
/**
* --
*/
onHide: function() {
},
/**
* --
*/
onUnload: function() {
},
/**
* --
*/
onPullDownRefresh: function() {
},
/**
*
*/
onReachBottom: function() {
},
/**
*
*/
onShareAppMessage: function() {
}
})

@ -0,0 +1,15 @@
<!--pages/bd/bd.wxml-->
<view>
<view class="btn-area" id="buttonContainer">
<view class='binding-item'>
<view>姓名</view>
<input type="text" placeholder="请输入您的真实姓名" value="{{realName}}" bindinput="inputRealName"></input>
</view>
<view class='binding-item'>
<view>学号</view>
<input type="number" placeholder="请输入您的学号" value="{{number}}" bindinput="inputNumber"></input>
</view>
<button type="submit" bindtap="save" class="save" disabled='{{isDisabled}}'>提交</button>
</view>
</view>

@ -0,0 +1,30 @@
/* pages/bd/bd.wxss */
.binding-item {
margin: 40rpx;
padding-top: 20rpx;
padding-bottom: 40rpx;
display: flex;
font-size: 32rpx;
/* 在模拟器为iphone 6 时1px=2rpx 这里设置32rpx即16px */
border-bottom: 1rpx solid #dedede;
}
.binding-item input {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
padding-left: 20rpx;
}
.binding-btn{
background-color:#19be6b;
padding: 28rpx;
margin: 40rpx;
color: pink;
text-align: center;
}
.button{
margin-top: 30rpx;
margin-bottom: 30rpx;
}

@ -0,0 +1,155 @@
// index.ts
// 获取应用实例
const app = getApp<IAppOption>()
// pages/list/list.js
Page({
/**
*
*/
data: {
list:[]
},
/**
* --
*/
onLoad: function () {
},
/**
* --
*/
onReady: function () {
},
/**
* --
* Show
*/
onShow: function () {
//这里的this是指窗口而在request中this是指onShow方法(因为是页面调用onShow,onShow调用request),所以要先定义
var that = this;
wx.request({
//后端接口提供的url
url: 'http://localhost:81/task/taskList',
method:'GET',
//需要传入的参数
data:{},
success:function(res :any){
var list = res.data.data;
if(list == null){
//如果获取数据失败,提示使用者
var toastText = '获取数据失败' + res.data.msg;
wx.showToast({
title: toastText,
//显示时长为2s
duration:2000
})
}else{
that.setData({
list:list
})
}
}
})
},
/**
* --
*/
onHide: function () {
},
/**
* --
*/
onUnload: function () {
},
/**
* --
*/
onPullDownRefresh: function () {
},
/**
*
*/
onReachBottom: function () {
},
/**
*
*/
onShareAppMessage: function () {
},
submitTask: function(e:any){
wx.navigateTo({
url: '../submit/submit',
events: {
// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
acceptDataFromOpenedPage: function(data:any) {//参数名字随便起,前后页面对应上即可
//对发送回来的数据进行处理
console.log(data)
},
someEvent: function(data:any) {//参数名字随便起,前后页面对应上即可
console.log(data)
}
},
success: function(res) {
// 通过eventChannel向被打开页面传送数据
res.eventChannel.emit('id', {id: e.target.dataset.id })//参数名字随便起,前后页面对应上即可
res.eventChannel.emit('name', {id: e.target.dataset.name })//参数名字随便起,前后页面对应上即可
res.eventChannel.emit('property', {id: e.target.dataset.property })//参数名字随便起,前后页面对应上即可
},
})
//, name: e.target.dataset.name , property: e.target.dataset.property
},
delTask: function(e :any){
var that = this;
//相当于confirm窗口
wx.showModal({
title: '提示',
//这里的变量名需要与响应控件的data-后面的变量名相同
content: '确认要删除['+e.target.dataset.name+']吗?',
success:function(sm){
if(sm.confirm){
wx.request({
url: 'http://localhost:81/task/delete',
data: {'id':e.target.dataset.id},
header: {
//默认是 'content-type': 'application/json'要传post的参数必须写成这样要传delete参数则为null
"content-type": "application/x-www-form-urlencoded"
},
method: 'DELETE',
success: function(res:any) {
var result = res.data.success;
var toastText='删除成功';
if(result == true){
that.data.list.splice(e.target.dataset.index,1);
that.setData({
list:that.data.list
});
}else{
toastText = '删除失败';
}
wx.showToast({
title: toastText,
duration:2000
})
},
})
}
}
})
}
})

@ -0,0 +1,36 @@
<view class="wrip-view">
<!-- 轮播区域 -->
<view>
<view class="swip">
<text class="swip-text">公告栏</text>
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{2000}}">
<block wx:for="{{3}}" wx:key="*this">
<swiper-item>
<view class="swiper-item">
<image src="/static/index/spwr01.jpg"></image>
</view>
</swiper-item>
</block>
</swiper>
</view>
</view>
<!-- 任务列表 -->
<view class="task" wx:if="{{list.length!=0}}">
<block wx:for="{{list}}" wx:key="id">
<view class="task-item">
<view class="task-item -title"><test>任务名称:</test> {{item.name}}</view>
<view class="task-item -title"><test>任务内容:</test> {{item.property}} </view>
<view class="task-item-text">
<text> 截止时间:{{item.deadtime}} </text>
</view>
<!-- <text bindtap='delTask' data-id='{{item.id}}' data-index='{{index}}' data-name='{{item.name}}'>提交任务
</text> -->
<button class="mini-btn" type='plain' size="mini"
bindtap='submitTask' data-id='{{item.id}}' data-name='{{item.name}}'data-property='{{item.property}}'>提交任务</button>
</view>
</block>
</view>
<view class="error" wx:else>
暂无数据
</view>
</view>

@ -0,0 +1,47 @@
.wrip-view {
height: 100%;
}
.swip {
background: rgb(243, 243, 243);
position: relative;
}
.swip-text {
position: absolute;
width: 100%;
z-index: 100;
text-align: center;
font-size: 20px;
color: rgb(95, 95, 95);
}
.task {
padding: 8px;
}
.task-item {
padding: 8px 4px 10px 4px;
margin: 10px 0;
border-radius: 10px;
background-color: rgb(240, 234, 234);
}
.task-item-title {
font-family: "楷体";
font-size: 18px;
margin-bottom: 6px;
}
.task-item-text {
font-family: "楷体";
font-size: 20px;
color: rgb(241, 10, 10);
}
.error{
text-align: center;
padding: 20px;
}
.mini-btn{
margin-right: 10rpx;
}

@ -0,0 +1,135 @@
// logs.ts
// const util = require('../../utils/util.js')
import { formatTime } from '../../utils/util'
Page({
data: {
logs: [],
taskList: [],
taskFlag: false,
releaseFlag: false,
from: {
taskName: "",
end: ""
}
},
inputFrom(event: any) {
if (event.currentTarget.dataset.gater == "from.end") {
let num = event.detail.value;
if (num.length == 4) num += "-";
if (num.length == 7) num += "-";
this.setData({ [`from.end`]: num })
} else if(event.currentTarget.dataset.gater == "from.taskName"){
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}else{
this.setData({
[`${event.currentTarget.dataset.gater}`]: event.detail.value
})
}
},
addSelect() {
const { taskName, end } = this.data.from;
if (end.length != 10) return;
if (!taskName || !end) {
wx.showToast({
title: "请填写任务名称和任务进度",
icon: 'error',
});
return;
}
const list = wx.getStorageSync("taskList") || [];
const index = list.findIndex((item: any) => item.title == taskName);
if (index >= 0) {
wx.showToast({
title: "任务名称重复",
icon: 'error',
});
return;
}
const data = {
id: list.length + 1,
title: taskName,
startTime: formatTime(new Date), endTime: end, end: '40',
}
list.push(data)
wx.setStorageSync("taskList", list);
wx.showToast({
title: "发布成功",
icon: 'success',
});
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
atReleaseFlag() {
const user = wx.getStorageSync("userInfo");
console.log(user)
if (!user) {
wx.showToast({
title: "请先登录",
icon: 'error',
});
return;
}
this.setData({ releaseFlag: !this.data.releaseFlag })
const power = +wx.getStorageSync('power');
console.log(power)
if (power === 0) { // 0 为用户
wx.showToast({
title: "暂无权限",
icon: 'error',
});
} else if (power === 1) { // 1 为管理员
wx.navigateTo({ url: '/pages/list/list' })
}
},
onPublishJielong() {
const power = +wx.getStorageSync('power');
if (power === 0) {
wx.showToast({
title: "暂无权限",
icon: 'error',
});
}
else if (power === 1) { // 1 为管理员
wx.navigateTo({ url: '/pages/list1/list1' })
}
},
atTaskFlag() {
const power = +wx.getStorageSync('power');
if (power === 0) {
wx.showToast({
title: "暂无权限",
icon: 'error',
});
return;
}
this.setData({ taskFlag: !this.data.taskFlag })
},
onDragon() {
wx.navigateTo({ url: '/pages/dragon/dragon' });
},
onShow() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
},
onLoad() {
this.setData({
taskList: wx.getStorageSync("taskList") || []
});
// this.setData({
// logs: (wx.getStorageSync('logs') || []).map((log: string) => {
// return {
// date: formatTime(new Date(log)),
// timeStamp: log
// }
// }),
// })
},
})

@ -0,0 +1,36 @@
<view class="wrip-view">
<view>
<view catchtap="atReleaseFlag">
<!-- <navigator url="/pages/list/list" hover-class="navigator-hover" class="title">发布任务</navigator> -->
<view class="title">发布任务</view>
</view>
</view>
<view catchtap="onPublishJielong">
<view class="title">发布接龙</view>
</view>
<view>
<view catchtap="onDragon">
<!-- <navigator url="/pages/list/list" hover-class="navigator-hover" class="title">发布任务</navigator> -->
<view class="title">完成接龙</view>
</view>
</view>
<view>
<view class="title" catchtap="atTaskFlag">查看任务进度</view>
<view class="task" wx:if="{{taskFlag}}">
<view wx:if="{{taskList.length!=0}}">
<block wx:for="{{taskList}}" wx:key="id">
<view class="task-item">
<view class="task-item-title"> {{item.title}}: </view>
<view class="task-item-text">
<text>完成进度:{{item.end}} </text>
</view>
<view class="task-item-backg" style="width: {{item.end+'%'}};"></view>
</view>
</block>
</view>
<view wx:else>
暂无任务
</view>
</view>
</view>
</view>

@ -0,0 +1,78 @@
.wrip-view {
height: 100%;
padding: 0 12px;
}
.task {
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.task-item {
padding: 4px 0;
margin: 10px 0;
border-radius: 10px;
position: relative;
z-index: 100;
background-color: #fff;
overflow: hidden;
}
.task-item-backg {
position: absolute;
top: 0;
background: #77bef0;
height: 100%;
width: 100%;
z-index: -1;
border-radius: 10px 0 0 10px;
}
.task-item-title {
font-family: "楷体";
font-size: 18px;
margin-bottom: 6px;
margin-left: 10px;
}
.task-item-text {
text-align: right;
font-family: "楷体";
font-size: 14px;
margin-right: 10px;
}
.title {
background: #fff;
display: inline-block;
border-radius: 4px;
padding: 4px;
margin: 10px 0;
position: relative;
}
.title::after {
content: "";
position: absolute;
top: 50%;
width: 100vw;
height: 4px;
background: #fff;
}
.release-view{
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.release-view input{
border: 1px #ccc solid;
border-radius: 4px;
margin: 6px 0;
padding: 4px;
}

@ -0,0 +1,98 @@
// logs.ts
// const util = require('../../utils/util.js')
// import { formatTime } from '../../utils/util'
Page({
data: {
userInfo: {},
key:{},
},
atLogin() {
wx.getUserProfile({
desc: '展示用户信息',
success: (res) => {
this.setData({
userInfo: res.userInfo,
})
// wx.setStorageSync("userInfo", res.userInfo);
wx.setStorage({
key:"userInfo",
data:this.data.userInfo,
// userInfo:res.userInfo,
encrypt: true, // 若开启加密存储setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
success() {
wx.getStorage({
key: "key",
encrypt: true, // 若开启加密存储setStorage 和 getStorage 需要同时声明 encrypt 的值为 true
success(res) {
console.log(res.data)
}
})
}
})
 wx.login({
      success: function(login_res){
        if(login_res.code){
          wx.request({
            url:'http://127.0.0.1:81/atlogin',
            method:'GET',
            data:{
              code:login_res.code,
            },
success:function(res :any){
console.log(res)
let skey=res.data.skey
console.log(skey)
wx.setStorageSync('skey',skey)
wx.setStorageSync("power",res.data.power)
}
          })
        }else{
          console.log('登录失败!'+login_res.errMsg)
        }
      }
    })   
}
})
},
sendMsg: function () {
var sessionId = wx.getStorageSync('sessionId');
wx.request({
url: "",
header: {
"Content-Type": "application/x-www-form-urlencoded",
"Cookie": sessionId
},
method: 'POST',
success: function (res) {
console.log(res)
}
})
this.setData({
alreadySend: true,
send: false
})
},
// ----------------------------------
  
onShow() {
const userInfo = wx.getStorageSync("userInfo");
if (userInfo!=null) return;
this.setData({
userInfo: userInfo,
})
},
onLoad() {
const userInfo = wx.getStorageSync("userInfo");
if (userInfo!=null) return;
this.setData({
userInfo: userInfo,
})
},
})

@ -0,0 +1,25 @@
<view class="wrip">
<view class="my-head">
<view class="my-head-box">
<view class="head-box-child">
<view wx:if="{{!userInfo.avatarUrl}}" catchtap="atLogin">
登录
</view>
<view wx:else>
<image src="{{userInfo.avatarUrl}}"></image>
</view>
</view>
</view>
</view>
<view>
<view class="my-box">
<view class="my-top">
<navigator url="/pages/bd/bd" hover-class="navigator-hover">已绑定,点击可重新绑定</navigator>
</view>
<view class="my-top">
<navigator url="/pages/mmm/mmm" hover-class="navigator-hover">获取验证码</navigator>
</view>
</view>
</view>
</view>

@ -0,0 +1,58 @@
.wrip {
padding: 10px;
}
.log-list {
display: flex;
flex-direction: column;
padding: 40rpx;
}
.log-item {
margin: 10rpx;
}
.my-head {
margin: 0 0 10px 0;
}
.my-head-box {
height: 160px;
background: white;
border-radius: 5px;
position: relative;
background-image: linear-gradient(to right top, #d16ba5, #c777b9, #ba83ca, #aa8fd8, #9a9ae1, #8aa7ec, #79b3f4, #69bff8, #52cffe, #41dfff, #46eefa, #5ffbf1);
}
.my-box {
height: 140px;
background-image: linear-gradient(to right top, #051937, #004d7a, #008793, #00bf72, #a8eb12);
border-radius: 5px;
}
.head-box-child {
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
width: 80px;
height: 80px;
border-radius: 50%;
text-align: center;
border: 1px #ccc solid;
color: rgb(255, 255, 255);
line-height: 80px;
overflow: hidden;
}
.head-box-child image {
width: 100%;
height: 80px;
}
.my-top {
padding: 4px;
color: white;
box-shadow: rgba(116, 116, 116, 0.521) 0 0 10px ;
background: rgba(204, 204, 204, 0.384);
}

@ -0,0 +1,3 @@
{
"navigationBarTitleText": "请完成任务提交"
}

@ -0,0 +1,140 @@
// sumbit.ts
// pages/list/list.js
Page({
/**
*
*/
data: {
id:"",
name: "",
property:""
},
onUpload(){
let that=this
let skey=wx.getStorageSync('skey')
wx.chooseMessageFile({
count:1,
success(res) {
const tempFilePaths = res.tempFiles;
console.log(tempFilePaths[0])
//that.filename = res.tempFiles[0].name
//将保存在微信暂存区的文件上传到你项目的保存地址
//将保存在微信暂存区的文件上传到你项目的保存地址
wx.uploadFile({
url: 'http://127.0.0.1:81/taskupload',//这里的url是你项目文件上传的接口
filePath: tempFilePaths[0].path,//这是你上传文件到微信暂存区的 路径
name: 'file',
//这里也是为小程序在真机测试校验协议时能够被通过,
//你可以直接在 data里面定义这个变量上面那个方法里面的headers可以不定义。
header:{
'Content-Type': "multipart/form-data"
},
//这个是上传文件 需要的参数,具体看你们项目接口需要提交的参数
formData: {
skey:skey,
Task_id:that.data.id
},
success (res){
const data = res.data
if(res.data == "upload successful"){
console.log("success")
}else{
console.log("fail")
}
}
})
},
});
},
/**
* --
*/
onLoad: function(option){
//获取通信通道
var that = this;
const eventChannel = this.getOpenerEventChannel()
// 监听acceptDataFromOpenerPage事件获取上一页面通过eventChannel传送到当前页面的数据
eventChannel.on('id', function(data) {
//对发送过来的数据进行处理
console.log(data.id)
that.setData({
id: data.id
})
})
eventChannel.on('name', function(data) {
//对发送过来的数据进行处理
console.log(data),
that.setData({
name: data.id
})
})
eventChannel.on('property', function(data) {
//对发送过来的数据进行处理
console.log(data),
that.setData({
property: data.id
})
})
//向上一页面发送数据
eventChannel.emit('acceptDataFromOpenedPage', {data: 'test'});
eventChannel.emit('someEvent', {data: 'test'});
},
/**
* --
*/
onReady: function () {
},
/**
* --
* Show
*/
onShow: function () {
console.log('通过缓存传递参数',wx.getStorageSync('id'))
},
/**
* --
*/
onHide: function () {
},
/**
* --
*/
onUnload: function () {
},
/**
* --
*/
onPullDownRefresh: function () {
},
/**
*
*/
onReachBottom: function () {
},
/**
*
*/
onShareAppMessage: function () {
},
submitTask: function(){
wx.navigateTo({
url: '../submit/submit',
})
},
})

@ -0,0 +1,32 @@
<!--pages/submit/submit.wxml-->
<!-- <view class="task-item -title"><test>任务名称:</test> {{item.id}}</view> -->
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{4000}}">
<swiper-item>
<view class="swiper-item">
<image src="/static/sumbit/OIP-C.jpg"></image>
</view>
</swiper-item>
</swiper>
<scroll-view scroll-y="true">
<!--遍历list变量名要和js中的名字相同且item是定值不可修改 -->
<block class='widget'>
<view class='widget'>
<text class='column'>您提交的任务信息如下:</text>
</view>
<view class='widget'>
<view class="column">
<text class='column'>ID{{id}}</text>
</view>
<view class="column">
<test>任务名称: {{name}}</test>
</view>
<view class="column">
<test>任务内容: {{property}} </test>
</view>
</view>
<button type='primary' bindtap='onUpload'>选择文件</button>
</block>
</scroll-view>

@ -0,0 +1,67 @@
/* pages/submit/submit.wxss */
.wrip-view {
height: 100%;
}
.image {
height: 120%;
position: relative;
}
.swip {
background: rgb(243, 243, 243);
position: relative;
}
.swip-text {
position: absolute;
width: 100%;
z-index: 100;
text-align: center;
font-size: 20px;
color: rgb(95, 95, 95);
}
.container{
height: 100%;
display: flex;
flex-direction: column;
justify-content: space-between;
box-sizing: border-box;
padding-top: 10rpx;
padding-bottom: 10rpx;
}
.widget{
position: relative;
margin-top: 5rpx;
margin-bottom: 5rpx;
padding-top: 20rpx;
padding-bottom: 20rpx;
padding-left: 5rpx;
padding-right: 4rpx;
border: rgb(16, 196, 157) 1px solid;
}
.row{
width: 3rem;
font-size:larger;
display: table-cell;
}
.column{
font-size:larger;
}
.form-box picker{
margin: 30rpx 30rpx 0 0;
color: rgb(187, 19, 19);
}
.link-row{
width: 5rem;
display: table-cell;
}
.link{
color: blue;
display: inline-table;
}

@ -0,0 +1,3 @@
{
"navigationBarTitleText": "请完成接龙"
}

@ -0,0 +1,131 @@
// sumbit.ts
// pages/list/list.js
Page({
/**
*
*/
data: {
id:"",
name: "",
property:"",
content:""
},
/**
* --
*/
onLoad: function(option){
//获取通信通道
var that = this;
const eventChannel = this.getOpenerEventChannel()
// 监听acceptDataFromOpenerPage事件获取上一页面通过eventChannel传送到当前页面的数据
eventChannel.on('id', function(data) {
//对发送过来的数据进行处理
console.log(data.id)
that.setData({
id: data.id
})
that.setData({
content:option.content
})
})
eventChannel.on('name', function(data) {
//对发送过来的数据进行处理
console.log(data),
that.setData({
name: data.id
})
})
eventChannel.on('property', function(data) {
//对发送过来的数据进行处理
console.log(data),
that.setData({
property: data.id
})
})
//向上一页面发送数据
eventChannel.emit('acceptDataFromOpenedPage', {data: 'test'});
eventChannel.emit('someEvent', {data: 'test'});
},
upload:function(e:any){
let that= this
let skey =wx.getStorageSync('skey')
var Data = e.detail.value.content
wx.request({
url: 'http://127.0.0.1:81/uploadDragon',
method: 'POST',
header: {
"Content-Type": "application/x-www-form-urlencoded"
},
data: {
skey:skey,
dragonid:that.data.id,
text: e.detail.value.content
},
success(res){
console.log(res.data)
}
})
console.log(JSON.stringify(Data))
},
/**
* --
*/
onReady: function () {
},
/**
* --
* Show
*/
onShow: function () {
console.log('通过缓存传递参数',wx.getStorageSync('id'))
},
/**
* --
*/
onHide: function () {
},
/**
* --
*/
onUnload: function () {
},
/**
* --
*/
onPullDownRefresh: function () {
},
/**
*
*/
onReachBottom: function () {
},
/**
*
*/
onShareAppMessage: function () {
},
submitDragon: function(){
wx.navigateTo({
url: '../uploadfile/uploadfile',
})
},
})

@ -0,0 +1,40 @@
<!--pages/submit/submit.wxml-->
<!-- <view class="task-item -title"><test>任务名称:</test> {{item.id}}</view> -->
<swiper indicator-dots="{{true}}" autoplay="{{true}}" interval="{{4000}}">
<swiper-item>
<view class="swiper-item">
<image src="/static/sumbit/OIP-C.jpg"></image>
</view>
</swiper-item>
</swiper>
<scroll-view scroll-y="true">
<!--遍历list变量名要和js中的名字相同且item是定值不可修改 -->
<block class='widget'>
<view class='widget'>
<text class='column'>您提交的接龙信息如下:</text>
</view>
<view class='widget'>
<view class="column">
<text class='column'>ID{{id}}</text>
</view>
<view class="column">
<test>接龙名称: {{name}}</test>
</view>
<view class="column">
<test>接龙内容: {{property}} </test>
</view>
</view>
<view class="release-view">
<form bindsubmit='upload' bindreset='formReset'>
<label>输入接龙内容:
<input type="text" name="content" value="请输入" placeholder="输入您要接龙的内容" ></input>
<button form-type="submit" >保存</button>
</label>
</form>
</view>
</block>
</scroll-view>

@ -0,0 +1,69 @@
/* pages/opration/opration.wxss */
.row input {
font-size: 0.7rem;
flex-grow: 3;
border: ipx solid #09c;
display: inline-block;
border-radius: 0.3rem;
box-shadow: 0 0 0.15rem rgb(22, 4, 4);
padding: 0.3rem;
}
.row button {
padding: 0.3rem;
margin: 3rem 1rem;
}
.container {
padding: 1rem;
font-size: 0.9rem;
line-height: 1.5rem;
}
.row {
display: flex;
align-items: center;
margin-bottom: 0.8rem;
}
.row text {
flex-grow: 1.5;
text-align: right;
}
.form-box picker{
margin: 30rpx 30rpx 0 0;
color: rgb(153, 153, 153);
}
.title {
background: #fff;
display: inline-block;
border-radius: 4px;
padding: 4px;
margin: 10px 0;
position: relative;
}
.title::after {
content: "";
position: absolute;
top: 50%;
width: 100vw;
height: 4px;
background: #fff;
}
.release-view{
padding: 8px;
background-color: #fff;
border-radius: 4px;
}
.release-view input{
border: 1px #ccc solid;
border-radius: 4px;
margin: 6px 0;
padding: 4px;
}

@ -0,0 +1,42 @@
{
"pages": [
"pages/index/index",
"pages/menu/menu",
"pages/my/my",
"pages/bd/bd",
"pages/uploadfile/uploadfile",
"pages/list/list",
"pages/operation/operation"
],
"window": {
"backgroundTextStyle": "light",
"navigationBarBackgroundColor": "#fff",
"navigationBarTitleText": "班级通",
"navigationBarTextStyle": "black"
},
"tabBar": {
"selectedColor": "#33a3dc",
"list": [
{
"pagePath": "pages/index/index",
"text": "首页",
"iconPath": "/static/index/index.png",
"selectedIconPath": "/static/index/index_active.png"
},
{
"pagePath": "pages/menu/menu",
"text": "菜单",
"iconPath": "/static/menu/menu.png",
"selectedIconPath": "/static/menu/menu_active.png"
},
{
"pagePath": "pages/my/my",
"text": "我的",
"iconPath": "/static/my/my.png",
"selectedIconPath": "/static/my/my_active.png"
}
]
},
"style": "v2",
"sitemapLocation": "sitemap.json"
}

@ -0,0 +1,20 @@
// app.ts
App<IAppOption>({
globalData: {
},
onLaunch() {
// 展示本地存储能力
// const logs = wx.getStorageSync('logs') || []
// logs.unshift(Date.now())
// wx.setStorageSync('logs', logs)
// 登录
// wx.login({
// success: res => {
// console.log(res.code)
// 发送 res.code 到后台换取 openId, sessionKey, unionId
// },
// })
},
})

@ -0,0 +1,6 @@
/**app.wxss**/
page {
height: 100%;
overflow-y: scroll;
background: rgb(243, 243, 243);
}

@ -0,0 +1,135 @@
// const app = getApp()
Page({
data: {
realName: '',
number: '',
isDisabled: true //表示页面加载完成时disabled为禁用状态
},
onLoad: function(options) {
let number = options.number
let realName = options.realName
this.setData({
number,
realName
})
},
save: function() {
let realName = this.data.realName;
let number=this.data.number
let skey = wx.getStorageSync('skey')
wx.request({
url: 'http://192.168.58.210:81/save',
method: 'GET',
data: {
skey:skey,
number:number,
realName:realName
},
success: function(res :any) {
if (res.data.error == true) {
wx.showToast({
title: res.data.message,
icon: 'none',
duration: 2000
})
} else {
wx.showToast({
title: res.data.message,
icon: 'success',
duration: 5000
})
wx.removeStorageSync('info')
wx.navigateBack({
delta: 2
})
}
}
})
},
inputRealName: function(e :any) {
var realName = e.detail.value
this.setData({
realName
})
console.log(realName)
if (realName !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
inputNumber: function(e :any) {
var number = e.detail.value
this.setData({
number
})
// console.log()
if (number !== '') {
this.setData({
isDisabled: false
})
} else {
this.setData({
isDisabled: true
})
}
},
onReady: function() {
},
/**
* --
*/
onShow: function() {
},
/**
* --
*/
onHide: function() {
},
/**
* --
*/
onUnload: function() {
},
/**
* --
*/
onPullDownRefresh: function() {
},
/**
*
*/
onReachBottom: function() {
},
/**
*
*/
onShareAppMessage: function() {
}
})

@ -0,0 +1,15 @@
<!--pages/bd/bd.wxml-->
<view>
<view class="btn-area" id="buttonContainer">
<view class='binding-item'>
<view>姓名</view>
<input type="text" placeholder="请输入您的真实姓名" value="{{realName}}" bindinput="inputRealName"></input>
</view>
<view class='binding-item'>
<view>学号</view>
<input type="number" placeholder="请输入您的学号" value="{{number}}" bindinput="inputNumber"></input>
</view>
<button type="submit" bindtap="save" class="save" disabled='{{isDisabled}}'>提交</button>
</view>
</view>

@ -0,0 +1,30 @@
/* pages/bd/bd.wxss */
.binding-item {
margin: 40rpx;
padding-top: 20rpx;
padding-bottom: 40rpx;
display: flex;
font-size: 32rpx;
/* 在模拟器为iphone 6 时1px=2rpx 这里设置32rpx即16px */
border-bottom: 1rpx solid #dedede;
}
.binding-item input {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
padding-left: 20rpx;
}
.binding-btn{
background-color:#19be6b;
padding: 28rpx;
margin: 40rpx;
color: pink;
text-align: center;
}
.button{
margin-top: 30rpx;
margin-bottom: 30rpx;
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save