|
@@ -16,99 +16,11 @@
|
|
import { roleLIstApi, checkUserApi, saveApi, updateApi } from '/@/api/staff/list';
|
|
import { roleLIstApi, checkUserApi, saveApi, updateApi } from '/@/api/staff/list';
|
|
import { BasicModal, useModalInner } from '/@/components/Modal';
|
|
import { BasicModal, useModalInner } from '/@/components/Modal';
|
|
import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
|
|
import { BasicForm, FormSchema, useForm } from '/@/components/Form/index';
|
|
|
|
+ import { ListAllCompanyApi } from '/@/api/corporation/list';
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
import { useI18n } from '/@/hooks/web/useI18n';
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
import { useMessage } from '/@/hooks/web/useMessage';
|
|
|
|
+ import { useUserStore } from '/@/store/modules/user';
|
|
const { t } = useI18n();
|
|
const { t } = useI18n();
|
|
- const schemas: FormSchema[] = [
|
|
|
|
- {
|
|
|
|
- field: 'phone',
|
|
|
|
- component: 'Input',
|
|
|
|
- label: '手机号',
|
|
|
|
- colProps: {
|
|
|
|
- span: 18,
|
|
|
|
- },
|
|
|
|
- // helpMessage: '手机号需在指房宝APP注册后才可新增',
|
|
|
|
- required: false,
|
|
|
|
- rules: [
|
|
|
|
- {
|
|
|
|
- required: true,
|
|
|
|
- // @ts-ignore
|
|
|
|
- validator: async (rule, value) => {
|
|
|
|
- var reg_tel =
|
|
|
|
- /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
|
|
|
|
- // var reg = /\S+@\S+\.\S+/;
|
|
|
|
- if (!value) {
|
|
|
|
- return Promise.reject(t('common.phone'));
|
|
|
|
- }
|
|
|
|
- if (!reg_tel.test(value)) {
|
|
|
|
- /* eslint-disable-next-line */
|
|
|
|
- return Promise.reject(t('common.phoneError'));
|
|
|
|
- }
|
|
|
|
- try {
|
|
|
|
- let res = await checkUserApi({ phone: value });
|
|
|
|
- console.log('res', res);
|
|
|
|
- if (res == true) {
|
|
|
|
- return Promise.resolve();
|
|
|
|
- } else {
|
|
|
|
- return Promise.reject('手机号未在指房宝APP中进行注册');
|
|
|
|
- }
|
|
|
|
- } catch (err) {
|
|
|
|
- return Promise.reject(err);
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- trigger: 'change',
|
|
|
|
- },
|
|
|
|
- ],
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- field: 'nickName',
|
|
|
|
- component: 'Input',
|
|
|
|
- label: '员工名称',
|
|
|
|
- required: true,
|
|
|
|
- colProps: {
|
|
|
|
- span: 22,
|
|
|
|
- },
|
|
|
|
- componentProps: {
|
|
|
|
- maxLength: 25,
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- {
|
|
|
|
- field: 'roleId',
|
|
|
|
- component: 'ApiRadioGroup',
|
|
|
|
- label: '角色',
|
|
|
|
- required: true,
|
|
|
|
- itemProps: {
|
|
|
|
- validateTrigger: 'blur',
|
|
|
|
- },
|
|
|
|
- componentProps: {
|
|
|
|
- api: roleLIstApi,
|
|
|
|
- labelField: 'roleName',
|
|
|
|
- valueField: 'roleId',
|
|
|
|
- },
|
|
|
|
- },
|
|
|
|
- // {
|
|
|
|
- // field: 'status',
|
|
|
|
- // label: '状态',
|
|
|
|
- // component: 'RadioButtonGroup',
|
|
|
|
- // required: true,
|
|
|
|
- // defaultValue: 1,
|
|
|
|
- // itemProps: {
|
|
|
|
- // validateTrigger: 'blur',
|
|
|
|
- // },
|
|
|
|
- // componentProps: {
|
|
|
|
- // options: [
|
|
|
|
- // { label: '是', value: 1 },
|
|
|
|
- // { label: '否', value: 0 },
|
|
|
|
- // ],
|
|
|
|
- // },
|
|
|
|
- // },
|
|
|
|
- {
|
|
|
|
- field: 'id',
|
|
|
|
- component: 'Input',
|
|
|
|
- label: 'id',
|
|
|
|
- show: false,
|
|
|
|
- },
|
|
|
|
- ];
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
components: { BasicModal, BasicForm },
|
|
components: { BasicModal, BasicForm },
|
|
props: {
|
|
props: {
|
|
@@ -117,6 +29,126 @@
|
|
emits: ['ok'],
|
|
emits: ['ok'],
|
|
setup(_, context) {
|
|
setup(_, context) {
|
|
const modelRef = ref({});
|
|
const modelRef = ref({});
|
|
|
|
+ const userStore = useUserStore();
|
|
|
|
+ const { getCheckRole } = userStore;
|
|
|
|
+ const schemas: FormSchema[] = [
|
|
|
|
+ {
|
|
|
|
+ field: 'phone',
|
|
|
|
+ component: 'Input',
|
|
|
|
+ label: '手机号',
|
|
|
|
+ colProps: {
|
|
|
|
+ span: 18,
|
|
|
|
+ },
|
|
|
|
+ // helpMessage: '手机号需在指房宝APP注册后才可新增',
|
|
|
|
+ required: false,
|
|
|
|
+ rules: [
|
|
|
|
+ {
|
|
|
|
+ required: true,
|
|
|
|
+ // @ts-ignore
|
|
|
|
+ validator: async (rule, value) => {
|
|
|
|
+ var reg_tel =
|
|
|
|
+ /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
|
|
|
|
+ // var reg = /\S+@\S+\.\S+/;
|
|
|
|
+ if (!value) {
|
|
|
|
+ return Promise.reject(t('common.phone'));
|
|
|
|
+ }
|
|
|
|
+ if (!reg_tel.test(value)) {
|
|
|
|
+ /* eslint-disable-next-line */
|
|
|
|
+ return Promise.reject(t('common.phoneError'));
|
|
|
|
+ }
|
|
|
|
+ try {
|
|
|
|
+ let res = await checkUserApi({ phone: value });
|
|
|
|
+ console.log('res', res);
|
|
|
|
+ if (res == true) {
|
|
|
|
+ return Promise.resolve();
|
|
|
|
+ } else {
|
|
|
|
+ return Promise.reject('手机号未在指房宝APP中进行注册');
|
|
|
|
+ }
|
|
|
|
+ } catch (err) {
|
|
|
|
+ return Promise.reject(err);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ trigger: 'change',
|
|
|
|
+ },
|
|
|
|
+ ],
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ field: 'nickName',
|
|
|
|
+ component: 'Input',
|
|
|
|
+ label: '员工名称',
|
|
|
|
+ required: true,
|
|
|
|
+ colProps: {
|
|
|
|
+ span: 22,
|
|
|
|
+ },
|
|
|
|
+ componentProps: {
|
|
|
|
+ maxLength: 25,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ field: 'companyId',
|
|
|
|
+ label: '公司',
|
|
|
|
+ component: 'ApiSelect',
|
|
|
|
+ itemProps: {
|
|
|
|
+ validateTrigger: 'blur',
|
|
|
|
+ },
|
|
|
|
+ colProps: {
|
|
|
|
+ span: 22,
|
|
|
|
+ },
|
|
|
|
+ required: true,
|
|
|
|
+ ifShow: getCheckRole('plat_admin'),
|
|
|
|
+ componentProps: {
|
|
|
|
+ api: ListAllCompanyApi,
|
|
|
|
+ resultField: 'list',
|
|
|
|
+ labelField: 'name',
|
|
|
|
+ valueField: 'id',
|
|
|
|
+ immediate: true,
|
|
|
|
+ onChange: function () {
|
|
|
|
+ // Reflect.set(modalRecord, 'shippingName', opt.label);
|
|
|
|
+ },
|
|
|
|
+ params: {
|
|
|
|
+ page: 1,
|
|
|
|
+ limit: 1000,
|
|
|
|
+ },
|
|
|
|
+ required: true,
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ {
|
|
|
|
+ field: 'roleId',
|
|
|
|
+ component: 'ApiRadioGroup',
|
|
|
|
+ label: '角色',
|
|
|
|
+ required: true,
|
|
|
|
+ itemProps: {
|
|
|
|
+ validateTrigger: 'blur',
|
|
|
|
+ },
|
|
|
|
+ componentProps: {
|
|
|
|
+ api: roleLIstApi,
|
|
|
|
+ labelField: 'roleName',
|
|
|
|
+ valueField: 'roleId',
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+ // {
|
|
|
|
+ // field: 'status',
|
|
|
|
+ // label: '状态',
|
|
|
|
+ // component: 'RadioButtonGroup',
|
|
|
|
+ // required: true,
|
|
|
|
+ // defaultValue: 1,
|
|
|
|
+ // itemProps: {
|
|
|
|
+ // validateTrigger: 'blur',
|
|
|
|
+ // },
|
|
|
|
+ // componentProps: {
|
|
|
|
+ // options: [
|
|
|
|
+ // { label: '是', value: 1 },
|
|
|
|
+ // { label: '否', value: 0 },
|
|
|
|
+ // ],
|
|
|
|
+ // },
|
|
|
|
+ // },
|
|
|
|
+ {
|
|
|
|
+ field: 'id',
|
|
|
|
+ component: 'Input',
|
|
|
|
+ label: 'id',
|
|
|
|
+ show: false,
|
|
|
|
+ },
|
|
|
|
+ ];
|
|
const title = ref('新 增');
|
|
const title = ref('新 增');
|
|
const { createMessage } = useMessage();
|
|
const { createMessage } = useMessage();
|
|
const [registerForm, { setFieldsValue, validate, resetFields }] = useForm({
|
|
const [registerForm, { setFieldsValue, validate, resetFields }] = useForm({
|