Merge remote-tracking branch 'origin/main'

This commit is contained in:
luozhun 2024-12-19 14:15:42 +08:00
commit b086e5a49f
16 changed files with 66 additions and 50 deletions

View File

@ -71,7 +71,7 @@
<nut-dialog content="详情" v-model:visible="visible" @ok="onOk" @cancel="cancel">
<slot>
<view style="margin-bottom: 5px">
<view>姓名{{ securityNumberByIdCard?.name ? securityNumberByIdCard?.name : '无' }}</view>
<view>姓名{{ securityNumberByIdCard.name ? securityNumberByIdCard.name : '无' }}</view>
<view>保安证件号{{ securityNumberByIdCard?.bayzh ? securityNumberByIdCard?.bayzh : '无' }}</view>
<view>身份证{{ securityNumberByIdCard?.sfzhm ? securityNumberByIdCard?.sfzhm : '无' }}</view>
</view>
@ -90,17 +90,17 @@ import dayjs from 'dayjs'
import { SecurityUserFormParams, securityNumberByIdCard } from '@/types/subPages/projectManager/securityUserForm'
import { FormInstance } from '@nutui/nutui-taro'
import { generateSimpleObjectName, getResignedObjectUrl } from '@/utils'
import {IconFont} from "@nutui/icons-vue-taro";
const SEX = enumSelectNodes('Sex')
const SEX:any = enumSelectNodes('Sex')
const minioBaseUrl = process.env.TARO_APP_MINIO_URL
const BUCKET = process.env.TARO_APP_MINIO_BUCKET
const showPicker = ref(false)
const Url = ref('')
const type = ref<'formInput' | 'QcCodeInput'>(null!)
const formData = ref<SecurityUserFormParams>({} as any)
const formRef = ref<FormInstance>(null!)
const visible = ref<boolean>(false)
const securityNumberByIdCard = ref<securityNumberByIdCard>()
const securityNumberByIdCard = ref<securityNumberByIdCard | any>()
const uploadRef = ref<any>(null)
const modelValue = ref('')
@ -144,6 +144,7 @@ useLoad((options) => {
const idCardBlur = async (e: any, num: number) => {
const value = e.idCard
if (value) {
if(BUCKET === 'police-security-dev'){
Taro.request({
url: 'https://www.hnjinglian.cn:5678/common/querySecurityNumberByIdCard',
data: {
@ -151,20 +152,24 @@ const idCardBlur = async (e: any, num: number) => {
},
method: 'GET',
success: ({ data }) => {
console.log(data.data)
visible.value = true
securityNumberByIdCard.value = data.data
},
})
return
}else{
const resp = await api.get('/common/querySecurityNumberByIdCard',{ idCard: value})
visible.value = true
securityNumberByIdCard.value = resp?.data
}
} else {
visible.value = false
console.log(value)
}
cardBlur(value, num)
}
const cardBlur = (e, num) => {
let value = ''
const cardBlur = (e:any, num:number) => {
let value: string
if (num === 0) {
value = e
} else {

View File

@ -4,10 +4,10 @@ export interface SecurityUserFormParams {
serviceProjectId: string;
name: string | undefined;
workPost?: string;
telephone: value | null;
sex: number;
telephone: value | any;
sex: number | any;
nativePlace?: string;
idCard: value | null;
idCard: value | any;
dateOfBirth?: Date | null;
securityNumber?: string;
photo?:string;
@ -21,8 +21,8 @@ export interface value{
originalValue?:string
}
export interface securityNumberByIdCard{
export interface securityNumberByIdCard {
name: string | undefined
bayzh?: string
sfzhm?: string
bayzh?: string | undefined
sfzhm?: string | undefined
}

View File

@ -6,6 +6,7 @@ type DictType =
| 'IsEnable'
| 'IsOrNot'
| 'Sex'
| 'EducationLevel'
export const initEnums = () => {
api.get<Record<DictType, SelectNodeVo<any>[]>>('/common/enums').then(resp => {

View File

@ -131,6 +131,7 @@ export interface securityUnitIdListParams {
securityNumber?: string;
noSecurityNumberDesc?: string;
homeAddress?: string;
educationLevel?: string;
}
export interface securityUnitIdListPagerVo {
snowFlakeId?: string;

View File

@ -2,12 +2,12 @@
<div class="root">
<div class="header">
<img src="@/assets/vue.svg" alt="Logo" height="33" width="33" />
<div class="logo-text">超级后台</div>
<div class="logo-text">公安后台</div>
</div>
<div class="container">
<div class="left-banner"></div>
<div class="login-card">
<div class="title">欢迎来到超级后台</div>
<div class="title">欢迎来到公安后台</div>
<a-tabs class="account-tab" v-model:active-key="activeKey">
<a-tab-pane :key="0" tab="账号登录">
<TelephoneLogin :account="account" :password="password" />

View File

@ -34,6 +34,7 @@ const _formParams = reactive<securityUnitIdListParams>({
noSecurityNumberDesc: '',
homeAddress: '',
remark: '',
educationLevel: '',
})
const cardBlur = () => {
let value = _formParams.idCard
@ -87,6 +88,7 @@ const saveOrUpdateEnterprisesUnit = (callback: Function, params, type: string) =
_formParams.telephone = params.telephone.originalValue
_formParams.workPost = params.workPost
_formParams.sex = params.sex.value
_formParams.educationLevel = params.educationLevel.value
_formParams.nativePlace = params.nativePlace
_formParams.idCard = params.idCard.originalValue
_formParams.dateOfBirth = params.dateOfBirth
@ -135,10 +137,18 @@ const saveOrUpdateEnterprisesUnit = (callback: Function, params, type: string) =
required: true,
options: [...dictSelectNodes('Sex')],
},
educationLevel: {
type: 'radioGroup',
label: '文化程度',
required: true,
options: [...dictSelectNodes('EducationLevel')],
},
securityNumber: {
type: 'input',
label: '保安证号',
required: true,
// required: true,
},
dateOfBirth: {
type: 'datePicker',
@ -207,6 +217,8 @@ const clearForm = () => {
_formParams.noSecurityNumberDesc = ''
_formParams.homeAddress = ''
_formParams.remark = ''
_formParams.educationLevel = ''
}
export const showEnterprisesUnit = (record_) => {
// console.log('🚀 ~ showEnterprisesUnit ~ record_:', record_)

View File

@ -96,6 +96,7 @@ const columns: TableProps['columns'] = [
},
{
dataIndex: 'remark',
title: '备注',
width: 120,
ellipsis: true,
},

View File

@ -1,4 +1,4 @@
VITE_APP_NAME=超级后台
VITE_APP_NAME=保安后台
VITE_APP_ENV=development
VITE_APP_PORT=1000
VITE_DROP_CONSOLE=false

View File

@ -1,4 +1,4 @@
VITE_APP_NAME=超级后台
VITE_APP_NAME=保安后台
VITE_APP_ENV=production
VITE_APP_PORT=1001
VITE_DROP_CONSOLE=true

View File

@ -1,6 +1,6 @@
{
"name": "supermanagement",
"appName": "超级后台",
"name": "securitymanagement",
"appName": "保安后台",
"private": true,
"version": "1.0.0",
"type": "module",

View File

@ -258,6 +258,8 @@ const idNumberDisabled = ref<boolean>(true)
const netType = computed(() => {
return formParams.value.type === 'security' ? dictSelectNodes("ServiceProjectTwoType") : dictSelectNodes("UserType" as any)
})
const formItemOptions = ref<FormProMaxItemOptions<serviceProjectSaveOrUpdateParams>>({
name: {
type: 'input',
@ -288,9 +290,13 @@ const formItemOptions = ref<FormProMaxItemOptions<serviceProjectSaveOrUpdatePara
options:enterprisesUnitIdList,
componentsProps:{
allowClear:true,
showSearch:true,
onChange:async (value:string)=>{
console.log(value)
enterprisesUnitId.value = value
},
filterOption:(input: string, option: any)=>{
return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
}
}
},

View File

@ -1,20 +1,10 @@
<template>
<AdministrativeDivisionsTree v-model:value="value" :show-search="{ filter }" @change="searchAdministrativeDivisionTree"></AdministrativeDivisionsTree>
<div >
</div>
</template>
<script setup lang="ts">
import AdministrativeDivisionsTree from "@/components/tree/AdministrativeDivisionsTree.vue";
import {ref} from "vue";
import {ShowSearchType} from "ant-design-vue/es/cascader";
const value = ref([ "110000", "110100", "110116", "110116005" ])
const filter: ShowSearchType['filter'] = (inputValue, path) => {
return path?.some(option => option.label.toLowerCase().indexOf(inputValue?.toLowerCase()) > -1);
};
const searchAdministrativeDivisionTree = (e:Array<string>)=>{
value.value = e as any
}
</script>

View File

@ -1,4 +1,4 @@
VITE_APP_NAME=保安管理
VITE_APP_NAME=超级管理
VITE_APP_ENV=development
VITE_APP_PORT=1000
VITE_DROP_CONSOLE=false

View File

@ -1,4 +1,4 @@
VITE_APP_NAME=保安管理
VITE_APP_NAME=超级管理
VITE_APP_ENV=production
VITE_APP_PORT=1001
VITE_DROP_CONSOLE=true

View File

@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0"/>
<script type="module" src="/src/assets/iconfont/iconfont.js"></script>
<title>保安管理</title>
<title>超级管理</title>
</head>
<body>
<div id="app"></div>

View File

@ -1,6 +1,6 @@
{
"name": "super_management",
"appName": "保安管理",
"appName": "超级管理后台",
"private": true,
"version": "1.0.0",
"type": "module",