✨ 优化部门级联和默认 #I5R3QL
This commit is contained in:
parent
66b1158d6e
commit
2db501d36d
|
|
@ -126,6 +126,12 @@ const { optionsData } = useDictOptions<{
|
|||
}
|
||||
})
|
||||
|
||||
watch(optionsData, (arr) => {
|
||||
if (arr.dept) {
|
||||
formData.pid = arr.dept[0].id
|
||||
}
|
||||
})
|
||||
|
||||
const handleSubmit = async () => {
|
||||
await formRef.value?.validate()
|
||||
mode.value == 'edit' ? await deptEdit(formData) : await deptAdd(formData)
|
||||
|
|
|
|||
|
|
@ -14,6 +14,7 @@ import com.mdd.common.utils.ArrayUtil;
|
|||
import com.mdd.common.utils.TimeUtil;
|
||||
import org.springframework.beans.BeanUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
import java.util.ArrayList;
|
||||
|
|
@ -162,6 +163,7 @@ class SystemAuthDeptServiceImpl implements ISystemAuthDeptService {
|
|||
* @author fzr
|
||||
* @param systemAuthDeptParam 参数
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@Override
|
||||
public void edit(SystemAuthDeptParam systemAuthDeptParam) {
|
||||
SystemAuthDept model = systemAuthDeptMapper.selectOne(
|
||||
|
|
@ -185,6 +187,8 @@ class SystemAuthDeptServiceImpl implements ISystemAuthDeptService {
|
|||
model.setIsStop(systemAuthDeptParam.getIsStop());
|
||||
model.setUpdateTime(System.currentTimeMillis() / 1000);
|
||||
systemAuthDeptMapper.updateById(model);
|
||||
//级联更新自己状态
|
||||
systemAuthDeptMapper.updateChilder(systemAuthDeptParam.getIsStop(),model.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -3,10 +3,29 @@ package com.mdd.common.mapper.system;
|
|||
import com.mdd.common.core.basics.IBaseMapper;
|
||||
import com.mdd.common.entity.system.SystemAuthDept;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
|
||||
/**
|
||||
* 系统岗位Mapper
|
||||
*/
|
||||
@Mapper
|
||||
public interface SystemAuthDeptMapper extends IBaseMapper<SystemAuthDept> {
|
||||
|
||||
/**
|
||||
* 级联更新部门状态
|
||||
* @param stopStatus
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@Update(value = "WITH recursive temp AS (SELECT id, pid\n"
|
||||
+ " FROM la_system_auth_dept\n"
|
||||
+ " WHERE id = #{id}\n" + " UNION ALL\n"
|
||||
+ " SELECT u.id, u.pid\n"
|
||||
+ " FROM la_system_auth_dept u,\n"
|
||||
+ " temp t\n"
|
||||
+ " WHERE u.pid = t.id and u.is_stop <> #{stopStatus})\n"
|
||||
+ "update la_system_auth_dept set is_stop = #{stopStatus}\n"
|
||||
+ "where id in (select id from temp)")
|
||||
void updateChilder(@Param("stopStatus") int stopStatus, @Param("id") Integer id);
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue