diff --git a/admin-web/src/models/admin/deptmentList.js b/admin-web/src/models/admin/deptmentList.js
index ab44614ea77883f5c71abebf667309aaf0ed8bfc..b659beca04a809ade04b0f709ee32a70ab6105bf 100644
--- a/admin-web/src/models/admin/deptmentList.js
+++ b/admin-web/src/models/admin/deptmentList.js
@@ -1,5 +1,11 @@
 import { message } from 'antd';
-import { deptTreePage, deptTreeAll, addDeptment, updateDeptment } from '../../services/admin';
+import {
+  deptTreePage,
+  deptTreeAll,
+  addDeptment,
+  updateDeptment,
+  deleteDeptment,
+} from '../../services/admin';
 
 const buildSelectTree = list => {
   return list.map(item => {
@@ -35,6 +41,13 @@ export default {
         onSuccess && onSuccess();
       }
     },
+    *delete({ payload }, { call, put }) {
+      const { onSuccess, body } = payload;
+      const response = yield call(deleteDeptment, body);
+      if (response && response.code === 0) {
+        onSuccess && onSuccess();
+      }
+    },
     *update({ payload }, { call, put }) {
       const { onSuccess, body } = payload;
       const response = yield call(updateDeptment, body);
diff --git a/admin-web/src/pages/Admin/DeptmentList.js b/admin-web/src/pages/Admin/DeptmentList.js
index a741a72c820095241a557ffc5f986220f41419bc..512c8bdfe0782b8ad1dc33dc11e783a994000711 100644
--- a/admin-web/src/pages/Admin/DeptmentList.js
+++ b/admin-web/src/pages/Admin/DeptmentList.js
@@ -130,6 +130,32 @@ export default class DepetmentList extends PureComponent {
     }
   };
 
+  handleDelete(row) {
+    const { dispatch } = this.props;
+    Modal.confirm({
+      title: `确认删除?`,
+      content: `${row.name}`,
+      onOk() {
+        dispatch({
+          type: 'deptmentList/delete',
+          payload: {
+            body: {
+              id: row.id,
+            },
+            onSuccess: () => {
+              message.success('删除成功');
+              this.handleModalVisible();
+            },
+            onFail: response => {
+              message.warn('删除失败' + response.message);
+            },
+          },
+        });
+      },
+      onCancel() {},
+    });
+  }
+
   handleAdd = ({ fields, modalType, initValues }) => {
     const { dispatch } = this.props;
     if (modalType === 'add') {
diff --git a/admin-web/src/services/admin.js b/admin-web/src/services/admin.js
index d39953d0efd2c469f9818bb049c65dbacfb8d722..b3dca958e6782e47d02f9b40a0654916ee643b61 100644
--- a/admin-web/src/services/admin.js
+++ b/admin-web/src/services/admin.js
@@ -74,6 +74,12 @@ export async function updateDeptment(params) {
   });
 }
 
+export async function deleteDeptment(params) {
+  return request(`/admin-api/admins/dept/delete?${stringify(params)}`, {
+    method: 'POST',
+  });
+}
+
 export async function deptTreePage(params) {
   return request(`/admin-api/admins/dept/tree/page?${stringify(params)}`, {
     method: 'GET',