Explorar o código

调整溯源图片资源检索逻辑

liuyaowen hai 9 meses
pai
achega
cd20f5885e

+ 1 - 1
src/main/java/com/yunfeiyun/agmp/tss/mapper/TssSourceperiodMapper.java

@@ -32,7 +32,7 @@ public interface TssSourceperiodMapper {
     /**
      * 查询溯源周期列表-带资源信息
      * */
-    public List<TssSourceperiod> selectTssSourceperiodWithResList(@Param("tssSourceperiod") TssSourceperiod tssSourceperiod, @Param("isOssCloudPolicy") boolean isOssCloudPolicy);
+    public List<TssSourceperiod> selectTssSourceperiodWithResList(@Param("tssSourceperiod") TssSourceperiod tssSourceperiod, @Param("isOssCloudPolicy") boolean isOssCloudPolicy, @Param("tid") String tid);
     /**
      * 新增溯源周期
      * 

+ 21 - 19
src/main/java/com/yunfeiyun/agmp/tss/service/impl/TssSourceinfoServiceImpl.java

@@ -258,10 +258,10 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
         }
 
         /* 体检报告 */
-        resList(reqVo.getQualityResIds(), sourceinfoId, resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_QUALITY.getKey());
+        resList(reqVo.getQualityResIds(), sourceinfoId, resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_QUALITY.getKey(),reqVo.getTid());
 
         /* 崭新形象 */
-        resList(reqVo.getFigureResIds(), sourceinfoId, resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_FIGURE.getKey());
+        resList(reqVo.getFigureResIds(), sourceinfoId, resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_FIGURE.getKey(),reqVo.getTid());
 
         /*  查询原有数据,用于判断当次修改删除掉的记录  */
         List<TssSourceperiod> tssSourceperiods = reqVo.getTssSourceperiods();
@@ -299,6 +299,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
         for (TssSourceperiod tssSourceperiod : tssSourceperiods) {
             tssSourceperiod.setTid(reqVo.getTid());
             if (StringUtils.isEmpty(tssSourceperiod.getSourceperiodId())) {
+                tssSourceperiod.setTid(reqVo.getTid());
                 tssSourceperiod.setSourceperiodId(tssSourceperiod.getId());
                 tssSourceperiod.setSourceinfoId(sourceinfoId);
                 tssSourceperiod.setSourceperiodParentid("0");
@@ -306,11 +307,12 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                 addList.add(tssSourceperiod);
 
                 //处理图片
-                resList(tssSourceperiod.getPeriodResIds(), tssSourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey());
+                resList(tssSourceperiod.getPeriodResIds(), tssSourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey(),reqVo.getTid());
 
 
                 List<TssSourceperiod> tssSourceperiods1 = tssSourceperiod.getTssSourceperiods();
                 for (TssSourceperiod sourceperiod : tssSourceperiods1) {
+                    sourceperiod.setTid(reqVo.getTid());
                     sourceperiod.setSourceperiodId(sourceperiod.getId());
                     sourceperiod.setSourceperiodParentid(tssSourceperiod.getSourceperiodId());
                     sourceperiod.setSourceinfoId(sourceinfoId);
@@ -322,6 +324,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                         String[] resIds = sourceperiod.getPeriodResIds().split(",");
                         for (String resId : resIds) {
                             SysRes sysRes = new SysRes();
+                            sysRes.setTid(reqVo.getTid());
                             sysRes.setResId(resId);
                             sysRes.setResBusId(sourceperiod.getSourceperiodId());
                             resList.add(sysRes);
@@ -333,7 +336,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                 updateList.add(tssSourceperiod);
 
                 //处理图片
-                resList(tssSourceperiod.getPeriodResIds(), tssSourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey());
+                resList(tssSourceperiod.getPeriodResIds(), tssSourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey(),reqVo.getTid());
 
                 List<TssSourceperiod> tssSourceperiods1 = tssSourceperiod.getTssSourceperiods();
                 for (TssSourceperiod sourceperiod : tssSourceperiods1) {
@@ -350,6 +353,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                             String[] resIds = sourceperiod.getPeriodResIds().split(",");
                             for (String resId : resIds) {
                                 SysRes sysRes = new SysRes();
+                                sysRes.setTid(reqVo.getTid());
                                 sysRes.setResId(resId);
                                 sysRes.setResBusId(sourceperiod.getSourceperiodId());
                                 resList.add(sysRes);
@@ -358,7 +362,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                     } else {
 
                         updateList.add(sourceperiod);
-                        resList(sourceperiod.getPeriodResIds(), sourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey());
+                        resList(sourceperiod.getPeriodResIds(), sourceperiod.getSourceperiodId(), resList, resIdsDel, ResConstants.BizType.SOURCE_INFO_PERIOD.getKey(),reqVo.getTid());
                     }
                 }
             }
@@ -384,23 +388,10 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
         //修改溯源相关信息
         List<String> resBusIds = this.updateTssSourceEnvironment(sourceinfoId,reqVo,resList,resIdsDel);
 
-        for (SysRes sysRes : resList) {
-            sysResMapper.updateSysRes(sysRes);
-        }
-
         /*删除图片*/
         if (resIdsDel.size() > 0) {
-//            List<SysRes> sysResOldList = sysResMapper.selectResByResIds(resIdsDel);
             String[] array = resIdsDel.toArray(new String[resIdsDel.size()]);
             sysResMapper.deleteSysResByResIds(array);
-//            for (SysRes res : sysResOldList) {
-//                String resUrl = res.getResUrl();
-//                File file = new File(resUrl);
-//                if (file.exists()) {
-//                    file.delete();
-//                }
-//            }
-
         }
 
         //删除历史溯源信息资源
@@ -408,6 +399,11 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
             sysResMapper.deleteSysResbes(resBusIds.toArray(new String[resBusIds.size()]));
         }
 
+        for (SysRes sysRes : resList) {
+            sysRes.setTid(reqVo.getTid());
+            sysResMapper.updateSysRes(sysRes);
+        }
+
         return AjaxResult.success();
     }
 
@@ -443,6 +439,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                 //根据修改前的业务id查询资源
                 SysRes selectSysRes = new SysRes();
                 selectSysRes.setResBusId(tssSourceEnvironment.getSourceEnvironmentId());
+                selectSysRes.setTid(reqVo.getTid());
                 List<SysRes> selectSysResList = sysResMapper.selectSysResList(selectSysRes);
                 //如果查询不到数据,直接走新增
                 if(selectSysResList.size() > 0) {
@@ -450,6 +447,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                     if (StringUtils.isNotBlank(tssSourceEnvironment.getEnvironmentResIds())) {
                         for (SysRes map : selectSysResList) {
                             SysRes sysRes = new SysRes();
+                            sysRes.setTid(reqVo.getTid());
                             sysRes.setResId(map.getResId());
                             sysRes.setResBusId(sourceEnvironmentId);
                             resList.add(sysRes);
@@ -466,6 +464,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                         String[] resIds = tssSourceEnvironment.getEnvironmentResIds().split(",");
                         for (String resId : resIds) {
                             SysRes sysRes = new SysRes();
+                            sysRes.setTid(reqVo.getTid());
                             sysRes.setResId(resId);
                             sysRes.setResBusId(sourceEnvironmentId);
                             resList.add(sysRes);
@@ -479,6 +478,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
                     for (String resId : resIds) {
                         SysRes sysRes = new SysRes();
                         sysRes.setResId(resId);
+                        sysRes.setTid(reqVo.getTid());
                         sysRes.setResBusId(sourceEnvironmentId);
                         resList.add(sysRes);
                     }
@@ -522,12 +522,13 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
         return tssSourceinfoMapper.deleteTssSourceinfoBySourceinfoId(sourceinfoId,tid);
     }
 
-    public void resList(String resIdsStr, String resBusId, List<SysRes> resList, List<String> resIdsDel, String resBiztype){
+    public void resList(String resIdsStr, String resBusId, List<SysRes> resList, List<String> resIdsDel, String resBiztype,String tid){
         SysRes sysRes = new SysRes();
         sysRes.setResBusId(resBusId);
         if (!StringUtils.isEmpty(resBiztype)) {
             sysRes.setResBiztype(resBiztype);
         }
+        sysRes.setTid(tid);
         List<SysRes> sysResList2 = sysResMapper.selectSysResList(sysRes);
         List<String> resIdsOld = new ArrayList<>();
         for (SysRes res : sysResList2) {
@@ -552,6 +553,7 @@ public class TssSourceinfoServiceImpl implements ITssSourceinfoService {
         //新增的记录标识与业务标识
         for (String s : resIdsNew2) {
             SysRes sysRes2 = new SysRes();
+            sysRes2.setTid(tid);
             sysRes2.setResId(s);
             sysRes2.setResBusId(resBusId);
             resList.add(sysRes2);

+ 19 - 14
src/main/java/com/yunfeiyun/agmp/tss/service/impl/TssTracecodeapplyServiceImpl.java

@@ -11,6 +11,7 @@ import com.yunfeiyun.agmp.common.utils.img.enums.BusType;
 import com.yunfeiyun.agmp.common.web.system.domain.SysCusarea;
 import com.yunfeiyun.agmp.common.web.system.domain.SysRes;
 import com.yunfeiyun.agmp.common.web.system.service.ISysCusareaService;
+import com.yunfeiyun.agmp.common.web.system.service.ISysResService;
 import com.yunfeiyun.agmp.tss.domain.*;
 import com.yunfeiyun.agmp.tss.domain.reqvo.SelectCountOfScreenReqVo;
 import com.yunfeiyun.agmp.tss.domain.reqvo.TssTracecodeapplyReqVo;
@@ -51,6 +52,8 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
 
     @Resource
     private ResManager resManager;
+    @Resource
+    private ISysResService sysResService;
 
     @Resource
     private WmsFinishgoodsMapper wmsFinishgoodsMapper;
@@ -199,14 +202,14 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         TssSourceinfo tssSourceinfo = tssSourceinfoMapper.selectTssSourceinfoByTarcecodeapplyno(tarcecodeapplyno,tid);
         result.put("sourceInfoName",tssSourceinfo.getSourceinfoName());
         // 查询农产品头像
-        List<SysRes> goodsImg = resManager.queryRes(tssSourceinfo.getSourceinfoId(),ResConstants.BizType.SOURCE_INFO_AVATAR.getKey());
+        List<SysRes> goodsImg = sysResService.selectResByBusIdAndTid(tssSourceinfo.getSourceinfoId(),ResConstants.BizType.SOURCE_INFO_AVATAR.getKey(),tid);
         if(!goodsImg.isEmpty()){
             // 写入农产品头像
             result.put("goodsImg",goodsImg.get(0).getResUrl());
         }
 
         if(tssSourceinfo.getSourceinfoFiguretatus().equals("1")){
-            List<SysRes> figureRes = resManager.queryRes(tssSourceinfo.getSourceinfoId(),ResConstants.BizType.SOURCE_INFO_FIGURE.getKey());
+            List<SysRes> figureRes = sysResService.selectResByBusIdAndTid(tssSourceinfo.getSourceinfoId(),ResConstants.BizType.SOURCE_INFO_FIGURE.getKey(),tid);
             packageFigureObject(result,figureRes);
         }else {
             MppTask mppTaskQuery = new MppTask();
@@ -214,7 +217,7 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
             mppTaskQuery.setStockId(tssTracecodeapply.get(0).getStockId());
             List<MppTask> mppTaskList = mppTaskMapper.selectMppTaskList(mppTaskQuery);
             if(!mppTaskList.isEmpty()){
-                List<SysRes> figureRes = resManager.queryRes(mppTaskList.get(0).getTaskId(),ResConstants.BizType.FINISH_GOODS_PERIOD.getKey());
+                List<SysRes> figureRes = sysResService.selectResByBusIdAndTid(mppTaskList.get(0).getTaskId(),ResConstants.BizType.FINISH_GOODS_PERIOD.getKey(),tid);
                 packageFigureObject(result,figureRes);
             }
         }
@@ -223,7 +226,7 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         // 查询质检记录
         if(tssSourceinfo.getSourceinfoQualitystatus().equals("1")){
             qualityBizId = tssSourceinfo.getSourceinfoId();
-            sysRes = resManager.queryRes(qualityBizId,ResConstants.BizType.SOURCE_INFO_QUALITY.getKey());
+            sysRes = sysResService.selectResByBusIdAndTid(qualityBizId,ResConstants.BizType.SOURCE_INFO_QUALITY.getKey(),tid);
         }else {
             MppQualitycheck mppQualitycheckQuery = new MppQualitycheck();
             mppQualitycheckQuery.setFinishgoodsId(wmsFinishgoods.getFinishgoodsId());
@@ -233,7 +236,7 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
                 throw new BizException(ErrorCode.MPP_QUALITY_CHECK_NOT_EXIST);
             }
             qualityBizId = mppQualitycheckList.get(0).getQualitycheckId();
-            sysRes = resManager.queryRes(qualityBizId,ResConstants.BizType.MPPQUALITYCHECK.getKey());
+            sysRes = sysResService.selectResByBusIdAndTid(qualityBizId,ResConstants.BizType.MPPQUALITYCHECK.getKey(),tid);
         }
         List<String> qualityCheckUrls = sysRes.stream().map(SysRes::getResUrl).collect(Collectors.toList());
         JSONObject qualityCheckInfo = new JSONObject();
@@ -257,7 +260,8 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
             TssSourceperiod tssSourceperiodQuery = new TssSourceperiod();
             tssSourceperiodQuery.setSourceinfoId(tssSourceinfo.getSourceinfoId());
             tssSourceperiodQuery.setSourceperiodParentid("0");
-            List<TssSourceperiod> tssSourceperiodList = tssSourceperiodMapper.selectTssSourceperiodWithResList(tssSourceperiodQuery, PolicyService.enabledOssCloudPolicy());
+            tssSourceperiodQuery.setTid(tid);
+            List<TssSourceperiod> tssSourceperiodList = tssSourceperiodMapper.selectTssSourceperiodWithResList(tssSourceperiodQuery, PolicyService.enabledOssCloudPolicy(),tid);
             packageSourcePeriod(result,tssSourceperiodList);
 
         }else {
@@ -280,7 +284,8 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         tssSourceEnvironment.setTid(tid);
         List<TssSourceEnvironment> tssSourceEnvironments = tssSourceEnvironmentMapper.selectTssSourceEnvironmentList(tssSourceEnvironment);
         for(TssSourceEnvironment tssSourceEnvironment1 : tssSourceEnvironments){
-            List<SysRes> environmentRes = resManager.queryRes(tssSourceEnvironment1.getSourceEnvironmentId(),ResConstants.BizType.SOURCE_INFO_ENVIRONMENT.getKey());
+
+            List<SysRes> environmentRes = sysResService.selectResByBusIdAndTid(tssSourceEnvironment1.getSourceEnvironmentId(),ResConstants.BizType.SOURCE_INFO_ENVIRONMENT.getKey(),tid);
             if(environmentRes.size() > 0){
                 tssSourceEnvironment1.setEnvironmentResIds(environmentRes.get(0).getResId());
                 tssSourceEnvironment1.setEnvironmentPreviews(environmentRes.get(0).getResUrl());
@@ -307,14 +312,14 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
             tssSourceperiodQuery.setSourceperiodParentid(tssSourceperiodId);
             tssSourceperiodQuery.setTid(tid);
             List<TssSourceperiod> tssSourceperiodList = tssSourceperiodMapper.selectTssSourceperiodList(tssSourceperiodQuery);
-            packageSourcePeriodInfo(result,tssSourceperiodList);
+            packageSourcePeriodInfo(result,tssSourceperiodList,tid);
 
         }else {
             TssGoodsperiodrcd tssGoodsperiodrcd = new TssGoodsperiodrcd();
             tssGoodsperiodrcd.setTid(tid);
             tssGoodsperiodrcd.setGoodsperiodrcdParentid(tssSourceperiodId);
             List<TssGoodsperiodrcd> tssGoodsperiodrcds = tssGoodsperiodrcdMapper.selectTssGoodsperiodrcdList(tssGoodsperiodrcd);
-            packageGoodsPeriodInfo(result,tssGoodsperiodrcds);
+            packageGoodsPeriodInfo(result,tssGoodsperiodrcds,tid);
         }
 
         return result;
@@ -356,7 +361,7 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         JSONObject checkComponyJSON = JSONObject.from(checkCompony);
         checkComponyJSON.put("qualityInspector",mppQualitycheck.getQualityInspector());
         result.put("checkCompony",checkComponyJSON);
-        List<SysRes> sysResList = resManager.queryRes(wmsFinishgoods.getFinishgoodsId(),ResConstants.BizType.FINISH_GOODS_OUT_ADD_PERIOD.getKey());
+        List<SysRes> sysResList = sysResService.selectResByBusIdAndTid(wmsFinishgoods.getFinishgoodsId(),ResConstants.BizType.FINISH_GOODS_OUT_ADD_PERIOD.getKey(),tid);
         result.put("processImgs",sysResList);
         return result;
     }
@@ -399,9 +404,9 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         }).collect(Collectors.toList());
         result.put("tssSourceperiod",tssSourceperiodList);
     }
-    public  void packageSourcePeriodInfo(JSONObject result,List<TssSourceperiod> periods){
+    public  void packageSourcePeriodInfo(JSONObject result,List<TssSourceperiod> periods,String tid){
         List<JSONObject> tssSourceperiodList = periods.stream().sorted(Comparator.comparing(TssSourceperiod::getSourceperiodFmstaskrcdcreateddate)).map(item->{
-            List<SysRes> sysResList = resManager.queryRes(item.getSourceperiodId(),null);
+            List<SysRes> sysResList = sysResService.selectResByBusIdAndTid(item.getSourceperiodId(),ResConstants.BizType.PERIOD.getKey(),tid );
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("id",item.getSourceperiodId());
             jsonObject.put("date",item.getSourceperiodFmstaskrcdcreateddate());
@@ -412,9 +417,9 @@ public class TssTracecodeapplyServiceImpl implements ITssTracecodeapplyService {
         }).collect(Collectors.toList());
         result.put("tssSourceperiod",tssSourceperiodList);
     }
-    public  void packageGoodsPeriodInfo(JSONObject result,List<TssGoodsperiodrcd> periods){
+    public  void packageGoodsPeriodInfo(JSONObject result,List<TssGoodsperiodrcd> periods,String  tid){
         List<JSONObject> tssSourceperiodList = periods.stream().sorted(Comparator.comparing(TssGoodsperiodrcd::getGoodsperiodrcdFmstaskcreateddate)).map(item->{
-            List<SysRes> sysResList = resManager.queryRes(item.getGoodsperiodrcdId(),null);
+            List<SysRes> sysResList = sysResService.selectResByBusIdAndTid(item.getGoodsperiodrcdId(),ResConstants.BizType.PERIOD.getKey(),tid);
             JSONObject jsonObject = new JSONObject();
             jsonObject.put("id",item.getGoodsperiodrcdId());
             jsonObject.put("date",item.getGoodsperiodrcdFmstaskcreateddate());