Ver código fonte

解决项目bug

lvzhikai 4 anos atrás
pai
commit
82c5c63c45

+ 2 - 1
src/main/java/com/chinaitop/depot/storage/mapper/StorageQualitycheckSonMapper.java

@@ -6,6 +6,7 @@ import org.apache.ibatis.annotations.Param;
6 6
 import org.springframework.stereotype.Repository;
7 7
 
8 8
 import java.util.List;
9
+import java.util.Map;
9 10
 
10 11
 @Repository
11 12
 public interface StorageQualitycheckSonMapper {
@@ -33,5 +34,5 @@ public interface StorageQualitycheckSonMapper {
33 34
 
34 35
     List<StorageQualitycheckSon> getQualitycheckSonByFoodbasicinfoCheck(Integer id);
35 36
 
36
-    List<StorageQualitycheckSon> selectByQualitycheckId(Integer id);
37
+    List<Map<String,Object>> selectByQualitycheckId(String id);
37 38
 }

+ 9 - 4
src/main/java/com/chinaitop/depot/storage/mapper/StorageQualitycheckSonMapper.xml

@@ -205,11 +205,16 @@
205 205
     )
206 206
   </select>
207 207
 
208
-  <select id="selectByQualitycheckId" resultMap="BaseResultMap" parameterType="java.lang.Integer" >
208
+  <select id="selectByQualitycheckId" resultType="java.util.Map" parameterType="java.lang.String" >
209 209
     select
210
-    <include refid="Base_Column_List" />
211
-    from storage_qualitycheck_son
212
-    where qualitycheck_id = #{id,jdbcType=INTEGER}
210
+      MAX(CASE WHEN enum.enumName='品尝评分' THEN son.set_value END) eat_score,
211
+      MAX(CASE WHEN enum.enumName='面筋吸水量(%)' THEN son.set_value END) gluten_water_count,
212
+      MAX(CASE WHEN enum.enumName='玉米赤霉烯酮' THEN son.set_value END) zearalenone,
213
+      MAX(CASE WHEN enum.enumName='硬度指数' THEN son.set_value END) hard_index
214
+    FROM
215
+      storage_qualitycheck_son son
216
+      LEFT JOIN basic_enum enum ON enum.enumId = son.numbering
217
+    WHERE qualitycheck_id = #{id,jdbcType=VARCHAR}
213 218
   </select>
214 219
 
215 220
 </mapper>

+ 2 - 1
src/main/java/com/chinaitop/depot/storage/service/StorageQualitycheckSonService.java

@@ -4,6 +4,7 @@ import com.chinaitop.depot.storage.model.StorageQualitycheckSon;
4 4
 import com.chinaitop.depot.storage.model.StorageQualitycheckSonExample;
5 5
 
6 6
 import java.util.List;
7
+import java.util.Map;
7 8
 
8 9
 /**
9 10
  * @author sunhongbing
@@ -29,5 +30,5 @@ public interface StorageQualitycheckSonService {
29 30
      * @param id
30 31
      * @return
31 32
      */
32
-    List<StorageQualitycheckSon> selectByQualitycheckId(Integer id);
33
+    List<Map<String,Object>> selectByQualitycheckId(String id);
33 34
 }

+ 2 - 1
src/main/java/com/chinaitop/depot/storage/service/impl/StorageQualitycheckSonServiceImpl.java

@@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
8 8
 
9 9
 import javax.annotation.Resource;
10 10
 import java.util.List;
11
+import java.util.Map;
11 12
 
12 13
 /**
13 14
  * @author sunhongbing
@@ -33,7 +34,7 @@ public class StorageQualitycheckSonServiceImpl implements StorageQualitycheckSon
33 34
     }
34 35
 
35 36
     @Override
36
-    public List<StorageQualitycheckSon> selectByQualitycheckId(Integer id) {
37
+    public List<Map<String,Object>> selectByQualitycheckId(String id) {
37 38
         return qualitycheckSonMapper.selectByQualitycheckId(id);
38 39
     }
39 40
 }

+ 4 - 0
src/main/java/com/chinaitop/depot/storage/utils/CustomFilter.java

@@ -26,6 +26,10 @@ public class CustomFilter implements Filter {
26 26
 		if (!orgId.isEmpty()) {
27 27
 			DataPolicyEngine.set(orgId);
28 28
 			arg2.doFilter(arg0, arg1);//放行,通过了当前过滤器,递交给下一个filter进行过滤
29
+		}else if ("/quality/outQualitycheck".equals(request.getServletPath()+request.getPathInfo())
30
+				||"/quality/setQualitycheckType".equals(request.getServletPath()+request.getPathInfo())
31
+				||"/quality/downFcInfo".equals(request.getServletPath()+request.getPathInfo())) {
32
+			arg2.doFilter(arg0, arg1);//放行,通过了当前过滤器,递交给下一个filter进行过滤
29 33
 		}
30 34
 		DataPolicyEngine.remove();
31 35
 	}

+ 12 - 0
src/main/java/com/chinaitop/depot/unissoft/webservice/QualityCheckFCServiceImpl.java

@@ -11,7 +11,10 @@ import com.chinaitop.depot.storage.controller.StorageQualitycheckController;
11 11
 import com.chinaitop.depot.storage.mapper.StorageQualitycheckMapper;
12 12
 import com.chinaitop.depot.storage.model.StorageQualitycheck;
13 13
 import com.chinaitop.depot.storage.model.StorageQualitycheckExample;
14
+import com.chinaitop.depot.storage.model.StorageQualitycheckSon;
15
+import com.chinaitop.depot.storage.model.StorageQualitycheckSonExample;
14 16
 import com.chinaitop.depot.storage.service.StorageQualitycheckService;
17
+import com.chinaitop.depot.storage.service.StorageQualitycheckSonService;
15 18
 import com.chinaitop.depot.storage.utils.ParameterUtil;
16 19
 import org.apache.commons.lang.ObjectUtils;
17 20
 import org.slf4j.Logger;
@@ -35,6 +38,9 @@ public class QualityCheckFCServiceImpl implements QualityCheckFCService {
35 38
 	@Resource
36 39
 	private StorageQualitycheckService storageQualitycheckService;
37 40
 
41
+	@Resource
42
+	private StorageQualitycheckSonService qualitycheckSonService;
43
+
38 44
 	@Override
39 45
 	public String outQualitycheck(String houseId,String warehouseId,String subType,String orgId) {
40 46
 		Map<String, Object> result = new HashMap<String, Object>();
@@ -55,6 +61,12 @@ public class QualityCheckFCServiceImpl implements QualityCheckFCService {
55 61
 				qualityCheckExample.setOrgId(Integer.parseInt(orgId));//组织机构ID
56 62
 				List<Map<String, Object>> list = storageQualitycheckService.findByOrdId(qualityCheckExample);
57 63
 
64
+				for (Map<String, Object> quality : list) {
65
+					List<Map<String, Object>> storageQualitycheckSon = qualitycheckSonService.selectByQualitycheckId(quality.get("id").toString());
66
+					for (Map<String, Object> son : storageQualitycheckSon) {
67
+						quality.putAll(son);
68
+					}
69
+				}
58 70
 
59 71
 				result.put("qualitycheckData", list);
60 72
 				result.put("success", "true");