添加机构信息查询护理单元信息
This commit is contained in:
parent
e47f9a5a7b
commit
35459a7771
|
|
@ -46,6 +46,9 @@
|
||||||
<span style="color: #909399;">加盟时间:{{ orgInfo.franchiseTime?.substring(0, 10) }}</span>
|
<span style="color: #909399;">加盟时间:{{ orgInfo.franchiseTime?.substring(0, 10) }}</span>
|
||||||
<a-button style="font-size: 12px;" v-show="showDetail" type="link" size="small"
|
<a-button style="font-size: 12px;" v-show="showDetail" type="link" size="small"
|
||||||
@click.stop="handleDetail">了解更多</a-button>
|
@click.stop="handleDetail">了解更多</a-button>
|
||||||
|
|
||||||
|
<a-button style="font-size: 12px;right:-70px;" v-show="showHldy" type="link" size="small"
|
||||||
|
@click.stop="handleHldy">护理单元</a-button>
|
||||||
<a-button style="font-size: 12px;" v-show="showInfo" type="link" size="small"
|
<a-button style="font-size: 12px;" v-show="showInfo" type="link" size="small"
|
||||||
@click.stop="handleInfo">查看详情</a-button>
|
@click.stop="handleInfo">查看详情</a-button>
|
||||||
</div>
|
</div>
|
||||||
|
|
@ -65,11 +68,12 @@ const props = defineProps({
|
||||||
isElderTagMain: { type: Boolean, default: false },//标准标签库
|
isElderTagMain: { type: Boolean, default: false },//标准标签库
|
||||||
showDetail: { type: Boolean, default: false },
|
showDetail: { type: Boolean, default: false },
|
||||||
showInfo: { type: Boolean, default: false },
|
showInfo: { type: Boolean, default: false },
|
||||||
|
showHldy: { type: Boolean, default: false },
|
||||||
clickable: { type: Boolean, default: false },
|
clickable: { type: Boolean, default: false },
|
||||||
showMainTile: { type: Boolean, default: true },//是否展示标准指令库/标签库
|
showMainTile: { type: Boolean, default: true },//是否展示标准指令库/标签库
|
||||||
})
|
})
|
||||||
|
|
||||||
const emit = defineEmits(['click', 'detail', 'info'])
|
const emit = defineEmits(['click', 'detail', 'info','hldy'])
|
||||||
|
|
||||||
const existTagFunc = () => {
|
const existTagFunc = () => {
|
||||||
return props.isDirectiveMain || props.isElderTagMain
|
return props.isDirectiveMain || props.isElderTagMain
|
||||||
|
|
@ -86,6 +90,9 @@ const handleDetail = () => {
|
||||||
const handleInfo = () => {
|
const handleInfo = () => {
|
||||||
emit('info', props.orgInfo)
|
emit('info', props.orgInfo)
|
||||||
}
|
}
|
||||||
|
const handleHldy = () => {
|
||||||
|
emit('hldy', props.orgInfo)
|
||||||
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
|
|
|
||||||
|
|
@ -22,12 +22,13 @@
|
||||||
</a-form>
|
</a-form>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<OrgListCom ref="orgListComRef" :title="queryParam.title" @handleOrgInfo="handleDetail" :showMainTile="false"
|
<OrgListCom ref="orgListComRef" :title="queryParam.title" @handleOrgInfo="handleDetail" @handleHldy="handleHldy" :showMainTile="false"
|
||||||
:showInfo="true">
|
:showInfo="true" :showHldy="true">
|
||||||
</OrgListCom>
|
</OrgListCom>
|
||||||
|
|
||||||
<!-- 表单区域 -->
|
<!-- 表单区域 -->
|
||||||
<OrgApplyInfoModal ref="registerModal"></OrgApplyInfoModal>
|
<OrgApplyInfoModal ref="registerModal"></OrgApplyInfoModal>
|
||||||
|
<OrgApplyHldyModal ref="registerHldyModal"></OrgApplyHldyModal>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
|
|
@ -36,9 +37,11 @@ import { ref, reactive, computed, onMounted, watch } from 'vue'
|
||||||
import { getOrgInfo } from '/@/views/admin/orgapplyinfo/OrgApplyInfo.api';
|
import { getOrgInfo } from '/@/views/admin/orgapplyinfo/OrgApplyInfo.api';
|
||||||
import OrgListCom from '/@/views/synchronization/directive/orgCom/OrgListCom.vue'
|
import OrgListCom from '/@/views/synchronization/directive/orgCom/OrgListCom.vue'
|
||||||
import OrgApplyInfoModal from './components/OrgApplyInfoModal.vue'
|
import OrgApplyInfoModal from './components/OrgApplyInfoModal.vue'
|
||||||
|
import OrgApplyHldyModal from './components/OrgApplyHldyModal.vue'
|
||||||
|
|
||||||
const formRef = ref();
|
const formRef = ref();
|
||||||
const registerModal = ref();
|
const registerModal = ref();
|
||||||
|
const registerHldyModal = ref();
|
||||||
const orgTableList = ref<any>([]);
|
const orgTableList = ref<any>([]);
|
||||||
const queryParam = reactive<any>({});
|
const queryParam = reactive<any>({});
|
||||||
const pageParams = ref({ pageNo: 1, pageSize: 8 })
|
const pageParams = ref({ pageNo: 1, pageSize: 8 })
|
||||||
|
|
@ -63,6 +66,14 @@ function handleDetail(record) {
|
||||||
registerModal.value.disableSubmit = true;
|
registerModal.value.disableSubmit = true;
|
||||||
registerModal.value.edit(record);
|
registerModal.value.edit(record);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* 查询护理单元信息
|
||||||
|
* @param record
|
||||||
|
*/
|
||||||
|
function handleHldy(record) {
|
||||||
|
registerHldyModal.value.disableSubmit = true;
|
||||||
|
registerHldyModal.value.edit(record);
|
||||||
|
}
|
||||||
/**
|
/**
|
||||||
* 查询
|
* 查询
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,184 @@
|
||||||
|
<template>
|
||||||
|
<a-spin :spinning="confirmLoading">
|
||||||
|
<JFormContainer :disabled="disabled">
|
||||||
|
<template #detail>
|
||||||
|
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol"
|
||||||
|
name="OrgApplyInfoForm">
|
||||||
|
|
||||||
|
<a-row class="card-class">
|
||||||
|
<a-col :span="24" style="border-bottom: 2px solid #f7f7f7; margin-bottom: 14px;">
|
||||||
|
<SectionDivider :title="'护理单元'" />
|
||||||
|
</a-col>
|
||||||
|
<a-col :span="8" v-for="(item, index) in dataSource" style="padding: 7px;">
|
||||||
|
<a-card :title="`NUID:`+item.nuId" >
|
||||||
|
<template #extra>{{item.nuType}}</template>
|
||||||
|
<p>摄像头:{{item.sxtList}}</p>
|
||||||
|
<p>电表:{{item.dbList}}</p>
|
||||||
|
<p>水表:{{item.sbList}}</p>
|
||||||
|
<p>温湿度计:{{item.wsdjList}}</p>
|
||||||
|
</a-card>
|
||||||
|
</a-col>
|
||||||
|
</a-row>
|
||||||
|
|
||||||
|
</a-form>
|
||||||
|
</template>
|
||||||
|
</JFormContainer>
|
||||||
|
</a-spin>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts" setup>
|
||||||
|
import { ref, reactive, defineExpose, nextTick, defineProps, computed, onMounted } from 'vue';
|
||||||
|
import { defHttp } from '/@/utils/http/axios';
|
||||||
|
import { useMessage } from '/@/hooks/web/useMessage';
|
||||||
|
import { saveOrUpdate } from '../OrgApplyInfo.api';
|
||||||
|
import { Form } from 'ant-design-vue';
|
||||||
|
import JFormContainer from '/@/components/Form/src/container/JFormContainer.vue';
|
||||||
|
|
||||||
|
const cityViewValue = ref('')
|
||||||
|
const props = defineProps({
|
||||||
|
formDisabled: { type: Boolean, default: false },
|
||||||
|
formData: { type: Object, default: () => ({}) },
|
||||||
|
formBpm: { type: Boolean, default: true }
|
||||||
|
});
|
||||||
|
const formRef = ref();
|
||||||
|
const useForm = Form.useForm;
|
||||||
|
const emit = defineEmits(['register', 'ok']);
|
||||||
|
const dataSource = ref<any>([]);
|
||||||
|
const formData = reactive<Record<string, any>>({
|
||||||
|
id: '',
|
||||||
|
openId: '',
|
||||||
|
wechatName: '',
|
||||||
|
tel: '',
|
||||||
|
status: '',
|
||||||
|
buildStatus: '',
|
||||||
|
content: '',
|
||||||
|
createTime: '',
|
||||||
|
updateTime: '',
|
||||||
|
izEntry: '',
|
||||||
|
name: '',
|
||||||
|
sex: '',
|
||||||
|
national: '',
|
||||||
|
birthDate: '',
|
||||||
|
idCardAddress: '',
|
||||||
|
idCard: '',
|
||||||
|
issuingAuthority: '',
|
||||||
|
startTime: '',
|
||||||
|
endTime: '',
|
||||||
|
cardZmPath: '',
|
||||||
|
cardFmPath: '',
|
||||||
|
comBusinessLicense: '',
|
||||||
|
comName: '',
|
||||||
|
comRegisterAddress: '',
|
||||||
|
comCreditCode: '',
|
||||||
|
comLegalPerson: '',
|
||||||
|
orgAddress: '',
|
||||||
|
orgCoordinateLo: '',
|
||||||
|
orgCoordinateLa: '',
|
||||||
|
orgLeader: '',
|
||||||
|
orgLeaderPhone: '',
|
||||||
|
orgBuildingNumber: '',
|
||||||
|
orgPropertyType: '',
|
||||||
|
orgBuildingArea: undefined,
|
||||||
|
orgProvince: '',
|
||||||
|
orgCity: '',
|
||||||
|
orgDistrict: '',
|
||||||
|
orgProvince_dictText: '',
|
||||||
|
orgCity_dictText: '',
|
||||||
|
orgDistrict_dictText: '',
|
||||||
|
franchiseTime: null,
|
||||||
|
contract: null,
|
||||||
|
contractNote: null,
|
||||||
|
replyContent: '',
|
||||||
|
replyFile: '',
|
||||||
|
replyTime: '',
|
||||||
|
handleBy: '',
|
||||||
|
workOrderStatus: '',
|
||||||
|
workOrderStatus_dictText: '',
|
||||||
|
auditBy: '',
|
||||||
|
auditTime: '',
|
||||||
|
|
||||||
|
});
|
||||||
|
const { createMessage } = useMessage();
|
||||||
|
const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 8 } });
|
||||||
|
const wrapperCol = ref<any>({ xs: { span: 24 }, sm: { span: 16 } });
|
||||||
|
const confirmLoading = ref<boolean>(false);
|
||||||
|
//表单验证
|
||||||
|
const validatorRules = reactive({
|
||||||
|
});
|
||||||
|
const { resetFields, validate, validateInfos } = useForm(formData, validatorRules, { immediate: false });
|
||||||
|
|
||||||
|
// 表单禁用
|
||||||
|
const disabled = computed(() => {
|
||||||
|
if (props.formBpm === true) {
|
||||||
|
if (props.formData.disabled === false) {
|
||||||
|
return false;
|
||||||
|
} else {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return props.formDisabled;
|
||||||
|
});
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增
|
||||||
|
*/
|
||||||
|
function add() {
|
||||||
|
edit({});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编辑
|
||||||
|
*/
|
||||||
|
function edit(record) {
|
||||||
|
console.log("🌊 ~ edit ~ record:", record)
|
||||||
|
nextTick(() => {
|
||||||
|
resetFields();
|
||||||
|
let tmpData = {};
|
||||||
|
Object.keys(formData).forEach((key) => {
|
||||||
|
if (record.hasOwnProperty(key)) {
|
||||||
|
tmpData[key] = record[key]
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
console.log("🚀 ~ edit ~ formData.orgCode:", record.orgCode)
|
||||||
|
defHttp.get({ url: '/api/nuBaseInfo/getNuListByOrgCode', params: { orgCode: record.orgCode } }).then(res => {
|
||||||
|
console.log("🚀 ~ edit ~ res:", res)
|
||||||
|
dataSource.value = res;
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 提交数据
|
||||||
|
*/
|
||||||
|
async function submitForm() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
defineExpose({
|
||||||
|
add,
|
||||||
|
edit,
|
||||||
|
submitForm,
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less" scoped>
|
||||||
|
.antd-modal-form {
|
||||||
|
padding: 14px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-class {
|
||||||
|
padding-top: 24px;
|
||||||
|
padding-bottom: 24px;
|
||||||
|
padding-left: 14px;
|
||||||
|
padding-right: 14px;
|
||||||
|
// background-color: rgba(255, 255, 255, 0.9);
|
||||||
|
background-color: #fcfdff;
|
||||||
|
border-radius: 10px;
|
||||||
|
// box-shadow: rgba(0, 0, 0, 0.1) 0px 2px 12px;
|
||||||
|
margin-bottom: 14px;
|
||||||
|
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
@ -0,0 +1,129 @@
|
||||||
|
<template>
|
||||||
|
<a-drawer :title="title" :width="`70vw`" v-model:visible="visible" :closable="true"
|
||||||
|
:footer-style="{ textAlign: 'right' }" :bodyStyle="{padding:'0px'}" @close="handleCancel">
|
||||||
|
<OrgApplyHldyForm ref="registerForm" @ok="submitCallback" :formDisabled="disableSubmit" :formBpm="false">
|
||||||
|
</OrgApplyHldyForm>
|
||||||
|
<template #footer>
|
||||||
|
<a-button type="primary" style="margin-right: 8px" @click="handleCancel">关闭</a-button>
|
||||||
|
<a-button type="primary" @click="handleOk" v-if="!disableSubmit">确认</a-button>
|
||||||
|
</template>
|
||||||
|
</a-drawer>
|
||||||
|
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script lang="ts" setup>
|
||||||
|
import { ref, nextTick, defineExpose } from 'vue';
|
||||||
|
import OrgApplyHldyForm from './OrgApplyHldyForm.vue'
|
||||||
|
import JModal from '/@/components/Modal/src/JModal/JModal.vue';
|
||||||
|
|
||||||
|
const title = ref<string>('');
|
||||||
|
const visible = ref<boolean>(false);
|
||||||
|
const disableSubmit = ref<boolean>(false);
|
||||||
|
const registerForm = ref();
|
||||||
|
const contractVisible = ref<boolean>(false);
|
||||||
|
const upContractForm = ref();
|
||||||
|
const emit = defineEmits(['register', 'success']);
|
||||||
|
function handleExtraButton(){
|
||||||
|
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 新增
|
||||||
|
*/
|
||||||
|
function add() {
|
||||||
|
title.value = '新增';
|
||||||
|
visible.value = true;
|
||||||
|
nextTick(() => {
|
||||||
|
registerForm.value.add();
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 编辑
|
||||||
|
* @param record
|
||||||
|
*/
|
||||||
|
function edit(record) {
|
||||||
|
title.value = disableSubmit.value ? '详情' : '机构加盟申请审核';
|
||||||
|
visible.value = true;
|
||||||
|
nextTick(() => {
|
||||||
|
registerForm.value.edit(record);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 确定按钮点击事件
|
||||||
|
*/
|
||||||
|
function handleOk() {
|
||||||
|
registerForm.value.submitForm();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* form保存回调事件
|
||||||
|
*/
|
||||||
|
function submitCallback() {
|
||||||
|
handleCancel();
|
||||||
|
emit('success');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 取消按钮回调事件
|
||||||
|
*/
|
||||||
|
function handleCancel() {
|
||||||
|
visible.value = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 关闭合同上传窗口
|
||||||
|
*/
|
||||||
|
function handleContractCancel() {
|
||||||
|
contractVisible.value = false
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 打开上传合同编辑窗口
|
||||||
|
*/
|
||||||
|
function editContract(record) {
|
||||||
|
contractVisible.value = true
|
||||||
|
nextTick(() => {
|
||||||
|
upContractForm.value.edit(record);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 上传合同提交
|
||||||
|
*/
|
||||||
|
function submitContractCallback() {
|
||||||
|
console.log(99999)
|
||||||
|
handleContractCancel();
|
||||||
|
emit('success');
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存为草稿
|
||||||
|
*/
|
||||||
|
function saveContract() {
|
||||||
|
upContractForm.value.saveForm();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 保存并提交
|
||||||
|
*/
|
||||||
|
function submitContract() {
|
||||||
|
upContractForm.value.submitForm();
|
||||||
|
}
|
||||||
|
|
||||||
|
defineExpose({
|
||||||
|
add,
|
||||||
|
edit,
|
||||||
|
disableSubmit,
|
||||||
|
editContract,
|
||||||
|
});
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="less">
|
||||||
|
/**隐藏样式-modal确定按钮 */
|
||||||
|
.jee-hidden {
|
||||||
|
display: none !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
<style lang="less" scoped></style>
|
||||||
|
|
@ -6,11 +6,12 @@
|
||||||
:xxl="props.layout == 'full' ? 6 : 8" :xxxl="props.layout == 'full' ? 4 : 8"
|
:xxl="props.layout == 'full' ? 6 : 8" :xxxl="props.layout == 'full' ? 4 : 8"
|
||||||
:style="{ 'padding-right': ((index + 1) % 4 != 0) ? '14px' : '0px', 'padding-bottom': '14px' }">
|
:style="{ 'padding-right': ((index + 1) % 4 != 0) ? '14px' : '0px', 'padding-bottom': '14px' }">
|
||||||
<OrgCard :orgInfo="item" :layout="props.layout" :showMainTile="props.showMainTile" :showInfo="props.showInfo"
|
<OrgCard :orgInfo="item" :layout="props.layout" :showMainTile="props.showMainTile" :showInfo="props.showInfo"
|
||||||
|
:showHldy="props.showHldy"
|
||||||
:is-selected="selectedOrgs.some(org => org.orgCode === item.orgCode)"
|
:is-selected="selectedOrgs.some(org => org.orgCode === item.orgCode)"
|
||||||
:is-directive-selected="directiveMainSelectedOrg?.orgCode === item.orgCode"
|
:is-directive-selected="directiveMainSelectedOrg?.orgCode === item.orgCode"
|
||||||
:is-directive-main="dmOrg?.orgCode === item.orgCode" :show-detail="props.showDetail"
|
:is-directive-main="dmOrg?.orgCode === item.orgCode" :show-detail="props.showDetail"
|
||||||
:clickable="props.showChoose || props.showDirectiveChoose" @click="handleCardClick" @detail="handleDetail"
|
:clickable="props.showChoose || props.showDirectiveChoose" @click="handleCardClick" @detail="handleDetail"
|
||||||
@info="handleInfo" />
|
@info="handleInfo" @hldy="handleHldy" />
|
||||||
</a-col>
|
</a-col>
|
||||||
<a-col v-if="orgTableList.length == 0">
|
<a-col v-if="orgTableList.length == 0">
|
||||||
<div style="margin: 30px auto;">
|
<div style="margin: 30px auto;">
|
||||||
|
|
@ -48,9 +49,10 @@ const props = defineProps({
|
||||||
showDirectiveChoose: { type: Boolean, default: false },
|
showDirectiveChoose: { type: Boolean, default: false },
|
||||||
showDMTip: { type: Boolean, default: false },
|
showDMTip: { type: Boolean, default: false },
|
||||||
showMainTile: { type: Boolean, default: true },//是否展示标准指令库/标签库
|
showMainTile: { type: Boolean, default: true },//是否展示标准指令库/标签库
|
||||||
|
showHldy: { type: Boolean, default: false },//是否展示护理单元
|
||||||
})
|
})
|
||||||
|
|
||||||
const emit = defineEmits(['handleOrgDetail', 'handleOrgChoose', 'handleOrgInfo'])
|
const emit = defineEmits(['handleOrgDetail', 'handleOrgChoose', 'handleOrgInfo','handleHldy'])
|
||||||
|
|
||||||
const orgTableList = ref<any>({ records: [], total: 0 })
|
const orgTableList = ref<any>({ records: [], total: 0 })
|
||||||
const queryParam = reactive<any>({})
|
const queryParam = reactive<any>({})
|
||||||
|
|
@ -88,6 +90,9 @@ function handleDetail(item: any) {
|
||||||
function handleInfo(item: any) {
|
function handleInfo(item: any) {
|
||||||
emit('handleOrgInfo', item)
|
emit('handleOrgInfo', item)
|
||||||
}
|
}
|
||||||
|
function handleHldy(item: any) {
|
||||||
|
emit('handleHldy', item)
|
||||||
|
}
|
||||||
|
|
||||||
function reload() {
|
function reload() {
|
||||||
directiveMainSelectedOrg.value = {}
|
directiveMainSelectedOrg.value = {}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue