minitiger 9 лет назад
Родитель
Сommit
1d1debd82b

+ 2 - 9
VisualInspection_server/src/main/java/com/xintong/visualinspection/aop/ControllerValidatorInterceptor.java

@@ -5,8 +5,8 @@ import org.aspectj.lang.annotation.Around;
 import org.aspectj.lang.annotation.Aspect;
 import org.springframework.stereotype.Component;
 import org.springframework.validation.BindingResult;
-import org.springframework.validation.ObjectError;
 
+import com.xintong.visualinspection.controller.BaseController;
 import com.xintong.visualinspection.err.BusinessException;
 @Aspect
 @Component
@@ -15,14 +15,7 @@ public class ControllerValidatorInterceptor {
      public Object doAround(ProceedingJoinPoint pjp, BindingResult bindingResult) throws Throwable {
          Object retVal;
          if (bindingResult.hasErrors()) {
-        	 
-        	 StringBuffer sb = new StringBuffer();
-        	 for(ObjectError err:bindingResult.getAllErrors()){
-        		 sb.append(err.getDefaultMessage()+";");
-        	 }
-        	 String s = sb.toString();
-        	 if(s.length()>0) s = sb.substring(0, s.length()-1);
-             throw new BusinessException(20001,s);
+             throw new BusinessException(20001,BaseController.getValidatorErrors(bindingResult));
          } else {
              retVal = pjp.proceed();
          }

+ 1 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/bean/Constant.java

@@ -24,7 +24,7 @@ public class Constant{
 	 */
 	
 	private static final long serialVersionUID = -7765958097423155178L;
-	private Integer id;
+	private Long id;
 	@NotEmpty(message="字典值不能为空")
 	private String codeValue;
 	@NotEmpty(message="字典名称不能为空")

+ 15 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/BaseController.java

@@ -6,6 +6,9 @@ import java.util.Map;
 
 import javax.servlet.http.HttpServletRequest;
 
+import org.springframework.validation.BindingResult;
+import org.springframework.validation.ObjectError;
+import org.springframework.web.bind.MethodArgumentNotValidException;
 import org.springframework.web.bind.annotation.ControllerAdvice;
 import org.springframework.web.bind.annotation.ExceptionHandler;
 
@@ -112,9 +115,20 @@ public class BaseController {
         	code = new ErrorCode(10006); 
         } else if (ex instanceof BusinessException) {
         	code = ((BusinessException) ex).getErrCode(); 
+        } else if (ex instanceof MethodArgumentNotValidException) {
+        	BindingResult bindingResult = ((MethodArgumentNotValidException) ex).getBindingResult();
+        	code = new ErrorCode(20001,getValidatorErrors(bindingResult)); 
         } else{
         	code = new ErrorCode(11000); 
         }
         return returnResult(code.getCode(),code.getDesc(),null);
-    }  
+    }
+    
+    public static String getValidatorErrors(BindingResult bindingResult){
+    	StringBuffer sb = new StringBuffer();
+    	for(ObjectError err:bindingResult.getAllErrors()){
+   		 	sb.append("["+err.getDefaultMessage()+"]");
+       	}
+       	return sb.toString();
+    }
 }

+ 62 - 4
VisualInspection_server/src/main/java/com/xintong/visualinspection/controller/ConstantController.java

@@ -1,14 +1,17 @@
 package com.xintong.visualinspection.controller;
 
+import java.util.List;
+
 import javax.validation.Valid;
 
 import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.validation.BindingResult;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
+import com.mysql.jdbc.StringUtils;
 import com.xintong.visualinspection.bean.Constant;
+import com.xintong.visualinspection.err.BusinessException;
 import com.xintong.visualinspection.service.ConstantService;
 
 /**
@@ -31,7 +34,7 @@ public class ConstantController extends BaseController {
      * @since  1.0.0
      */
     @RequestMapping(value = "/addConstant")
-    public String addConstant(@Valid @RequestBody Constant constant, BindingResult result){
+    public String addConstant(@Valid @RequestBody Constant constant){
     	constantService.insert(constant);
     	return super.returnSuccessResult("添加成功");
     }
@@ -57,8 +60,63 @@ public class ConstantController extends BaseController {
      * @since  1.0.0
      */
     @RequestMapping(value = "/deleteConstant")
-    public String deleteConstant(@RequestBody String id){
-    	constantService.delete(Long.parseLong(id));
+    public String deleteConstant(@RequestBody Constant constant){
+    	if(constant.getId()==null){
+    		throw new BusinessException(20002);
+    	}
+    	constantService.delete(constant.getId());
     	return super.returnSuccessResult("删除成功");
     }
+    
+    
+    /**
+     * 通过常量标识获取某一类型常量
+     * @return
+     * String
+     * @exception
+     * @since  1.0.0
+     */
+    @RequestMapping(value = "/getConstantByFlag")
+    public String getConstantByFlag(@RequestBody Constant constant){
+    	if(StringUtils.isNullOrEmpty(constant.getCodeFlag())){
+    		throw new BusinessException(20101);
+    	}
+    	List<Constant> constantList = constantService.getByFlag(constant.getCodeFlag());
+    	return super.returnSuccessResult(constantList);
+    }
+    
+    /**
+     * 通过常量标识和字典值获取常量
+     * @return
+     * String
+     * @exception
+     * @since  1.0.0
+     */
+    @RequestMapping(value = "/getConstantByFlagAndValue")
+    public String getConstantByFlagAndValue(@RequestBody Constant constant){
+    	if(StringUtils.isNullOrEmpty(constant.getCodeFlag())){
+    		throw new BusinessException(20101);
+    	}
+    	if(StringUtils.isNullOrEmpty(constant.getCodeValue())){
+    		throw new BusinessException(20102);
+    	}
+    	Constant con = constantService.getByFlagAndValue(constant);
+    	return super.returnSuccessResult(con);
+    }
+    
+    /**
+     * 通过名称模糊查询
+     * @return
+     * String
+     * @exception
+     * @since  1.0.0
+     */
+    @RequestMapping(value = "/getConstantByName")
+    public String getConstantByName(@RequestBody Constant constant){
+    	if(StringUtils.isNullOrEmpty(constant.getFlagName())){
+    		throw new BusinessException(20103);
+    	}
+    	List<Constant> constantList = constantService.getByName(constant.getFlagName());
+    	return super.returnSuccessResult(constantList);
+    }
 }

+ 3 - 1
VisualInspection_server/src/main/java/com/xintong/visualinspection/dao/master/ConstantDao.java

@@ -17,5 +17,7 @@ public interface ConstantDao  {
     public void insert(Constant constant);
     public void update(Constant constant);
     public void delete(Long id);
-    public Constant findByUserName(String username);
+    public List<Constant> getByFlag(String flag);
+    public Constant getByFlagAndValue(Constant constant);
+    public List<Constant> getByName(String flagName);
 }

+ 22 - 12
VisualInspection_server/src/main/java/com/xintong/visualinspection/mapper/master/ConstantMapper.xml

@@ -22,6 +22,25 @@
         FROM sys_code
         WHERE id = #{id}
     </select>
+    
+    <select id="getByFlag" parameterType="String" resultMap="BaseResultMap" >
+        SELECT *
+        FROM sys_code
+        WHERE codeFlag=#{codeFlag}
+    </select>
+    
+     <select id="getByName" parameterType="String" resultMap="BaseResultMap" >
+        SELECT *
+        FROM sys_code
+        WHERE flagName like CONCAT('%',#{flagName},'%') 
+    </select>
+    
+    <select id="getByFlagAndValue" parameterType="com.xintong.visualinspection.bean.Constant" resultMap="BaseResultMap" >
+        SELECT *
+        FROM sys_code
+        WHERE codeFlag=#{codeFlag}
+        	and codeValue=#{codeValue}
+    </select>
 
     <insert id="insert" parameterType="com.xintong.visualinspection.bean.Constant" >
         INSERT INTO
@@ -31,7 +50,7 @@
         (#{codeValue}, #{codeName},#{codeFlag},#{flagName},#{valid},#{remark},#{sortNo})
     </insert>
 
-    <update id="update" parameterType="com.xintong.visualinspection.bean.User" >
+    <update id="update" parameterType="com.xintong.visualinspection.bean.Constant" >
         UPDATE
         sys_code
         SET
@@ -41,25 +60,16 @@
         <if test="flagName != null">flagName = #{flagName},</if>
         <if test="valid != null">valid = #{valid},</if>
         <if test="remark != null">remark = #{remark},</if>
-        <if test="sortNo != null">sortNo = #{sortNo},</if>
+        <if test="sortNo != null">sortNo = #{sortNo}</if>
         WHERE
         id = #{id}
     </update>
 
-    <delete id="delete" parameterType="java.lang.Integer" >
+    <delete id="delete" parameterType="java.lang.Long" >
         DELETE FROM
         sys_code
         WHERE
         id =#{id}
     </delete>
 
-
-    <select id="findByUserName" parameterType="String" resultMap="userMap">
-        select u.*
-        ,r.name
-        from sys_user u
-        LEFT JOIN sys_role_user sru on u.id= sru.Sys_User_id
-        LEFT JOIN sys_role r on sru.sys_role_id=r.id
-        where username= #{username}
-    </select>
 </mapper>

+ 3 - 2
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/ConstantService.java

@@ -19,8 +19,9 @@ import com.xintong.visualinspection.bean.Constant;
 public interface ConstantService {
     public List<Constant> getAll();
     public Constant getById(Long id);
-    public List<Constant> getByFlag();
-    public Constant getByFlagAndValue(String flag, int value);
+    public List<Constant> getByFlag(String flag);
+    public List<Constant> getByName(String flagName);
+    public Constant getByFlagAndValue(Constant constant);
     public void insert(Constant constant);
     public void update(Constant constant);
     public void delete(Long id);

+ 16 - 9
VisualInspection_server/src/main/java/com/xintong/visualinspection/service/impl/ConstantServiceImpl.java

@@ -25,27 +25,27 @@ public class ConstantServiceImpl extends BaseService implements ConstantService
     private ConstantDao constantDao;
 
 
-	public List getAll() {
+	public List<Constant> getAll() {
 		// TODO Auto-generated method stub
-		return null;
+		return constantDao.getAll();
 	}
 
 
 	public Constant getById(Long id) {
 		// TODO Auto-generated method stub
-		return null;
+		return constantDao.getOne(id);
 	}
 
 
-	public List getByFlag() {
+	public List<Constant> getByFlag(String flag) {
 		// TODO Auto-generated method stub
-		return null;
+		return constantDao.getByFlag(flag);
 	}
 
 
-	public Constant getByFlagAndValue(String flag, int value) {
+	public Constant getByFlagAndValue(Constant constant) {
 		// TODO Auto-generated method stub
-		return null;
+		return constantDao.getByFlagAndValue(constant);
 	}
 
 
@@ -57,13 +57,20 @@ public class ConstantServiceImpl extends BaseService implements ConstantService
 
 	public void update(Constant constant) {
 		// TODO Auto-generated method stub
-		constantDao.
+		constantDao.update(constant);
 	}
 
 
 	public void delete(Long id) {
 		// TODO Auto-generated method stub
-		
+		constantDao.delete(id);
+	}
+
+
+	@Override
+	public List<Constant> getByName(String flagName) {
+		// TODO Auto-generated method stub
+		return constantDao.getByName(flagName);
 	}
     
 }