Parcourir la source

Accept Merge Request #90 merger : (master -> test)

Merge Request: merger
Created By: @Antiloveg
Accepted By: @Antiloveg
URL: https://coding.net/t/aft/p/AFT/git/merge/90
Antiloveg il y a 9 ans
Parent
commit
401bc253a7

+ 2 - 0
schema/permission.sql

@@ -128,11 +128,13 @@ values
 
 insert into `permission`(`id`, `url`, `name`) 
 values 
+(UUID(), 'api/admin/getUnitNames', '获取公司'),
 (UUID(), 'api/admin/getContacts', '获取公司联系人');
 
 insert into `permission`(`id`, `url`, `name`) 
 values 
 (UUID(), 'api/admin/listCognizance', '高企认定--高企认定列表'), 
+(UUID(), 'api/admin/listCognizance', '高企认定--咨询师下拉列表'), 
 (UUID(), 'api/admin/applyCognizance', '高企认定--申请高企认定	'), 
 (UUID(), 'api/admin/cognizanceDetail', '高企认定--高企认定详情'), 
 (UUID(), 'api/admin/cognizanceStatus', '高企认定--高企认定流转状态下拉'),

+ 8 - 6
src/main/java/com/goafanti/admin/bo/InputAdmin.java

@@ -1,14 +1,16 @@
 package com.goafanti.admin.bo;
 
+import javax.validation.constraints.Pattern;
 import javax.validation.constraints.Size;
 
 import com.goafanti.common.constant.ErrorConstants;
 
 public class InputAdmin {
 	@Size(min = 0, max = 36, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
-	private String id;
-	
-	@Size(min = 0, max = 12, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	private String	id;
+
+	@Size(min = 0, max = 11, message = "{" + ErrorConstants.MOBILE_SIZE_ERROR + "}")
+	@Pattern(regexp = "^([1-9])\\d{10}$", message = "{" + ErrorConstants.MOBILE_PATTERN_ERROR + "}")
 	private String	mobile;
 
 	@Size(min = 0, max = 6, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
@@ -17,13 +19,13 @@ public class InputAdmin {
 	@Size(min = 0, max = 32, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
 	private String	password;
 
-	@Size(min = 0, max = 255, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
+	@Size(min = 0, max = 255, message = "{" + ErrorConstants.EMAIL_SIZE_ERROR + "}")
+	@Pattern(regexp = "^([a-z0-9A-Z]+[_|\\.]?)+[a-z0-9A-Z]@([a-z0-9A-Z]+(-[a-z0-9A-Z]+)?\\.)+[a-zA-Z]{2,}$", message = "{"
+			+ ErrorConstants.EMAIL_PATTERN_ERROR + "}")
 	private String	email;
 
 	@Size(min = 0, max = 12, message = "{" + ErrorConstants.PARAM_SIZE_ERROR + "}")
 	private String	province;
-	
-	
 
 	public String getId() {
 		return id;

Fichier diff supprimé car celui-ci est trop grand
+ 146 - 395
src/main/java/com/goafanti/admin/controller/AdminApiController.java


+ 0 - 11
src/main/java/com/goafanti/admin/controller/AdminNoticeApiController.java

@@ -26,11 +26,6 @@ public class AdminNoticeApiController extends CertifyApiController{
 	@RequestMapping(value = "/unreadCount", method = RequestMethod.GET)
 	public Result unreadCount(){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
-		
-		
 		res.setData(noticeService.findUnreadNoticeCount());
 		return res;
 	}
@@ -43,9 +38,6 @@ public class AdminNoticeApiController extends CertifyApiController{
 	@RequestMapping(value = "/unread", method = RequestMethod.GET)
 	public Result unread(String pageNo, String pageSize){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -66,9 +58,6 @@ public class AdminNoticeApiController extends CertifyApiController{
 	@RequestMapping(value = "/readed", method = RequestMethod.GET)
 	public Result readed(String pageNo, String pageSize){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {

+ 2 - 72
src/main/java/com/goafanti/admin/controller/AdminPatentApiController.java

@@ -104,9 +104,6 @@ public class AdminPatentApiController extends CertifyApiController {
 			@RequestParam(name = "patentApplicationDate[]", required = false) String[] patentApplicationDate,
 			String author, String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -132,9 +129,6 @@ public class AdminPatentApiController extends CertifyApiController {
 					PatentInfoFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isBlank(patentInfo.getUid())) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到用户", "用户"));
@@ -162,9 +156,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/detail", method = RequestMethod.GET)
 	public Result patentDetail(String pid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(pid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "公司"));
 		} else {
@@ -179,9 +170,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/logs", method = RequestMethod.GET)
 	public Result patentProcess(String pid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(pid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "专利ID"));
 		} else {
@@ -206,9 +194,6 @@ public class AdminPatentApiController extends CertifyApiController {
 			return res;
 		}
 
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isBlank(patentInfo.getId())) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到专利申请", "专利记录ID"));
@@ -246,9 +231,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/patentStatus", method = RequestMethod.GET)
 	public Result patentStatus(){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}  
 		res.setData(disposePatentStatus());
 		return res;
 	}
@@ -263,9 +245,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/lastYearTax", method = RequestMethod.GET)
 	public Result lastYearTax(String uid, String sign){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		
 		if (StringUtils.isBlank(uid)){
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到用户", "用户"));
@@ -301,9 +280,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/upload", method = RequestMethod.POST)
 	public Result upload(HttpServletRequest req, String sign, String uid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		User curUser = userService.selectByPrimaryKey(uid);
 		if (!checkCertify(res, curUser)) {
@@ -333,9 +309,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/download", method = RequestMethod.GET)
 	public Result download(String id, String sign, HttpServletResponse response) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isEmpty(id)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "专利id"));
 			return res;
@@ -373,9 +346,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/downloadTemplateFile", method = RequestMethod.GET)
 	public Result downloadTemplateFile(HttpServletResponse response, String sign) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		AttachmentType attachmentType = AttachmentType.getField(sign);
 		if (attachmentType == AttachmentType.PATENT_PRORY_STATEMENT) {
 			String fileName = "";
@@ -405,9 +375,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/downloadRatepay", method = RequestMethod.GET)
 	public Result downloadRatepay(HttpServletResponse response, String uid, String sign) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(uid)){
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到用户", "用户"));
 			return res;
@@ -439,9 +406,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/uploadTemplate", method = RequestMethod.POST)
 	public Result uploadPatentTemplate(HttpServletRequest req, String sign) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		String fileName = "";
 		List<MultipartFile> files = getFiles(req);
 		MultipartFile mf = files.get(0);
@@ -483,9 +447,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/delete", method = RequestMethod.POST)
 	public Result deletePatent(@RequestParam(name = "ids[]", required = false) String[] ids) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (ids == null || ids.length < 1) {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", ""));
 		} else {
@@ -494,15 +455,6 @@ public class AdminPatentApiController extends CertifyApiController {
 		return res;
 	}
 
-	
-	
-	
-	
-	
-
-	
-
-	
 
 	/**
 	 * 待缴费专利管理列表
@@ -510,9 +462,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/pendingPaymentList", method = RequestMethod.GET)
 	public Result managePendingPaymentList(String locationProvince, String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -531,9 +480,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/confirmPayment", method = RequestMethod.POST)
 	public Result confirmPayment(String cid, String uid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(cid) || StringUtils.isBlank(uid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到专利申请", "专利记录ID"));
 			return res;
@@ -570,9 +516,6 @@ public class AdminPatentApiController extends CertifyApiController {
 			String locationProvince, String unitName, Integer patentCatagory, String patentName, Integer patentState,
 			String author, String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -592,9 +535,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/replyConfirm", method = RequestMethod.POST)
 	public Result replyConfirm(String pid, String uid, Integer patentState) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(pid) || StringUtils.isBlank(uid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到专利申请", "专利记录ID"));
 			return res;
@@ -621,9 +561,6 @@ public class AdminPatentApiController extends CertifyApiController {
 	@RequestMapping(value = "/getRecieveSendList", method = RequestMethod.GET)
 	public Result RecieveSendList(String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 
@@ -652,10 +589,6 @@ public class AdminPatentApiController extends CertifyApiController {
 			return res;
 		}
 
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
-
 		if (StringUtils.isBlank(pid) || StringUtils.isBlank(rid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "专利记录ID", "专利记录ID"));
 			return res;
@@ -695,9 +628,6 @@ public class AdminPatentApiController extends CertifyApiController {
 					PatentCostFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (null == cid) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "专利记录ID", "专利记录ID"));
@@ -716,6 +646,7 @@ public class AdminPatentApiController extends CertifyApiController {
 	 * 
 	 * @throws ParseException
 	 */
+	@SuppressWarnings("unchecked")
 	@RequestMapping(value = "/exportComposite", method = RequestMethod.GET)
 	public Result exportComposite(@RequestParam(name = "serialNumber", required = false) String serialNumber,
 			String patentNumber, String office, String locationProvince, String unitName,
@@ -730,7 +661,6 @@ public class AdminPatentApiController extends CertifyApiController {
 		Integer pc = (!StringUtils.isNumeric(patentCatagory) ? null : Integer.parseInt(patentCatagory));
 		Integer ps = (!StringUtils.isNumeric(patentState) ? null : Integer.parseInt(patentState));
 		String lp = ("undefined".equals(locationProvince)) ? null : locationProvince;
-		@SuppressWarnings("unchecked")
 		List<PatentManageListBo> composites = (List<PatentManageListBo>) getManagePatentList(sn, patentNumber, office,
 				lp, unitName, pc, patentName, ps, createTime, patentApplicationDate, author, 1, 1000).getList();
 		if (res.getError().isEmpty()) {
@@ -763,12 +693,12 @@ public class AdminPatentApiController extends CertifyApiController {
 	 * 
 	 * @throws ParseException
 	 */
+	@SuppressWarnings("unchecked")
 	@RequestMapping(value = "/exportApplicationFee", method = RequestMethod.GET)
 	public Result exportApplicationFee(
 			@RequestParam(name = "patentApplicationDate[]", required = false) String[] patentApplicationDate,
 			String locationProvince, HttpServletResponse response) throws ParseException {
 		Result res = new Result();
-		@SuppressWarnings("unchecked")
 		List<PatentApplicationFeeBo> fees = (List<PatentApplicationFeeBo>) getApplicationFeeList(patentApplicationDate,
 				locationProvince, 1, 1000).getList();
 		if (res.getError().isEmpty()) {

+ 0 - 44
src/main/java/com/goafanti/admin/controller/AdminTechProjectApiController.java

@@ -72,9 +72,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/listTechProject", method = RequestMethod.POST)
 	public Result listClientTechProject(String province, String unitName, String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -114,9 +111,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 					TechProjectFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isBlank(techProject.getUid())) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到用户", "用户"));
@@ -141,9 +135,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/techProjectDetial", method = RequestMethod.POST)
 	public Result techProjectDetial(String pid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(pid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "公司"));
 		} else {
@@ -161,9 +152,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/techProjectLog", method = RequestMethod.POST)
 	public Result techProjectLog(String pid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(pid)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "科技项目申报ID"));
 		} else {
@@ -190,9 +178,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 					TechProjectFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isBlank(techProject.getId())) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到科技申报项目", "科技项目申报ID"));
@@ -228,9 +213,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/status", method = RequestMethod.GET)
 	public Result Status(){
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}  
 		res.setData(disposeStatus());
 		return res;
 	}
@@ -245,9 +227,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/getDepartment", method = RequestMethod.GET)
 	public Result getDepartment(String uid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		res.setData(techWebsiteService.getDepartment(uid));
 		return res;
 	}
@@ -281,9 +260,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/deleteTechWebsite", method = RequestMethod.POST)
 	public Result deleteTechWebsite(@RequestParam(name = "ids[]", required = false) String[] ids) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (ids == null || ids.length < 1) {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", ""));
 		} else {
@@ -299,9 +275,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/listTechWebsite", method = RequestMethod.POST)
 	public Result listTechWebsite(String province, String unitName, String pageNo, String pageSize) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		Integer pNo = 1;
 		Integer pSize = 10;
 		if (StringUtils.isNumeric(pageSize)) {
@@ -320,7 +293,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 						w.setPassword(AesUtils.decrypt(w.getPassword(), aesSecretKey));
 					} catch (Exception e) {
 					}
-					// w.setPassword(Base64Utils.decodeData(w.getPassword()));
 				}
 			}
 			t.setList(l);
@@ -338,9 +310,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/techWebsiteDetail", method = RequestMethod.POST)
 	public Result techWebsiteDetail(String id) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		if (StringUtils.isBlank(id)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "公司"));
 		} else {
@@ -375,9 +344,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 					TechProjectFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isBlank(w.getUid())) {
 			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "找不到用户", "用户"));
@@ -389,10 +355,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 			return res;
 		}
 
-		/*
-		 * if (null != w && null != (w.getPassword())) {
-		 * w.setPassword(Base64Utils.encodeData(w.getPassword().trim())); }
-		 */
 
 		if (null != w && null != (w.getPassword())) {
 			try {
@@ -418,9 +380,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/upload", method = RequestMethod.POST)
 	public Result cognizanceFile(HttpServletRequest req, String uid) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 		User curUser = userService.selectByPrimaryKey(uid);
 		if (!checkCertify(res, curUser)) {
 			return res;
@@ -443,9 +402,6 @@ public class AdminTechProjectApiController extends CertifyApiController {
 	@RequestMapping(value = "/download", method = RequestMethod.GET)
 	public Result download(HttpServletResponse response, String id) {
 		Result res = new Result();
-		if (!checkAdminLogin(res)) {
-			return res;
-		}
 
 		if (StringUtils.isEmpty(id)) {
 			res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "科技项目ID"));

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

@@ -25,4 +25,6 @@ public interface AdminService {
 
 	AdminDetail selectAdminDetail(String id);
 
+	List<Admin> selectConsultant();
+
 }

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

@@ -118,4 +118,9 @@ public class AdminServiceImpl extends BaseMybatisDao<AdminMapper> implements Adm
 		return null;
 	}
 
+	@Override
+	public List<Admin> selectConsultant() {
+		return adminMapper.selectConsultant();
+	}
+
 }

+ 20 - 7
src/main/java/com/goafanti/cognizance/bo/InputOrgTechCenterDetail.java

@@ -28,9 +28,14 @@ public class InputOrgTechCenterDetail {
 	private Date	projectTime;
 
 	/**
-	 * 期限
+	 * 期限开始时间
 	 */
-	private Date	termTime;
+	private Date	termStartTime;
+
+	/**
+	 * 期限截止时间
+	 */
+	private Date	termEndTime;
 
 	public String getId() {
 		return id;
@@ -80,13 +85,21 @@ public class InputOrgTechCenterDetail {
 		this.projectTime = projectTime;
 	}
 
-	public Date getTermTime() {
-		return termTime;
+	public Date getTermStartTime() {
+		return termStartTime;
 	}
 
-	public void setTermTime(Date termTime) {
-		this.termTime = termTime;
+	public void setTermStartTime(Date termStartTime) {
+		this.termStartTime = termStartTime;
 	}
-	
+
+	public Date getTermEndTime() {
+		return termEndTime;
+	}
+
+	public void setTermEndTime(Date termEndTime) {
+		this.termEndTime = termEndTime;
+	}
+
 	
 }

+ 10 - 3
src/main/java/com/goafanti/cognizance/controller/CognizanceApiController.java

@@ -939,7 +939,7 @@ public class CognizanceApiController extends CertifyApiController {
 	 */
 	@RequestMapping(value = "/disposeCenterDetail", method = RequestMethod.POST)
 	public Result disposeCenterDetail(@Valid InputOrgTechCenterDetail orgTechCenterDetail, BindingResult bindingResult, String projectTimeFormattedDate,
-			String termTimeFormattedDate)  {
+			String termStartTimeFormattedDate, String termEndTimeFormattedDate)  {
 		Result res = new Result();
 		
 		if (bindingResult.hasErrors()) {
@@ -964,9 +964,16 @@ public class CognizanceApiController extends CertifyApiController {
 			} catch (ParseException e) {
 			}
 		}
-		if (!StringUtils.isBlank(termTimeFormattedDate)) {
+		if (!StringUtils.isBlank(termStartTimeFormattedDate)) {
 			try {
-				orgTechCenterDetail.setTermTime(DateUtils.parseDate(termTimeFormattedDate, AFTConstants.YYYYMMDD));
+				orgTechCenterDetail.setTermStartTime(DateUtils.parseDate(termStartTimeFormattedDate, AFTConstants.YYYYMMDD));
+			} catch (ParseException e) {
+			}
+		}
+		
+		if (!StringUtils.isBlank(termEndTimeFormattedDate)) {
+			try {
+				orgTechCenterDetail.setTermEndTime(DateUtils.parseDate(termEndTimeFormattedDate, AFTConstants.YYYYMMDD));
 			} catch (ParseException e) {
 			}
 		}

+ 2 - 0
src/main/java/com/goafanti/common/dao/AdminMapper.java

@@ -23,4 +23,6 @@ public interface AdminMapper {
 	Admin selectByMobile(String mobile);
 
 	List<Role> selectRolesByPrimaryKey(String uid);
+
+	List<Admin> selectConsultant();
 }

+ 7 - 0
src/main/java/com/goafanti/common/mapper/AdminMapper.xml

@@ -186,4 +186,11 @@
     where ur.uid = #{uid,jdbcType=VARCHAR}
   </select>
   
+  <select id="selectConsultant" resultMap="BaseResultMap"  >
+    select 
+    <include refid="Base_Column_List" />
+    from admin
+    where id  <![CDATA[ <> ]]> '1'
+  </select>
+  
 </mapper>

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

@@ -22,7 +22,7 @@ public class User extends BaseModel implements AftUser{
     * 用户注册手机号,作为登录依据
     */
     @Size(min = 0, max = 11, message = "{" + ErrorConstants.MOBILE_SIZE_ERROR + "}")
-	@Pattern(regexp = "^((13[0-9])|(15[^4,\\D])|(18[0,5-9]))\\d{8}$", message = "{"
+	@Pattern(regexp = "^[0-9]*[1-9][0-9]*$", message = "{"
 			+ ErrorConstants.MOBILE_PATTERN_ERROR + "}")
     private String mobile;
 

+ 10 - 2
src/main/java/com/goafanti/core/shiro/filter/LoginFilter.java

@@ -39,11 +39,19 @@ public class LoginFilter extends AccessControlFilter {
 			uri = uri.replaceAll("^\\" + basePath + "\\/+", "").replaceAll("\\.html$", "");
 		}
 
-		if (token != null && uri.startsWith("admin/") && token instanceof Admin) {
+		if (token != null && uri.startsWith("api/admin/") && token instanceof Admin) {
 			return Boolean.TRUE;
 		}
 
-		if (token != null && uri.startsWith("user/") && token instanceof User) {
+		if (token != null && uri.startsWith("techservice/") && token instanceof User) {
+			return Boolean.TRUE;
+		}
+		
+		if (token != null && uri.startsWith("api/techproject/") && token instanceof User) {
+			return Boolean.TRUE;
+		}
+		
+		if (token != null && uri.startsWith("api/user/") && token instanceof User) {
 			return Boolean.TRUE;
 		}
 

+ 1 - 1
src/main/java/com/goafanti/patent/service/impl/PatentInfoServiceImpl.java

@@ -327,7 +327,7 @@ public class PatentInfoServiceImpl extends BaseMybatisDao<PatentInfoMapper> impl
 		PatentLog log = new PatentLog();
 		log.setId(UUID.randomUUID().toString());
 		log.setPid(patentInfo.getId());
-		log.setRecordTime(patentInfo.getCreateTime());
+		log.setRecordTime(patentInfo.getRecordTime());
 		log.setState(PatentInfoStatus.CREATE.getCode());
 		log.setPrincipal(StringUtils.isBlank(aid) && TokenManager.getToken() instanceof Admin ? TokenManager.getAdminId() : "");
 		if (TokenManager.getToken() instanceof Admin) {

+ 44 - 9
src/main/java/com/goafanti/user/controller/UserApiController.java

@@ -8,8 +8,10 @@ import java.util.UUID;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
+import javax.validation.Valid;
 
 import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.BeanUtils;
 import org.springframework.stereotype.Controller;
 import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -21,6 +23,7 @@ import com.goafanti.cognizance.service.OrgRatepayService;
 import com.goafanti.common.bo.Result;
 import com.goafanti.common.constant.ErrorConstants;
 import com.goafanti.common.controller.BaseApiController;
+import com.goafanti.common.enums.UserIdentityFields;
 import com.goafanti.common.model.AftUser;
 import com.goafanti.common.model.OrgHumanResource;
 import com.goafanti.common.model.OrganizationIdentity;
@@ -39,6 +42,7 @@ import com.goafanti.common.utils.TimeUtils;
 import com.goafanti.common.utils.VerifyCodeUtils;
 import com.goafanti.core.shiro.token.TokenManager;
 import com.goafanti.techproject.service.TechWebsiteService;
+import com.goafanti.user.bo.InputUserIdentity;
 import com.goafanti.user.bo.OrgIdentityBo;
 import com.goafanti.user.bo.OrgProBo;
 import com.goafanti.user.bo.UidAndTypeBo;
@@ -145,7 +149,27 @@ public class UserApiController extends BaseApiController {
 			this.cleanCodeSession();
 			return res;
 		}
+		
+		if (StringUtils.isBlank(newPwd)){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "新密码"));
+			return res;
+		}
+		
+		if (StringUtils.isBlank(mobile)){
+			res.getError().add(buildError(ErrorConstants.MOBILE_EMPTY_ERROR, "", "mobile"));
+			return res;
+		}
+		
+		if (1 != type || 0 != type){
+			res.getError().add(buildError(ErrorConstants.PARAM_PATTERN_ERROR, "", "type"));
+			return res;
+		}
+		
 		User user = userService.selectByMobieAndType(mobile, type);
+		if (null == user){
+			res.getError().add(buildError(ErrorConstants.MOBILE_EMPTY_ERROR, "", "mobile"));
+			return res;
+		}
 		user.setPassword(newPwd);
 		user.setPassword(passwordUtil.getEncryptPwd(user));
 		userService.updateByPrimaryKey(user);
@@ -162,6 +186,12 @@ public class UserApiController extends BaseApiController {
 	@RequestMapping(value = "/checkMCode", method = RequestMethod.POST)
 	public Result checkMCode(String mobileCode) {
 		Result res = new Result();
+		
+		if (StringUtils.isBlank(mobileCode)){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "手机验证码"));
+			return res;
+		}
+		
 		if (TimeUtils.checkOverTime("register")) {
 			res.getError().add(buildError(ErrorConstants.MCODE_OVERTIME_ERROR, "手机验证码超时失效"));
 			TokenManager.getSession().removeAttribute(VerifyCodeUtils.M_CODE);
@@ -191,6 +221,11 @@ public class UserApiController extends BaseApiController {
 			res.getError().add(buildError(ErrorConstants.MOBILE_EMPTY_ERROR, "手机号不能为空!"));
 			return res;
 		}
+		
+		if (StringUtils.isBlank(mobileCode)){
+			res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR, "", "手机验证码"));
+			return res;
+		}
 		// 验证码15分钟有效
 		if (TimeUtils.checkOverTime("register")) {
 			res.getError().add(buildError(ErrorConstants.MCODE_OVERTIME_ERROR, "手机验证码超时失效"));
@@ -220,22 +255,22 @@ public class UserApiController extends BaseApiController {
 	 * @return
 	 */
 	@RequestMapping(value = "/userIndentity", method = RequestMethod.POST)
-	public Result basicInfo(UserIdentity userIdentity, BindingResult bindingResult) {
+	public Result basicInfo(@Valid InputUserIdentity userIdentity, BindingResult bindingResult) {
 		Result res = new Result();
 		if (bindingResult.hasErrors()) {
 			res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(),
-					bindingResult.getFieldError().getField()));
+					UserIdentityFields.getFieldDesc(bindingResult.getFieldError().getField())));
 			return res;
 		}
 		if (res.getError().isEmpty()) {
-			UserIdentity identity = userIdentityService.selectUserIdentityByUserId(TokenManager.getUserId());
-			if (identity == null) {
-				userIdentity.setId(UUID.randomUUID().toString());
-				userIdentity.setUid(TokenManager.getUserId());
-				userIdentityService.insert(userIdentity);
+			UserIdentity ui = new UserIdentity();
+			BeanUtils.copyProperties(userIdentity, ui);
+			if (null == ui.getId()) {
+				ui.setId(UUID.randomUUID().toString());
+				ui.setUid(TokenManager.getUserId());
+				userIdentityService.insert(ui);
 			} else {
-				userIdentity.setId(identity.getId());
-				userIdentityService.updateByPrimaryKeySelective(userIdentity);
+				userIdentityService.updateByPrimaryKeySelective(ui);
 			}
 		}
 		res.setData(userIdentity);

+ 0 - 5
src/main/java/com/goafanti/user/controller/UserLoginController.java

@@ -37,11 +37,6 @@ public class UserLoginController extends BaseController {
 		return res;
 	}
 	
-	/*@RequestMapping(value = "/login", method = RequestMethod.GET)
-	public String login(HttpServletRequest request, Model model) {
-		TokenManager.logout();
-		return "login";
-	}*/
 
 	@RequestMapping(value = "/login", method = RequestMethod.POST)
 	public ModelAndView doLogin(User user, Boolean rememberMe, HttpServletRequest request, ModelAndView modelview) {

+ 26 - 22
src/main/resources/props/error.properties

@@ -1,35 +1,39 @@
-org.apache.shiro.authc.UnknownAccountException=\u8D26\u53F7\u6216\u5BC6\u7801\u4E0D\u5339\u914D\u3002
-org.apache.shiro.authc.IncorrectCredentialsException=\u8D26\u53F7\u6216\u5BC6\u7801\u4E0D\u5339\u914D\u3002
-org.apache.shiro.authc.LockedAccountException=\u8BE5\u8D26\u53F7\u5DF2\u51BB\u7ED3\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u3002
-org.apache.shiro.authc.DisabledAccountException=\u8BE5\u8D26\u53F7\u5DF2\u51BB\u7ED3\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u3002
-org.apache.shiro.authc.ExcessiveAttemptsException=\u5C1D\u8BD5\u6B21\u6570\u8FC7\u591A\uFF0C\u8D26\u53F7\u6682\u65F6\u88AB\u9501\u5B9A\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002
-org.apache.shiro.session.ExpiredSessionException=\u767B\u5F55\u4FE1\u606F\u5DF2\u8FC7\u671F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55\u3002
-org.springframework.dao.DataIntegrityViolationException=\u670D\u52A1\u5668\u6253\u4E86\u4E2A\u76F9\u513F\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u6216\u7A0D\u540E\u518D\u8BD5\u3002
-org.springframework.jdbc.BadSqlGrammarException=\u6570\u636E\u5F02\u5E38\uFF0C\u8BF7\u8054\u7CFB\u7BA1\u7406\u5458\u6216\u7A0D\u540E\u518D\u8BD5\u3002
-java.text.ParseException=\u53C2\u6570\u683C\u5F0F\u9519\u8BEF\uFF0C\u8BF7\u6838\u5BF9\u8F93\u5165\u6570\u636E\u540E\u518D\u8BD5\u3002
+org.apache.shiro.authc.UnknownAccountException=\u8d26\u53f7\u6216\u5bc6\u7801\u4e0d\u5339\u914d\u3002
+org.apache.shiro.authc.IncorrectCredentialsException=\u8d26\u53f7\u6216\u5bc6\u7801\u4e0d\u5339\u914d\u3002
+org.apache.shiro.authc.LockedAccountException=\u8be5\u8d26\u53f7\u5df2\u51bb\u7ed3\uff0c\u8bf7\u8054\u7cfb\u7ba1\u7406\u5458\u3002
+org.apache.shiro.authc.DisabledAccountException=\u8be5\u8d26\u53f7\u5df2\u51bb\u7ed3\uff0c\u8bf7\u8054\u7cfb\u7ba1\u7406\u5458\u3002
+org.apache.shiro.authc.ExcessiveAttemptsException=\u5c1d\u8bd5\u6b21\u6570\u8fc7\u591a\uff0c\u8d26\u53f7\u6682\u65f6\u88ab\u9501\u5b9a\uff0c\u8bf7\u7a0d\u540e\u518d\u8bd5\u3002
+org.apache.shiro.session.ExpiredSessionException=\u767b\u5f55\u4fe1\u606f\u5df2\u8fc7\u671f\uff0c\u8bf7\u91cd\u65b0\u767b\u5f55\u3002
+org.springframework.dao.DataIntegrityViolationException=\u670d\u52a1\u5668\u6253\u4e86\u4e2a\u76f9\u513f\uff0c\u8bf7\u8054\u7cfb\u7ba1\u7406\u5458\u6216\u7a0d\u540e\u518d\u8bd5\u3002
+org.springframework.jdbc.BadSqlGrammarException=\u6570\u636e\u5f02\u5e38\uff0c\u8bf7\u8054\u7cfb\u7ba1\u7406\u5458\u6216\u7a0d\u540e\u518d\u8bd5\u3002
+java.text.ParseException=\u53c2\u6570\u683c\u5f0f\u9519\u8bef\uff0c\u8bf7\u6838\u5bf9\u8f93\u5165\u6570\u636e\u540e\u518d\u8bd5\u3002
 
-NON_LOGIN=\u7528\u6237\u672A\u767B\u5F55\u3002
+NON_LOGIN=\u7528\u6237\u672a\u767b\u5f55\u3002
 
-VCODE_ERROR=\u9A8C\u8BC1\u7801\u8F93\u5165\u9519\u8BEF\uFF01
+VCODE_ERROR=\u9a8c\u8bc1\u7801\u8f93\u5165\u9519\u8bef\uff01
 
-PARAM_ERROR={0}\u53C2\u6570\u9519\u8BEF
+PARAM_ERROR={0}\u53c2\u6570\u9519\u8bef
 
-PARAM_INTEGER_ERROR={0}\u53C2\u6570\u5FC5\u987B\u4E3A\u6570\u5B57\u3002
+PARAM_INTEGER_ERROR={0}\u53c2\u6570\u5fc5\u987b\u4e3a\u6570\u5b57\u3002
 
-PARAM_EMPTY_ERROR={0}\u5FC5\u987B\u6307\u5B9A\u3002
+PARAM_EMPTY_ERROR={0}\u5fc5\u987b\u6307\u5b9a\u3002
 
-PARAM_SIZE_ERROR={0}\u53C2\u6570\u957F\u5EA6\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u5728{min}\u548C{max}\u4E4B\u95F4\u3002
+PARAM_SIZE_ERROR={0}\u53c2\u6570\u957f\u5ea6\u4e0d\u6b63\u786e\uff0c\u5fc5\u987b\u5728{min}\u548c{max}\u4e4b\u95f4\u3002
 
-PARAM_PATTERN_ERROR={0}\u53C2\u6570\u683C\u5F0F\u987B\u6B63\u786E\u6307\u5B9A{1}\u3002
+PARAM_PATTERN_ERROR={0}\u53c2\u6570\u683c\u5f0f\u987b\u6b63\u786e\u6307\u5b9a{1}\u3002
 
-EMAIL_SIZE_ERROR=\u90AE\u7BB1\u5730\u5740\u957F\u5EA6\u9519\u8BEF\uFF01
+EMAIL_SIZE_ERROR=\u90ae\u7bb1\u5730\u5740\u957f\u5ea6\u9519\u8bef\uff01
 
-EMAIL_PATTERN_ERROR=\u90AE\u7BB1\u5730\u5740\u683C\u5F0F\u9519\u8BEF\uFF01
+EMAIL_PATTERN_ERROR=\u90ae\u7bb1\u5730\u5740\u683c\u5f0f\u9519\u8bef\uff01
 
-DUNPLICATE_KAY_ERROR={0}\u5DF2\u88AB\u4ED6\u4EBA\u6CE8\u518C\uFF01
+MOBILE_SIZE_ERROR=\u624b\u673a\u53f7\u957f\u5ea6\u9519\u8bef\uff01
 
-DATA_EMPTY_ERROR=\u5F53\u524D{0}\u6CA1\u6709\u6570\u636E\u3002
+MOBILE_PATTERN_ERROR=\u624b\u673a\u53f7\u683c\u5f0f\u9519\u8bef\uff01
 
-PWD_NOT_MATCH_ERROR=\u539F\u5BC6\u7801\u8F93\u5165\u4E0D\u5339\u914D\u3002
+DUNPLICATE_KAY_ERROR={0}\u5df2\u88ab\u4ed6\u4eba\u6ce8\u518c\uff01
 
-NON_CERTIFIED=\u672A\u901A\u8FC7\u5B9E\u540D\u8BA4\u8BC1\uFF0C\u65E0\u6CD5\u64CD\u4F5C\uFF01
+DATA_EMPTY_ERROR=\u5f53\u524d{0}\u6ca1\u6709\u6570\u636e\u3002
+
+PWD_NOT_MATCH_ERROR=\u539f\u5bc6\u7801\u8f93\u5165\u4e0d\u5339\u914d\u3002
+
+NON_CERTIFIED=\u672a\u901a\u8fc7\u5b9e\u540d\u8ba4\u8bc1\uff0c\u65e0\u6cd5\u64cd\u4f5c\uff01

+ 5 - 1
src/main/resources/shiro_base_auth.ini

@@ -1,9 +1,13 @@
 [base_auth]
 /login=anon
 /signin=anon
+/managesignin=anon
 /register=anon
 /open/**=anon
 /favicon.ico=anon
 /static/**=anon
-/api/**=anon
+/api/admin/**=login,permission
+/api/user/**=login
+/api/techproject/**=login
+/techservice/**=login
 /**=anon