分成比例页面 支行下拉选,
增加部门选择框:部门名+网点号
This commit is contained in:
parent
1d49ccea4f
commit
0bee6780ea
@ -49,3 +49,11 @@ export function fetchGetDeptSelect() {
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
/** 获取部门选择框列表 */
|
||||
export function fetchGetDeptBranchIdSelect() {
|
||||
return request<Api.System.Dept[]>({
|
||||
url: '/system/dept/optionselectBranchId',
|
||||
method: 'get'
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -1,8 +1,9 @@
|
||||
<script setup lang="ts">
|
||||
import { computed, reactive, watch } from 'vue';
|
||||
import {computed, onMounted, reactive, ref, watch} from 'vue';
|
||||
import { fetchCreatePercentage, fetchUpdatePercentage } from '@/service/api/business/percentage';
|
||||
import { useFormRules, useNaiveForm } from '@/hooks/common/form';
|
||||
import { $t } from '@/locales';
|
||||
import {fetchGetDeptBranchIdSelect} from "@/service/api/system";
|
||||
|
||||
defineOptions({
|
||||
name: 'PercentageOperateDrawer'
|
||||
@ -142,19 +143,47 @@ const displayJbPercent = computed({
|
||||
set: (val) => {
|
||||
model.jbPercent = val ? val / 100 : 0
|
||||
}
|
||||
})
|
||||
});
|
||||
onMounted(() => {
|
||||
getDeptIdOptions()
|
||||
});
|
||||
const deptIdOptions = ref<CommonType.Option<CommonType.IdType>[]>([]);
|
||||
//获取部门列表
|
||||
async function getDeptIdOptions(){
|
||||
|
||||
const { error, data } = await fetchGetDeptBranchIdSelect();
|
||||
if (!error) {
|
||||
deptIdOptions.value = data.map(item => ({
|
||||
label: item.deptName,
|
||||
value: item.deptCategory
|
||||
}));
|
||||
}
|
||||
}
|
||||
function handleDeptUpdate(value: string, option: CommonType.Option<CommonType.IdType>) {
|
||||
model.branchId = value;
|
||||
model.branchName = option.label;
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<NDrawer v-model:show="visible" :title="title" display-directive="show" :width="800" class="max-w-90%">
|
||||
<NDrawerContent :title="title" :native-scrollbar="false" closable>
|
||||
<NForm ref="formRef" :model="model" :rules="rules">
|
||||
<NFormItem label="支行代码" path="branchId">
|
||||
<NInput v-model:value="model.branchId" placeholder="请输入支行代码" />
|
||||
</NFormItem>
|
||||
<NFormItem label="支行名称" path="branchName">
|
||||
<NInput v-model:value="model.branchName" placeholder="请输入支行名称" />
|
||||
<!-- <NInput v-model:value="model.branchName" placeholder="请输入支行名称" />-->
|
||||
<NSelect
|
||||
v-model:value="model.branchName"
|
||||
filterable
|
||||
placeholder="选择支行"
|
||||
:options="deptIdOptions"
|
||||
clearable
|
||||
@update:value="handleDeptUpdate"
|
||||
/>
|
||||
</NFormItem>
|
||||
<NFormItem label="支行代码" path="branchId">
|
||||
<NInput v-model:value="model.branchId" disabled placeholder="请输入支行代码" />
|
||||
</NFormItem>
|
||||
|
||||
<NFormItem label="营销人员分成比例" path="yxPercent">
|
||||
<!-- <NInput v-model:value="model.yxPercent" placeholder="请输入营销人员分成比例" />-->
|
||||
<NInput-number
|
||||
|
@ -1,7 +1,8 @@
|
||||
<script setup lang="ts">
|
||||
import { ref } from 'vue';
|
||||
import {onMounted, ref} from 'vue';
|
||||
import { useNaiveForm } from '@/hooks/common/form';
|
||||
import { $t } from '@/locales';
|
||||
import {fetchGetDeptBranchIdSelect} from "@/service/api/system";
|
||||
|
||||
defineOptions({
|
||||
name: 'PercentageSearch'
|
||||
@ -30,6 +31,26 @@ async function search() {
|
||||
await validate();
|
||||
emit('search');
|
||||
}
|
||||
onMounted(() => {
|
||||
getDeptIdOptions()
|
||||
});
|
||||
const deptIdOptions = ref<CommonType.Option<CommonType.IdType>[]>([]);
|
||||
//获取部门列表
|
||||
async function getDeptIdOptions(){
|
||||
|
||||
const { error, data } = await fetchGetDeptBranchIdSelect();
|
||||
if (!error) {
|
||||
deptIdOptions.value = data.map(item => ({
|
||||
label: item.deptName,
|
||||
value: item.deptCategory
|
||||
}));
|
||||
}
|
||||
}
|
||||
function handleDeptUpdate(value: string, option: CommonType.Option<CommonType.IdType>) {
|
||||
|
||||
model.value.branchId = value;
|
||||
// model.value.branchName = option.label;
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
@ -38,18 +59,28 @@ async function search() {
|
||||
<NCollapseItem :title="$t('common.search')" name="user-search">
|
||||
<NForm ref="formRef" :model="model" label-placement="left" :label-width="80">
|
||||
<NGrid responsive="screen" item-responsive>
|
||||
<NFormItemGi span="24 s:12 m:6" label="支行名称" path="branchName" class="pr-24px">
|
||||
<!-- <NInput v-model:value="model.branchName" placeholder="请输入支行名称" />-->
|
||||
<NSelect
|
||||
v-model:value="model.branchName"
|
||||
filterable
|
||||
placeholder="选择支行"
|
||||
:options="deptIdOptions"
|
||||
clearable
|
||||
@update:value="handleDeptUpdate"
|
||||
/>
|
||||
</NFormItemGi>
|
||||
<NFormItemGi span="24 s:12 m:6" label="支行代码" path="branchId" class="pr-24px">
|
||||
<NInput v-model:value="model.branchId" placeholder="请输入支行代码" />
|
||||
|
||||
</NFormItemGi>
|
||||
<NFormItemGi span="24 s:12 m:6" label="支行名称" path="branchName" class="pr-24px">
|
||||
<NInput v-model:value="model.branchName" placeholder="请输入支行名称" />
|
||||
</NFormItemGi>
|
||||
<NFormItemGi span="24 s:12 m:6" label="营销人员分成比例" path="yxPercent" class="pr-24px">
|
||||
<NInput v-model:value="model.yxPercent" placeholder="请输入营销人员分成比例" />
|
||||
</NFormItemGi>
|
||||
<NFormItemGi span="24 s:12 m:6" label="经办人员分成比例" path="jbPercent" class="pr-24px">
|
||||
<NInput v-model:value="model.jbPercent" placeholder="请输入经办人员分成比例" />
|
||||
</NFormItemGi>
|
||||
|
||||
<!-- <NFormItemGi span="24 s:12 m:6" label="营销人员分成比例" path="yxPercent" class="pr-24px">-->
|
||||
<!-- <NInput v-model:value="model.yxPercent" placeholder="请输入营销人员分成比例" />-->
|
||||
<!-- </NFormItemGi>-->
|
||||
<!-- <NFormItemGi span="24 s:12 m:6" label="经办人员分成比例" path="jbPercent" class="pr-24px">-->
|
||||
<!-- <NInput v-model:value="model.jbPercent" placeholder="请输入经办人员分成比例" />-->
|
||||
<!-- </NFormItemGi>-->
|
||||
<NFormItemGi span="24" class="pr-24px">
|
||||
<NSpace class="w-full" justify="end">
|
||||
<NButton @click="reset">
|
||||
|
@ -81,9 +81,9 @@ async function search() {
|
||||
<!-- <NFormItemGi span="24 s:12 m:6" label="营销人员营销号" path="yxId" class="pr-24px">-->
|
||||
<!-- <NInput v-model:value="model.yxId" placeholder="请输入营销人员营销号" />-->
|
||||
<!-- </NFormItemGi>-->
|
||||
<!-- <NFormItemGi span="24 s:12 m:6" label="经办人员营销号" path="jbId" class="pr-24px">-->
|
||||
<!-- <NInput v-model:value="model.jbId" placeholder="请输入经办人员营销号" />-->
|
||||
<!-- </NFormItemGi>-->
|
||||
<NFormItemGi span="24 s:12 m:6" label="营销号" path="jbId" class="pr-24px">
|
||||
<NInput v-model:value="model.jbId" placeholder="请输入经办人员营销号" />
|
||||
</NFormItemGi>
|
||||
<!-- <NFormItemGi span="24 s:12 m:6" label="数据日期" path="date" class="pr-24px">-->
|
||||
<!-- <NDatePicker-->
|
||||
<!-- v-model:formatted-value="model.date"-->
|
||||
|
@ -140,4 +140,15 @@ public class SysDeptController extends BaseController {
|
||||
return R.ok(deptService.selectDeptByIds(deptIds == null ? null : List.of(deptIds)));
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取部门选择框列表
|
||||
*
|
||||
* @param deptIds 部门ID串
|
||||
*/
|
||||
@SaCheckPermission("system:dept:query")
|
||||
@GetMapping("/optionselectBranchId")
|
||||
public R<List<SysDeptVo>> optionselectBranchId(@RequestParam(required = false) Long[] deptIds) {
|
||||
return R.ok(deptService.selectDeptCatByIds(deptIds == null ? null : List.of(deptIds)));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -74,6 +74,13 @@ public interface ISysDeptService {
|
||||
*/
|
||||
List<SysDeptVo> selectDeptByIds(List<Long> deptIds);
|
||||
|
||||
/**
|
||||
* 通过部门id查网点号
|
||||
* @param deptIds
|
||||
* @return
|
||||
*/
|
||||
List<SysDeptVo> selectDeptCatByIds(List<Long> deptIds);
|
||||
|
||||
/**
|
||||
* 根据ID查询所有子部门数(正常状态)
|
||||
*
|
||||
|
@ -193,6 +193,14 @@ public class SysDeptServiceImpl implements ISysDeptService, DeptService {
|
||||
.in(CollUtil.isNotEmpty(deptIds), SysDept::getDeptId, deptIds));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<SysDeptVo> selectDeptCatByIds(List<Long> deptIds) {
|
||||
return baseMapper.selectDeptList(new LambdaQueryWrapper<SysDept>()
|
||||
.select(SysDept::getDeptCategory, SysDept::getDeptName, SysDept::getLeader)
|
||||
.eq(SysDept::getStatus, SystemConstants.NORMAL)
|
||||
.in(CollUtil.isNotEmpty(deptIds), SysDept::getDeptId, deptIds));
|
||||
}
|
||||
|
||||
/**
|
||||
* 通过部门ID查询部门名称
|
||||
*
|
||||
|
Loading…
Reference in New Issue
Block a user