zhangnaisong
2024-07-02 77776780812cadbd661f3b929c13195e18ec18fe
电磁锁根据三一车辆主键修改提交
已修改5个文件
67 ■■■■■ 文件已修改
ard-work/src/main/java/com/ruoyi/sy/controller/ArdTankLockController.java 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/mapper/ArdTankLockMapper.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/IArdTankLockService.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java 46 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/resources/mapper/sy/ArdTankLockMapper.xml 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ard-work/src/main/java/com/ruoyi/sy/controller/ArdTankLockController.java
@@ -171,6 +171,14 @@
        return toAjax(ardTankLockService.deleteLockByCarId(ardTankLock.getCarId()));
    }
    @ApiOperation("修改电磁锁")
    @PreAuthorize("@ss.hasPermi('sy:lock:updateLockByCarId')")
    @Log(title = "电磁锁" , businessType = BusinessType.UPDATE)
    @PutMapping("/updateLockByCarId")
    public AjaxResult updateLockByCarId(@RequestBody Map<String,Object> para) {
        return toAjax(ardTankLockService.updateLockByCarId(para));
    }
    /**
     * 新增电子围栏
     */
ard-work/src/main/java/com/ruoyi/sy/mapper/ArdTankLockMapper.java
@@ -1,6 +1,8 @@
package com.ruoyi.sy.mapper;
import java.util.List;
import java.util.Set;
import com.ruoyi.sy.domain.ArdTankLock;
import org.apache.ibatis.annotations.Param;
@@ -67,4 +69,6 @@
    public List<ArdTankLock> getLockByCarId(String carId);
    public int deleteLockByCarId(String carId);
    public int deleteArdTankLockByIdSet(@Param("idSet") Set<String> idSet);
}
ard-work/src/main/java/com/ruoyi/sy/service/IArdTankLockService.java
@@ -69,4 +69,6 @@
    public Map<String, Object> getLockByCarId(String carId,String usersId);
    public int deleteLockByCarId(String carId);
    public int updateLockByCarId(Map<String,Object> para);
}
ard-work/src/main/java/com/ruoyi/sy/service/impl/ArdTankLockServiceImpl.java
@@ -278,4 +278,50 @@
        int result = ardTankLockMapper.deleteLockByCarId(carId);
        return result;
    }
    @Override
    public int updateLockByCarId(Map<String, Object> para) {
        int result = 0;
        String carId = (String) para.get("carId");
        List<ArdTankLock> ardTankLockOldList = ardTankLockMapper.getLockByCarId(carId);
        Set<String> idSet = new HashSet();//之前的主键
        for(ArdTankLock ardTankLock : ardTankLockOldList){
            idSet.add(ardTankLock.getId());
        }
        //Set<String> newIdSet = new HashSet();//传参的主键
        List<Map<String,Object>> lockList = (List<Map<String, Object>>) para.get("lockList");
        List<ArdTankLock> ardTankLocks = new ArrayList();
        for(Map<String,Object> map : lockList){
            if(map.get("id") != null){//有主键,做修改操作
                //newIdSet.add((String) map.get("id"));
                idSet.remove((String) map.get("id"));
                ArdTankLock ardTankLock = new ArdTankLock();
                ardTankLock.setId((String) map.get("id"));
                ardTankLock.setLockNum((String) map.get("lockNum"));
                ardTankLock.setLockName((String) map.get("lockName"));
                ardTankLock.setImgPositionTop((String) map.get("imgPositionTop"));
                ardTankLock.setImgPositionLeft((String) map.get("imgPositionLeft"));
                ardTankLock.setCarId((String) map.get("carId"));
                ardTankLock.setEnable((String) map.get("enable"));
                result = result + ardTankLockMapper.updateArdTankLock(ardTankLock);
            }else{//无主键,做修改操作
                ArdTankLock ardTankLock = new ArdTankLock();
                ardTankLock.setId(IdUtils.simpleUUID());
                ardTankLock.setLockNum((String) map.get("lockNum"));
                ardTankLock.setLockName((String) map.get("lockName"));
                ardTankLock.setImgPositionTop((String) map.get("imgPositionTop"));
                ardTankLock.setImgPositionLeft((String) map.get("imgPositionLeft"));
                ardTankLock.setCarId(carId);
                ardTankLock.setEnable((String) map.get("enable"));
                ardTankLocks.add(ardTankLock);
            }
        }
        if(ardTankLocks.size() != 0){
            result = result + ardTankLockMapper.insertArdTankLocks(ardTankLocks);
        }
        if(!idSet.isEmpty()){
            result = result + ardTankLockMapper.deleteArdTankLockByIdSet(idSet);
        }
        return result;
    }
}
ard-work/src/main/resources/mapper/sy/ArdTankLockMapper.xml
@@ -115,4 +115,11 @@
    <delete id="deleteLockByCarId" parameterType="java.lang.String">
        delete from ard_tank_lock where car_id = #{carId}
    </delete>
    <delete id="deleteArdTankLockByIdSet" >
        delete from ard_tank_lock where id in
        <foreach item="id" collection="idSet" open="(" separator="," close=")">
            #{id}
        </foreach>
    </delete>
</mapper>