mch 2 years ago
parent
commit
f61eb03a18
  1. 392
      src/components/patientRegister/ContactPerson.vue
  2. 576
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 403
      src/components/patientRegister/PatientRegisterItem.vue
  4. 5
      src/components/patientRegister/PatientRegisterList.vue
  5. 52
      src/components/patientRegister/customerOrgTreeAll.vue
  6. 25
      src/store/index.js
  7. 30
      src/utlis/proFunc.js
  8. 7
      src/views/customerOrg/patientRegister.vue

392
src/components/patientRegister/ContactPerson.vue

@ -2,10 +2,10 @@
<div>
<div style="display:flex">
<div style="width: 95%;">
<el-table :data="data.contactPerson" border style="height: 175px" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowickContactPerson"
ref="data.contactPerson">
<el-table-column prop="display_name" label="姓名" />
<el-table :data="customerOrg.contactPersonList" border height="150" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowClick"
ref="customerOrg.contactPersonList">
<el-table-column prop="displayName" label="姓名" />
<el-table-column prop="title" label="职务" />
<el-table-column prop="remark" label="备注" />
<el-table-column prop="creatorName" label="创建者" width="" />
@ -20,12 +20,17 @@
{{ scope.row.lastModificationTime | dateFormat }}
</template>
</el-table-column>
</el-table>
<el-table :data="data.contactPerson" border style="height: 175px" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowickContactPerson"
ref="data.contactPerson">
<el-table-column prop="contact_method_type" label="类型" />
<el-table-column prop="contact_method_value" label="联系方式" />
</el-table>
<el-table :data="customerOrg.contactMethodList" border height="150" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowClickMethod"
ref="customerOrg.contactMethodList">
<el-table-column prop="contactMethodType" label="类型">
<template slot-scope="scope">
<div>{{scope.row.contactMethodType==='0' ? '手机':'邮箱'}}</div>
</template>
</el-table-column>
<el-table-column prop="contactMethodValue" label="联系方式" />
<el-table-column prop="creatorName" label="创建者" width="" />
<el-table-column prop="creationTime" label="创建时间" width="200">
<template slot-scope="scope">
@ -42,159 +47,123 @@
</div>
<div style="margin-left: 10px; margin-top: 5%">
<div style="margin-top: 10px">
<el-button type="primary" @click="addContactPerson">新增</el-button>
<el-button type="primary" @click="add">新增</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="success" @click="editContactPerson">编辑</el-button>
<el-button type="success" @click="edit">编辑</el-button>
</div>
<div style="margin-top: 10px">
<el-button type="danger" @click="delContactPerson">删除</el-button>
<el-button type="danger" @click="del">删除</el-button>
</div>
</div>
</div>
<!-- 联系人 -->
<el-dialog title="新增" :visible.sync="dialogContactPerson" width="80%">
<el-form :model="formContactPerson" ref="formContactPerson" label-width="100px">
<el-dialog :title="formTitle" :visible.sync="dialogContactPerson" width="480">
<el-form :model="form" ref="form" label-width="100px" :rules="rules">
<el-row>
<el-col :span="8">
<el-form-item label="结果">
<el-input v-model="formContactPerson.result"></el-input>
<el-form-item label="联系人">
<el-input v-model="form.displayName"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="职务">
<el-input v-model="form.title"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="备注">
<el-input v-model="form.remark"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="5">
<el-form-item label="创建者">
<el-input v-model="form.creatorName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="创建时间" style="margin-left: -5%">
<el-input :value="form.creationTime | dateFormat" disabled style="width: 90%"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="修改者" style="margin-left: -25%">
<el-input v-model="form.creatorName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="7">
<el-form-item label="修改时间" style="margin-left: -5%">
<el-input :value="form.lastModificationTime | dateFormat" disabled style="width: 90%"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-divider/>
<el-table :data="customerOrg.contactMethodList" border height="300" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row ref="contactMethod">
<el-table-column prop="contactMethodType" label="类型">
<template slot-scope="scope">
<el-select v-model="customerOrg.contactMethodList[scope.$index].contactMethodType">
<el-option
v-for="item in Methodtypes"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</template>
</el-table-column>
<el-table-column prop="contactMethodValue" label="联系方式">
<template slot-scope="scope">
<el-input v-model="customerOrg.contactMethodList[scope.$index].contactMethodValue" required/>
</template>
</el-table-column>
<el-table-column fixed="right" label="操作" width="60">
<template slot-scope="scope">
<i class="el-icon-delete" @click="deleteRow(scope.$index)" size="medium"></i>
</template>
</el-table-column>
</el-table>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button > </el-button>
<el-button type="primary" > </el-button>
<el-button @click="dialogContactPerson = false"> </el-button>
<el-button type="success" @click="addMethod">新增联系方式</el-button>
<el-button type="primary" @click="submit"> </el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { yzstr } from "@/utlis/validate";
import {
getporjectlists,
projectlist,
addproject,
priceitemlist,
posjrctid,
projectedit,
projectdeleft,
projttitem,
projectdreog,
} from "@/request/commonapi";
import { unitlist } from "@/request/systemapi";
import Sortable from "sortablejs";
import { mapState } from 'vuex'
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import CustomerOrgTree from '../../components/customerOrg/customerOrgTree.vue'
import CustomerOrgEdit from '../../components/customerOrg/customerOrgEdit.vue'
import CustomerOrgRegister from '../../components/customerOrg/customerOrgRegister.vue'
import { objCopy } from '../../utlis/proFunc'
export default {
components: {
CustomerOrgTree,
CustomerOrgEdit,
CustomerOrgRegister,
},
data() {
return {
data:{
contactPerson:[]
},
form: {
displayName: "",
englishShortName: "",
itemTypeId: "",
price: "",
priceItemId: "",
unitId: "",
defaultResult: "",
referenceRangeTypeFlag: "",
isProduceSummary: "",
isNameIntoSummary: "",
isDiagnosisFunction: "",
diagnosisFunction: "",
isCalculationItem: "",
calculationFunction: "",
isContinueProcess: "",
resultTemplateTypeFlag: "",
inputCheck: "",
isActive: "",
},
dialogContactPerson: false, //
dialogContactMethod: false, //
formContactPerson: {
}, //form
formContactMethod: {
}, //form
personId:'',
form: {}, //
formTitle:'新增',
dialogContactPerson: false, //
Methodtypes:[
//{ value: '',label: '' },
{ value: '0',label: '电话' },
{ value: '1',label: '邮箱' },
],
rules: {
displayName: [
{ required: true, message: "请输入名称", trigger: "blur" },
],
englishShortName: [
{ required: true, message: "请输入英文缩写", trigger: "blur" },
],
itemTypeId: [
{ required: true, message: "请输入项目类别", trigger: "blur" },
],
price: [{ required: true, message: "请输入价格", trigger: "blur" }],
priceItemId: [
{ required: true, message: "请输入价表项目编码", trigger: "blur" },
],
unitId: [{ required: true, message: "请输入单位", trigger: "blur" }],
defaultResult: [
{ required: true, message: "请输入默认结果", trigger: "blur" },
],
referenceRangeTypeFlag: [
{ required: true, message: "请输入参考范围类别", trigger: "blur" },
],
isProduceSummary: [
{ required: true, message: "请选择是生成小结", trigger: "blur" },
],
isNameIntoSummary: [
{ required: true, message: "请输择称进入小结", trigger: "blur" },
],
isDiagnosisFunction: [
{ required: true, message: "请选择启用诊断函数", trigger: "blur" },
],
diagnosisFunction: [
{ required: true, message: "请输入诊断函数", trigger: "blur" },
],
isCalculationItem: [
{ required: true, message: "请选择计算项目", trigger: "blur" },
],
calculationFunction: [
{ required: true, message: "请输入计算函数", trigger: "blur" },
],
isContinueProcess: [
{ required: true, message: "请选择继续处理", trigger: "blur" },
],
resultTemplateTypeFlag: [
{
required: true,
message: "请输入结果模板类别标志",
trigger: "blur",
},
],
inputCheck: [
{ required: true, message: "请选择结果校验公式", trigger: "blur" },
],
isActive: [{ required: true, message: "请选择启用", trigger: "blur" }],
},
isshow: false,
};
},
@ -206,22 +175,171 @@ export default {
},
computed:{
...mapState(['customerOrg']),
},
methods: {
//
getContactPersonList(customerOrgId){
getapi(`/api/app/contact-person/in-customer-org-id/${customerOrgId}`).then(
(res) => {
//console.log('res.data',res.data)
this.customerOrg.contactPersonList = res.data
}
);
},
//
//api/app/contact-method/in-contact-person-id?ContactPersonId=3a0c08ad-4304-138b-d9e6-a7338739dfc4' \
getContactMethodList(ContactPersonId){
getapi('/api/app/contact-method/in-contact-person-id',{ContactPersonId}).then(
(res) => {
//console.log('res.data',res.data)
this.customerOrg.contactMethodList = res.data
}
);
},
//
addContactPerson() {
this.$message.success("新增 addContactPerson");
add() {
//this.$message.success(" addContactPerson");
if(!this.customerOrg.customerOrgId){
alert("没有体检单位信息")
return
}
this.form = {customerOrgId:this.customerOrg.customerOrgId}
this.dialogContactPerson = true
this.formTitle = "新增"
this.personId = ''
this.customerOrg.contactMethodList = []
},
editContactPerson() {
this.$message.success("编辑 editContactPerson");
edit() {
//this.$message.success(" editContactPerson");
if(!this.customerOrg.customerOrgId){
alert("没有体检单位信息")
return
}else if(!this.personId){
alert("请先选择要编辑的联系人")
return
}
this.dialogContactPerson = true
this.formTitle = "编辑"
},
delContactPerson() {
this.$message.success("删除 delContactPerson");
//
del() {
//this.$message.success(" delContactPerson");
if(!this.personId){
alert("请先选择要编辑的联系人")
return
}
deletapi(`/api/app/contact-person/${this.personId}`).then(
(res) => {
this.personId = ''
this.getContactPersonList(this.customerOrg.customerOrgId)
this.customerOrg.contactMethodList = []
this.$message.success("操作成功!");
}
);
},
rowickContactPerson(){
this.$message.success("rowickContactPerson");
//
deleteRow (index){
this.customerOrg.contactMethodList.splice(index, 1)
},
//
submit(){
let body = {
customerOrgId:'',
displayName: "",
title: "",
remark: "",
}
objCopy(this.form,body)
console.log('body',body)
if(this.formTitle === '新增'){
postapi('/api/app/contact-person',body).then(
(res) => {
//console.log('api/app/contact-person')
this.personId = res.data.id
this.formTitle = '编辑'
return deletapi(`/api/app/contact-method/many/${this.personId}`)
}
).then(
(res) => {
//console.log(`deletapi api/app/contact-method/${this.personId}`)
let contactMethod = [] //form
this.customerOrg.contactMethodList.forEach((item, index) => {
contactMethod.push({
contactMethodValue: item.contactMethodValue,
contactMethodType: item.contactMethodType,
contactPersonId: this.personId
})
});
return postapi('/api/app/contact-method/many',contactMethod)
}
).then(
(res) => {
//console.log('api/app/contact-method/many')
this.getContactPersonList(this.customerOrg.customerOrgId)
this.$message.success("操作成功!");
}
);
}else{
putapi(`/api/app/contact-person/${this.personId}`,body).then(
(res) => {
//console.log(`/api/app/contact-person/${this.personId}`)
return deletapi(`/api/app/contact-method/many/${this.personId}`)
}
).then(
(res) => {
console.log(`deletapi api/app/contact-method/${this.personId}`)
let contactMethod = [] //form
this.customerOrg.contactMethodList.forEach((item, index) => {
contactMethod.push({
contactMethodValue: item.contactMethodValue,
contactMethodType: item.contactMethodType,
contactPersonId: this.personId
})
});
return postapi('/api/app/contact-method/many',contactMethod)
}
).then(
(res) => {
//console.log('api/app/contact-method/many')
this.getContactPersonList(this.customerOrg.customerOrgId)
this.$message.success("操作成功!");
}
);
}
},
//
addMethod(){
this.customerOrg.contactMethodList.push({
contactMethodValue: "",
contactMethodType: "0",
contactPersonId: this.personId
})
},
rowClick(row){
console.log('row',row)
// this.$message.success("rowClick");
this.form = row
this.personId = row.id
this.getContactMethodList(row.id)
},
rowClickMethod(row){
this.$message.success("rowClickMethod");
}
},
};
</script>

576
src/components/patientRegister/PatientRegisterEdit.vue

@ -1,292 +1,294 @@
<template>
<div>
<div style="width:60%;">
<div style="display:flex">
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium">
<el-row>
<el-col :span="6">
<el-form-item label="单位名称" prop="customerOrgId">
<el-cascader v-model="form.customerOrgId" :options="patientRegister.customerOrgTreeAll"
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops }" :show-all-levels="false"
disabled>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="条码号" prop="patientRegisterNo">
<el-input v-model="form.patientRegisterNo" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="档案号" prop="patientNo">
<el-input v-model="form.patientNo" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="姓名" prop="patientName">
<el-input v-model="form.patientName" @blur="query(form.patientName)"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="性别" prop="sexId">
<el-select v-model="form.sexId" placeholder="请选择">
<el-option v-for="item in dict.sex" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检次数" prop="medicalTimes">
<el-input v-model="form.medicalTimes" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="年龄" prop="age">
<el-input v-model="form.age"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="出生日期" prop="birthDate">
<el-date-picker v-model="form.birthDate" type="date" placeholder="出生日期" style="width:135px;" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="婚姻状况" prop="maritalStatusId">
<el-select v-model="form.maritalStatusId" placeholder="请选择">
<el-option v-for="item in dict.maritalStatus" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="体检类别" prop="medicalTypeId">
<el-select v-model="form.medicalTypeId" placeholder="请选择" filterable>
<el-option v-for="item in dict.medicalType" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="人员类别" prop="personnelTypeId">
<el-select v-model="form.personnelTypeId" placeholder="请选择" filterable>
<el-option v-for="item in dict.personnelType" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="工卡号" prop="jobCardNo">
<el-input v-model="form.jobCardNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检卡号" prop="medicalCardNo">
<el-input v-model="form.medicalCardNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="职务" prop="jobPost">
<el-input v-model="form.jobPost"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="职称" prop="jobTitle">
<el-input v-model="form.jobTitle"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="身份证号" prop="idNo">
<el-input v-model="form.idNo" @blur="query(form.idNo)"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="地址" prop="address">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="邮政编码" prop="postalCode">
<el-input v-model="form.postalCode"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="电话" prop="telephone">
<el-input v-model="form.telephone"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="手机号" prop="mobileTelephone">
<el-input v-model="form.mobileTelephone"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="民族" prop="nationId">
<el-select v-model="form.nationId" placeholder="请选择" filterable>
<el-option v-for="item in dict.nation" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="介绍人" prop="salesman">
<el-input v-model="form.salesman"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="性激素期" prop="sexHormoneTermId">
<el-select v-model="form.sexHormoneTermId" placeholder="请选择" filterable clearable>
<el-option v-for="item in dict.sexHormoneTerm" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="是否VIP" prop="isVip">
<el-radio v-model="form.isVip" label="Y"></el-radio>
<el-radio v-model="form.isVip" label="N"></el-radio>
</el-form-item>
</el-col>
</el-row>
<el-row>
<table>
<td style="width:60%;">
<div style="display:flex">
<el-form ref="form" :model="form" label-width="80px" :rules="rules" size="medium">
<el-row>
<el-col :span="6">
<el-form-item label="单位名称" prop="customerOrgId">
<el-cascader v-model="form.customerOrgId" :options="patientRegister.customerOrgTreeAll"
:props="{ checkStrictly: true, expandTrigger: 'hover', ...customerOrg.treeprops }" :show-all-levels="false"
disabled>
</el-cascader>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="条码号" prop="patientRegisterNo">
<el-input v-model="form.patientRegisterNo" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="档案号" prop="patientNo">
<el-input v-model="form.patientNo" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="姓名" prop="patientName">
<el-input v-model="form.patientName" @blur="query(form.patientName)"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="性别" prop="sexId">
<el-select v-model="form.sexId" placeholder="请选择">
<el-option v-for="item in dict.sex" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检次数" prop="medicalTimes">
<el-input v-model="form.medicalTimes" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="年龄" prop="age">
<el-input v-model="form.age"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="出生日期" prop="birthDate">
<el-date-picker v-model="form.birthDate" type="date" placeholder="出生日期" style="width:135px;" />
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="婚姻状况" prop="maritalStatusId">
<el-select v-model="form.maritalStatusId" placeholder="请选择">
<el-option v-for="item in dict.maritalStatus" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" />
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="体检类别" prop="medicalTypeId">
<el-select v-model="form.medicalTypeId" placeholder="请选择" filterable>
<el-option v-for="item in dict.medicalType" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="人员类别" prop="personnelTypeId">
<el-select v-model="form.personnelTypeId" placeholder="请选择" filterable>
<el-option v-for="item in dict.personnelType" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="工卡号" prop="jobCardNo">
<el-input v-model="form.jobCardNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检卡号" prop="medicalCardNo">
<el-input v-model="form.medicalCardNo"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="职务" prop="jobPost">
<el-input v-model="form.jobPost"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="职称" prop="jobTitle">
<el-input v-model="form.jobTitle"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="身份证号" prop="idNo">
<el-input v-model="form.idNo" @blur="query(form.idNo)"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="地址" prop="address">
<el-input v-model="form.address"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="邮政编码" prop="postalCode">
<el-input v-model="form.postalCode"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="电话" prop="telephone">
<el-input v-model="form.telephone"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="手机号" prop="mobileTelephone">
<el-input v-model="form.mobileTelephone"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="民族" prop="nationId">
<el-select v-model="form.nationId" placeholder="请选择" filterable>
<el-option v-for="item in dict.nation" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="介绍人" prop="salesman">
<el-input v-model="form.salesman"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="性激素期" prop="sexHormoneTermId">
<el-select v-model="form.sexHormoneTermId" placeholder="请选择" filterable clearable>
<el-option v-for="item in dict.sexHormoneTerm" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="是否VIP" prop="isVip">
<el-radio v-model="form.isVip" label="Y"></el-radio>
<el-radio v-model="form.isVip" label="N"></el-radio>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="电话随访" prop="isPhoneFollow">
<el-radio v-model="form.isPhoneFollow" label="Y"></el-radio>
<el-radio v-model="form.isPhoneFollow" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="隐藏姓名" prop="isNameHide">
<el-radio v-model="form.isNameHide" label="Y"></el-radio>
<el-radio v-model="form.isNameHide" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="是否锁住" prop="isLock">
<el-radio v-model="form.isLock" label="Y"></el-radio>
<el-radio v-model="form.isLock" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检开始" prop="isMedicalStart">
<el-radio v-model="form.isMedicalStart" label="Y" disabled></el-radio>
<el-radio v-model="form.isMedicalStart" label="N" disabled></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检中心" prop="organizationUnitId">
<el-select v-model="form.organizationUnitId" placeholder="请选择" filterable>
<el-option v-for="item in dict.organization" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="分组" prop="customerOrgGroupId">
<el-select v-model="form.customerOrgGroupId" placeholder="请选择" filterable clearable
:disabled="form.customerOrgId === dict.personOrgId ? true : false">
<el-option v-for="item in patientRegister.customerOrgGroup" :key="item.id" :label="item.displayName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="套餐" prop="medicalPackageId">
<el-select v-model="form.medicalPackageId" placeholder="请选择" filterable clearable
:disabled="form.customerOrgId === dict.personOrgId ? false : true">
<el-option v-for="item in dict.medicalPackage" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="完成标志" prop="completeFlag">
<el-select v-model="form.completeFlag" placeholder="请选择" disabled>
<el-option v-for="item in dict.completeFlag" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" :rows="2" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="创建者">
<el-input v-model="form.creatorId" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="创建时间">
<el-input :value="form.creationTime ? lmoment(form.creationTime, 'yyyy-MM-DD'):''" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改者">
<el-input v-model="form.lastModifierId" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改时间">
<el-input :value="form.lastModificationTime ? lmoment(form.lastModificationTime, 'yyyy-MM-DD'):''" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-image class="photo" :src="apiurl + '/' + form.photo" style="width:150;height:200" >
<div slot="placeholder" class="image-slot">
加载中<span class="dot">...</span>
</div>
</el-image>
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px;display:flex;">
<div class="btn">
<el-button @click="readIdCard">读身份证</el-button>
</div>
<div class="btn">
<el-button type="success" @click="Onsubmit('form')">保存</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="openCamera" icon="el-icon-camera">拍照</el-button>
<el-col :span="6">
<el-form-item label="电话随访" prop="isPhoneFollow">
<el-radio v-model="form.isPhoneFollow" label="Y"></el-radio>
<el-radio v-model="form.isPhoneFollow" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="隐藏姓名" prop="isNameHide">
<el-radio v-model="form.isNameHide" label="Y"></el-radio>
<el-radio v-model="form.isNameHide" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="是否锁住" prop="isLock">
<el-radio v-model="form.isLock" label="Y"></el-radio>
<el-radio v-model="form.isLock" label="N"></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检开始" prop="isMedicalStart">
<el-radio v-model="form.isMedicalStart" label="Y" disabled></el-radio>
<el-radio v-model="form.isMedicalStart" label="N" disabled></el-radio>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="体检中心" prop="organizationUnitId">
<el-select v-model="form.organizationUnitId" placeholder="请选择" filterable>
<el-option v-for="item in dict.organization" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="分组" prop="customerOrgGroupId">
<el-select v-model="form.customerOrgGroupId" placeholder="请选择" filterable clearable
:disabled="form.customerOrgId === dict.personOrgId ? true : false">
<el-option v-for="item in patientRegister.customerOrgGroup" :key="item.id" :label="item.displayName"
:value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="套餐" prop="medicalPackageId">
<el-select v-model="form.medicalPackageId" placeholder="请选择" filterable clearable
:disabled="form.customerOrgId === dict.personOrgId ? false : true">
<el-option v-for="item in dict.medicalPackage" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="完成标志" prop="completeFlag">
<el-select v-model="form.completeFlag" placeholder="请选择" disabled>
<el-option v-for="item in dict.completeFlag" :key="item.id" :label="item.displayName" :value="item.id">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="备注" prop="remark">
<el-input v-model="form.remark" type="textarea" :rows="2" placeholder="请输入内容"></el-input>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item label="创建者">
<el-input v-model="form.creatorId" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="创建时间">
<el-input :value="form.creationTime ? lmoment(form.creationTime, 'yyyy-MM-DD'):''" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改者">
<el-input v-model="form.lastModifierId" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="修改时间">
<el-input :value="form.lastModificationTime ? lmoment(form.lastModificationTime, 'yyyy-MM-DD'):''" disabled></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-image class="photo" :src="apiurl + '/' + form.photo" style="width:150;height:200" >
<div slot="placeholder" class="image-slot">
加载中<span class="dot">...</span>
</div>
</el-image>
</div>
<div class="btn">
<el-button type="primary" >申请单</el-button>
</div>
<div class="btn">
<el-button type="primary" >打条码</el-button>
</div>
<div class="btn">
<el-button type="primary" >打指引单</el-button>
</div>
<div class="btn">
<el-button type="primary" >复制新增</el-button>
<!-- 按钮区域 -->
<div style="margin-left: 10px;display:flex;">
<div class="btn">
<el-button @click="readIdCard">读身份证</el-button>
</div>
<div class="btn">
<el-button type="success" @click="Onsubmit('form')">保存</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="openCamera" icon="el-icon-camera">拍照</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="">申请单</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="">打条码</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="">打指引单</el-button>
</div>
<div class="btn">
<el-button type="primary" @click="">复制新增</el-button>
</div>
</div>
</div>
</div>
<div style="width:40%">
<PatientRegisterItem/>
</div>
</td>
<td style="width:40%">
<PatientRegisterItem :patientRegisterForm="form" />
</td>
</table>
<!-- 人员档案列表 -->
<el-dialog title="人员档案列表" :visible.sync="dialogVisible" width="800" :append-to-body="true">
<el-table :data="patientList" border width="800" height="480" row-key="id" size="small"
@ -340,8 +342,12 @@
import moment from 'moment';
import { mapState } from 'vuex'
import { getapi, postapi, putapi, deletapi } from "@/api/api";
<<<<<<< HEAD
import * as apiurl from '../../utlis/mm'
=======
import mm from '../../utlis/mm'
>>>>>>> 7b045e524b52c92a752f9af99d518ea5d08f4ead
import { objCopy,setNull,dddw } from '../../utlis/proFunc'
import Camera from './Camera.vue'
import PatientRegisterItem from './PatientRegisterItem.vue'
@ -352,7 +358,7 @@ export default {
},
data() {
return {
apiurl,
apiurl:mm.apiurl,
form: {
id: '', //id
patientId: '00000000-0000-0000-0000-000000000000', //ID 00000-0000...

403
src/components/patientRegister/PatientRegisterItem.vue

@ -1,138 +1,321 @@
<template>
<div>
<div style="margin-left: 10px;">
<div>
<span>项目类别</span>
<el-select
v-model="value"
placeholder="请选择"
style="margin-left: 20px"
@change="getAsbItemByItemType"
clearable
>
<el-option
v-for="item in itemType"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</div>
<div class="mainareaBox">
<el-table
:header-cell-style="{ background: '#eef1f6' }"
:data="asbItem" height="350"
@selection-change="handleSelectionChange"
>
<el-table-column type="selection"></el-table-column>
<el-table-column label="未选组合项目" prop="displayName"></el-table-column>
</el-table>
</div>
<div class="mainbutton">
<div style="margin-left: 10px;">
<el-button type="primary" @click="removedata"
>添加 <i class="el-icon-bottom"></i>
</el-button>
</div>
<div style="margin-left: 10px;">
<el-button
type="primary"
@click="addselecteditems"
>移除 <i class="el-icon-top"></i>
</el-button>
</div>
<div style="margin-left: 10px;">
<el-button type="success"
@click="Onsubmit"
>保存 <i class="el-icon-check"></i>
</el-button>
</div>
</div>
<div class="mainareaBox">
<el-table
:header-cell-style="{ background: '#eef1f6' }"
:data="patientRegisterAbs" height="350"
@selection-change="selecteditems"
>
<!-- temporaryselection personnelUnit.nogroupselected-->
<el-table-column type="selection"></el-table-column>
<el-table-column label="已选组合项目" width="110" prop="asbitemName"/>
<el-table-column label="标准价格" prop="standardPrice"/>
<el-table-column label="折扣" prop="amount"/>
<el-table-column label="实收价格" prop="chargePrice"/>
<el-table-column label="支付方式" prop="payTypeFlag"/>
<el-table-column label="是否收费" prop="isCharge"/>
</el-table>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayFilter, arrayReduce } from '../../utlis/proFunc'
export default {
props:['patientRegisterForm'],
data() {
return {
data:{
contactPerson:[]
},
form: {
displayName: "",
englishShortName: "",
itemTypeId: "",
price: "",
priceItemId: "",
unitId: "",
defaultResult: "",
referenceRangeTypeFlag: "",
isProduceSummary: "",
isNameIntoSummary: "",
isDiagnosisFunction: "",
diagnosisFunction: "",
isCalculationItem: "",
calculationFunction: "",
isContinueProcess: "",
resultTemplateTypeFlag: "",
inputCheck: "",
isActive: "",
},
dialogContactPerson: false, //
dialogContactMethod: false, //
return {
itemType: [], //
asbItemAll: [], //
asbItem: [], //
asbItemChoosed: [], //
formContactPerson: {
}, //form
formContactMethod: {
}, //form
rules: {
displayName: [
{ required: true, message: "请输入名称", trigger: "blur" },
],
englishShortName: [
{ required: true, message: "请输入英文缩写", trigger: "blur" },
],
itemTypeId: [
{ required: true, message: "请输入项目类别", trigger: "blur" },
],
price: [{ required: true, message: "请输入价格", trigger: "blur" }],
priceItemId: [
{ required: true, message: "请输入价表项目编码", trigger: "blur" },
],
unitId: [{ required: true, message: "请输入单位", trigger: "blur" }],
defaultResult: [
{ required: true, message: "请输入默认结果", trigger: "blur" },
],
referenceRangeTypeFlag: [
{ required: true, message: "请输入参考范围类别", trigger: "blur" },
],
isProduceSummary: [
{ required: true, message: "请选择是生成小结", trigger: "blur" },
],
isNameIntoSummary: [
{ required: true, message: "请输择称进入小结", trigger: "blur" },
],
isDiagnosisFunction: [
{ required: true, message: "请选择启用诊断函数", trigger: "blur" },
],
diagnosisFunction: [
{ required: true, message: "请输入诊断函数", trigger: "blur" },
],
isCalculationItem: [
{ required: true, message: "请选择计算项目", trigger: "blur" },
],
calculationFunction: [
{ required: true, message: "请输入计算函数", trigger: "blur" },
],
isContinueProcess: [
{ required: true, message: "请选择继续处理", trigger: "blur" },
],
resultTemplateTypeFlag: [
{
required: true,
message: "请输入结果模板类别标志",
trigger: "blur",
},
],
inputCheck: [
{ required: true, message: "请选择结果校验公式", trigger: "blur" },
],
isActive: [{ required: true, message: "请选择启用", trigger: "blur" }],
},
isshow: false,
patientRegisterAbs:[], //
patientRegisterAbsChoosed:[], //
patientRegisterAbsRd:{
}, //
};
},
created() {
computed: {
...mapState(['dict', 'patientRegister','personnelUnit']),
},
//
mounted() {
created() {
this.getItemType();
this.getAbsItemAll();
},
mounted(){
},
methods: {
//
Onsubmit() {
if (!this.personnelUnit.customerOrgGroupId) {
alert("请先选择单位分组");
return;
} else {
postapi("/api/app/customer-org-group-detail/many", this.addrulst).then(
(res) => {
this.$message.success("操作成功");
console.log(this.addrulst);
}
);
}
},
//
addselecteditems() {
//personnelUnit.nogroupselected
if (this.rightselctedata.length == 0) {
this.$message.warning("已选数据为空无法移动");
} else {
let count = this.rightselctedata.length - 1;
for (var i = count; i >= 0; i--) {
// this.personnelUnit.nogroupselected.splice(i, 1);
if (
// !this.rightselctedata.includes(this.rightselctedata[i].displayName)
[...new Set(this.rightselctedata)]
) {
this.asbItem.push(this.rightselctedata[i]);
this.personnelUnit.nogroupselected.splice(i, 1);
}
// this.asbItem.push(this.rightselctedata[i]);
}
// this.
this.rightselctedata.forEach((item) => {
this.addrulst.push({
asbitemId: item.id,
price: item.price,
customerOrgGroupId: this.personnelUnit.customerOrgGroupId,
});
});
}
},
//
selecteditems(val) {
this.rightselctedata = val;
// this.personnelUnit.nogroupselected = val;
console.log(this.rightselctedata);
},
//
removedata() {
if (this.asbItemChoosed.length == 0) {
this.$message.warning("未选数据为空无法移动");
} else {
this.saveornot = false;
let count = this.asbItemChoosed.length - 1;
for (var i = count; i >= 0; i--) {
// this.asbItem.splice(i, 1);
// this.personnelUnit.nogroupselected.push(this.asbItemChoosed[i]);
if ([...new Set(this.asbItemChoosed)]) {
this.asbItem.splice(i, 1);
this.personnelUnit.nogroupselected.push(this.asbItemChoosed[i]);
}
}
this.asbItemChoosed.forEach((item) => {
this.addrulst.push({
asbitemId: item.id,
price: item.price,
customerOrgGroupId: this.personnelUnit.customerOrgGroupId,
});
});
}
},
//
handleSelectionChange(val) {
// this.selecteddata = val;
this.asbItemChoosed = val;
console.log(this.asbItemChoosed);
},
//
getAbsItemAll() {
getapi("/api/app/asbitem/in-filter?Filter").then((res) => {
this.asbItemAll = res.data.items;
});
},
//
getAsbItemByItemType(v) {
if(v){
this.asbItem = [...this.asbItemAll]
}else{
this.asbItem = arrayFilter(this.asbItemAll,'itemTypeId',v)
}
//
arrayReduce(this.asbItem,[...this.patientRegisterAbs],'id=asbitemId')
},
//
getItemType() {
getapi("/api/app/item-type/by-code-all").then((res) => {
this.itemType = res.data;
});
},
//
addContactPerson() {
this.$message.success("新增 addContactPerson");
//
listeninglist() {
getapi(
`/api/app/customer-org-group/${this.personnelUnit.customerOrgGroupId}`
).then((res) => {
this.personnelUnit.form = res.data;
console.log(res);
});
},
editContactPerson() {
this.$message.success("编辑 editContactPerson");
//
getCustomerOrgGroupAsb(){
console.log('getCustomerOrgGroupAsb');
if(!this.patientRegisterForm.customerOrgGroupId || this.patientRegisterForm.customerOrgGroupId == this.dict.personOrgId ){
return
}
getapi(`/api/app/customer-org-group-detail/customer-org-group-detail-in-asbitem?CustomerOrgGroupId=${this.patientRegisterForm.customerOrgGroupId}`)
.then((res) => {
console.log('getCustomerOrgGroupAsb',res);
if(res.code == 1){
this.patientRegister.customerOrgGroupAsb = res.data
}
})
},
delContactPerson() {
this.$message.success("删除 delContactPerson");
//
getMedicalPackageAsb(){
if(!this.patientRegisterForm.medicalPackageId || this.patientRegisterForm.medicalPackageId == this.dict.personOrgId ){
return
}
getapi(`/api/app/medical-package-detail/medical-package-in-asbitem?MedicalPackageId=${this.patientRegisterForm.medicalPackageId}`)
.then((res) => {
console.log('medicalPackageAsb',res);
if(res.code == 1){
this.patientRegister.medicalPackageAsb = res.data
}
})
},
rowickContactPerson(){
this.$message.success("rowickContactPerson");
// api/app/register-asbitem/in-patient-register-id/3a0c3094-6f37-f5cc-9811-2bc249c081ce
getPatientRegisterAbs(patientRegisterId){
getapi(`/api/app/register-asbitem/in-patient-register-id/${patientRegisterId}`)
.then((res) => {
console.log('patientRegisterAbs',res);
if(res.code == 1){
this.patientRegisterAbs = res.data
}
})
},
//
registerAsbitem(body){
postapi(`api/app/register-asbitem?CustomerOrgId=${this.patientRegisterForm.customerOrgId}`,body)
.then((res) => {
console.log('medicalPackageAsb',res);
if(res.code == 1){
//
}
})
}
},
//
watch: {
//
'patientRegister.addTimes'(newVal, oldVal) {
//console.log('patientRegister.addTimes newVal',newVal,' oldVal',oldVal)
if (newVal != oldVal) {
this.patientRegisterAbs = []
}
},
//
'patientRegister.patientRegisterRd.id'(newVal, oldVal) {
console.log('patientRegister.patientRegisterRd.id newVal:',newVal,' oldVal:',oldVal)
if (newVal != oldVal) {
this.getPatientRegisterAbs(newVal);
}
},
},
};
</script>
<style scoped>
.mainareaBox {
border: 1px solid #000;
height: 350px;
margin-top: 10px;
}
.mainbutton {
display: flex;
margin-left: 20px;
padding: 5px 10px;
margin-top: 10px;
}
</style>

5
src/components/patientRegister/PatientRegisterList.vue

@ -211,8 +211,9 @@ export default {
rowick(row) {
this.patientRegister.photo = '' //
this.patientRegister.patientRegisterId = row.id
this.patientRegister.patientRegisterRd = row
//console.log('row',row)
this.patientRegister.patientRegisterRd = row
this.patientRegister.query.customerOrgParentId = row.customerOrgParentId
console.log('row',row)
},
//

52
src/components/patientRegister/customerOrgTreeAll.vue

@ -13,7 +13,7 @@ export default {
},
//<el-tree :data="$store.state.customerOrg.customerOrgTree" :props="$store.state.customerOrg.treeprops" @node-click="treeclick"></el-tree>
computed:{
...mapState(['customerOrg','patientRegister']),
...mapState(['dict','customerOrg','patientRegister']),
},
//
created() {},
@ -32,20 +32,60 @@ export default {
(res) => {
//customerOrgTree = res.data;
console.log('res.data',res.data)
this.patientRegister.customerOrgTreeAll =res.data
this.patientRegister.customerOrgTreeAll = res.data
//tcdate(this.patientRegister.customerOrgTreeAll)
}
);
);
},
//ID api/app/customer-org/parent/[CustomerOrgld
getCustomerOrgParentld(customerOrgld){
if(customerOrgld == this.dict.personOrgId){
this.patientRegister.query.CustomerOrgParentld = this.dict.personOrgId
return
}
getapi(`/api/app/customer-org/parent/${customerOrgld}`).then(
(res) => {
console.log('res.data',res.data)
if(res.code == 1){
this.patientRegister.query.CustomerOrgParentld = res.data
}
}
)
},
// /api/app/customer-org-group/in-customer-org-id/3a0c0444-d7a0-871f-4074-19faf1655caf
getCustomerOrgGroup(customerOrgld){
getapi(`/api/app/customer-org-group/in-customer-org-id/${customerOrgld}`).then(
(res) => {
console.log('res.data',res.data)
if(res.code == 1){
this.patientRegister.customerOrgGroup = res.data
}
}
)
},
//
treeclick(data) {
this.patientRegister.query.times++ //
this.patientRegister.query.customerOrgId = data.id
this.patientRegister.query.customerOrgId = data.id
this.getCustomerOrgParentld(data.id)
this.patientRegister.query.times++ //
},
},
//
watch: {
//
'patientRegister.query.CustomerOrgParentld'(newVal, oldVal) {
console.log('patientRegister.query.CustomerOrgParentld newVal:',newVal,' oldVal:',oldVal)
if (newVal != oldVal && newVal !== this.dict.personOrgId) {
this.getCustomerOrgGroup(newVal)
}
},
},
};
</script>
<style>

25
src/store/index.js

@ -75,13 +75,19 @@ export default new Vuex.Store({
mobileTelephone:'', //手机号
nationId:null, //民族编号
postalCode:'', //邮编
}, //体检人员记录(初始值)一般创建用
query: {
times: 0, //触发查询次数
customerOrgId: '', //体检单位ID
creatorId:null,
creationTime:'',
lastModificationTime:'',
lastModifierId:null,
}, //体检人员记录(初始值)一般创建用
customerOrgGroupAsb:[], //选中分组所包含的组合项目
medicalPackageAsb:[], //选中套餐所包含的组合项目
query:{
times:0, //触发查询次数
customerOrgId:'', //体检单位ID
CustomerOrgParentld:'', //单位父级ID
},//查询条件
customerOrgGroup: [], //分组(针对单位)
customerOrgGroup:[], //分组(针对单位)
},
//公共字典数据 add by pengjun
@ -98,9 +104,10 @@ export default new Vuex.Store({
completeFlag: [ //体检完成标志
{ id: '0', displayName: '预登记' }, { id: '1', displayName: '正式登记' }, { id: '2', displayName: '部份已检' }, { id: '3', displayName: '已总检' },
],
medicalPackage: [], //所有套餐
customerOrgGroupAll: [], //所有分组,不限单位,不限次数
customerOrg: [], //所有单位,非树结构
medicalPackage:[], //所有套餐
customerOrgGroupAll:[], //所有分组,不限单位,不限次数
customerOrg:[], //所有单位,非树结构
payMode:[], //支付方式
},

30
src/utlis/proFunc.js

@ -75,4 +75,32 @@ exports.binaryToStr=function(str) {
result.push(charValue);
}
return result.join("");
};
}
//数组过滤出符合条件的
exports.arrayFilter = function(arr,key,value) {
let result = []
for(let i = 0;i<arr.length; i++){
if(arr[i][key] == value){
result.push(arr[i])
}
}
return result
}
//数组相减 arrFront = arrFront - reduceArr ;
exports.arrayReduce = function(arrFront,reduceArr,key) {
let keys = key.split('=')
let keyF = keys[0]
let keyR = keys.length > 1 ? keys[1]:keys[0]
for(let i = arrFront.length - 1;i < 0;i--){
for(let j = 0; j<reduceArr.length;j++){
if(arrFront[i][keyF] == reduceArr[j][keyR]){
arrFront.splice(i, 1)
reduceArr.splice(j,1)
break;
}
}
}
}

7
src/views/customerOrg/patientRegister.vue

@ -143,6 +143,13 @@ export default {
}
);
//
getapi("/api/app/pay-mode").then(
(res) => {
this.dict.payMode = res.data;
}
);
console.log('dict',this.dict)
}

Loading…
Cancel
Save