EMLOG开源资源网模板
使用说明
先运行模板目录下文件初始化 域名/content/templates/weike/update.php
然后首页下面会有一个小分区报错
只需在模板设置的人气排行右侧专区那里填个分类id即可
模板不依赖模板设置插件
各类网站源码
先运行模板目录下文件初始化 域名/content/templates/weike/update.php
然后首页下面会有一个小分区报错
只需在模板设置的人气排行右侧专区那里填个分类id即可
模板不依赖模板设置插件
系统设计理念说明
详细安装、配置教程
https://www.bilibili.com/video/BV1TD4y1Y7CV?share_source=copy_web
二、核心功能说明
系统一共有三个使用角色,相当于有三套系统,在这里只介绍核心的一些功能及实现。
导入学生名单或者成绩名单
复制代码 隐藏代码
public class ReadStudentXlsFiles {
private static String basePath = "G:\\Projects\\Materials\\cqes4cs\\files\\students\\";
public static List<HashMap<String, Object>> readStudentXlsx(String fileFinalName) throws FileNotFoundException {
// 将文件存入本地,便于读取
String filePath = basePath + fileFinalName;
File file = new File(filePath);
FileInputStream fs = new FileInputStream(file);
List<HashMap<String, Object>> lst = new ArrayList<>();
try {
String fileName = file.getName();
String[] fileParts = fileName.split("\\.");
Workbook sheets;
if (fileParts[fileParts.length - 1].equals("xls")) {
sheets = new HSSFWorkbook(fs);
} else {
sheets = new XSSFWorkbook(fs);
}
Sheet sheet = sheets.getSheetAt(0);
int rowCount = sheet.getLastRowNum();
int colNum = sheet.getRow(0).getPhysicalNumberOfCells();
// 遍历行
for (int i=1; i<=rowCount; i++) {
HashMap<String, Object> map = new HashMap<>();
Row row = sheet.getRow(i);
// 遍历列
for(int j = 0; j < colNum; j++){
if(row.getCell(j) != null){
row.getCell(j).setCellType(CellType.STRING);
String cellValue = row.getCell(j).getStringCellValue();
switch (j) {
case 0:
map.put("userid", cellValue);
break;
case 1:
map.put("name", cellValue);
break;
case 2:
map.put("major_code", cellValue);
break;
case 3:
map.put("class", cellValue);
break;
case 4:
map.put("year", cellValue);
break;
default: break;
}
}
}
lst.add(map);
}
fs.close();
return lst;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
}
处理加分规则配置
// notation
@RequestMapping("/modifyContestConfig")
@Transactional
@RequiresRoles("manager")
public ResponseEntity modifyContestConfig(@RequestParam Map<String, String> map) {
List<HashMap<String, Object>> list = new ArrayList<>();
Map<String, String> nameMap = new HashMap<>();
Map<String, String> indexMap = new HashMap<>();
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getKey().equals("name")) {
nameMap = JSON.parseObject(entry.getValue(), HashMap.class);
}
if (entry.getKey().equals("index")) {
indexMap = JSON.parseObject(entry.getValue(), HashMap.class);
}
}
// 清空配置表
if (nameMap.size() == 0 || indexMap.size() == 0) {
basicInfoMapper.deleteContestConfig();
return ResponseEntity.ok().body(ResultVOUtil.successSimple());
}
// 组装list
for (Map.Entry<String, String> entry : map.entrySet()) {
if (entry.getKey().equals("name")) break;
if (entry.getKey().equals("index")) break;
HashMap<String, Object> mapp = new HashMap<>();
mapp.put("uuid", entry.getKey());
mapp.put("config", entry.getValue());
mapp.put("name", nameMap.get(entry.getKey()));
mapp.put("indexid", indexMap.get(entry.getKey()));
list.add(mapp);
}
Boolean flag = false;
try {
// 先存入临时表
basicInfoMapper.updateContestConfigTemp(list);
// 再删除原始表里面的所有数据
basicInfoMapper.deleteAllContestConfig();
// 最后将临时表的数据复制到原始表中
basicInfoMapper.updateContestConfig();
// 最后删除临时的规则表,方便下一次的数据存储
basicInfoMapper.deleteContestsConfigTemp();
} catch (Exception e) {
flag = true;
throw new RuntimeException("New Error");
}
if (flag) return ResponseEntity.ok().body(ResultVOUtil.error(1, "操作失败,请联系管理员"));
return ResponseEntity.ok().body(ResultVOUtil.successSimple());
}
|
编辑加分规则:
setroot(node, data) {
// 取消设置为叶子节点
if (data.tag == 'root') {
let parent = node.parent
let newChild = { uuid: data.uuid, name: data.name, children: [] }
let children = parent.data.children || parent.data
let index = children.findIndex(d => d.uuid === data.uuid)
children.splice(index, 1)
if (!parent.data.children) {
this.$set(parent.data, 'children', [])
}
parent.data.children.push(newChild)
return
}
// 设置叶子节点
if (data.children.length > 0) return this.$msg.error("存在下一级的时候不能设置为叶子节点")
let temp = {
uuid: data.uuid,
name: data.name,
tag: 'root',
score: 0
}
this.$prompt('请为叶子节点设置分值,最多保留两位小数', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消'
}).then(({ value }) => {
if (isNaN(value) || value.trim().length == 0) return this.$msg.error("请输入正确的数值")
temp.score = value
let parent = node.parent
let children = parent.data.children || parent.data
let index = children.findIndex(d => d.uuid === data.uuid)
children.splice(index, 1)
parent.data.children.push(temp)
}).catch(()=>{return this.$msg.error("输入加分分值才能设置为叶子节点")})
}
|
// 选择某个比赛后搜索比赛的相关配置
async handleSelect(item) {
let {data: res} = await this.$http.post('/getContestConfigById', this.$qs.stringify({id: item.id}))
if (!res) return
if (res.code != 0) return this.$msg.error(res.message)
this.curLevelConfig = JSON.parse('[' + res.data.classconfig + ']')
this.stepForm.ruleid = res.data.uuid
this.stepForm.name = res.data.name
this.toNext()
},
|
三、系统界面一览





学分评价结果总览:

学分评价整体结果:

处理学分申请异议:

管理常见专业赛事配置:

学生信息&学分管理:

加分规则配置:

学生综合素质可视化分析:

项目下载
后端搭建
数据导入

Redis和数据库
静态资源映射

系统使用入门
【重要说明】
价值1000元全新的UI,新版和老版本的UI都在压缩包里面了。
这个是专业版的,而且题库贼鸡儿全,百分之99的题都能搜到的。
运营版学法减分小程序源码,后台基于thinkphp的微信小程序源码。
程序开源无病毒,放心研究学习内置的算法和框架架构!!!!
php5.6+Mysql(环境配置为锦尚中国版主调试时的配置 请严格按照配置环境要求运行)
经过电脑管家、网站安全狗扫描特征码,没有发现可疑文件,请放心使用!

小龟视频是一款基于苹果CMS系统的移动端在线视频播放软件,支持mp4、flv、m3u8、rmvb、mkv等主流视频格式的播放,现有安卓+ios版本。
小龟视频反编译文本教程:
1.先爆破安卓签名,需要用到MT管理器,百度自行下载
2.搜索:getcertsign
3.添加return-void然后保存返回,回到首页进行APK签名,就OK了
注意:以上步骤小编已经修改好,无需修改,这里只是告诉你们步骤。
爆破好之后就是修改自己的域名:APK进行解压缩
1.接下来就是利用010Editor工具修改域名(温馨提示:域名一定要与原来APP的域名畅读一致不然闪退)
2.安卓端修改/lib/arm64-v8a/linapp.so和/lib/armeabi-v7a/linapp.so这两个文件里面的域名
域名修改好后,压缩,记得把ZIP后缀改成APK。(苹果同理只是后缀改成IPA)
苹果修改域名路劲/Runner.app/Frameworks/App.framework/app里面两个域名修改成自己的即可
关于苹果IPA怎么签名,可以使用爱思助手进行签名,不过有个短板,只能使用7天,过后得重新签名才能使用。(爱思助手不会签名的自行百度)

KuYun企业授权管理系统源码开源版,带代理、工单、盗版检测管理等功能
1、网站基本管理、系统设置、公告设置、接口设置、价格设置、下载设置。
2、文章管理、广告轮图管理、添加授权、授权列表、授权日志。
3、支付订单、充值订单、消费订单、生成卡密、卡密列表、卡密授权详情、卡密生成日志。
4、添加代理、代理管理、分佣设置、分佣明细、提现列表、工单管理、版本管理。
5、管理员添加、管理员列表、资源部源码、管理员登入日志、盗版管理、盗版列表、获取盗版密码
1、普通会员【业务充值、充值记录、授权记录、消费记录、我的工单、个人设置】。
2、普通代理【业务充值、充值记录、授权记录、消费记录、添加授权、授权列表、我的工单、个人设置】。
3、高级代理【业务充值、充值记录、授权记录、消费记录、添加授权、授权列表、生成卡密、卡密列表、卡密使用记录、我的工单、个人设置】。
4、砖石代理【业务充值、充值记录、授权记录、消费记录、添加授权、授权列表、生成卡密、卡密列表、卡密使用记录、添加代理、代理列表、分佣记录、分佣提现、提现列表、我的工单、个人设

织梦仿XDGAME主题游戏资讯下载游戏网站源码 网站模板整体很简洁。
发布文章的时候填写下载地址内容页的下载地址就会显示出来,不填不显示。
后台自定义设置软件评分。默认百分之50。
关于我们、侵权处理、版权声明等在单页管理里面修改信息就行了,修改完生成一下单页即可。

2022最新酒桌小游戏喝酒小程序源码,带流量主;喝酒神器3.6,我修改增加了广告位,根据文档直接替换即可,原版本没有广告位
直接上传源码到开发者端即可,通过后改广告代码,然后关闭广告展示提交,通过后打开即可。
