mirror of
https://github.com/Funkoala14/knowledgebase_law.git
synced 2025-06-08 05:28:15 +08:00
[dev]department
This commit is contained in:
parent
89d42b9e10
commit
b4217c418a
@ -3,12 +3,10 @@ import SvgIcon from './SvgIcon';
|
|||||||
|
|
||||||
// 部门和组别的映射关系
|
// 部门和组别的映射关系
|
||||||
const departmentGroups = {
|
const departmentGroups = {
|
||||||
技术部: ['开发组', '测试组', '运维组', '架构组', '安全组'],
|
财务组: ['NA'],
|
||||||
产品部: ['产品规划组', '用户研究组', '交互设计组', '项目管理组'],
|
行政组: ['NA'],
|
||||||
市场部: ['品牌推广组', '市场调研组', '客户关系组', '社交媒体组'],
|
业务组: ['行政纠纷组', '刑事辩护组', '民商事争议解决组', '非诉业务组'],
|
||||||
行政部: ['人事组', '财务组', '行政管理组', '后勤组'],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// 部门列表
|
// 部门列表
|
||||||
const departments = Object.keys(departmentGroups);
|
const departments = Object.keys(departmentGroups);
|
||||||
|
|
||||||
|
@ -5,13 +5,9 @@ import ChangePasswordModal from './ChangePasswordModal';
|
|||||||
|
|
||||||
// 部门和组别的映射关系
|
// 部门和组别的映射关系
|
||||||
const departmentGroups = {
|
const departmentGroups = {
|
||||||
达人部门: ['达人'],
|
财务组: ['NA'],
|
||||||
商务部门: ['商务'],
|
行政组: ['NA'],
|
||||||
样本中心: ['样本'],
|
业务组: ['行政纠纷组', '刑事辩护组', '民商事争议解决组', '非诉业务组'],
|
||||||
产品部门: ['产品'],
|
|
||||||
AI自媒体: ['AI自媒体'],
|
|
||||||
HR: ['HR'],
|
|
||||||
技术部门: ['技术'],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export default function UserSettingsModal({ show, onClose }) {
|
export default function UserSettingsModal({ show, onClose }) {
|
||||||
|
@ -13,12 +13,10 @@ import Breadcrumb from './components/Breadcrumb';
|
|||||||
import KnowledgeBaseForm from './components/KnowledgeBaseForm';
|
import KnowledgeBaseForm from './components/KnowledgeBaseForm';
|
||||||
import DeleteConfirmModal from './components/DeleteConfirmModal';
|
import DeleteConfirmModal from './components/DeleteConfirmModal';
|
||||||
|
|
||||||
// 部门和组别的映射关系
|
|
||||||
const departmentGroups = {
|
const departmentGroups = {
|
||||||
技术部: ['开发组', '测试组', '运维组', '架构组', '安全组'],
|
财务组: ['NA'],
|
||||||
产品部: ['产品规划组', '用户研究组', '交互设计组', '项目管理组'],
|
行政组: ['NA'],
|
||||||
市场部: ['品牌推广组', '市场调研组', '客户关系组', '社交媒体组'],
|
业务组: ['行政纠纷组', '刑事辩护组', '民商事争议解决组', '非诉业务组'],
|
||||||
行政部: ['人事组', '财务组', '行政管理组', '后勤组'],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
// 部门列表
|
// 部门列表
|
||||||
|
@ -5,10 +5,9 @@ import { checkAuthThunk, signupThunk } from '../../store/auth/auth.thunk';
|
|||||||
|
|
||||||
// 部门和组别映射关系
|
// 部门和组别映射关系
|
||||||
const departmentGroups = {
|
const departmentGroups = {
|
||||||
技术部: ['开发组', '测试组', '运维组'],
|
财务组: ['NA'],
|
||||||
产品部: ['产品规划组', '用户研究组', '交互设计组', '项目管理组'],
|
行政组: ['NA'],
|
||||||
市场部: ['品牌推广组', '市场调研组', '客户关系组', '社交媒体组'],
|
业务组: ['行政纠纷组', '刑事辩护组', '民商事争议解决组', '非诉业务组'],
|
||||||
行政部: ['人事组', '财务组', '行政管理组', '后勤组'],
|
|
||||||
};
|
};
|
||||||
|
|
||||||
export default function Signup() {
|
export default function Signup() {
|
||||||
@ -44,6 +43,17 @@ export default function Signup() {
|
|||||||
group: '',
|
group: '',
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 如果组别只有NA,自动设置为NA
|
||||||
|
if (
|
||||||
|
departmentGroups[formData.department].length === 1 &&
|
||||||
|
departmentGroups[formData.department][0] === 'NA'
|
||||||
|
) {
|
||||||
|
setFormData((prev) => ({
|
||||||
|
...prev,
|
||||||
|
group: 'NA',
|
||||||
|
}));
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
setAvailableGroups([]);
|
setAvailableGroups([]);
|
||||||
setFormData((prev) => ({
|
setFormData((prev) => ({
|
||||||
@ -103,7 +113,16 @@ export default function Signup() {
|
|||||||
newErrors.department = '请选择部门';
|
newErrors.department = '请选择部门';
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!formData.group) {
|
// 只在department不是只有NA的情况下验证group
|
||||||
|
if (
|
||||||
|
!formData.group &&
|
||||||
|
!(
|
||||||
|
formData.department &&
|
||||||
|
departmentGroups[formData.department] &&
|
||||||
|
departmentGroups[formData.department].length === 1 &&
|
||||||
|
departmentGroups[formData.department][0] === 'NA'
|
||||||
|
)
|
||||||
|
) {
|
||||||
newErrors.group = '请选择组别';
|
newErrors.group = '请选择组别';
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -208,10 +227,9 @@ export default function Signup() {
|
|||||||
<option value='' disabled>
|
<option value='' disabled>
|
||||||
选择部门
|
选择部门
|
||||||
</option>
|
</option>
|
||||||
<option value='技术部'>技术部</option>
|
<option value='财务组'>财务组</option>
|
||||||
<option value='产品部'>产品部</option>
|
<option value='行政组'>行政组</option>
|
||||||
<option value='市场部'>市场部</option>
|
<option value='业务组'>业务组</option>
|
||||||
<option value='行政部'>行政部</option>
|
|
||||||
</select>
|
</select>
|
||||||
{submitted && errors.department && <div className='invalid-feedback'>{errors.department}</div>}
|
{submitted && errors.department && <div className='invalid-feedback'>{errors.department}</div>}
|
||||||
</div>
|
</div>
|
||||||
@ -222,17 +240,31 @@ export default function Signup() {
|
|||||||
name='group'
|
name='group'
|
||||||
value={formData.group}
|
value={formData.group}
|
||||||
onChange={handleInputChange}
|
onChange={handleInputChange}
|
||||||
disabled={loading || !formData.department}
|
disabled={
|
||||||
|
loading ||
|
||||||
|
!formData.department ||
|
||||||
|
(departmentGroups[formData.department] &&
|
||||||
|
departmentGroups[formData.department].length === 1 &&
|
||||||
|
departmentGroups[formData.department][0] === 'NA')
|
||||||
|
}
|
||||||
required
|
required
|
||||||
>
|
>
|
||||||
<option value='' disabled>
|
<option value='' disabled>
|
||||||
{formData.department ? '选择组别' : '请先选择部门'}
|
{formData.department
|
||||||
|
? departmentGroups[formData.department] &&
|
||||||
|
departmentGroups[formData.department].length === 1 &&
|
||||||
|
departmentGroups[formData.department][0] === 'NA'
|
||||||
|
? '该部门无下属组别'
|
||||||
|
: '选择组别'
|
||||||
|
: '请先选择部门'}
|
||||||
</option>
|
</option>
|
||||||
{availableGroups.map((group, index) => (
|
{availableGroups.map((group, index) =>
|
||||||
<option key={index} value={group}>
|
group !== 'NA' ? (
|
||||||
{group}
|
<option key={index} value={group}>
|
||||||
</option>
|
{group}
|
||||||
))}
|
</option>
|
||||||
|
) : null
|
||||||
|
)}
|
||||||
</select>
|
</select>
|
||||||
{submitted && errors.group && <div className='invalid-feedback'>{errors.group}</div>}
|
{submitted && errors.group && <div className='invalid-feedback'>{errors.group}</div>}
|
||||||
</div>
|
</div>
|
||||||
|
Loading…
Reference in New Issue
Block a user