计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-项目实战
✨作者主页:IT毕设梦工厂✨
个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。
☑文末获取源码☑
精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目
文章目录
- 一、前言
- 二、开发环境
- 三、系统界面展示
- 四、部分代码设计
- 五、论文参考
- 六、系统视频
- 结语
一、前言
在当今数字化社会,人们的生活与互联网紧密相连。特别是在校园环境中,学生们的生活方式已经深深地受到了互联网的影响。失物招领问题在校园中是一个常见的问题,影响着广大的师生的日常生活和学习。因此,开发一款基于互联网的校园失物招领平台,如微信小程序或安卓APP,已经成为了一个迫切的需求。
尽管目前已经存在一些失物招领的解决方案,如校园公告板、失物招领微信群等,但它们存在着一些问题。首先,这些平台的信息传播范围有限,往往只能在一定区域内进行传播,无法覆盖整个校园。其次,这些平台的信息更新速度慢,往往需要一定的时间才能更新,无法满足快速失物招领的需求。因此,我们需要一种更便捷的解决方案来解决这些问题。
本课题的研究目的是开发一款基于互联网的校园失物招领平台,以解决现有解决方案的问题。具体来说,我们将实现以下功能:
用户可以通过微信小程序或安卓APP上传失物信息,包括物品名称、描述、丢失地点等;
用户可以通过微信小程序或安卓APP查询失物信息,包括已发布的失物信息、失物招领状态等。
本课题的研究意义在于提供一种更便捷的校园失物招领解决方案。通过开发基于互联网的校园失物招领平台,我们可以帮助学生和教职工更快速地找到丢失的物品,提高他们的学习和工作效率。同时,我们也可以通过平台的数据分析功能,了解校园内失物招领的现状和问题,为学校的管理和改进提供参考。因此,本课题的研究成果具有重要的实用价值和社会意义。
二、开发环境
- 开发语言:Java
- 数据库:MySQL
- 后端:SpringBoot
- 前端:微信小程序/Android+uniapp+Vue
三、系统界面展示
- 校园失物招领微信小程序/安卓APP界面展示:
四、部分代码设计
- 校园失物招领微信小程序/安卓APP项目实战-代码参考:
@Controller
@RequestMapping("/found")
public class FoundController {@Autowiredprivate WupinService wupinService;@Autowiredprivate ZhandainService zhandainService;public String wupinmingcheng = "";//寻物列表@GetMapping("/list/{currPage}")@ResponseBody//返回json数据到前端public Result list(@PathVariable int currPage) {//当前页数int pageCount = currPage;//总记录数Integer totalCount = wupinService.findXunWuTotal();//重试次数int count = 2;while (totalCount == 0 && count > 0) {totalCount = wupinService.findXunWuTotal();count--;}//总页数Integer totalPage = totalCount % 10 == 0 ? totalCount / 10 : totalCount / 10 + 1;//如果记录数为0或请求页面大于总页数或为负数if (pageCount > totalPage || pageCount < 0 || totalCount == 0) {return new Result(Code.GET_ERR, Msg.QUERY_ERR);} else {//如果数据正常则写成json格式返回前端//每页显示数,10条Integer pageSize = 10;// 计算当前查询页数Integer startIndex = (pageCount - 1) * pageSize;List<Wupin> wuPinEntitys = wupinService.findXunWuList(startIndex, pageSize);//重试次数int retry = 2;while (wuPinEntitys.size() == 0 && retry > 0) {wuPinEntitys = wupinService.findXunWuList(startIndex, pageSize);retry--;}if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("totalPage",totalPage);map.put("totalCount",totalCount);map.put("currPage",pageCount);map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}}//寻物页面搜索信息处理@PostMapping("/search")public String search(Wupin Wupin, Model model, HttpSession session) {wupinmingcheng = Wupin.getWupinmingcheng();if (wupinmingcheng.equals("")) {
// model.addAttribute("errorMsg", "请输入关键词!");Object obj = session.getAttribute("dbWupin");if (null != obj) {session.removeAttribute("dbWupin");}return "found2";}wupinmingcheng = "%" + wupinmingcheng + "%";List<Wupin> dbWupin = wupinService.findXunWuByWuPinName(wupinmingcheng);if (dbWupin.size() > 0) {return "redirect:/found/resSearch";} else {
// model.addAttribute("errorMsg", "该物品不存在!");Object obj = session.getAttribute("dbWupin");if (null != obj) {session.removeAttribute("dbWupin");}return "found2";}}//返回搜索结果@GetMapping("/resSearch")public String resSearch(HttpSession session) {List<Wupin> dbWupin = wupinService.findXunWuByWuPinName(wupinmingcheng);session.setAttribute("dbWupin", dbWupin);return "found2";}//寻物页面详情页@GetMapping("/content")public String content(String id, Map<String, Object> map) {Wupin dbWupin = wupinService.findXunWuById(id);String zhanDianName = dbWupin.getZhandianmingcheng();Zhandian dbZhanDian = null;if (!zhanDianName.equals("")) {dbZhanDian = zhandainService.findByZhanDianName(zhanDianName);}dbWupin.setLianxidianhua(dbZhanDian.getLianxidianhua());map.put("dbWupin", dbWupin);return "foundContent";}//个人中心寻物审核中列表@PostMapping("/userXWSH")@ResponseBody//返回json数据到前端public Result userXunWu(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findXWSHByUserId(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心寻物审核未通过列表@PostMapping("/userXWJJ")@ResponseBody//返回json数据到前端public Result userXWJJ(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findXWSHByUserIdJJ(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心寻物审核详情页@GetMapping("/XWSHContent")public String XWSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findXWSHById(id);map.put("dbWupin", dbWupin);return "userXWContent";}//个人中心寻物审核删除@GetMapping("/XWSHDelete")public String XWSHDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteXWSHById(id);return "userXunWu";}//个人中心寻物公示中列表@RequestMapping("/userXWXZ")@ResponseBody//返回json数据到前端public Result userXWXZ(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findXWByUserId(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心寻物已完成列表@RequestMapping("/userXWXZWC")@ResponseBody//返回json数据到前端public Result userXWXZWC(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findXWByUserIdWC(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心寻物详情页@GetMapping("/XWContent")public String XWContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findXunWuById(id);map.put("dbWupin", dbWupin);return "userXWContent";}//个人中心寻物删除@GetMapping("/XWDelete")public String XWDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteXWById(id);return "userXunWu";}//管理员寻物审核列表@RequestMapping("/HTXWSH")@ResponseBody//返回json数据到前端public Result HTXWSH() {List<Wupin> wuPinEntitys = wupinService.findAllXWSH();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员查看寻物审核详情页@GetMapping("/HTXWSHContent")public String HTXWSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findXWSHById(id);map.put("dbWupin", dbWupin);return "admin/houTaiXWContent";}//管理员寻物审核同意@GetMapping("/HTXWSHTYUpdate")public String HTXWSHTYUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateXWSH(id);Wupin dbWupin = wupinService.findXWSHById(id);wupinService.addXW(dbWupin);return "admin/houTaiIndex";}//管理员寻物审核拒绝@GetMapping("/HTXWSHJJUpdate")public String HTXWSHJJUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateJJXWSH(id);return "admin/houTaiIndex";}//管理员寻物公告公示中列表@RequestMapping("/HTXWXZ")@ResponseBody//返回json数据到前端public Result HTXWXZ() {List<Wupin> wuPinEntitys = wupinService.findAllXunWu();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}//管理员查看寻物公告公示中的详情页@GetMapping("/HTXWXZContent")public String HTXWXZContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findXunWuById(id);map.put("dbWupin", dbWupin);return "admin/houTaiXWContent";}//管理员提交完成寻物公示中的公告@GetMapping("/HTXWXZWCUpdate")public String HTXWXZWCUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateXWXZ(id);return "admin/houTaiIndex";}//管理员删除寻物公示公告@GetMapping("/HTXWXZDelete")public String HTXWXZDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteXWById(id);return "admin/houTaiIndex";}//管理员寻物公告已完成列表@RequestMapping("/HTXWWC")@ResponseBody//返回json数据到前端public Result HTXWWC() {List<Wupin> wuPinEntitys = wupinService.findAllXWWC();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}
@Controller
@RequestMapping("/liuyan")
public class LiuyanController {@Autowiredprivate LiuyanService liuyanService;//上传留言@RequestMapping("/information")@ResponseBodypublic Result liuYanAdd(@RequestBody Liuyan liuyan) {String liuYanContent = liuyan.getLiuyanneirong().replace(" ", "");/* if (liuYanContent == null || liuYanContent.length() == 0) {return new Result(Code.POST_ERR,Msg.ADD_ERR);}*/Date addTime = new Date();liuyan.setLiuyanriqi(addTime);liuyan.setAddtime(addTime);boolean flag = liuyanService.add(liuyan);Integer code = flag ? Code.POST_OK : Code.POST_ERR;String msg = flag ? Msg.ADD_OK : Msg.ADD_ERR;return new Result(code,msg);}//获取留言列表@GetMapping("/list/{currPage}")@ResponseBodypublic Result liuYanList(@PathVariable int currPage) {//当前页数int pageCount = currPage;//总记录数Integer totalCount = liuyanService.findLiuYanTotal();//重试次数int count = 2;while (totalCount == 0 && count > 0) {totalCount = liuyanService.findLiuYanTotal();count--;}//总页数Integer totalPage = totalCount % 10 == 0 ? totalCount / 10 : totalCount / 10 + 1;//如果记录数为0或请求页面大于总页数或为负数if (pageCount > totalPage || pageCount < 0 || totalCount == 0) {return new Result(Code.GET_ERR, Msg.QUERY_ERR);} else {//如果数据正常则写成json格式返回前端//每页显示数,10条Integer pageSize = 10;// 计算前索引Integer startIndex = (pageCount - 1) * pageSize;List<Liuyan> liuYanEntitys = liuyanService.findLiuYanList(startIndex, pageSize);//重试次数int retry = 2;while (liuYanEntitys.size() == 0 && retry > 0) {liuYanEntitys = liuyanService.findLiuYanList(startIndex, pageSize);retry--;}if (liuYanEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("totalPage",totalPage);map.put("totalCount",totalCount);map.put("currPage",pageCount);map.put("data",liuYanEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}}//根据用户id获取留言列表@RequestMapping("/userLY")@ResponseBodypublic Result userLY(@RequestBody Liuyan liuyan) {Integer user_Id = liuyan.getUserid();String userId = String.valueOf(user_Id);userId = userId.replace(" ", "");if ("".equals(userId) || userId.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {//如果数据正常则写成json格式返回前端List<Liuyan> liuYanEntitys = liuyanService.findLYByUserId(userId);if (liuYanEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",liuYanEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人根据id删除留言@GetMapping("/LYDelete")public String LYDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}liuyanService.deleteLYById(id);return "userLiuYan";}//后台获取留言列表@RequestMapping("/HTLY")@ResponseBodypublic Result HTLY() {List<Liuyan> liuYanEntitys = liuyanService.findAllLY();if (liuYanEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",liuYanEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//后台根据id删除留言@GetMapping("/HTLYDelete")public String HTLYDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}boolean flag = liuyanService.deleteLYById(id);return "admin/houTaiLiuYan";}
}
@Controller
@RequestMapping("/lost")
public class LostController {@Autowiredprivate WupinService wupinService;@Autowiredprivate ZhandainService zhandainService;@Autowiredprivate UserService userService;public String wupinmingcheng = "";//招领列表@GetMapping("/list/{currPage}")@ResponseBody//返回json数据到前端public Result list(@PathVariable int currPage) {//当前页数int pageCount = currPage;//总记录数Integer totalCount = wupinService.findZhaoLingTotal();//重试次数int count = 2;while (totalCount == 0 && count > 0) {totalCount = wupinService.findZhaoLingTotal();count--;}//总页数Integer totalPage = totalCount % 10 == 0 ? totalCount / 10 : totalCount / 10 + 1;//如果记录数为0或请求页面大于总页数或为负数if (pageCount > totalPage || pageCount < 0 || totalCount == 0) {return new Result(Code.GET_ERR, Msg.QUERY_ERR);} else {//如果数据正常则写成json格式返回前端//每页显示数,10条Integer pageSize = 10;// 计算前索引Integer startIndex = (pageCount - 1) * pageSize;List<Wupin> wuPinEntitys = wupinService.findZhaoLingList(startIndex, pageSize);//重试次数int retry = 2;while (wuPinEntitys.size() == 0 && retry > 0) {wuPinEntitys = wupinService.findZhaoLingList(startIndex, pageSize);retry--;}if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("totalPage",totalPage);map.put("totalCount",totalCount);map.put("currPage",pageCount);map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}}//招领页面搜索信息处理@PostMapping("/search")public String search(Wupin Wupin, Model model, HttpSession session) {wupinmingcheng = Wupin.getWupinmingcheng();if (wupinmingcheng.equals("") || wupinmingcheng.contains("?")) {
// model.addAttribute("errorMsg", "请输入关键词!");Object obj = session.getAttribute("dbWupin");if (null != obj) {session.removeAttribute("dbWupin");}return "/lost2";}wupinmingcheng = "%" + wupinmingcheng + "%";List<Wupin> dbWupin = wupinService.findZhaoLingByWuPinName(wupinmingcheng);if (dbWupin.size() > 0) {return "redirect:/lost/resSearch";} else {
// model.addAttribute("errorMsg", "该物品不存在!");Object obj = session.getAttribute("dbWupin");if (null != obj) {session.removeAttribute("dbWupin");}return "/lost2";}}//返回搜索结果@GetMapping("/resSearch")public String resSearch(HttpSession session) {List<Wupin> dbWupin = wupinService.findZhaoLingByWuPinName(wupinmingcheng);session.setAttribute("dbWupin", dbWupin);return "/lost2";}//详情页@GetMapping("/content")public String content(String id, Map<String, Object> map) {Wupin dbWupin = wupinService.findZhaoLingById(id);String zhanDianName = dbWupin.getZhandianmingcheng();Zhandian dbZhanDian = null;if (!zhanDianName.equals("")) {dbZhanDian = zhandainService.findByZhanDianName(zhanDianName);}dbWupin.setLianxidianhua(dbZhanDian.getLianxidianhua());map.put("dbWupin", dbWupin);return "lostContent";}//添加申领@RequestMapping("/SLSH")@ResponseBody//返回json数据到前端public String SLSH(@RequestBody Wupin wupin) {String userid = wupin.getUserid();Integer id = wupin.getId();String wuPinId = String.valueOf(id);Date daozhandianriqi = wupin.getDaozhandianriqi();String zhuangtai = wupin.getZhuangtai();if (StringUtils.isEmpty(userid) || StringUtils.isEmpty(wuPinId) || StringUtils.isEmpty(zhuangtai) || daozhandianriqi == null) {return "false";}Wupin findWuPin = wupinService.findSLSHByUserIdAndId(wuPinId,userid);if (null!=findWuPin){return "0";}Wupin dbWuPin = wupinService.findZhaoLingById(wuPinId);if (null != dbWuPin) {Date addtie = new Date();wupin.setWupinmingcheng(dbWuPin.getWupinmingcheng());wupin.setBianhao(dbWuPin.getBianhao());wupin.setTupian(dbWuPin.getTupian());wupin.setJiandaoriqi(dbWuPin.getJiandaoriqi());wupin.setJiandaodizhi(dbWuPin.getJiandaodizhi());wupin.setJianshu(dbWuPin.getJianshu());wupin.setZhandianmingcheng(dbWuPin.getZhandianmingcheng());wupin.setFuzeren(dbWuPin.getFuzeren());wupin.setDizhi(dbWuPin.getDizhi());wupin.setShenhejieguo("审核中");wupin.setAddtime(addtie);wupinService.addSLSH(wupin);return "succeful";} else {return "false";}}//个人中心获取申领审核中信息@RequestMapping("/userSLSH")@ResponseBody//返回json数据到前端public Result userSLSH(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findSLSHByUserId(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心获取申领未通过信息@RequestMapping("/userSLJJ")@ResponseBody//返回json数据到前端public Result userSLJJ(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findSLSHByUserIdJJ(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心获取申领正在进行信息@RequestMapping("/userSLJX")@ResponseBody//返回json数据到前端public Result userSLJX(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findSLSHByUserIdJX(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心获取申领已完成信息@RequestMapping("/userSLWC")@ResponseBody//返回json数据到前端public Result userSLWC(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findSLSHByUserIdWC(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心申领审核物品详情页@GetMapping("/SLSHContent")public String SLSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findSLSHById(id);map.put("dbWupin", dbWupin);return "/userSLContent";}//个人中心根据物品id删除申领审核物品@GetMapping("/SLSHDelete")public String SLSHDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteSLSHById(id);return "userShenLing";}//个人中心招领审核中列表@RequestMapping("/userZLSH")@ResponseBody//返回json数据到前端public Result userZLSH(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findZLSHByUserId(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心招领审核未通过列表@RequestMapping("/userZLSHJJ")@ResponseBody//返回json数据到前端public Result userZLSHJJ(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findZLSHByUserIdJJ(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心招领审核详情页@GetMapping("/ZLSHContent")public String ZLSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findZLSHById(id);map.put("dbWupin", dbWupin);return "/userZLContent";}//个人中心招领审核删除@GetMapping("/ZLSHDelete")public String ZLSHDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteZLSHById(id);return "userZhaoLing";}//个人中心招领公示中列表@RequestMapping("/userSWZL")@ResponseBody//返回json数据到前端public Result userSWZL(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findZLByUserId(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心招领已完成列表@RequestMapping("/userSWWC")@ResponseBody//返回json数据到前端public Result userSWWC(@RequestBody Wupin wupin) {String userid = wupin.getUserid();userid = userid.replace(" ", "");if ("".equals(userid) || userid.length() == 0) {return new Result(Code.POST_ERR, Msg.QUERY_ERR);} else {List<Wupin> wuPinEntitys = wupinService.findZLByUserIdWC(wupin.getUserid());if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.POST_OK,map,Msg.QUERY_OK);} else {return new Result(Code.POST_ERR, Msg.QUERY_ERR);}}}//个人中心招领详情页@GetMapping("/ZLContent")public String ZLContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findZhaoLingById(id);map.put("dbWupin", dbWupin);return "userZLContent";}//个人中心招领删除@GetMapping("/ZLDelete")public String ZLDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteZLById(id);return "userZhaoLing";}//管理员招领审核列表@RequestMapping("/HTZLSH")@ResponseBody//返回json数据到前端public Result HTZLSH() {List<Wupin> wuPinEntitys = wupinService.findAllZLSH();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员查看招领审核详情页@GetMapping("/HTZLSHContent")public String HTZLSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findZLSHById(id);map.put("dbWupin", dbWupin);return "admin/houTaiZLContent";}//管理员招领审核同意@GetMapping("/HTZLSHTYUpdate")public String HTZLSHTYUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateZLSH(id);Wupin dbWupin = wupinService.findZLSHById(id);wupinService.addZL(dbWupin);return "admin/houTaiZhaoLing";}//管理员招领审核拒绝@GetMapping("/HTZLSHJJUpdate")public String HTZLSHJJUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateJJZLSH(id);return "admin/houTaiZhaoLing";}//管理员招领公告公示中列表@RequestMapping("/HTSWZL")@ResponseBody//返回json数据到前端public Result HTSWZL() {List<Wupin> wuPinEntitys = wupinService.findAllSWZL();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员查看招领公示中公告详情页@GetMapping("/HTSWZLContent")public String HTSWZLContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findZhaoLingById(id);map.put("dbWupin", dbWupin);return "admin/houTaiZLContent";}//管理员提交完成招领公示中的公告@GetMapping("/HTSWZLWCUpdate")public String HTSWZLWCUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateSWZL(id);return "admin/houTaiZhaoLing";}//管理员删除招领公示公告@GetMapping("/HTSWZLDelete")public String HTSWZLDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteZLById(id);return "admin/houTaiZhaoLing";}//管理员招领公告已完成列表@RequestMapping("/HTZLWC")@ResponseBody//返回json数据到前端public Result HTZLWC() {List<Wupin> wuPinEntitys = wupinService.findAllSWZLWC();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员获取申领审核中信息@RequestMapping("/HTSLSH")@ResponseBody//返回json数据到前端public Result HTSLSH() {List<Wupin> wuPinEntitys = wupinService.findAllSLSH();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员查看申领审核的详情页@GetMapping("/HTSLSHContent")public String HTSLSHContent(String id, Map<String, Object> map) {if ("".equals(id) || id.length() == 0) {return "false";}Wupin dbWupin = wupinService.findSLSHById(id);Integer userid = Integer.parseInt(dbWupin.getUserid());User dbUser =userService.findByUserId(userid);String userName =dbUser.getUsername();map.put("dbWupin", dbWupin);map.put("userName", userName);return "admin/houTaiSLContent";}//管理员申领审核同意@GetMapping("/HTSLSHTYUpdate")public String HTSLSHTYUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateSLSH(id);return "admin/houTaiShenLing";}//管理员申领审核拒绝@GetMapping("/HTSLSHJJUpdate")public String HTSLSHJJUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateJJSLSH(id);return "admin/houTaiShenLing";}//管理员获取申领正在进行中信息@RequestMapping("/HTSLJX")@ResponseBody//返回json数据到前端public Result HTSLJX() {List<Wupin> wuPinEntitys = wupinService.findAllSLSHJX();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}//管理员提交完成申领请求@GetMapping("/HTSLSHWCUpdate")public String HTSLSHWCUpdate(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.updateSLSHWC(id);wupinService.updateSWZL(id);return "admin/houTaiShenLing";}//管理员删除正在进行的申领请求@GetMapping("/HTSLSHDelete")public String HTSLSHDelete(String id) {if ("".equals(id) || id.length() == 0) {return "false";}wupinService.deleteSLSHById(id);return "admin/houTaiShenLing";}//管理员获取申领已完成的信息@RequestMapping("/HTSLWC")@ResponseBody//返回json数据到前端public Result HTSLWC() {List<Wupin> wuPinEntitys = wupinService.findAllSLSHWC();if (wuPinEntitys.size() > 0) {Map<String,Object> map = new HashMap<>();map.put("status","true");map.put("data",wuPinEntitys);return new Result(Code.GET_OK,map,Msg.QUERY_OK);} else {return new Result(Code.GET_ERR, Msg.QUERY_ERR);}}
}
五、论文参考
- 计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-论文参考:
六、系统视频
校园失物招领微信小程序/安卓APP-项目视频:
计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP
结语
计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-项目实战
大家可以帮忙点赞、收藏、关注、评论啦~
源码获取:私信我
精彩专栏推荐⬇⬇⬇
Java项目
Python项目
安卓项目
微信小程序项目
相关文章:

计算机毕业设计选题推荐-校园失物招领微信小程序/安卓APP-项目实战
✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...

人工智能基础_机器学习011_梯度下降概念_梯度下降步骤_函数与导函数求解最优解---人工智能工作笔记0051
然后我们来看一下梯度下降,这里先看一个叫 无约束最优化问题,,值得是从一个问题的所有可能的备选方案中选最优的方案, 我们的知道,我们的正态分布这里,正规的一个正态分布,还有我们的正规方程,他的这个x,是正规的,比如上面画的这个曲线,他的这个x,就是大于0的对吧,而现实生活…...

开放式耳机能保护听力吗,开放式耳机跟骨传导耳机哪个更好?
如果从严格意义上来讲的话,开放式耳机中的骨传导耳机是能保护听力,现如今的开放式耳机是一个统称,将所有不入耳的类目全部规划到一块。因此在开放式耳机中存在着一些耳机是只能够保持周边环境音,而不是保护听力的。 下面让我来给…...

【Qt之QLocale】使用
描述 QLocale类可以在多种语言之间进行数字和字符串的转换。 QLocale类在构造函数中使用语言/国家对进行初始化,并提供类似于QString中的数字转字符串和字符串转数字的转换函数。 示例: QLocale egyptian(QLocale::Arabic, QLocale::Egypt);QString s1 …...

维修服务预约小程序的效果如何
生活服务中维修项目绝对是需求量很高的,如常见的保洁、管道疏通、数码维修、安装、便民服务等,可以说每天都有生意,而对相关维修店企业来说,如何获得更多生意很重要。 接下来让我们看看通过【雨科】平台制作维修服务预约小程序能…...

前端架构体系调研整理汇总
1.公司研发人数与前端体系 小型创业公司 前端人数: < 3 人 产品类型: 产品不是非常成熟,比较新颖。 项目流程:不完善,快、紧促,没有固定的时间排期。 技术栈: 没有历史包袱,技…...
DrawerLayout的点击事件会穿透到底部,如何拦截?
DrawerLayout实现侧后,发现了一个问题。点击DrawerLayout的画面,会触发覆盖的底层页面的控件。由此说明点击事件穿透到了底部。但是我只需要触发抽屉布局里的控件,不想触发底层被覆盖的看不见的按钮,由此我想到的时让抽屉页面拦截…...

在Spring boot中 使用JWT和过滤器实现登录认证
在Spring boot中 使用JWT和过滤器实现登录认证 一、登录获得JWT 在navicat中运行如下sql,准备一张user表 -- ---------------------------- -- Table structure for t_user -- ---------------------------- DROP TABLE IF EXISTS t_user; CREATE TABLE t_user (id int(11) …...
天堂2如何对版本里面的内容进行修改
天堂2写装备属性的问题 早一点的版本属性都是写在armor文件夹 xml档里,不再写armor里了 armor文件夹里只有防御 HP MP增加量,套装的属性都用一个技能形式写在 skills里了 在配合数据库里一个叫armorsets实现套装属性,拿皇家套做说明。 id 43…...

代码随想录Day33 LeetCode T62不同路径 LeetCode T63 不同路径II
前言 动规五部曲 1.确定dp数组含义 2.确定递推公式 3.初始化数组 4.确定遍历方式 5.打印dp数组查看分析问题 LeetCode T62 不同路径 题目链接:62. 不同路径 - 力扣(LeetCode) 题目思路: 注:n行m列而不是m行n列 1.确定dp数组含义 代表到达此下标有多少条…...

【计算机网络】分层模型和应用协议
网络分层模型和应用协议 1. 分层模型 1.1 五层网络模型 网络要解决的问题是:两个程序之间如何交换数据。 四层?五层?七层? 2. 应用层协议 2.1 URL URL(uniform resource locator,统一资源定位符&#…...

Python框架之Flask入门和视图
一、Flask入门和视图 需要安装Pycharm专业版 1. Flask简介 Python后端的2个主流框架 Flask 轻量级框架Django 重型框架 Flask是一个基于Python实现的web开发微框架 官方文档:https://flask.palletsprojects.com/ 中文文档:https://dormousehole.readthe…...
streamWriter.WriteLine
streamWriter.WriteLine写入文件有回车行 using (System.IO.StreamWriter streamWriter new System.IO.StreamWriter("D:\123.txt", false, System.Text.Encoding.Default)) { streamWriter.Write(str.Replace("…...

一键添加色彩变幻效果,视频剪辑从未如此简单!
在视频制作过程中,给视频添加特效是必不可少的环节。而其中,色彩变幻效果作为一种常用的特效,能够为视频增添独特的氛围和视觉冲击力。然而,对于许多初学者来说,如何批量给视频添加色彩变幻效果特效功能却是一个难题。…...

Linux的简介和环境搭建
简介 Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个…...
你看现在的程序员,是怎么解bug的
大家好,我是伍六七。 干程序员的都会碰到各种各样的 bug,有的 bug 我们看一眼、或者多看几眼就能看出来问题。 但是,也有很多问题,我们看不出来,这个时候,我们不妨把我们的代码扔给 GPT,看看它…...

CSS3背景样式
在CSS 2.1中,background属性的功能还无法满足设计的需求,为了方便设计师更灵活地设计需要的网页效果,CSS3在原有background基础上新增了一些功能属性,可以在同一个对象内叠加多个背景图像,可以改变背景图像的大小尺寸&…...
JAVA同城服务同城圈子真人躲猫猫系统的玩法流程
在现在科技的发展和互联网的普及,线上社交游戏在人们的生活中占据了越来越重要的地位。JAVA同城服务同城圈子真人躲猫猫系统就是一种结合了线上社交和线下实体位置服务的全新游戏模式。在这个游戏中,玩家们可以在同一城市中寻找隐藏的对手,体…...

C++继承——圆形和圆柱体
C继承 Circular圆形类 /*圆形类*/ class Circular { private:const static double PI;double R 0; public:Circular() default;Circular(double r);double GetArea(); /*圆面积*/double GetGirth(); /*圆周长*/ }; const double Circular::PI 3.14;Circular::Circula…...

致远OA wpsAssistServlet任意文件上传漏洞复现 [附POC]
文章目录 致远OA wpsAssistServlet任意文件上传漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 致远OA wpsAssistServlet任意文件上传漏洞复现 [附POC] 0x01 前言 免责声明:请勿利用…...

【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...

大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

如何在看板中体现优先级变化
在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...
Python如何给视频添加音频和字幕
在Python中,给视频添加音频和字幕可以使用电影文件处理库MoviePy和字幕处理库Subtitles。下面将详细介绍如何使用这些库来实现视频的音频和字幕添加,包括必要的代码示例和详细解释。 环境准备 在开始之前,需要安装以下Python库:…...

多模态大语言模型arxiv论文略读(108)
CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题:CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者:Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...
C++八股 —— 单例模式
文章目录 1. 基本概念2. 设计要点3. 实现方式4. 详解懒汉模式 1. 基本概念 线程安全(Thread Safety) 线程安全是指在多线程环境下,某个函数、类或代码片段能够被多个线程同时调用时,仍能保证数据的一致性和逻辑的正确性…...

学习STC51单片机32(芯片为STC89C52RCRC)OLED显示屏2
每日一言 今天的每一份坚持,都是在为未来积攒底气。 案例:OLED显示一个A 这边观察到一个点,怎么雪花了就是都是乱七八糟的占满了屏幕。。 解释 : 如果代码里信号切换太快(比如 SDA 刚变,SCL 立刻变&#…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...

初探Service服务发现机制
1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能:服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源…...
JS设计模式(4):观察者模式
JS设计模式(4):观察者模式 一、引入 在开发中,我们经常会遇到这样的场景:一个对象的状态变化需要自动通知其他对象,比如: 电商平台中,商品库存变化时需要通知所有订阅该商品的用户;新闻网站中࿰…...