一.前言
隨著社會(huì)的發(fā)展,跑腿平臺(tái)大量涌現(xiàn),給人們帶來了極大的便利.大學(xué)校園處處充滿商機(jī),因?yàn)閷W(xué)校的區(qū)域性市場(chǎng),校園跑腿經(jīng)濟(jì)開始流行,包括代取快遞,送書,幫忙帶飯等,不過目前大多是以群聊等形式的小區(qū)域?qū)嵤?支付相應(yīng)的報(bào)酬,沒有具體的體系和管理制度,有一定的限制.因此在校園內(nèi)創(chuàng)建一個(gè)基于微信小程序的校園跑腿平臺(tái),不僅能滿足學(xué)生的需求,還能為他們提供一個(gè)安全感,信任感的符合校園本地化的生活平臺(tái)
??博主介紹:?全網(wǎng)粉絲10W+,CSDN全棧領(lǐng)域優(yōu)質(zhì)創(chuàng)作者,博客之星、掘金/華為云/阿里云等平臺(tái)優(yōu)質(zhì)作者。
???? 精彩專欄 推薦訂閱????
計(jì)算機(jī)畢業(yè)設(shè)計(jì)精品項(xiàng)目案例-200套
??文末獲取源碼+數(shù)據(jù)庫+文檔+調(diào)試運(yùn)行??
感興趣的可以先收藏起來,還有大家在畢設(shè)選題,項(xiàng)目以及論文編寫等相關(guān)問題都可以和學(xué)長溝通,希望幫助更多的人
二.技術(shù)環(huán)境
jdk版本:1.8 及以上
ide工具:Eclipse或者 IDEA,微信小程序開發(fā)工具
數(shù)據(jù)庫: mysql5.7 (必須5.7)
編程語言: Java
java框架:SSM
maven: 3.6.1
詳細(xì)技術(shù):HTML+CSS+JAVA+SSM+MYSQL+VUE+MAVEN+微信開發(fā)工具
三.功能設(shè)計(jì)
本基于微信小程序的跑腿系統(tǒng)有管理員,校友,跑腿員三個(gè)角色。管理員功能有個(gè)人中心,校友管理,跑腿員管理,校友動(dòng)態(tài)管理,發(fā)布任務(wù)管理,任務(wù)訂單管理,消息中心管理,系統(tǒng)管理。校友角色主要是發(fā)布跑腿任務(wù),跑腿員主要是接跑腿任務(wù)。校友和跑腿員都是在微信小程序上進(jìn)行注冊(cè)登錄和發(fā)任務(wù)以及接單的,管理員管理平臺(tái)基礎(chǔ)數(shù)據(jù)。其中系統(tǒng)管理員功能結(jié)構(gòu)圖如下所示:
四.數(shù)據(jù)設(shè)計(jì)
開發(fā)一個(gè)系統(tǒng)也需要提前設(shè)計(jì)數(shù)據(jù)庫。這里的數(shù)據(jù)庫是相關(guān)數(shù)據(jù)的集合,存儲(chǔ)在一起的這些數(shù)據(jù)也是按照一定的組織方式進(jìn)行的。目前,數(shù)據(jù)庫能夠服務(wù)于多種應(yīng)用程序,則是源于它存儲(chǔ)方式最佳,具備數(shù)據(jù)冗余率低的優(yōu)勢(shì)。雖然數(shù)據(jù)庫為程序提供信息存儲(chǔ)服務(wù),但它與程序之間也可以保持較高的獨(dú)立性??偠灾瑪?shù)據(jù)庫經(jīng)歷了很長一段時(shí)間的發(fā)展,從最初的不為人知,到現(xiàn)在的人盡皆知,其相關(guān)技術(shù)也越發(fā)成熟,同時(shí)也擁有著堅(jiān)實(shí)的理論基礎(chǔ)。本系統(tǒng)主要實(shí)體屬性圖如下所示:
五.部分效果展示
5.1用戶微信端實(shí)現(xiàn)效果
校友注冊(cè)登錄后可以發(fā)布任務(wù)。界面如下圖所示:
跑腿員注冊(cè)登錄后可以在線接單。界面如下圖所示:
校友和跑腿員登錄都有我的界面,我的界面包含當(dāng)前登錄賬號(hào)和校友動(dòng)態(tài)等信息。界面如下圖所示:
5.2后臺(tái)管理端實(shí)現(xiàn)效果
管理員可以管理校友信息,可以對(duì)校友信息添加修改刪除。具體界面的展示如下圖所示。
管理員可以對(duì)跑腿員信息進(jìn)行添加修改刪除操作。具體界面如圖
所示。
管理員可以對(duì)校友動(dòng)態(tài)信息進(jìn)行添加修改刪除操作。界面如下圖所示:
六、論文截圖
文章來源:http://www.zghlxwxcb.cn/news/detail-773585.html
七.部分功能代碼
/**
* 權(quán)限(Token)驗(yàn)證
*/
@Component
public class AuthorizationInterceptor implements HandlerInterceptor {
public static final String LOGIN_TOKEN_KEY = "Token";
@Autowired
private TokenService tokenService;
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String servletPath = request.getServletPath();
if("/dictionary/page".equals(request.getServletPath()) || "/file/upload".equals(request.getServletPath()) || "/yonghu/register".equals(request.getServletPath()) ){//請(qǐng)求路徑是字典表或者文件上傳 直接放行
return true;
}
//支持跨域請(qǐng)求
response.setHeader("Access-Control-Allow-Methods", "POST, GET, OPTIONS, DELETE");
response.setHeader("Access-Control-Max-Age", "3600");
response.setHeader("Access-Control-Allow-Credentials", "true");
response.setHeader("Access-Control-Allow-Headers", "x-requested-with,request-source,Token, Origin,imgType, Content-Type, cache-control,postman-token,Cookie, Accept,authorization");
response.setHeader("Access-Control-Allow-Origin", request.getHeader("Origin"));
IgnoreAuth annotation;
if (handler instanceof HandlerMethod) {
annotation = ((HandlerMethod) handler).getMethodAnnotation(IgnoreAuth.class);
} else {
return true;
}
//從header中獲取token
String token = request.getHeader(LOGIN_TOKEN_KEY);
/**
* 不需要驗(yàn)證權(quán)限的方法直接放過
*/
if(annotation!=null) {
return true;
}
TokenEntity tokenEntity = null;
if(StringUtils.isNotBlank(token)) {
tokenEntity = tokenService.getTokenEntity(token);
}
if(tokenEntity != null) {
request.getSession().setAttribute("userId", tokenEntity.getUserid());
request.getSession().setAttribute("role", tokenEntity.getRole());
request.getSession().setAttribute("tableName", tokenEntity.getTablename());
request.getSession().setAttribute("username", tokenEntity.getUsername());
return true;
}
PrintWriter writer = null;
response.setCharacterEncoding("UTF-8");
response.setContentType("application/json; charset=utf-8");
try {
writer = response.getWriter();
writer.print(JSONObject.toJSONString(R.error(401, "請(qǐng)先登錄")));
} finally {
if(writer != null){
writer.close();
}
}
// throw new EIException("請(qǐng)先登錄", 401);
return false;
}
}
最后
最新計(jì)算機(jī)畢業(yè)設(shè)計(jì)選題篇-選題推薦(值得收藏)
計(jì)算機(jī)畢業(yè)設(shè)計(jì)精品項(xiàng)目案例-200套(值得訂閱)文章來源地址http://www.zghlxwxcb.cn/news/detail-773585.html
到了這里,關(guān)于校園跑腿微信小程序的設(shè)計(jì)與實(shí)現(xiàn)(源碼+LW)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!