当前位置:   article > 正文

基于ssm的手机电脑电子产品维修服务微信小程序源码和论文

基于ssm的手机电脑电子产品维修服务微信小程序源码和论文

由于APP软件在开发以及运营上面所需成本较高,而用户手机需要安装各种APP软件,因此占用用户过多的手机存储空间,导致用户手机运行缓慢,体验度比较差,进而导致用户会卸载非必要的APP,倒逼管理者必须改变运营策略。随着微信小程序的出现,解决了用户非独立APP不可访问内容的痛点,所以很多APP软件都转向微信小程序。本次课题就运用了微信小程序技术开发一个阳光电脑公司的维修服务微信小程序。

阳光电脑公司的维修服务微信小程序借助微信开发者工具开发用户前端,使用SSM框架和Java语言开发管理员后台,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员管理配件,电脑,维修,购买订单,客服通知以及用户评价。用户购买电脑,申请电脑维修,支付维修费用并评价维修订单。

总之,阳光电脑公司的维修服务微信小程序可以更加方便用户购买电脑,申请电脑维修,并在线支付费用。

关键词:阳光电脑公司的维修服务微信小程序;微信开发者工具;SSM框架

基于ssm的手机电脑电子产品维修服务微信小程序源码和论文weixin154


Abstract

Due to the high cost of APP software development and operation, and the user's mobile phone needs to install various APP software, it takes up too much mobile phone storage space of the user, causing the user's mobile phone to run slowly, the experience is relatively poor, and the user will uninstall Non-essential APPs force managers to change their operating strategies. With the emergence of WeChat mini-programs, the pain point that users cannot access content from non-independent APPs has been solved, so many APP software have turned to WeChat mini-programs. In this project, the WeChat applet technology was used to develop a WeChat applet for Sunshine Computer's maintenance service.

Sunshine Computer’s maintenance service WeChat applet uses WeChat developer tools to develop the user front end, uses the SSM framework and Java language to develop the administrator backend, and uses Mysql to create a data table to save the data generated by the system. The system can provide information display and corresponding services, and its administrator manages accessories, computers, maintenance, purchase orders, customer service notifications and user reviews. Users purchase computers, apply for computer repairs, pay for repairs, and evaluate repair orders.

In short, Sunshine Computer’s maintenance service WeChat applet can make it more convenient for users to purchase computers, apply for computer repairs, and pay online.

Key WordsSunshine Computer’s maintenance service WeChat applet; WeChat developer tool; SSM framework

主要中文参考资料与外文资料(在确定了毕业论文(设计)题目和明确了要求后,指导教师应给学生提供一些相关资料和相关信息,或划定参考资料的范围,指导学生收集反映当前研究进展的近1-3年参考资料和文献。外文资料是指导老师根据选题情况明确学生需要阅读或翻译成中文的外文文献。)

[1]徐星明. 微信小程序第三方平台的设计与实现[D].山东大学,2020.

[2]袁久琛. 企业级通用小程序管理平台设计与实现[D].大连理工大学,2020.

[3]张振超,吴杰,陈序蓬.浅谈Java中Mysql数据库的连接与操作[J].信息记录材料,2020,21(02):144-145.

[4]郑智方,魏恺乐,李彬,谢易壮.MySQL得到广泛使用的原因以及它的嵌入应用[J].科技风,2020(05):114.

[5]赵秀芹,刘杨青,李瑞祥.MySQL数据库使用技巧三例[J].网络安全和信息化,2019(08):90-91.

[6]余涛.计算机软件开发中Java编程语言的应用研究[J].信息记录材料,2020,21(01):113-115.

[7]岳青玲.Java面向对象编程的三大特性[J].电子技术与软件工程,2019(24):239-240.

[8]耿学.关于Java Web中中文乱码问题的探讨[J].现代信息科技,2020,4(01):74-75+78.

[9]张彦芳.Java Web项目开发中的中文乱码问题与对策[J].电脑知识与技术,2020,16(09):96-97.

[10]薛茹.基于SSM框架的Web系统研究与应用[J].计算机产品与流通,2018(07):30.

[11]邱丹萍.Web开发中SSM框架的分析[J].电脑知识与技术,2020,16(17):81-82.

[12]袁堂青,亓婧.基于微信小程序的开发与研究[J].网络安全技术与应用,2020(04):66-67.

[13]邢榕珊,匡芳君.微信小程序设计[J].计算机时代,2018(08):9-12.

[14]仲崇文.关于计算机软件开发中常见问题的研究[J].通讯世界,2020,27(07):89-90.

[15]Raffi Khatchadourian.Automated refactoring of legacy Java software to enumerated types[J].Automated Software Engineering,2017,24(4).

[16]Ben White.Marx and Chayanov at the margins:understanding agrarian change in Java[J].The Journal of Peasant Studies,2018,45(5-6).

  1. package com.controller;
  2. import java.text.SimpleDateFormat;
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.Calendar;
  6. import java.util.Map;
  7. import java.util.HashMap;
  8. import java.util.Iterator;
  9. import java.util.Date;
  10. import java.util.List;
  11. import javax.servlet.http.HttpServletRequest;
  12. import com.utils.ValidatorUtils;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.format.annotation.DateTimeFormat;
  16. import org.springframework.web.bind.annotation.PathVariable;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import org.springframework.web.bind.annotation.RequestMapping;
  19. import org.springframework.web.bind.annotation.RequestParam;
  20. import org.springframework.web.bind.annotation.RestController;
  21. import com.baomidou.mybatisplus.mapper.EntityWrapper;
  22. import com.baomidou.mybatisplus.mapper.Wrapper;
  23. import com.annotation.IgnoreAuth;
  24. import com.entity.YonghuEntity;
  25. import com.entity.view.YonghuView;
  26. import com.service.YonghuService;
  27. import com.service.TokenService;
  28. import com.utils.PageUtils;
  29. import com.utils.R;
  30. import com.utils.MD5Util;
  31. import com.utils.MPUtil;
  32. import com.utils.CommonUtil;
  33. /**
  34. * 用户
  35. * 后端接口
  36. * @author
  37. * @email
  38. * @date 2021-04-27 14:05:12
  39. */
  40. @RestController
  41. @RequestMapping("/yonghu")
  42. public class YonghuController {
  43. @Autowired
  44. private YonghuService yonghuService;
  45. @Autowired
  46. private TokenService tokenService;
  47. /**
  48. * 登录
  49. */
  50. @IgnoreAuth
  51. @RequestMapping(value = "/login")
  52. public R login(String username, String password, String captcha, HttpServletRequest request) {
  53. YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("zhanghao", username));
  54. if(user==null || !user.getMima().equals(password)) {
  55. return R.error("账号或密码不正确");
  56. }
  57. String token = tokenService.generateToken(user.getId(), username,"yonghu", "用户" );
  58. return R.ok().put("token", token);
  59. }
  60. /**
  61. * 注册
  62. */
  63. @IgnoreAuth
  64. @RequestMapping("/register")
  65. public R register(@RequestBody YonghuEntity yonghu){
  66. //ValidatorUtils.validateEntity(yonghu);
  67. YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("zhanghao", yonghu.getZhanghao()));
  68. if(user!=null) {
  69. return R.error("注册用户已存在");
  70. }
  71. Long uId = new Date().getTime();
  72. yonghu.setId(uId);
  73. yonghuService.insert(yonghu);
  74. return R.ok();
  75. }
  76. /**
  77. * 退出
  78. */
  79. @RequestMapping("/logout")
  80. public R logout(HttpServletRequest request) {
  81. request.getSession().invalidate();
  82. return R.ok("退出成功");
  83. }
  84. /**
  85. * 获取用户的session用户信息
  86. */
  87. @RequestMapping("/session")
  88. public R getCurrUser(HttpServletRequest request){
  89. Long id = (Long)request.getSession().getAttribute("userId");
  90. YonghuEntity user = yonghuService.selectById(id);
  91. return R.ok().put("data", user);
  92. }
  93. /**
  94. * 密码重置
  95. */
  96. @IgnoreAuth
  97. @RequestMapping(value = "/resetPass")
  98. public R resetPass(String username, HttpServletRequest request){
  99. YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("zhanghao", username));
  100. if(user==null) {
  101. return R.error("账号不存在");
  102. }
  103. user.setMima("123456");
  104. yonghuService.updateById(user);
  105. return R.ok("密码已重置为:123456");
  106. }
  107. /**
  108. * 后端列表
  109. */
  110. @RequestMapping("/page")
  111. public R page(@RequestParam Map<String, Object> params,YonghuEntity yonghu,
  112. HttpServletRequest request){
  113. EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
  114. PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));
  115. return R.ok().put("data", page);
  116. }
  117. /**
  118. * 前端列表
  119. */
  120. @RequestMapping("/list")
  121. public R list(@RequestParam Map<String, Object> params,YonghuEntity yonghu,
  122. HttpServletRequest request){
  123. EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
  124. PageUtils page = yonghuService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghu), params), params));
  125. return R.ok().put("data", page);
  126. }
  127. /**
  128. * 列表
  129. */
  130. @RequestMapping("/lists")
  131. public R list( YonghuEntity yonghu){
  132. EntityWrapper<YonghuEntity> ew = new EntityWrapper<YonghuEntity>();
  133. ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));
  134. return R.ok().put("data", yonghuService.selectListView(ew));
  135. }
  136. /**
  137. * 查询
  138. */
  139. @RequestMapping("/query")
  140. public R query(YonghuEntity yonghu){
  141. EntityWrapper< YonghuEntity> ew = new EntityWrapper< YonghuEntity>();
  142. ew.allEq(MPUtil.allEQMapPre( yonghu, "yonghu"));
  143. YonghuView yonghuView = yonghuService.selectView(ew);
  144. return R.ok("查询用户成功").put("data", yonghuView);
  145. }
  146. /**
  147. * 后端详情
  148. */
  149. @RequestMapping("/info/{id}")
  150. public R info(@PathVariable("id") Long id){
  151. YonghuEntity yonghu = yonghuService.selectById(id);
  152. return R.ok().put("data", yonghu);
  153. }
  154. /**
  155. * 前端详情
  156. */
  157. @RequestMapping("/detail/{id}")
  158. public R detail(@PathVariable("id") Long id){
  159. YonghuEntity yonghu = yonghuService.selectById(id);
  160. return R.ok().put("data", yonghu);
  161. }
  162. /**
  163. * 后端保存
  164. */
  165. @RequestMapping("/save")
  166. public R save(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
  167. yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
  168. //ValidatorUtils.validateEntity(yonghu);
  169. YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("zhanghao", yonghu.getZhanghao()));
  170. if(user!=null) {
  171. return R.error("用户已存在");
  172. }
  173. yonghu.setId(new Date().getTime());
  174. yonghuService.insert(yonghu);
  175. return R.ok();
  176. }
  177. /**
  178. * 前端保存
  179. */
  180. @RequestMapping("/add")
  181. public R add(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
  182. yonghu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
  183. //ValidatorUtils.validateEntity(yonghu);
  184. YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("zhanghao", yonghu.getZhanghao()));
  185. if(user!=null) {
  186. return R.error("用户已存在");
  187. }
  188. yonghu.setId(new Date().getTime());
  189. yonghuService.insert(yonghu);
  190. return R.ok();
  191. }
  192. /**
  193. * 修改
  194. */
  195. @RequestMapping("/update")
  196. public R update(@RequestBody YonghuEntity yonghu, HttpServletRequest request){
  197. //ValidatorUtils.validateEntity(yonghu);
  198. yonghuService.updateById(yonghu);//全部更新
  199. return R.ok();
  200. }
  201. /**
  202. * 删除
  203. */
  204. @RequestMapping("/delete")
  205. public R delete(@RequestBody Long[] ids){
  206. yonghuService.deleteBatchIds(Arrays.asList(ids));
  207. return R.ok();
  208. }
  209. /**
  210. * 提醒接口
  211. */
  212. @RequestMapping("/remind/{columnName}/{type}")
  213. public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
  214. @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
  215. map.put("column", columnName);
  216. map.put("type", type);
  217. if(type.equals("2")) {
  218. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  219. Calendar c = Calendar.getInstance();
  220. Date remindStartDate = null;
  221. Date remindEndDate = null;
  222. if(map.get("remindstart")!=null) {
  223. Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
  224. c.setTime(new Date());
  225. c.add(Calendar.DAY_OF_MONTH,remindStart);
  226. remindStartDate = c.getTime();
  227. map.put("remindstart", sdf.format(remindStartDate));
  228. }
  229. if(map.get("remindend")!=null) {
  230. Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
  231. c.setTime(new Date());
  232. c.add(Calendar.DAY_OF_MONTH,remindEnd);
  233. remindEndDate = c.getTime();
  234. map.put("remindend", sdf.format(remindEndDate));
  235. }
  236. }
  237. Wrapper<YonghuEntity> wrapper = new EntityWrapper<YonghuEntity>();
  238. if(map.get("remindstart")!=null) {
  239. wrapper.ge(columnName, map.get("remindstart"));
  240. }
  241. if(map.get("remindend")!=null) {
  242. wrapper.le(columnName, map.get("remindend"));
  243. }
  244. int count = yonghuService.selectCount(wrapper);
  245. return R.ok().put("count", count);
  246. }
  247. }

 

  1. package com.controller;
  2. import java.text.SimpleDateFormat;
  3. import java.util.ArrayList;
  4. import java.util.Arrays;
  5. import java.util.Calendar;
  6. import java.util.Map;
  7. import java.util.HashMap;
  8. import java.util.Iterator;
  9. import java.util.Date;
  10. import java.util.List;
  11. import javax.servlet.http.HttpServletRequest;
  12. import com.utils.ValidatorUtils;
  13. import org.apache.commons.lang3.StringUtils;
  14. import org.springframework.beans.factory.annotation.Autowired;
  15. import org.springframework.format.annotation.DateTimeFormat;
  16. import org.springframework.web.bind.annotation.PathVariable;
  17. import org.springframework.web.bind.annotation.RequestBody;
  18. import org.springframework.web.bind.annotation.RequestMapping;
  19. import org.springframework.web.bind.annotation.RequestParam;
  20. import org.springframework.web.bind.annotation.RestController;
  21. import com.baomidou.mybatisplus.mapper.EntityWrapper;
  22. import com.baomidou.mybatisplus.mapper.Wrapper;
  23. import com.annotation.IgnoreAuth;
  24. import com.entity.YonghupingjiaEntity;
  25. import com.entity.view.YonghupingjiaView;
  26. import com.service.YonghupingjiaService;
  27. import com.service.TokenService;
  28. import com.utils.PageUtils;
  29. import com.utils.R;
  30. import com.utils.MD5Util;
  31. import com.utils.MPUtil;
  32. import com.utils.CommonUtil;
  33. /**
  34. * 用户评价
  35. * 后端接口
  36. * @author
  37. * @email
  38. * @date 2021-04-27 14:05:12
  39. */
  40. @RestController
  41. @RequestMapping("/yonghupingjia")
  42. public class YonghupingjiaController {
  43. @Autowired
  44. private YonghupingjiaService yonghupingjiaService;
  45. /**
  46. * 后端列表
  47. */
  48. @RequestMapping("/page")
  49. public R page(@RequestParam Map<String, Object> params,YonghupingjiaEntity yonghupingjia,
  50. HttpServletRequest request){
  51. String tableName = request.getSession().getAttribute("tableName").toString();
  52. if(tableName.equals("yonghu")) {
  53. yonghupingjia.setZhanghao((String)request.getSession().getAttribute("username"));
  54. }
  55. EntityWrapper<YonghupingjiaEntity> ew = new EntityWrapper<YonghupingjiaEntity>();
  56. PageUtils page = yonghupingjiaService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghupingjia), params), params));
  57. return R.ok().put("data", page);
  58. }
  59. /**
  60. * 前端列表
  61. */
  62. @RequestMapping("/list")
  63. public R list(@RequestParam Map<String, Object> params,YonghupingjiaEntity yonghupingjia,
  64. HttpServletRequest request){
  65. String tableName = request.getSession().getAttribute("tableName").toString();
  66. if(tableName.equals("yonghu")) {
  67. yonghupingjia.setZhanghao((String)request.getSession().getAttribute("username"));
  68. }
  69. EntityWrapper<YonghupingjiaEntity> ew = new EntityWrapper<YonghupingjiaEntity>();
  70. PageUtils page = yonghupingjiaService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, yonghupingjia), params), params));
  71. return R.ok().put("data", page);
  72. }
  73. /**
  74. * 列表
  75. */
  76. @RequestMapping("/lists")
  77. public R list( YonghupingjiaEntity yonghupingjia){
  78. EntityWrapper<YonghupingjiaEntity> ew = new EntityWrapper<YonghupingjiaEntity>();
  79. ew.allEq(MPUtil.allEQMapPre( yonghupingjia, "yonghupingjia"));
  80. return R.ok().put("data", yonghupingjiaService.selectListView(ew));
  81. }
  82. /**
  83. * 查询
  84. */
  85. @RequestMapping("/query")
  86. public R query(YonghupingjiaEntity yonghupingjia){
  87. EntityWrapper< YonghupingjiaEntity> ew = new EntityWrapper< YonghupingjiaEntity>();
  88. ew.allEq(MPUtil.allEQMapPre( yonghupingjia, "yonghupingjia"));
  89. YonghupingjiaView yonghupingjiaView = yonghupingjiaService.selectView(ew);
  90. return R.ok("查询用户评价成功").put("data", yonghupingjiaView);
  91. }
  92. /**
  93. * 后端详情
  94. */
  95. @RequestMapping("/info/{id}")
  96. public R info(@PathVariable("id") Long id){
  97. YonghupingjiaEntity yonghupingjia = yonghupingjiaService.selectById(id);
  98. return R.ok().put("data", yonghupingjia);
  99. }
  100. /**
  101. * 前端详情
  102. */
  103. @RequestMapping("/detail/{id}")
  104. public R detail(@PathVariable("id") Long id){
  105. YonghupingjiaEntity yonghupingjia = yonghupingjiaService.selectById(id);
  106. return R.ok().put("data", yonghupingjia);
  107. }
  108. /**
  109. * 后端保存
  110. */
  111. @RequestMapping("/save")
  112. public R save(@RequestBody YonghupingjiaEntity yonghupingjia, HttpServletRequest request){
  113. yonghupingjia.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
  114. //ValidatorUtils.validateEntity(yonghupingjia);
  115. yonghupingjiaService.insert(yonghupingjia);
  116. return R.ok();
  117. }
  118. /**
  119. * 前端保存
  120. */
  121. @RequestMapping("/add")
  122. public R add(@RequestBody YonghupingjiaEntity yonghupingjia, HttpServletRequest request){
  123. yonghupingjia.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());
  124. //ValidatorUtils.validateEntity(yonghupingjia);
  125. yonghupingjia.setUserid((Long)request.getSession().getAttribute("userId"));
  126. yonghupingjiaService.insert(yonghupingjia);
  127. return R.ok();
  128. }
  129. /**
  130. * 修改
  131. */
  132. @RequestMapping("/update")
  133. public R update(@RequestBody YonghupingjiaEntity yonghupingjia, HttpServletRequest request){
  134. //ValidatorUtils.validateEntity(yonghupingjia);
  135. yonghupingjiaService.updateById(yonghupingjia);//全部更新
  136. return R.ok();
  137. }
  138. /**
  139. * 删除
  140. */
  141. @RequestMapping("/delete")
  142. public R delete(@RequestBody Long[] ids){
  143. yonghupingjiaService.deleteBatchIds(Arrays.asList(ids));
  144. return R.ok();
  145. }
  146. /**
  147. * 提醒接口
  148. */
  149. @RequestMapping("/remind/{columnName}/{type}")
  150. public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
  151. @PathVariable("type") String type,@RequestParam Map<String, Object> map) {
  152. map.put("column", columnName);
  153. map.put("type", type);
  154. if(type.equals("2")) {
  155. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
  156. Calendar c = Calendar.getInstance();
  157. Date remindStartDate = null;
  158. Date remindEndDate = null;
  159. if(map.get("remindstart")!=null) {
  160. Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
  161. c.setTime(new Date());
  162. c.add(Calendar.DAY_OF_MONTH,remindStart);
  163. remindStartDate = c.getTime();
  164. map.put("remindstart", sdf.format(remindStartDate));
  165. }
  166. if(map.get("remindend")!=null) {
  167. Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
  168. c.setTime(new Date());
  169. c.add(Calendar.DAY_OF_MONTH,remindEnd);
  170. remindEndDate = c.getTime();
  171. map.put("remindend", sdf.format(remindEndDate));
  172. }
  173. }
  174. Wrapper<YonghupingjiaEntity> wrapper = new EntityWrapper<YonghupingjiaEntity>();
  175. if(map.get("remindstart")!=null) {
  176. wrapper.ge(columnName, map.get("remindstart"));
  177. }
  178. if(map.get("remindend")!=null) {
  179. wrapper.le(columnName, map.get("remindend"));
  180. }
  181. String tableName = request.getSession().getAttribute("tableName").toString();
  182. if(tableName.equals("yonghu")) {
  183. wrapper.eq("zhanghao", (String)request.getSession().getAttribute("username"));
  184. }
  185. int count = yonghupingjiaService.selectCount(wrapper);
  186. return R.ok().put("count", count);
  187. }
  188. }

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/315180
推荐阅读
相关标签
  

闽ICP备14008679号