Browse Source

doctor

master
pengjun 2 years ago
parent
commit
5a57d2625b
  1. 38
      src/components/doctorCheck/ButtonList.vue
  2. 8
      src/components/doctorCheck/CheckSumSug.vue
  3. 472
      src/components/doctorCheck/PatientRegisterList.vue
  4. 1
      src/components/doctorCheck/RegisterCheckList.vue
  5. 6
      src/components/patientRegister/Camera.vue
  6. 8
      src/components/patientRegister/PatientRegisterEdit.vue
  7. 12
      src/components/patientRegister/PatientRegisterItem.vue
  8. 9
      src/components/patientRegister/PatientRegisterList.vue
  9. 213
      src/components/patientRegister/patientRegisterAsbItem.vue
  10. 16
      src/components/patientRegister/patientRegisterQuery.vue
  11. 1
      src/store/index.js
  12. 53
      src/views/doctorCheck/doctorCheck.vue

38
src/components/doctorCheck/ButtonList.vue

@ -1,7 +1,7 @@
<template>
<div>
<div class="listBtn">
<el-button type="primary" @click="prList">人员列表</el-button>
<el-button type="primary" @click="doctorCheck.doctorCheckDialogVisible=true">人员列表</el-button>
</div>
<div class="listBtn">
<el-button type="primary" @click="save">保存结果</el-button>
@ -39,6 +39,15 @@
<div class="listBtn">
<el-button type="primary" @click="addSummary">新增小结</el-button>
</div>
<!-- 人员档案列表 -->
<el-dialog
title="人员档案列表"
:visible.sync="doctorCheck.doctorCheckDialogVisible"
width="1000px"
:append-to-body="true"
>
<PatientRegisterList/>
</el-dialog>
</div>
</template>
<script>
@ -46,26 +55,15 @@ import { mapState, mapActions } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayExistObj } from "../../utlis/proFunc";
import PatientRegisterBase from "../../components/doctorCheck/PatientRegisterBase.vue";
import ButtonList from "../../components/doctorCheck/ButtonList.vue";
import RegisterCheckList from "../../components/doctorCheck/RegisterCheckList.vue";
import CheckItemList from "../../components/doctorCheck/CheckItemList.vue";
import CheckSumSug from "../../components/doctorCheck/CheckSumSug.vue";
import RegisterCheckEdit from "../../components/doctorCheck/RegisterCheckEdit.vue";
import PatientRegisterList from "./PatientRegisterList.vue";
export default {
components: {
RegisterCheckList,
PatientRegisterBase,
ButtonList,
CheckItemList,
CheckSumSug,
RegisterCheckEdit
components: {
PatientRegisterList,
},
data() {
return {
tabChoosed: "1",
};
},
@ -73,7 +71,7 @@ export default {
//
mounted() {
this.dictInit();
},
computed: {
@ -82,11 +80,7 @@ export default {
methods: {
...mapActions(["getCustomerOrgGroup"]),
prList(){
},
//
optGrant(optType){
let ret = ''

8
src/components/doctorCheck/CheckSumSug.vue

@ -4,7 +4,9 @@
<el-table :data="doctorCheck.checkSummaryList" width="100%" height="350" border @row-click="rowClick">
<el-table-column prop="summary" label="小结" width="380" >
<template slot-scope="scope">
<el-input type="textarea" v-model="doctorCheck.checkSummaryList[scope.$index].summary" placeholder="请输入小结"></el-input>
<el-input type="textarea" v-model="doctorCheck.checkSummaryList[scope.$index].summary"
:disabled="doctorCheck.RegisterCheckEdit.completeFlag=='1' || doctorCheck.RegisterCheckEdit.completeFlag=='2'" placeholder="请输入小结">
</el-input>
</template>
</el-table-column>
<el-table-column label="排序" width="80">
@ -20,7 +22,9 @@
<el-table :data="doctorCheck.checkSuggestionList" width="100%" height="350" border @row-click="rowClick">
<el-table-column prop="suggestion" label="建议" width="380" >
<template slot-scope="scope">
<el-input type="textarea" v-model="doctorCheck.checkSuggestionList[scope.$index].suggestion" placeholder="请输入建议"></el-input>
<el-input type="textarea" v-model="doctorCheck.checkSuggestionList[scope.$index].suggestion"
:disabled="doctorCheck.RegisterCheckEdit.completeFlag=='1' || doctorCheck.RegisterCheckEdit.completeFlag=='2'" placeholder="请输入建议">
</el-input>
</template>
</el-table-column>
<el-table-column label="排序" width="80">

472
src/components/doctorCheck/PatientRegisterList.vue

@ -0,0 +1,472 @@
<template>
<div>
<div style="display: flex; flex-wrap: wrap; width: 90%">
<div class="block query">
<span class="demonstration">登记日期</span>
<el-date-picker
v-model="patientRegister.query.dateRange"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions"
size="small"
style="width: 240px"
>
</el-date-picker>
</div>
<div class="query">
<span>条码号</span>
<el-input
placeholder="条码号"
v-model="patientRegister.query.patientRegisterNo"
size="small"
clearable
style="width: 150px"
/>
</div>
<div class="query">
<span>档案号</span>
<el-input
placeholder="档案号"
v-model="patientRegister.query.patientNo"
size="small"
clearable
style="width: 135px"
/>
</div>
<div class="query">
<span>姓名</span>
<el-input
placeholder="姓名"
v-model="patientRegister.query.patientName"
size="small"
clearable
style="width: 100px"
/>
</div>
<div class="query">
<span>性别</span>
<el-select
v-model="patientRegister.query.sex"
placeholder="请选择"
style="width: 80px" size="small"
>
<el-option
v-for="item in dict.forSex"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</div>
<div class="query">
<span>身份证号</span>
<el-input
placeholder="身份证号"
v-model="patientRegister.query.idCardNo"
size="small"
clearable
style="width: 180px"
/>
</div>
<div class="query">
<el-cascader
v-model="patientRegister.query.customerOrgId"
:options="patientRegister.customerOrgTreeAll"
:props="{
checkStrictly: true,
expandTrigger: 'hover',
...customerOrg.treeprops,
}"
:show-all-levels="false"
size="small"
>
</el-cascader>
<el-checkbox v-model="patientRegister.query.customerOrgFlag">单位作为查询条件</el-checkbox>
</div>
<div class="query">
<span>状态</span>
<el-select
v-model="patientRegister.query.completeFlag"
placeholder="请选择" clearable
style="width: 80px" size="small"
>
<el-option
v-for="item in dict.completeFlag"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</div>
</div>
<div style="display: flex;margin-top: 10px;">
<el-table :data="dataList" border width="100%" height="430" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowick" ref="dataList"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="40">
</el-table-column>
<el-table-column prop="completeFlag" label="体检进度">
<template slot-scope="scope">
<div>{{ ldddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="isLock" label="锁住">
<template slot-scope="scope">
<div>{{ scope.row.isLock == "Y" ? "是" : "否" }}</div>
</template>
</el-table-column>
<el-table-column prop="customerOrgParentName" label="单位" width="180">
<template slot-scope="scope">
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgParentName : scope.row.customerOrgName }}</div>
</template>
</el-table-column>
<el-table-column prop="customerOrgName" label="部门" width="180">
<template slot-scope="scope">
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}</div>
</template>
</el-table-column>
<el-table-column prop="patientName" label="姓名" />
<el-table-column prop="sexId" label="性别">
<template slot-scope="scope">
<div>{{ ldddw(dict.sex, "id", scope.row.sexId, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="age" label="年龄" />
<el-table-column prop="patientRegisterNo" label="条码号" width="150" />
<el-table-column prop="patientNo" label="档案号" />
<el-table-column prop="medicalTimes" label="体检次数"></el-table-column>
<el-table-column label="分组/套餐" width="150">
<template slot-scope="scope">
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId === dict.personOrgId">
{{ ldddw(dict.medicalPackage, "id", scope.row.medicalPackageId, "displayName") }}
</div>
<div v-if="scope.row.medicalPackageId !== dict.personOrgId && scope.row.customerOrgId !== dict.personOrgId">
{{ ldddw(dict.customerOrgGroupAll, "id", scope.row.customerOrgGroupId, "displayName") }}
</div>
</template>
</el-table-column>
<el-table-column prop="nationId" label="民族">
<template slot-scope="scope">
<div>
{{ ldddw(dict.nation, "id", scope.row.nationId, "displayName") }}
</div>
</template>
</el-table-column>
<el-table-column prop="idNo" label="身份证" width="150" />
<el-table-column prop="birthDate" label="出生日期" width="100">
<template slot-scope="scope">
<div v-if="scope.row.birthDate">
{{ lmoment(scope.row.birthDate, "yyyy-MM-DD") }}
</div>
</template>
</el-table-column>
<el-table-column prop="email" label="邮箱" width="100" />
<el-table-column prop="mobileTelephone" label="手机" width="100" />
<el-table-column prop="telephone" label="电话" width="100" />
<el-table-column prop="address" label="地址" width="300" />
<el-table-column prop="medicalCardNo" label="体检卡号" />
<el-table-column prop="jobCardNo" label="工卡号" />
<el-table-column prop="maritalStatusId" label="婚姻状况">
<template slot-scope="scope">
<div>
{{ ldddw(dict.maritalStatus, "id", scope.row.maritalStatusId, "displayName") }}
</div>
</template>
</el-table-column>
<el-table-column prop="medicalTypeId" label="体检类别">
<template slot-scope="scope">
<div v-if="scope.row.medicalTypeId !== dict.personOrgId">
{{ ldddw(dict.medicalType, "id", scope.row.medicalTypeId, "displayName") }}
</div>
</template>
</el-table-column>
<el-table-column prop="personnelTypeId" label="人员类别">
<template slot-scope="scope">
<div v-if="scope.row.personnelTypeId !== dict.personOrgId">
{{ ldddw(dict.personnelType, "id", scope.row.personnelTypeId, "displayName") }}
</div>
</template>
</el-table-column>
<el-table-column prop="jobPost" label="职务" />
<el-table-column prop="jobTitle" label="职称" />
<el-table-column prop="salesman" label="介绍人" />
<el-table-column prop="isVip" label="是否VIP">
<template slot-scope="scope">
<div>{{ scope.row.isVip == "Y" ? "是" : "否" }}</div>
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人" />
<el-table-column prop="creationTime" label="登记日期" width="100">
<template slot-scope="scope">
<div>{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}</div>
</template>
</el-table-column>
<el-table-column prop="isUpload" label="是否上传">
<template slot-scope="scope">
<div>{{ scope.row.isUpload == "Y" ? "是" : "否" }}</div>
</template>
</el-table-column>
</el-table>
<div style="margin-left: 10px">
<div class="listBtn">
<el-button type="primary" @click="edit">查询</el-button>
</div>
<div class="listBtn">
<el-button type="success" @click="add">确定</el-button>
</div>
<div class="listBtn">
<el-button type="danger" @click="doctorCheck.doctorCheckDialogVisible=true">取消</el-button>
</div>
</div>
</div>
</div>
</template>
<script>
import moment from "moment";
import { mapState} from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { dddw, objCopy, arrayReduce } from "@/utlis/proFunc";
import PatientRegisterEdit from "../../components/patientRegister/PatientRegisterEdit.vue";
import Camera from "../../components/patientRegister/Camera.vue";
export default {
components: {
PatientRegisterEdit,
Camera,
},
data() {
return {
dataList: [], //
multipleSelection: [], //
dialogVisible: false,
dialogCamera: false,
};
},
created() { },
//
mounted() { },
computed: {
...mapState(["dict", "patientRegister", "customerOrg","doctorCheck"]),
},
methods: {
handleSelectionChange(val) {
this.multipleSelection = val;
//console.log('this.multipleSelection',this.multipleSelection)
},
// /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("getCustomerOrgGroup", res.data);
if (res.code == 1) {
this.patientRegister.customerOrgGroup = res.data;
}
});
},
//
rowick(row) {
this.patientRegister.photo = ""; //
this.patientRegister.patientRegisterId = row.id;
this.patientRegister.patientRegisterRd = row;
this.patientRegister.query.customerOrgParentId = row.customerOrgParentId;
this.patientRegister.customerOrgGroupChange = 0; //0
this.patientRegister.medicalPackageChange = 0; //0
this.getCustomerOrgGroup(row.customerOrgParentId);
this.dict.asbItem = [...this.dict.asbItemAll]
this.getPatientRegisterAbs(row.id);
},
//
add() {
let customerOrgId = this.patientRegister.query.customerOrgId;
if (!customerOrgId) {
alert("请选择单位或个人");
return;
}
//console.log('customerOrgId',customerOrgId)
this.patientRegister.patientRegisterId = "";
this.patientRegister.patientRegisterRd.photo = '';
this.patientRegister.patientRegisterRdInit.id = "";
this.patientRegister.patientRegisterRdInit.customerOrgId = this.patientRegister.query.customerOrgId;
this.patientRegister.addTimes++;
this.patientRegister.patientRegisterTimes++;
this.patientRegister.patientRegisterAbs = [];
this.dialogVisible = true;
},
edit() {
if (!this.patientRegister.patientRegisterId) {
alert("请选择要操作的记录");
return;
}
this.patientRegister.patientRegisterTimes++;
this.dialogVisible = true;
},
//
openCamera() {
if (!this.patientRegister.patientRegisterId) {
alert("请选择要操作的记录");
return;
}
this.patientRegister.cameraVisble = true;
},
//
// /api/app/patient-register/many?PatientRegisterIds=3a0c2cac-f44c-f407-9504-c1fc5e80a159&PatientRegisterIds=3a0c2cb3-d10c-ed70-db6a-b835e75ce641
del() {
if (this.multipleSelection.length < 1) {
alert("请先勾选要操作的记录");
return;
}
let patientRegisterIds = [];
for (let i = 0; i < this.multipleSelection.length; i++) {
patientRegisterIds.push(this.multipleSelection[i]["id"]);
}
this.$confirm("此操作将永久删除该记录, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
//console.log('{patientRegisterIds}',{patientRegisterIds})
return postapi(`/api/app/patient-register/delete-many`, {
patientRegisterIds,
});
})
.then((res) => {
this.$message.success("删除成功");
this.patientRegister.query.times++;
this.patientRegister.patientRegisterId = "";
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
});
},
//
delBak() {
if (!this.patientRegister.patientRegisterId) {
alert("请选择要操作的记录");
return;
}
this.$confirm("此操作将永久删除该记录, 是否继续?", "提示", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
//console.log('${this.patientRegister.patientRegisterId}',this.patientRegister.patientRegisterId)
return deletapi(`/api/app/patient-register/${this.patientRegister.patientRegisterId}`);
})
.then((res) => {
this.$message.success("删除成功");
this.patientRegister.query.times++;
this.patientRegister.patientRegisterId = "";
})
.catch(() => {
this.$message({ type: "info", message: "已取消删除", });
});
},
ldddw(arrayData, key, value, display) {
return dddw(arrayData, key, value, display);
},
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
},
//
query() {
let body = {}
console.log(`this.patientRegister.query`, this.patientRegister.query)
if (this.patientRegister.query.customerOrgFlag) {
if (this.patientRegister.query.CustomerOrgParentId) {
body.customerOrgId = this.patientRegister.query.CustomerOrgParentId
} else{
if (this.patientRegister.query.customerOrgId) body.customerOrgId = this.patientRegister.query.customerOrgId
}
}
if (this.patientRegister.query.sex) body.sexId = this.patientRegister.query.sex
if (this.patientRegister.query.patientName) body.patientName = this.patientRegister.query.patientName
if (this.patientRegister.query.completeFlag) body.completeFlag = this.patientRegister.query.completeFlag
//StartDate EndDate
if (this.patientRegister.query.dateRange) {
body.startDate = moment(new Date(this.patientRegister.query.dateRange[0])).format("yyyy-MM-DD")
body.endDate = moment(new Date(this.patientRegister.query.dateRange[1])).format("yyyy-MM-DD")
}
if (this.patientRegister.query.idCardNo) body = { idNo: this.patientRegister.query.idCardNo }
if (this.patientRegister.query.patientNo) body = { patientNo: this.patientRegister.query.patientNo }
if (this.patientRegister.query.patientRegisterNo) body = { patientRegisterNo: this.patientRegister.query.patientRegisterNo }
console.log('/api/app/patientregister/getlistinfilter', body)
postapi('/api/app/patientregister/getlistinfilter', body)
.then((res) => {
this.dataList = res.data;
});
},
},
//
watch: {
//
"patientRegister.query.times"(newVal, oldVal) {
if (newVal != oldVal) {
//alert('')
this.query();
}
},
//
"patientRegister.patientRegisterRd.id"(newVal, oldVal) {
if (newVal != oldVal) {
//console.log('patientRegister.patientRegisterRd.customerOrgId',this.patientRegister.patientRegisterRd.customerOrgId)
objCopy(this.patientRegister.patientRegisterRd, this.form);
}
},
},
};
</script>
<style scoped>
.box {
display: flex;
}
.listBtn {
margin-top: 10px;
}
</style>

1
src/components/doctorCheck/RegisterCheckList.vue

@ -57,6 +57,7 @@ export default {
this.doctorCheck.RegisterCheckList = res.data;
// 1
if(res.data.length > 0) this.doctorCheck.RegisterCheckId = res.data[0].id
this.doctorCheck.RegisterCheckEdit = res.data[0]
}
})
.catch((err) => {

6
src/components/patientRegister/Camera.vue

@ -195,8 +195,10 @@ export default {
}
})
.then((res) => {
if (res.code == 1) {
this.$message.success("更新 操作成功");
if (res.code != -1) {
//console.log('',res.data)
this.patientRegister.patientRegisterRd.photo = res.data.photo
this.$message.success("操作成功");
this.closeCameraMask();
}
});

8
src/components/patientRegister/PatientRegisterEdit.vue

@ -292,7 +292,7 @@
v-model="form.remark"
type="textarea"
:rows="2"
placeholder="请输入内容"
placeholder="请输入备注"
></el-input>
</el-form-item>
</el-col>
@ -322,7 +322,7 @@
</el-form>
<el-image
class="photo"
:src="apiurl + '/' + form.photo"
:src="apiurl + '/' + patientRegister.patientRegisterRd.photo"
style="width: 150; height: 200"
>
<div slot="placeholder" class="image-slot">
@ -446,7 +446,7 @@
import moment from "moment";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import * as apiurl from "../../utlis/mm";
import mm from "../../utlis/mm";
import { objCopy, setNull, dddw } from "../../utlis/proFunc";
import Camera from "./Camera.vue";
@ -458,7 +458,7 @@ export default {
},
data() {
return {
apiurl,
apiurl:mm.apiurl,
form: {
id: "", //id
patientId: "00000000-0000-0000-0000-000000000000", //ID 00000-0000...

12
src/components/patientRegister/PatientRegisterItem.vue

@ -38,6 +38,11 @@
<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="discount">
<template slot-scope="scope">
<el-input v-model="scope.row.discount" size="small" />
</template>
</el-table-column>
<el-table-column label="实收价格" prop="chargePrice">
<template slot-scope="scope">
<el-input v-model="patientRegister.patientRegisterAbs[scope.$index].chargePrice" size="small" />
@ -556,16 +561,21 @@ export default {
//
getSummaries(param) {
const { columns, data } = param;
const sumCol = [2,4] //
const sums = [];
columns.forEach((column, index) => {
//
if (index === 1) {
sums[index] = '合计';
return;
}
if (index == 0 || index == 4 || index == 5) {
//
if (sumCol.indexOf(index) == -1) {
sums[index] = '';
return;
}
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {

9
src/components/patientRegister/PatientRegisterList.vue

@ -1,7 +1,7 @@
<template>
<div>
<div style="display: flex">
<el-table :data="dataList" border width="100%" height="480" row-key="id" size="small"
<el-table :data="dataList" border width="100%" height="430" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowick" ref="dataList"
@selection-change="handleSelectionChange">
<el-table-column type="selection" width="40">
@ -248,10 +248,9 @@ export default {
}
//console.log('customerOrgId',customerOrgId)
this.patientRegister.patientRegisterId = "";
this.patientRegister.patientRegisterRd.photo = '';
this.patientRegister.patientRegisterRdInit.id = "";
this.patientRegister.patientRegisterRdInit.customerOrgId =
this.patientRegister.query.customerOrgId;
this.patientRegister.patientRegisterRdInit.customerOrgId = this.patientRegister.query.customerOrgId;
this.patientRegister.addTimes++;
this.patientRegister.patientRegisterTimes++;
this.patientRegister.patientRegisterAbs = [];
@ -363,6 +362,8 @@ export default {
if (this.patientRegister.query.patientName) body.patientName = this.patientRegister.query.patientName
if (this.patientRegister.query.completeFlag) body.completeFlag = this.patientRegister.query.completeFlag
//StartDate EndDate
if (this.patientRegister.query.dateRange) {
body.startDate = moment(new Date(this.patientRegister.query.dateRange[0])).format("yyyy-MM-DD")

213
src/components/patientRegister/patientRegisterAsbItem.vue

@ -1,155 +1,110 @@
<template>
<div>
<div style="display: flex">
<el-table
:data="data.customerOrgRegister"
border
style="width: 90%; height: 150px"
row-key="id"
size="small"
class="el-table__body-wrapper tbody"
highlight-current-row
@row-click="rowickCustomerOrgRegister"
ref="data.customerOrgRegister"
>
<el-table-column
prop="medical_times"
label="已选组合项目"
width="130"
/>
<el-table-column prop="begin_time" label="标准价" />
<el-table-column prop="end_time" label="折扣" />
<el-table-column prop="is_complete" label="价格" />
<el-table-column label="支付方式"></el-table-column>
<el-table-column label="已缴费"></el-table-column>
<el-table-column label="检查科室"></el-table-column>
<el-table-column label="状态"></el-table-column>
<el-table-column label="锁"></el-table-column>
<el-table-column label="登记人"></el-table-column>
<el-table-column label="登记日期"></el-table-column>
<el-table :data="patientRegister.patientRegisterAbs" border height="200px" row-key="id" size="small"
class="el-table__body-wrapper tbody" highlight-current-row @row-click="rowickCustomerOrgRegister"
:summary-method="getSummaries" show-summary
ref="patientRegister.patientRegisterAbs">
<el-table-column type="index" label="序号" width="50" />
<el-table-column prop="asbitemName" label="已选组合项目" width="120" />
<el-table-column prop="standardPrice" label="标准价" />
<el-table-column prop="discount" label="折扣" />
<el-table-column prop="chargePrice" label="价格" />
<el-table-column prop="payTypeFlag" label="支付方式">
<template slot-scope="scope">
<div>{{ ldddw(dict.payType, "id", scope.row.payTypeFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="isCharge" label="收费">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isCharge == 'Y'" disabled />
</template>
</el-table-column>
<el-table-column prop="checkCompleteFlag" label="状态">
<template slot-scope="scope">
<div>{{ ldddw(dict.checkCompleteFlag, "id", scope.row.checkCompleteFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="isLock" label="锁">
<template slot-scope="scope">
<el-checkbox :value="scope.row.isLock == 'Y'" disabled />
</template>
</el-table-column>
<el-table-column prop="creatorName" label="登记人"></el-table-column>
<el-table-column prop="creationTime" label="登记日期">
<template slot-scope="scope">
<div>{{ lmoment(scope.row.creationTime,'yyyy-MM-DD') }}</div>
</template>
</el-table-column>
</el-table>
</div>
</div>
</template>
<script>
import moment from 'moment';
import { mapState } from 'vuex';
import { dddw } from '../../utlis/proFunc'
export default {
components: {},
data() {
return {
data: {
customerOrgRegister: [], //
},
form: {
displayName: "",
englishShortName: "",
itemTypeId: "",
price: "",
priceItemId: "",
unitId: "",
defaultResult: "",
referenceRangeTypeFlag: "",
isProduceSummary: "",
isNameIntoSummary: "",
isDiagnosisFunction: "",
diagnosisFunction: "",
isCalculationItem: "",
calculationFunction: "",
isContinueProcess: "",
resultTemplateTypeFlag: "",
inputCheck: "",
isActive: "",
},
dialogCustomerOrgRegister: false, //
dialogContactPerson: false, //
dialogContactMethod: false, //
formCustomerOrgRegister: {}, // form
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,
};
},
created() {},
created() { },
//
mounted() {},
mounted() { },
computed: {
...mapState(['dict', 'patientRegister'])
},
methods: {
//
rowickCustomerOrgRegister() {
this.$message.success("rowickCustomerOrgRegister");
ldddw(arrayData, key, value, display) {
return dddw(arrayData, key, value, display);
},
//
addTimes() {
this.$message.success("增加次数 addTimes");
},
editCustomerOrgRegister() {
this.$message.success("体检完成 editCustomerOrgRegister");
lmoment(date, forMat) {
return moment(new Date(date)).format(forMat);
},
canselCustomerOrgRegister() {
this.$message.success("取消完成 canselCustomerOrgRegister");
//
getSummaries(param) {
const { columns, data } = param;
const sumCol = [2,4] //
const sums = [];
columns.forEach((column, index) => {
//
if (index === 1) {
sums[index] = '合计';
return;
}
//
if (sumCol.indexOf(index) == -1) {
sums[index] = '';
return;
}
const values = data.map(item => Number(item[column.property]));
if (!values.every(value => isNaN(value))) {
sums[index] = values.reduce((prev, curr) => {
const value = Number(curr);
if (!isNaN(value)) {
return prev + curr;
} else {
return prev;
}
}, 0);
sums[index] += ' 元';
} else {
sums[index] = 'N/A';
}
});
return sums;
},
},
};

16
src/components/patientRegister/patientRegisterQuery.vue

@ -88,6 +88,22 @@
</el-cascader>
<el-checkbox v-model="patientRegister.query.customerOrgFlag">单位作为查询条件</el-checkbox>
</div>
<div class="query">
<span>状态</span>
<el-select
v-model="patientRegister.query.completeFlag"
placeholder="请选择" clearable
style="width: 80px" size="small"
>
<el-option
v-for="item in dict.completeFlag"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</div>
</div>
<!-- 按钮区域 -->
<div style="margin-left: 10px; margin-top: 5px">

1
src/store/index.js

@ -118,6 +118,7 @@ export default new Vuex.Store({
auditorUserId:null,
auditTime:'',
}, //组合项目详情
doctorCheckDialogVisible:false, //人员列表
RegisterCheckList:[], //人员体检 组合项目列表
RegisterCheck:{}, //单组合项目记录
RegisterCheckId:'', //

53
src/views/doctorCheck/doctorCheck.vue

@ -31,7 +31,7 @@
</div>
</template>
<script>
import { mapState, mapActions } from "vuex";
import { mapState } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { tcdate } from "../../utlis/proFunc";
@ -54,7 +54,7 @@ export default {
},
data() {
return {
tabChoosed: "1",
};
},
@ -63,23 +63,30 @@ export default {
//
mounted() {
this.dictInit();
},
},
computed: {
...mapState(["dict", "patientRegister", "customerOrg"]),
},
methods: {
...mapActions(["getCustomerOrgGroup"]),
methods: {
//
dictInit() {
//
//
getapi("/api/app/sex").then((res) => {
if (res.code == 1) {
this.dict.sex = res.data;
}
});
//
getapi("/api/app/for-sex").then((res) => {
if (res.code == 1) {
this.dict.forSex = res.data;
}
});
//
getapi("/api/app/organization-units/organization-unit-by-is-peis").then(
(res) => {
@ -167,30 +174,40 @@ export default {
}
});
//
getapi("/api/app/asbitem/in-filter?Filter").then((res) => {
if (res.code == 1) {
this.dict.asbItemAll = res.data.items;
}
});
//
getapi("/api/app/customer-org/by-code-all").then((res) => {
//customerOrgTree = res.data;
console.log("res.data", res.data);
this.patientRegister.customerOrgTreeAll = res.data;
tcdate(this.patientRegister.customerOrgTreeAll)
});
console.log("dict", this.dict);
},
},
//()
watch: {
//1
"patientRegister.query.CustomerOrgParentId"(newVal, oldVal) {
console.log(
"watch patientRegister.query.CustomerOrgParentId newVal:",
newVal,
" oldVal:",
oldVal
);
if (newVal != oldVal && newVal !== this.dict.personOrgId) {
this.getCustomerOrgGroup(newVal);
}
},
// //1
// "patientRegister.query.CustomerOrgParentId"(newVal, oldVal) {
// console.log(
// "watch patientRegister.query.CustomerOrgParentId newVal",
// newVal,
// " oldVal",
// oldVal
// );
// if (newVal != oldVal && newVal !== this.dict.personOrgId) {
// this.getCustomerOrgGroup(newVal);
// }
// },
},
};
</script>

Loading…
Cancel
Save