2023高职36 区块链技术应用赛项赛题第5套(赛项赛题).docx
《2023高职36 区块链技术应用赛项赛题第5套(赛项赛题).docx》由会员分享,可在线阅读,更多相关《2023高职36 区块链技术应用赛项赛题第5套(赛项赛题).docx(30页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、2023年全国职业院校技能大赛高职组“区块链技术应用”赛项赛卷(5卷)任务书参赛队编号:ElectionSeal_Test. sol 的测试文件编译并部署合约,配置项目的ElcctionScal Test, sol测试脚本文件。2 .注释测试文件中自动生成的测试函数checkSuccess () checkSuccess2() checkFailure() checkSenderAndValueO 相关代码,运行测 试按钮基于 remix 的测试项目,将 checkSuccess() checkSuccess2() checkFailureO checkSenderAndValueO相关代码注
2、释掉并进行相关测试;3 .实例化在测试文件中定义测试ElectronicSeal合约变量并在beforcAll ()函数中 进行实例化。4 .创建测试函数测试印章账户数量基于remix的测试项目,补全位于test文件夹中的ElectionSeal_Test. sol 合约测试文件,添加测试用例,补全测试印章账户数量函数。5 .创建测试函数测试印章账户签章基于remix的测试项目,补全位于test文件夹中ElectionSeal_Test. sol 合约测试文件,添加测试用例,创建测试函数测试印章账户签章。模块三:区块链应用系统开发(30分)任务37:区块链电子签章前端功能开发1 .请基于前端系
3、统的开发模板,在注册页面register, html文件中添加对 应的代码逻辑,实现对前端系统的注册功能,并测试功能完整性,示例页面如 下;硼题目的具体要求如下:(1)注册身份证号码的数据实现双向绑定(2)注册按钮的事件绑定(3)将用户输入的注册信息向后端系统发送注册请求register, html代码片段1:span class=Minput-group-addon glyphicon glyphicon-list-alt” id=,basic-addonl ,X/spaninput type=text class=Mform-control placeholder=”身份证号码 (必填)a
4、utocomplete=off逐尹缜分代码片段2:div class=Mfonn-group,r style=width: 50%”button type=button class=Hbtn btn-success form-control分确定/button代码片段3methods: submit() if (this. user, username = 1 1) alert(用户名不能为空”) returnif (this. user, password = ) alert(密码不能为空) return)if (this.user. chainAccount = r) alert (区块链
5、账户地址不能为空”) return)if (this. user, name = ) alert(姓名不能为空) return)if (this. user. cardld = 1 ) alert (身份证号码不能为空)return if (this.user.phone = ) alert(电话号码不能为空)return)选手填写部分)2.请基于前端系统的开发模板,在登录页面login, html文件中添加对应 的代码逻辑,实现对前端系统的登录功能,并测试功能完整性,示例页面如下:登录本题目的具体要求如下:(1)登录按钮的事件绑定(2)用户输入的登录用户名和密码通过双向绑定存放在user中(
6、3)登录成功页面跳转到main, html页面(4)本地保存登录状态信息(token)login, html代码片段1:确定/button代码片段2:创建Vue实例new Vue(el: #app, el用于指定当前Vue实例为哪个容器服务,值通常为css选择器字符串data: /data中用于存储数据,数据供el所指定的容器去使用, 值我们暂时先写成一个对象。user: 选手填写部分,tip: false, n ifmsg:,methods: submit () if (this.user, username = r1) this, msg = ”用户名不能为空this.tip = true
7、setTimeout () = this, tip = false, 1000)returnif (this. user. password = ) this. msg =密码不能为空this.tip = truesetTimeout () = this.tip = false, 1000)returnaxios. post (http: /localhost/user/login,r, this.user).then(response = (i f (response, data, resultCode 二二 200) this, msg =登录成功 this.tip = true setT
8、imeout() = 选手填写部分), 1000)选手填写部分 else this, msg =登录失败 this, tip = true setTimeout()= ( this.tip = false ), 1000).)3.请基于前端系统的开发模板,在个人印章页面myseal. html文件中添加对 应的页面代码逻辑,实现对前端系统的个人印章功能,并测试功能完整性,示例 页面如下:具体要求如下:(1)注销按钮的事件绑定(2)注销时清除本地保存的登录状态信息(token)(3)发送请求到后端系统携带本地保存的登录状态信息(token)(4)接收后端系统发送过来的印章图片信息myseal.
9、html代码片段1:代码片段2:methods:logout () 选手填写部分代码片段3/请求发前拦截,header中添加tokenaxios. interceptors, request, use(config = config, headers. Authorization 二选手填写部分 return config代码片段4:axios. get(nhttp:/localhost/user/sear,). then(response = if (response. data. resultCodc = 200) this. seal二选手填写部分4.请基于前端系统的开发模板,请在文件签
10、章页面signature.html文件中 添加对应的页面代码逻辑,实现对前端系统的文件签章业务功能,并测试功能完 整性,示例页面如下:具体要求如下:(1)创建canvas画布实例(2)向后端系统发送签章请求url(3)向后端系统获取个人印章请求url(4)接收后端系统发送过来的印章图片信息 signature, html 代码片段1: signature() if (this.status = 0) this, msg =请上传文档 this.tip = true setTimeout() = this, tip = false), 1000) returnthis.status = 2var
11、 canvas;canvas二选F;写部分canvas, width = $ (poster). width ()canvas, height = $ (,r#poster,r). height ()var context = canvas. getContext (2dr);context, rect(0, 0, canvas, width, canvas, height);context. fillStyle =context, fill ();代码片段2:uploadSeal () if (this.status != 2) this. msg =文档未上传或未签章this. tip =
12、 true setTimeout() = this.tip = false , 1000)returnvar posterlmg = document. getElementByTd(rposter); var imgBase64 = posterlmg. getAttribute(src);axios. post (选尸填写部分”,(nfilename1: this, filename,imgBas if (response. data. resultCode = 200) this. msg =签章文档上链成功this, tip = truesetTimeout() = this, tip
13、 = falsewindow, location, href = main.html”;),1000) else this, msg =签章文档上链失败this.tip = truesetTimeout()= (this.tip = false, 1000)代码片段3:mounted () 背景描述电子签章可实现与纸质文件盖章操作相似的可视效果,以保障数 据来源的真实性、数据完整性以及签名人行为的不可否认性。传统的电子签章系统是基于中心化的,也就是数据是集中存储在 中心数据库中,这就导致传统电子签章使用记录存在被篡改、伪造的 风险。而区块链电子签章系统在传统电子签章系统的基础上,可以借助 于区
14、块链技术,用不可篡改、不可抵赖的方式记录电子签章的整个流 转过程,如领取、使用、查询等,从而解决传统电子签章系统存在的 潜在风险。某市政务部分拟开发一款区块链电子签章系统,该区块链电子签 章系统包含为印章使用者、监管、平台运营方的管理功能,场景开放 平台,印章底层引擎,和区块链基座。场景开放平台面向各类政务系 统与第三方电子签名服务商提供电子签章相关的开放能力。场景开放 平台对上提供相关的基础能力,对下连接区块链基座。市场主体监管部门第三方电子签名胭务商区块镇电子印童系统印,信息源系统(数据同步所有誓章管印章瞿平台场景开放平台印章底层引擎1/1 外部联盟链跨能互通区块隹基座/请求发前拦截,he
15、ader中添加tokenaxios. interceptors, request, use(request = request, headers. Authorization = localstorage, getItem(Authorization)return request)响应拦截器(认证授权)axios. interceptors, response, use(response = if (response, data. resultCodc = 401) 跳转页面window, location, href = login, html;return response)/TODO:
16、5-1-4-3请补充向服务器发送获取个人印章请求代码 axios. get (二:尸力?分).then (response = if (response, data. resultCode = 200) this. seal =选手.)5.请基于前端系统的开发模板,在文件验章页面verity.html文件中添加 对应的页面代码逻辑,实现对前端系统的文件验章业务功能,并测试功能完整 性,示例页面如下:于区SHI于蜃俄具体要求如下:(1)将验章结果数据显示在页面中(2)向后端系统发送验章请求并携带验章文件数据 verity, html代码片段1:div class=modal-dialog rol
17、e=documentdiv class=modal-content”)div class=modal-header&t i mes; 签章信息 label)姓名:选手填写部 分label)身份证号码:-:p-填写部分区块链账户地址: 选手填写部分label)文件名称:/label尹 写部分label)文件编码:/label)选手以 写部分label签章时间:选了境 写部分button type=button class=btnbtn-success data-disn)iss=modal11 click=finish确定/button)代码片段2async verify (event) 同步发
18、送axios请求(获取数据后弹出模态框)if (this, status = 0) this, msg =请上传文档this.tip = trueevent. stopPropagation() 阻止事件冒泡(防止弹出模态框)setTimeout () = this, tip = false ), 1000)return )await axios. post (逸手填写部分 imgBase64, : this, contract), then (response = if (response. data. resultCode = 200) this, verifylnfo = respons
19、e, data, data),任务3-2:区块链应用系统后端开发1 .请基于后端系统的开发模板,在userService. java文件中补充对应的 代码逻辑,完成后端代码逻辑,实现对后端系统的注册功能,并测试功能完整 性,题目具体要求如下:(1)根据用户注册信息中的用户名和账户地址从数据库中查询账户信息是否 存在(2)将用户密码进行md5加密操作(3)将电子印章字节数组转为字符串(4)将用户注册信息写入数据库汇总userService. java代码片段1:public boolean register(RegisterBean registerBean) 校验用户名或账户地址是否重复Que
20、ryWrapper queryWrapper = new QueryWrapperO (); queryWrapper. eq(HusernameK, registerBean. getUsername().or(). eq(chain accountn,registerBean. getChainAccou nt();UserEnti ty userOne =选手填写部分if (userOne != null) log. info(注册失败:用户名或账户地址重复”);return false;)拷贝对象UserEntiuserEntity = new UserEntity ();BeanUt
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2023高职36 区块链技术应用赛项赛题第5套赛项赛题 2023 高职 36 区块 技术 应用 赛项赛题第 赛项赛题
限制150内