复用机构树按部门查询流程列表

This commit is contained in:
wkc
2026-06-18 10:46:39 +08:00
parent 986383b347
commit 0164b5eb33
4 changed files with 27 additions and 11 deletions

View File

@@ -381,10 +381,10 @@ public class LoanPricingWorkflowServiceImpl implements ILoanPricingWorkflowServi
wrapper.like(LoanPricingWorkflow::getCustIsn, loanPricingWorkflow.getCustIsn());
}
// 按机构号筛选
if (StringUtils.hasText(loanPricingWorkflow.getOrgCode()))
// 按创建人部门筛选
if (loanPricingWorkflow.getDeptId() != null)
{
wrapper.like(LoanPricingWorkflow::getOrgCode, loanPricingWorkflow.getOrgCode());
wrapper.eq(LoanPricingWorkflow::getDeptId, loanPricingWorkflow.getDeptId());
}
return wrapper;

View File

@@ -42,8 +42,8 @@
<if test="query != null and query.custIsn != null and query.custIsn != ''">
AND lpw.cust_isn LIKE CONCAT('%', #{query.custIsn}, '%')
</if>
<if test="query != null and query.orgCode != null and query.orgCode != ''">
AND lpw.org_code LIKE CONCAT('%', #{query.orgCode}, '%')
<if test="query != null and query.deptId != null">
AND lpw.dept_id = #{query.deptId}
</if>
</where>
ORDER BY lpw.update_time DESC

View File

@@ -21,6 +21,7 @@ class LoanPricingWorkflowMapperXmlTest
assertTrue(xml.contains("lpw.create_by = #{query.dataScopeCreateBy}"));
assertTrue(xml.contains("lpw.dept_id IN"));
assertTrue(xml.contains("find_in_set(#{query.dataScopeDeptId}, ancestors)"));
assertTrue(xml.contains("lpw.dept_id = #{query.deptId}"));
assertTrue(xml.contains("SUBSTRING_INDEX(lpw.create_by, '-', -1) LIKE CONCAT('%', #{query.createBy}, '%')"));
}
}

View File

@@ -17,12 +17,14 @@
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="机构号" prop="orgCode">
<el-input
v-model="queryParams.orgCode"
placeholder="请输入机构号"
<el-form-item label="机构号" prop="deptId">
<treeselect
v-model="queryParams.deptId"
:options="deptOptions"
:show-count="true"
placeholder="请选择机构号"
clearable
@keyup.enter.native="handleQuery"
style="width: 220px"
/>
</el-form-item>
<el-form-item>
@@ -124,16 +126,20 @@
<script>
import {getWorkflowEdit, listWorkflow} from "@/api/loanPricing/workflow"
import {deptTreeSelect} from "@/api/system/user"
import {mapGetters} from "vuex"
import CustomerTypeSelector from "./components/CustomerTypeSelector"
import CustomerMapSelector from "./components/CustomerMapSelector"
import PersonalCreateDialog from "./components/PersonalCreateDialog"
import CorporateCreateDialog from "./components/CorporateCreateDialog"
import {formatRate} from "@/utils/rate"
import Treeselect from "@riophae/vue-treeselect"
import "@riophae/vue-treeselect/dist/vue-treeselect.css"
export default {
name: "LoanPricingWorkflow",
components: {
Treeselect,
CustomerTypeSelector,
CustomerMapSelector,
PersonalCreateDialog,
@@ -149,6 +155,8 @@ export default {
total: 0,
// 利率定价流程表格数据
workflowList: [],
// 机构树选项
deptOptions: [],
// 是否显示客户类型选择弹出层
showTypeSelector: false,
// 是否显示客户号查询选择弹出层
@@ -169,12 +177,13 @@ export default {
pageSize: 10,
custIsn: undefined,
createBy: undefined,
orgCode: undefined
deptId: undefined
}
}
},
created() {
this.getList()
this.getDeptTree()
},
computed: {
...mapGetters([
@@ -202,6 +211,12 @@ export default {
},
methods: {
formatRate,
/** 查询机构下拉树结构 */
getDeptTree() {
deptTreeSelect().then(response => {
this.deptOptions = response.data
})
},
/** 查询利率定价流程列表 */
getList() {
this.loading = true