diff --git a/bms-back/bms-system/src/main/resources/mapper/receivable/ArBillScopeMapper.xml b/bms-back/bms-system/src/main/resources/mapper/receivable/ArBillScopeMapper.xml index e9436273..c86aaa8b 100644 --- a/bms-back/bms-system/src/main/resources/mapper/receivable/ArBillScopeMapper.xml +++ b/bms-back/bms-system/src/main/resources/mapper/receivable/ArBillScopeMapper.xml @@ -11,20 +11,27 @@ AND bill_id IN #{sourceId} - + AND c.del_flag = '0' AND EXISTS ( - SELECT 1 FROM sys_user su - WHERE CAST(su.user_id AS CHAR) = c.sales_user_id AND su.del_flag = '0' - AND (1 = 0 - OR su.user_id = #{scope.userId} - OR su.dept_id = #{scope.deptId} + SELECT 1 FROM sys_user su + WHERE CAST(su.user_id AS CHAR) = c.sales_user_id AND su.del_flag = '0' + AND (1 = 0 + OR su.user_id = #{scope.userId} + + OR EXISTS ( + SELECT 1 FROM sys_dept dept + WHERE dept.dept_id = su.dept_id + AND (dept.dept_id = #{scope.deptId} + OR find_in_set(#{scope.deptId}, dept.ancestors)) + ) + + ) ) - ) AND 1 = 0