李昊 4 years ago
parent
commit
49f3bdc4e4

+ 13 - 6
GxPress/Repository/GxPress.Repository.Implement/DepartmentRepository.cs

@@ -83,7 +83,14 @@ namespace GxPress.Repository.Implement
                     throw new Exception("部门顺序已存在,请更换");
                 }
             }
-            return await _repository.InsertAsync(department);
+            var departmentId = await _repository.InsertAsync(department);
+            if (departmentId > 0 && department.Sort == 0)
+            {
+                department = await _repository.GetAsync(departmentId);
+                department.Sort = departmentId;
+                await _repository.UpdateAsync(department);
+            }
+            return departmentId;
         }
 
         public async Task<bool> UpdateAsync(Department department)
@@ -106,7 +113,7 @@ namespace GxPress.Repository.Implement
         public async Task<IEnumerable<Department>> GetListAsync(int parentId)
         {
             return await _repository.GetAllAsync(Q.Where(nameof(Department.ParentId), parentId)
-                .OrderBy(nameof(Department.Sort),nameof(Department.LastModifiedDate)));
+                .OrderBy(nameof(Department.Sort)));
         }
 
         /// <summary>
@@ -117,7 +124,7 @@ namespace GxPress.Repository.Implement
         public async Task<IEnumerable<Department>> GetListAsync(DepartmentUserRequest request)
         {
             return await _repository.GetAllAsync(Q.Where(nameof(Department.ParentId), request.DepartmentId)
-                .WhereNot(nameof(Department.Id), request.SourceDepartmentId).OrderBy(nameof(Department.Sort),nameof(Department.LastModifiedDate)));
+                .WhereNot(nameof(Department.Id), request.SourceDepartmentId).OrderBy(nameof(Department.Sort)));
         }
 
         /// <summary>
@@ -215,7 +222,7 @@ namespace GxPress.Repository.Implement
         /// <returns></returns>
         public async Task<List<DepartmentTreeResult>> GetTreeAsync()
         {
-            var departments = await GetAllAsync(Q.Where(nameof(Department.Id), ">", 0).OrderBy(nameof(Department.Sort),nameof(Department.LastModifiedDate)));
+            var departments = await GetAllAsync(Q.Where(nameof(Department.Id), ">", 0).OrderBy(nameof(Department.Sort)));
 
             var departmentParent = departments.Where(n => n.ParentId == 0);
             var list = _mapper.Map<List<DepartmentTreeResult>>(departmentParent);
@@ -315,7 +322,7 @@ namespace GxPress.Repository.Implement
             if (department != null)
             {
                 departments.Add(department);
-                var list = await _repository.GetAllAsync(Q.Where(nameof(Entity.Department.ParentId), department.Id).OrderBy(nameof(Department.Sort),nameof(Department.LastModifiedDate)));
+                var list = await _repository.GetAllAsync(Q.Where(nameof(Entity.Department.ParentId), department.Id).OrderBy(nameof(Department.Sort)));
                 foreach (var item in list)
                 {
                     departments.Add(item);
@@ -333,7 +340,7 @@ namespace GxPress.Repository.Implement
         /// <returns></returns>
         public async Task<List<Department>> GetDepartmentByPid(int Pid, List<Department> departments)
         {
-            var departmentList = await _repository.GetAllAsync(Q.Where(nameof(Entity.Department.ParentId), Pid).OrderBy(nameof(Department.Sort),nameof(Department.LastModifiedDate)));
+            var departmentList = await _repository.GetAllAsync(Q.Where(nameof(Entity.Department.ParentId), Pid).OrderBy(nameof(Department.Sort)));
             if (departmentList.Count == 0)
                 return departments;
             foreach (var item in departmentList)