Просмотр исходного кода

任务池管理关联全部协议的功能开发

dongxin 1 год назад
Родитель
Сommit
389194748c

+ 9 - 0
src/main/java/com/ydtech/modules/admin/controller/SysUserLinkPtlAgreementController.java

@@ -13,6 +13,7 @@ import com.ydtech.modules.admin.service.SysUserLinkPtlAgreementService;
 import com.ydtech.modules.base.controller.BaseController;
 import com.ydtech.modules.order.entity.BasePageResult;
 import com.ydtech.modules.protocol.entity.po.PtlAgreement;
+import com.ydtech.modules.protocol.utils.AssertionUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiImplicitParam;
 import io.swagger.annotations.ApiOperation;
@@ -61,6 +62,14 @@ public class SysUserLinkPtlAgreementController extends BaseController {
 
     }
 
+    @PostMapping("addOrUpdateAll/{userId}")
+    @ApiOperation("后线人员关联协议全部添加修改")
+    public HttpResult<Object> addOrUpdateAll(@PathVariable("userId") String userId) {
+        AssertionUtils.isFail(StringUtils.isBlank(userId),"后线人员id不能为空!");
+        sysUserLinkPtlAgreementService.addOrUpdateAll(userId,getUser());
+        return HttpResult.ok();
+    }
+
     @PostMapping("delete")
     @ApiOperation("后线人员关联协议删除")
     public HttpResult<Object> delete(@RequestBody SysUserLinkPtlAgreementIdsVo idsVo) {

+ 9 - 0
src/main/java/com/ydtech/modules/admin/service/SysUserLinkPtlAgreementService.java

@@ -30,6 +30,9 @@ public interface SysUserLinkPtlAgreementService extends IService<SysUserLinkPtlA
      *  @Description: 修改
      */
     void addOrUpdate(SysUserLinkPtlAgreementAddVo sysUserLinkPtlAgreementAddVo, SysUser user);
+
+
+
     /**
      *  @version
      *  @author: hxl
@@ -87,4 +90,10 @@ public interface SysUserLinkPtlAgreementService extends IService<SysUserLinkPtlA
      */
     List<PtlAgreement> findPtlAgreementListNew(String type);
 
+    /**
+     * 后线人员关联协议全部添加修改
+     * @param userId
+     * @param user
+     */
+    void addOrUpdateAll(String userId, SysUser user);
 }

+ 20 - 0
src/main/java/com/ydtech/modules/admin/service/impl/SysUserLinkPtlAgreementServiceImpl.java

@@ -19,6 +19,7 @@ import com.ydtech.modules.protocol.entity.po.PtlAgreement;
 import com.ydtech.modules.protocol.service.PtlAgreementService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -137,6 +138,25 @@ public class SysUserLinkPtlAgreementServiceImpl extends ServiceImpl<SysUserLinkP
         param.setAgreementType(type);
         return ptlAgreementService.findCheckAgreementListNew(param);
     }
+
+    @Override
+    @Transactional
+    public void addOrUpdateAll(String userId, SysUser user) {
+        // 获取所有协议
+        List<PtlAgreement> list = sysUserLinkPtlAgreementMapper.findAllPtlAgreementListByUserId(userId);
+
+        // 删除所有绑定的协议
+        sysUserLinkPtlAgreementMapper.deleteByUserId(userId);
+
+        // 重新绑定所有协议
+        List<SysUserLinkPtlAgreement> addList = new ArrayList<>();
+        for (PtlAgreement ptlAgreement : list) {
+            SysUserLinkPtlAgreement add=new SysUserLinkPtlAgreement(userId,Long.parseLong(ptlAgreement.getId()),user.getId(),user.getName(),new Date(),user.getId(),user.getName(),new Date());
+            addList.add(add);
+        }
+        saveBatch(addList);
+    }
+
     /**
      *  @version
      *  @author: hxl