Browse Source

接口测试更改

Antiloveg 9 years ago
parent
commit
765d1d0ff2

+ 8 - 1
src/main/java/com/goafanti/common/controller/BaseController.java

@@ -9,6 +9,7 @@ import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
 import org.apache.commons.lang3.StringUtils;
+import org.apache.shiro.SecurityUtils;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.beans.propertyeditors.CustomDateEditor;
 import org.springframework.core.io.support.ResourcePropertySource;
@@ -19,6 +20,7 @@ import org.springframework.web.bind.annotation.InitBinder;
 import org.springframework.web.bind.annotation.ModelAttribute;
 
 import com.goafanti.common.bo.Error;
+import com.goafanti.common.model.User;
 import com.goafanti.core.shiro.token.TokenManager;
 
 @Controller
@@ -83,11 +85,16 @@ public class BaseController {
 
 	@ModelAttribute
 	public void prepareModel(HttpServletRequest request, Model model) {
+		
 		model.addAttribute("staticHost", staticHost);
 		model.addAttribute("basePath", request.getContextPath());
 		model.addAttribute("uploadPath",uploadPath);
 		model.addAttribute("uploadPrivatePath",uploadPrivatePath);
-		model.addAttribute("userData",TokenManager.getToken());
+		if(SecurityUtils.getSubject().getPrincipal()  instanceof User){
+			System.out.println(TokenManager.getToken().getId());
+			model.addAttribute("userData", TokenManager.getToken() );
+		}
+		
 		model.addAttribute("accessKey",accessKey);
 		model.addAttribute("accessSecret",accessSecret);
 	}

+ 77 - 16
src/main/java/com/goafanti/common/controller/WebpageController.java

@@ -1,28 +1,43 @@
 package com.goafanti.common.controller;
 
+import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
 
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
 import org.springframework.web.servlet.ModelAndView;
+import org.springframework.web.servlet.view.RedirectView;
+
+import com.goafanti.common.model.Admin;
+import com.goafanti.common.model.User;
+import com.goafanti.core.shiro.token.TokenManager;
+import com.goafanti.techservice.patent.service.AdminService;
+import com.goafanti.user.service.UserService;
+
+
 
 @Controller
 public class WebpageController extends BaseController {
-
+	@Resource
+	private UserService userService;
+	
+	@Resource
+	private AdminService adminService;
+	
 	@RequestMapping(value = "/", method = RequestMethod.GET)
-	public String home(HttpServletRequest request, ModelAndView modelview) {
-		return "/index";
+	public ModelAndView home(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/index");
 	}
 	
 	@RequestMapping(value = "user/account/index", method = RequestMethod.GET)
-	public String index(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/account/index";
+	public ModelAndView index(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/user/account/index");
 	}
 	
 	@RequestMapping(value = "/user/account/set", method = RequestMethod.GET)
-	public String userSet(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/account/set";
+	public ModelAndView userSet(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/user/account/set");
 	}
 	
 	@RequestMapping(value = "/user/login", method = RequestMethod.GET)
@@ -36,31 +51,31 @@ public class WebpageController extends BaseController {
 	}
 	
 	@RequestMapping(value = "/user/certify", method = RequestMethod.GET)
-	public String userCertify(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/certify";
+	public ModelAndView userCertify(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/user/certify");
 	}
 	
 	@RequestMapping(value = "/user/index", method = RequestMethod.GET)
-	public String userIndex(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/index";
+	public ModelAndView userIndex(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/user/index");
 	}
 	
 	@RequestMapping(value = "/user/account/services", method = RequestMethod.GET)
-	public String userServices(HttpServletRequest request, ModelAndView modelview) {
-		return "/user/account/services";
+	public ModelAndView userServices(HttpServletRequest request, ModelAndView modelview) {
+		return userLogin(request,modelview,"/user/account/services");
 	}
 	
-	@RequestMapping(value = "/admin/index", method = RequestMethod.GET)
+	/*@RequestMapping(value = "/admin/index", method = RequestMethod.GET)
 	public String adminHome(HttpServletRequest request, ModelAndView modelview) {
 		return "/admin/index";
-	}
+	}*/
 	
 	@RequestMapping(value = "/admin/login", method = RequestMethod.GET)
 	public String adminLogin(HttpServletRequest request, ModelAndView modelview) {
 		return "/admin/login";
 	}
 	
-	@RequestMapping(value = "/admin/userManage", method = RequestMethod.GET)
+	/*@RequestMapping(value = "/admin/userManage", method = RequestMethod.GET)
 	public String adminUserManage(HttpServletRequest request, ModelAndView modelview) {
 		return "/admin/userManage";
 	}
@@ -68,6 +83,52 @@ public class WebpageController extends BaseController {
 	@RequestMapping(value = "/admin/servicesManage/patent", method = RequestMethod.GET)
 	public String adminServicesManagePatent(HttpServletRequest request, ModelAndView modelview) {
 		return "/admin/servicesManage/patent";
+	}*/
+	
+	@RequestMapping(value = "/admin/userManage", method = RequestMethod.GET)
+	public ModelAndView adminUserManage(HttpServletRequest request, ModelAndView modelview) {
+		return adminToLogin(request,modelview,"/admin/userManage");
+	}
+	
+	@RequestMapping(value = "/admin/servicesManage/patent", method = RequestMethod.GET)
+	public ModelAndView adminServicesManagePatent(HttpServletRequest request, ModelAndView modelview) {
+		return adminToLogin(request,modelview,"/admin/servicesManage/patent");
+	}
+	
+	@RequestMapping(value = "/admin/index", method = RequestMethod.GET)
+	public ModelAndView adminHome(HttpServletRequest request, ModelAndView modelview) {
+		return adminToLogin(request,modelview,"/admin/index");
+	}
+	
+	
+	private ModelAndView userLogin(HttpServletRequest request, ModelAndView modelview, String next) {
+		String key = TokenManager.getUserId();
+		if (!TokenManager.isLogin() || key == null || key == "") {
+			RedirectView rv = new RedirectView();
+			rv.setUrl(request.getContextPath() + "/user/login");
+			rv.setExposeModelAttributes(false);
+			modelview.setView(rv);
+			return modelview;
+		}
+		User user = userService.selectByPrimaryKey(key);
+		modelview.getModel().put("user", user);
+		modelview.setViewName(next);
+		return modelview;
+	}
+	
+	private ModelAndView adminToLogin(HttpServletRequest request, ModelAndView modelview, String next) {
+		String key = TokenManager.getAdminId();
+		if (!TokenManager.isLogin() || key == null || key == "") {
+			RedirectView rv = new RedirectView();
+			rv.setUrl(request.getContextPath() + "/admin/login");
+			rv.setExposeModelAttributes(false);
+			modelview.setView(rv);
+			return modelview;
+		}
+		Admin admin = adminService.selectByPrimaryKey(key);
+		modelview.getModel().put("admin", admin);
+		modelview.setViewName(next);
+		return modelview;
 	}
 
 }

+ 3 - 1
src/main/java/com/goafanti/common/model/Admin.java

@@ -4,7 +4,9 @@ import java.util.Date;
 
 import com.fasterxml.jackson.annotation.JsonIgnore;
 
-public class Admin {
+public class Admin extends BaseModel{
+	private static final long serialVersionUID = 1L;
+	
     private String id;
 
     /**

+ 8 - 0
src/main/java/com/goafanti/core/shiro/token/TokenManager.java

@@ -83,6 +83,14 @@ public class TokenManager {
 		Admin token = (Admin) SecurityUtils.getSubject().getPrincipal();
 		return token;
 	}
+	
+	/**
+	 * 获取当前管理员ID
+	 * @return
+	 */
+	public static String getAdminId(){
+		return getAdminToken() == null ? null : getAdminToken().getId();
+	}
 
 	/**
 	 * 获取验证码,获取一次后删除

+ 76 - 3
src/main/java/com/goafanti/techservice/patent/controller/PatentApiController.java

@@ -1,5 +1,10 @@
 package com.goafanti.techservice.patent.controller;
 
+import java.io.File;
+import java.io.FileInputStream;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.OutputStream;
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
 import java.util.Calendar;
@@ -10,8 +15,11 @@ import java.util.Map;
 import java.util.UUID;
 
 import javax.annotation.Resource;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 
 import org.junit.Test;
+import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RequestMethod;
@@ -27,6 +35,7 @@ import com.goafanti.common.model.PatentInfo;
 import com.goafanti.common.model.PatentLog;
 import com.goafanti.common.model.PatentRegistration;
 import com.goafanti.common.utils.DateUtils;
+import com.goafanti.common.utils.LoggerUtils;
 import com.goafanti.common.utils.StringUtils;
 import com.goafanti.core.mybatis.page.Pagination;
 import com.goafanti.core.shiro.token.TokenManager;
@@ -58,6 +67,9 @@ public class PatentApiController extends BaseApiController {
 	private PatentRegistrationService	patentRegistrationService;
 	@Resource
 	private AdminService				adminService;
+	
+	@Value(value = "${upload.private.path}")
+	private String	uploadPrivatePath	= null;
 
 	/**
 	 * 用户端专利申请
@@ -343,9 +355,9 @@ public class PatentApiController extends BaseApiController {
 	 * @throws ParseException
 	 */
 	@RequestMapping(value = "/saveRecieveSend", method = RequestMethod.POST)
-	public Result recieveSendDetail(String rid, PatentRegistrationBo patentRegistrationBo) throws ParseException {
+	public Result recieveSendDetail(String rid, String pid ,PatentRegistrationBo patentRegistrationBo) throws ParseException {
 		Result res = new Result();
-		patentRegistrationService.updateByPrimaryKeySelective(regBo2Reg(rid, patentRegistrationBo));
+		patentRegistrationService.updateByPrimaryKey(regBo2Reg(rid, pid, patentRegistrationBo));
 		return res;
 	}
 
@@ -386,6 +398,54 @@ public class PatentApiController extends BaseApiController {
 		res.setData(patentCostService.updateByPrimaryKeySelective(p));
 		return res;
 	}
+	
+	/**
+	 * 下载专利代理委托书模版
+	 * @return
+	 */
+	@RequestMapping(value="/downLoadTemplate",method = RequestMethod.GET)
+	public Result downloadPatentProryStatement(HttpServletResponse response,  HttpServletRequest request){
+		Result res = new Result();
+		/*if(null == TokenManager.getAdminToken() || null == TokenManager.getToken()){
+			res.getError().add(buildError(ErrorConstants.FILE_NON_EXISTENT, "权限不足,无法下载!"));
+			return res;
+		}*/
+		String filename =Long.toString(System.nanoTime())+".doc"; 
+		InputStream in = null;
+		OutputStream out = null;
+		byte[] buffer = new byte[8 * 1024];
+		String fileSaveRootPath = "";
+		try {
+			fileSaveRootPath = uploadPrivatePath + "/patent/patent_prory_statement.doc";
+			File file = new File(fileSaveRootPath);
+			in = new FileInputStream(file);
+		out = response.getOutputStream();
+		// 设置文件MIME类型
+		response.setContentType("application/octet-stream");
+		response.setHeader("Content-Disposition", "attachment; filename=" + filename);
+		for (;;) {
+			int bytes = in.read(buffer);
+			if (bytes == -1) {
+				break;
+			}
+			out.write(buffer, 0, bytes);
+		}
+	} catch (IOException e) {
+		LoggerUtils.fmtError(getClass(), e, "IO错误:%s", e.getMessage());
+	} finally {
+		try {
+			in.close();
+		} catch (IOException e) {
+			LoggerUtils.fmtError(getClass(), e, "IO错误:%s", e.getMessage());
+		}
+		try {
+			out.close();
+		} catch (IOException e) {
+			LoggerUtils.fmtError(getClass(), e, "IO错误:%s", e.getMessage());
+		}
+	}
+		return res;
+	}
 
 	// 专利纸件收发登记
 	private Pagination<PatentRecieveSendBo> getRecieveSendList(Integer pNo, Integer pSize) {
@@ -432,27 +492,35 @@ public class PatentApiController extends BaseApiController {
 				patentName, patentCatagory, patentState, pNo, pSize);
 	}
 
-	private PatentRegistration regBo2Reg(String rid, PatentRegistrationBo patentRegistrationBo) throws ParseException {
+	private PatentRegistration regBo2Reg(String rid, String pid ,PatentRegistrationBo patentRegistrationBo) throws ParseException {
 		PatentRegistration patentRegistration = new PatentRegistration();
 		patentRegistration.setId(rid);
 		patentRegistration.setAcceptanceExpressCompany(patentRegistrationBo.getAcceptanceExpressCompany());
 		if (!StringUtils.isBlank(patentRegistrationBo.getAcceptanceIssueTime())) {
 				patentRegistration.setAcceptanceIssueTime(
 						DateUtils.parseDate(patentRegistrationBo.getAcceptanceIssueTime(), "yyyy-MM-dd"));
+		}else{
+			patentRegistration.setAcceptanceIssueTime(null);
 		}
 		if (!StringUtils.isBlank(patentRegistrationBo.getAcceptanceReceiveTime())) {
 				patentRegistration.setAcceptanceReceiveTime(
 						DateUtils.parseDate(patentRegistrationBo.getAcceptanceReceiveTime(), "yyyy-MM-dd"));
+		}else{
+			patentRegistration.setAcceptanceReceiveTime(null);
 		}
 		patentRegistration.setAcceptanceTrackingNumber(patentRegistrationBo.getAcceptanceTrackingNumber());
 		patentRegistration.setAuthorizationExpressCompany(patentRegistrationBo.getAuthorizationExpressCompany());
 		if (!StringUtils.isBlank(patentRegistrationBo.getAuthorizationIssueTime())) {
 				patentRegistration.setAuthorizationIssueTime(
 						DateUtils.parseDate(patentRegistrationBo.getAuthorizationIssueTime(), "yyyy-MM-dd"));
+		}else{
+			patentRegistration.setAuthorizationIssueTime(null);
 		}
 		if (!StringUtils.isBlank(patentRegistrationBo.getAuthorizationReceiveTime())) {
 				patentRegistration.setAuthorizationReceiveTime(
 						DateUtils.parseDate(patentRegistrationBo.getAuthorizationReceiveTime(), "yyyy-MM-dd"));
+		}else{
+			patentRegistration.setAuthorizationReceiveTime(null);
 		}
 		patentRegistration.setAuthorizationTrackingNumber(patentRegistrationBo.getAuthorizationTrackingNumber());
 		patentRegistration.setCertificateExpressCompany(patentRegistrationBo.getCertificateExpressCompany());
@@ -460,12 +528,17 @@ public class PatentApiController extends BaseApiController {
 				patentRegistration.setCertificateIssueTime(
 						DateUtils.parseDate(patentRegistrationBo.getCertificateIssueTime(), "yyyy-MM-dd"));
 
+		}else{
+			patentRegistration.setCertificateIssueTime(null);
 		}
 		if (!StringUtils.isBlank(patentRegistrationBo.getCertificateRecieveTime())) {
 				patentRegistration.setCertificateRecieveTime(
 						DateUtils.parseDate(patentRegistrationBo.getCertificateRecieveTime(), "yyyy-MM-dd"));
+		}else{
+			patentRegistration.setCertificateRecieveTime(null);
 		}
 		patentRegistration.setCertificateTrackingNumber(patentRegistrationBo.getCertificateTrackingNumber());
+		patentRegistration.setPid(pid);
 		return patentRegistration;
 	}
 

+ 2 - 0
src/main/java/com/goafanti/techservice/patent/service/AdminService.java

@@ -10,4 +10,6 @@ public interface AdminService {
 
 	Admin selectByMobile(String username);
 
+	Admin selectByPrimaryKey(String key);
+
 }

+ 4 - 0
src/main/java/com/goafanti/techservice/patent/service/PatentRegistrationService.java

@@ -12,5 +12,9 @@ public interface PatentRegistrationService {
 
 	Pagination<PatentRecieveSendBo> getRecieveSendList(Integer pNo, Integer pSize);
 
+	int updateByPrimaryKey(PatentRegistration regBo2Reg);
+
+	PatentRegistration selectByPrimaryKey(String rid);
+
 
 }

+ 5 - 0
src/main/java/com/goafanti/techservice/patent/service/impl/AdminServiceImpl.java

@@ -22,4 +22,9 @@ public class AdminServiceImpl implements AdminService {
 		return adminMapper.selectByMobile(mobile);
 	}
 
+	@Override
+	public Admin selectByPrimaryKey(String key) {
+		return adminMapper.selectByPrimaryKey(key);
+	}
+
 }

+ 10 - 0
src/main/java/com/goafanti/techservice/patent/service/impl/PatentRegistrationServiceImpl.java

@@ -45,5 +45,15 @@ public class PatentRegistrationServiceImpl extends BaseMybatisDao<PatentRegistra
 				pageSize);
 	}
 
+	@Override
+	public int updateByPrimaryKey(PatentRegistration patentRegistration) {
+		return patentRegistrationMapper.updateByPrimaryKey(patentRegistration);
+	}
+
+	@Override
+	public PatentRegistration selectByPrimaryKey(String id) {
+		return patentRegistrationMapper.selectByPrimaryKey(id);
+	}
+
 
 }

+ 8 - 3
src/main/java/com/goafanti/user/controller/UserLoginController.java

@@ -33,9 +33,7 @@ public class UserLoginController extends BaseController {
 	@ResponseBody
 	public Result login(HttpServletRequest request, Model model) {
 		Result res = new Result();
-		if(TokenManager.isLogin()){
-			TokenManager.logout();
-		}
+		TokenManager.logout();
 		return res;
 	}
 	
@@ -113,5 +111,12 @@ public class UserLoginController extends BaseController {
 		return res;
 	}
 	
+	@RequestMapping(value="/mt",method = RequestMethod.GET)
+	@ResponseBody
+	public Result MT(){
+		Result res = new Result();
+		res.setData(TokenManager.getToken().getId());
+		return res;
+	}
 
 }