saas-export專案-部門管理-部門刪除

凡哥的部落格發表於2020-11-01

部門刪除分析

  • (1)嘗試刪除指定id的部門資料
  • (2)如果當前部門沒有給其他部門作上級,則可以刪除成功,否則刪除失敗
    》1 判斷是否有沒有給其他部門作上級
    》2 再刪除
# 判斷 記錄數==0 是可刪除的
select count(*) from pe_dept where parent_id=#{deptId}
delete from pe_dept where dept_id=#{deptId}

部門刪除後臺

TestDeptService

@Test
    public void test06(){
        //String deptId="75afe393-5f49-49d6-b966-bc79d52e451e";
        String deptId="100";
        boolean result=service.deleteDeptById(deptId);
        l.info("test06 result="+result);
    }

IDeptService

boolean deleteDeptById(String deptId);

DeptServiceImpl

@Override
    public boolean deleteDeptById(String deptId) {
        //先查詢count
        int count=dao.findParentCount(deptId);
        //再根據count判斷
        if(count==0) {
            dao.deleteById(deptId);
            return true;
        }else {
            return false;
        }
    }

IDeptDao

void deleteById(String deptId);

IDeptDao.xml

<!-- 統計當前部門作為其他部門的上級的數量-->
    <select id="findParentCount" parameterType="string" resultType="int">
        select count(*) from pe_dept where parent_id=#{deptId}
    </select>
    <!-- 刪除指定deptId的部門-->
    <delete id="deleteById" parameterType="string">
        delete from pe_dept where dept_id=#{deptId}
    </delete>

部門刪除前臺

dept-list.jsp

location.href="${path}/system/dept/delete.do?deptId="+deptId;

DeptController

//location.href="${path}/system/dept/delete.do?deptId="+deptId;
    @RequestMapping(path = "/delete",method =RequestMethod.GET)
    public String delete(String deptId){
        l.info("delete deptId="+deptId);
        service.deleteDeptById(deptId);
        return "redirect:/system/dept/toList.do";
    }

相關文章