Housekeeping service system WeChat applet source code and paper based on ssm

The main tasks and specific requirements of the paper (design) (if there is an experimental link, the main technical index requirements must be stated)

  The main tasks and specific requirements of the thesis (design) 

    Based on people's current needs for furniture and home appliance repair and cleaning services in daily life, a housekeeping service applet is designed to realize user order management (publishing orders, canceling orders, modifying orders) and user personal information management. Implement a discussion area for user communication, problem feedback and customer service. Implement administrator carousel chart management and administrator management of users. The administrator manages the comment area (preventing various illegal comments) and completes the coding and testing of the mini program.  

Main technical index requirements:

1. Development tools and technologies: Wxml+ Wxss +Aoi

2. Database: cloud database

3. Web server: Tomcat 9.0

4. Platform: Windows 10  

Progress arrangement (including time division and main work content of each stage)

serial number 

 Design tasks at various stages

time 

1

 Research, functional analysis, preparation of materials for study

 2 weeks

 2

 programming

 5 weeks

 3

 system debugging

 1 week

 4

 write a paper

 3 weeks

 5

 Prepare for thesis defense

 1 week

Main references ( no less than 5 articles )

 [1] Duan Ren. Construction of WeChat public account based on Internet open platform [J]. China Management Informatization 2017

[2] Li Songjia, Xu Fei. Design of university micro-course platform based on WeChat public account [J]. Value Engineering 2017

[3] Yao Xiujie. Design and research on microservices of WeChat public account service platform [J]. Communications World, 2017  

[4] Chen Wei. Construction of WeChat public service platform for mobile social security [J]. China Management Informatization, 2017  

[5] Hu Hao. Design and implementation of enterprise operation and promotion platform based on WeChat public account [D]. Beijing Jiaotong University, 2016

【590】SSM-based housekeeping service system WeChat applet source code and thesis proposal report task book

package com.controller;

import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Iterator;
import java.util.List;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.fileupload.FileItem;
import org.apache.commons.fileupload.FileItemFactory;
import org.apache.commons.fileupload.FileUploadException;
import org.apache.commons.fileupload.disk.DiskFileItemFactory;
import org.apache.commons.fileupload.servlet.ServletFileUpload;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

import com.model.Gginfo;
import com.model.Pinglun;
import com.model.Userinfo;
import com.model.Wxuser;
import com.model.Zhaopin;
import com.response.GonggaoListResponse;
import com.response.GonggaoResponse;
import com.response.LoginResponse;
import com.response.Response;
import com.response.UinfoResponse;
import com.response.WxuserListResponse;
import com.response.WxuserResponse;
import com.response.ZhaopinListResponse;
import com.response.ZhaopinResponse;
import com.service.GginfoService;
import com.service.PinglunService;
import com.service.UserinfoService;
import com.service.WxuserService;
import com.service.ZhaopinService;

@Controller
@RequestMapping(value = "/rest")
public class RestApiController {

	@Autowired
	private UserinfoService userinfoService;
	@Autowired
	private WxuserService wxuserService;
	@Autowired
	private ZhaopinService zhaopinService;
    @Autowired
    private PinglunService pinglunService;
	@Autowired
	private GginfoService gginfoService;
	/**
	 * 用户注册
	 * 
	 * @param user
	 * @return
	 */
	@RequestMapping(value = "/register", produces = "application/json;charset=UTF-8", method = RequestMethod.POST)
	@ResponseBody
	public Response register(HttpServletRequest req, Userinfo user) {
		Response sres = new Response();
		try {
			Userinfo uinfo = new Userinfo();
			
			uinfo.setTel(user.getTel());
			List<Userinfo> ulist = userinfoService.queryUserinfoList(uinfo,
					null);
			if (ulist == null || ulist.size() == 0) {
				uinfo.setScores(5d);
				userinfoService.insertUserinfo(user);
				sres.setCode(200);
			} else {
				sres.setCode(201); // 手机号已存在
			}
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}

	/**
	 * 用户登录
	 * 
	 * @param user
	 * @return
	 */
	@RequestMapping(value = "/ulogin")
	@ResponseBody
	public LoginResponse ulogin(HttpServletRequest req, Userinfo user) {
		LoginResponse sres = new LoginResponse();
		try {
			int uid = 0;
			List<Userinfo> ulist = userinfoService
					.queryUserinfoList(user, null);
			if (ulist != null && ulist.size() > 0) {
				uid = ulist.get(0).getId();
				sres.setCode(200);
				sres.setOpenid(uid + "");
				sres.setName(ulist.get(0).getName());
				sres.setTel(ulist.get(0).getTel());
				sres.setUtype(ulist.get(0).getUtype());
			} else {
				sres.setCode(201);
			}
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	

	/**
	 * 用户资料
	 * 
	 * @param user
	 * @return
	 */
	@RequestMapping(value = "/uinfo")
	@ResponseBody
	public UinfoResponse uinfo(HttpServletRequest req) {
		UinfoResponse sres = new UinfoResponse();
		int uid = Integer.parseInt(req.getParameter("uid"));
		try {
			Userinfo uinfo = userinfoService.queryUserinfoById(uid);
			sres.setUinfo(uinfo);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}

	/**
	 * 修改个人资料
	 * 
	 * @param user
	 * @return
	 */
	@RequestMapping(value = "/updateuser")
	@ResponseBody
	public Response updateuser(HttpServletRequest req, Userinfo userinfo) {
		Response sres = new Response();
		try {
			userinfoService.updateUserinfo(userinfo);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 维修工信息列表
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/tlist")
	@ResponseBody
	public WxuserListResponse tlist(HttpServletRequest req) {
		WxuserListResponse sres = new WxuserListResponse();
		try {
			String keywords = req.getParameter("keywords");
			String orderType = req.getParameter("orderType");
			Wxuser teainfo = new Wxuser();
			teainfo.setState("通过");
			teainfo.setKeywords(keywords);
			List<Wxuser> dlist = wxuserService.queryWxuserList(teainfo, null,orderType);
			sres.setCode(200);
			sres.setDlist(dlist);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	/**
	 * 维修工信息详情
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/tinfo")
	@ResponseBody
	public WxuserResponse tinfo(HttpServletRequest req) {
		WxuserResponse sres = new WxuserResponse();
		try {
			 int id = Integer.parseInt(req.getParameter("id"));
			 Wxuser wxginfo = wxuserService.queryWxuserById(id);
			 Pinglun pinfo = new Pinglun();
			 pinfo.setUid(wxginfo.getUid()+"");
			 pinfo.setOtype(2);
			 List<Pinglun> plist = pinglunService.queryPinglunList(pinfo);
			 sres.setPlist(plist);
			 sres.setCode(200);
			 sres.setDinfo(wxginfo);
			 
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 自己查看维修工信息详情
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/tinfoView")
	@ResponseBody
	public WxuserResponse tinfoView(HttpServletRequest req) {
		WxuserResponse sres = new WxuserResponse();
		try {
			Wxuser teainfo = null;
			int uid = Integer.parseInt(req.getParameter("uid")==null?"0":req.getParameter("uid"));
			Wxuser tinfo = new Wxuser();
			tinfo.setUid(uid);
			List<Wxuser> tlist = wxuserService.queryWxuserList(tinfo, null);
			if(tlist!=null && tlist.size()>0){
				teainfo = tlist.get(0);
			}
			
		
			sres.setCode(200);
			sres.setDinfo(teainfo);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	
	
	
	/**
	 * 修改维修工信息
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/updateTinfo")
	@ResponseBody
	public Response updateTinfo(HttpServletRequest req,Wxuser wxuser) {
		Response sres = new Response();
		try {
			if(wxuser.getId()!=null){
				wxuserService.updateWxuser(wxuser);
			}else{
				wxuser.setState("待审核");
				wxuserService.insertWxuser(wxuser);
			}
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	
	
	/**
	 * 报修单列表  任务大厅
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/zplist")
	@ResponseBody
	public ZhaopinListResponse zplist(HttpServletRequest req) {
		ZhaopinListResponse sres = new ZhaopinListResponse();
		try {
			Zhaopin zinfo = new Zhaopin();
			zinfo.setState("待接单");
			String keywords = req.getParameter("keywords");
			zinfo.setKeywords(keywords);
			List<Zhaopin> dlist = zhaopinService.queryZhaopinList(zinfo, null);
			sres.setCode(200);
			sres.setDlist(dlist);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	/**
	 * 报修单详情
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/zpinfo")
	@ResponseBody
	public ZhaopinResponse zpinfo(HttpServletRequest req) {
		ZhaopinResponse sres = new ZhaopinResponse();
		try {
			int id = Integer.parseInt(req.getParameter("id"));
			Zhaopin zinfo = zhaopinService.queryZhaopinById(id);
			if(zinfo.getWuid()!=null && zinfo.getWuid()!=0){
				Wxuser wxuser = new Wxuser();
				wxuser.setUid(zinfo.getWuid());
				List<Wxuser> wxlist = wxuserService.queryWxuserList(wxuser, null);
				if(wxlist!=null && wxlist.size()>0){
					zinfo.setWxuserVO(wxlist.get(0));
				}
			}
			sres.setCode(200);
			sres.setDinfo(zinfo);
		
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 发布报修单
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/addZhaopin")
	@ResponseBody
	public Response addZhaopin(HttpServletRequest req,Zhaopin zhaopin) {
		Response sres = new Response();
		try {
			zhaopin.setState("待接单");
			zhaopin.setFbsj(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
		    zhaopinService.insertZhaopin(zhaopin);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 修改报修单
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/updateZhaopin")
	@ResponseBody
	public Response updateZhaopin(HttpServletRequest req,Zhaopin zhaopin) {
		Response sres = new Response();
		try {
			zhaopin.setFbsj(new SimpleDateFormat("yyyy-MM-dd").format(new Date()));
		    zhaopinService.updateZhaopin(zhaopin);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	/**
	 * 删除报修单
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/delZhaopin")
	@ResponseBody
	public Response delZhaopin(HttpServletRequest req) {
		Response sres = new Response();
		try {
			int id = Integer.parseInt(req.getParameter("id"));
		    zhaopinService.deleteZhaopin(id);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	/**
	 * 我发布的报修单
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/myzplist")
	@ResponseBody
	public ZhaopinListResponse myzplist(HttpServletRequest req) {
		ZhaopinListResponse sres = new ZhaopinListResponse();
		try {
			int uid = Integer.parseInt(req.getParameter("uid"));
		    Zhaopin zinfo = new Zhaopin();
		    zinfo.setUid(uid);
		    List<Zhaopin> dlist = zhaopinService.queryZhaopinList(zinfo, null);
			sres.setCode(200);
			sres.setDlist(dlist);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 维修工接单
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/jiedan")
	@ResponseBody
	public Response jiedan(HttpServletRequest req) {
		Response sres = new Response();
		try {
			int id = Integer.parseInt(req.getParameter("id"));
			int uid = Integer.parseInt(req.getParameter("uid"));
			
			Wxuser wxuser = new Wxuser();
			wxuser.setUid(uid);
			List<Wxuser> wlist = wxuserService.queryWxuserList(wxuser, null);
			if(wlist!=null && wlist.size()>0){
				wxuser = wlist.get(0);
				if(wxuser.getState().equals("通过")){
					Zhaopin zinfo = zhaopinService.queryZhaopinById(id);
					zinfo.setWuid(uid);
					zinfo.setState("已接单");
					zhaopinService.updateZhaopin(zinfo);
					sres.setCode(200);
				}else{
					sres.setCode(202);
				}
			}else{
				sres.setCode(201);
			}
			
			
			
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	/**
	 * 我接的维修单  维修工
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/mjdlist")
	@ResponseBody
	public ZhaopinListResponse mjdlist(HttpServletRequest req) {
		ZhaopinListResponse sres = new ZhaopinListResponse();
		try {
			int uid = Integer.parseInt(req.getParameter("uid"));
		    Zhaopin zinfo = new Zhaopin();
		    zinfo.setWuid(uid);
		    List<Zhaopin> dlist = zhaopinService.queryZhaopinList(zinfo, null);
			sres.setCode(200);
			sres.setDlist(dlist);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	/**
	 * 用户确认完成
	 * @param req
	 * @return
	 */
	@RequestMapping(value = "/wancheng")
	@ResponseBody
	public Response wancheng(HttpServletRequest req) {
		Response sres = new Response();
		try {
			int id = Integer.parseInt(req.getParameter("id"));
			Zhaopin zinfo = zhaopinService.queryZhaopinById(id);
			zinfo.setState("已完成");
			zhaopinService.updateZhaopin(zinfo);
			sres.setCode(200);
		} catch (Exception e) {
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
	
	
	
	
//	/**
//	 * 预约详情 用户端
//	 * @param req
//	 * @return
//	 */
//	@RequestMapping(value = "/yinfoWxuser")
//	@ResponseBody
//	public YuyueResponse yinfoWxuser(HttpServletRequest req) {
//		YuyueResponse sres = new YuyueResponse();
//		try {
//			int id = Integer.parseInt(req.getParameter("id"));
//			int uid = Integer.parseInt(req.getParameter("uid"));
//		    Yuyue yinfo = new Yuyue();
//		    yinfo.setId(id);
//		    List<Yuyue> dlist = yuyueService.queryYuyueList(yinfo, null);
//		    
//		    Pinglun pinglun = new Pinglun();
//		    pinglun.setOid(id);
//		    pinglun.setPlrid(uid+"");
//		    List<Pinglun> plist = pinglunService.queryPinglunList(pinglun);
//		    if(plist!=null && plist.size()>0 ){
//		    	pinglun = plist.get(0); 
//		    	sres.setPinfo(pinglun);
//		    	sres.setSfpj("Y");
//		    }
//		    yinfo = dlist.get(0);
//			sres.setDinfo(yinfo);
//			sres.setCode(200);
//		
//		} catch (Exception e) {
//			sres.setCode(500);
//			e.printStackTrace();
//		}
//		return sres;
//	}
//	
//	/**
//	 * 预约详情 维修工端
//	 * @param req
//	 * @return
//	 */
//	@RequestMapping(value = "/yinfoJiajiao")
//	@ResponseBody
//	public YuyueResponse yinfoJiajiao(HttpServletRequest req) {
//		YuyueResponse sres = new YuyueResponse();
//		try {
//			int id = Integer.parseInt(req.getParameter("id"));
//			int uid = Integer.parseInt(req.getParameter("uid"));
//		    Yuyue yinfo = new Yuyue();
//		    yinfo.setId(id);
//		    List<Yuyue> dlist = yuyueService.queryYuyueList(yinfo, null);
//		    
//		    Pinglun pinglun = new Pinglun();
//		    pinglun.setOid(id);
//		    pinglun.setPlrid(uid+"");
//		    List<Pinglun> plist = pinglunService.queryPinglunList(pinglun);
//		    if(plist!=null && plist.size()>0 ){
//		    	pinglun = plist.get(0); 
//		    	sres.setPinfo(pinglun);
//		    	sres.setSfpj("Y");
//		    }
//		    yinfo = dlist.get(0);
//			sres.setDinfo(yinfo);
//			sres.setCode(200);
//		
//		} catch (Exception e) {
//			sres.setCode(500);
//			e.printStackTrace();
//		}
//		return sres;
//	}
	
	 
	
	 
	
	 /**
	 * 上传文件
	 * @param user
	 * @return
	 */
    @RequestMapping(value = "/uploadFile")
    @ResponseBody
	public String uploadFile(HttpServletRequest req,HttpServletResponse res,Userinfo user){	
        String url = "";
		try
		{
		 
			FileItemFactory factory = new DiskFileItemFactory();
			// 创建文件上传处理器
			ServletFileUpload upload = new ServletFileUpload(factory);
			// 开始解析请求信息
			List items = null;
			try {
				items = upload.parseRequest(req);
			} catch (FileUploadException e) {
				e.printStackTrace();
			}
			// 对所有请求信息进行判断
			Iterator iter = items.iterator();
			while (iter.hasNext()) {
				FileItem item = (FileItem) iter.next();
				// 信息为普通的格式
				if (item.isFormField()) {
					String fieldName = item.getFieldName();
					String value = item.getString();
				 
				}
				// 信息为文件格式
				else {
					String fileName = item.getName();
				 
					int index = fileName.lastIndexOf(".");
					fileName = fileName.substring(index);
				
					String fname = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())+fileName;
					String basePath =  req.getServletContext().getRealPath("/upload");
					String furl = "/upload/" + fname;
					File file = new File(basePath, fname);
					try {
						item.write(file);
						url = furl;
					} catch (Exception e) {
						e.printStackTrace();
					}
				}
			}
		}
		catch(Exception e)
		{
			 
			e.printStackTrace();
		}
		return url;
	}
	
    /**
	 * 评论
	 * @param user
	 * @return
	 */
    @RequestMapping(value="/pinglun")
    @ResponseBody
	public Response pinglun(HttpServletRequest req,Pinglun pinglun){	
    	Response sres = new Response();
		try
		{
			 String uid = pinglun.getPlrid();
			 Userinfo uinfo = userinfoService.queryUserinfoById(Integer.parseInt(uid));
			 pinglun.setPlr(uinfo.getName());
			 pinglun.setPlsj(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
			 pinglunService.insertPinglun(pinglun);
			 Pinglun pinfo = new Pinglun();
			 pinfo.setUid(pinglun.getUid());
			 List<Pinglun> plist = pinglunService.queryPinglunList(pinfo);
			double totalfen = 0;
			if(plist!=null && plist.size()>0){
				for (Pinglun pinglun1 : plist) {
					totalfen = totalfen+ pinglun1.getFs();
				}
				totalfen = totalfen/plist.size();
			}
			
			 int id = Integer.parseInt(pinglun.getUid());
			 Zhaopin zpinfo = zhaopinService.queryZhaopinById(pinglun.getOid());
			 zpinfo.setState("已评价");
			 zhaopinService.updateZhaopin(zpinfo);
		
			 uinfo = new Userinfo();
		     uinfo = userinfoService.queryUserinfoById(id);
			 uinfo.setScores(totalfen);
			 userinfoService.updateUserinfo(uinfo);
			 sres.setCode(200);
		}
		catch(Exception e)
		{
			sres.setCode(500);
			e.printStackTrace();
		}
		return sres;
	}
    /**
     * 公告 
     * @param response
     * @param request
     * @return
     * @throws Exception
     */
    @RequestMapping(value="/glist")
    @ResponseBody
    public GonggaoListResponse glist(HttpServletResponse response, HttpServletRequest request) throws Exception{
    	GonggaoListResponse res = new GonggaoListResponse();
    	Gginfo gonggao = new Gginfo();
    	List<Gginfo> dlist = gginfoService.queryGginfoList(gonggao, null);
    	res.setDlist(dlist);
	    return res;
	}
    
    /**
     * 公告 
     * @param response
     * @param request
     * @return
     * @throws Exception
     */
    @RequestMapping(value="/ginfo")
    @ResponseBody
    public GonggaoResponse ginfo(HttpServletResponse response, HttpServletRequest request) throws Exception{
    	GonggaoResponse res = new GonggaoResponse();
    	int id = Integer.parseInt(request.getParameter("id"));
    	Gginfo gonggao = gginfoService.queryGginfoById(id);
    	res.setDinfo(gonggao);
	    return res;
	}  

}

Guess you like

Origin blog.csdn.net/weixin_46437112/article/details/135238431