Browse Source

elProgress

master
pengjun 3 years ago
parent
commit
d731d3aa31
  1. 11
      src/components/customerOrg/customerOrgEdit.vue
  2. 7
      src/components/patientRegister/PatientRegisterEdit.vue
  3. 248
      src/components/patientRegister/PatientRegisterItem.vue
  4. 118
      src/components/patientRegister/PatientRegisterList.vue
  5. 43
      src/components/report/ElProgressOCX.vue
  6. 1
      src/main.js
  7. 6
      src/store/index.js

11
src/components/customerOrg/customerOrgEdit.vue

@ -443,17 +443,18 @@ export default {
//console.log('{patientRegisterIds}',{patientRegisterIds})
return deletapi(`/api/app/customer-org/${this.customerOrg.customerOrgRd.id}`);
}).then((res) => {
if(res.code != -1) {
if(res.Code != -1) {
this.$message.success("删除 操作成功");
this.getCustomerOrgTree('delete',this.customerOrg.customerOrgRd.id);
this.setData({ key: "customerOrg.customerOrgRd", value: { id: "" } });
this.$refs[formName].resetFields();
}
}).catch((err) => {
this.$message({
type: "info",
message: "已取消删除",
});
if(err == 'cancel'){
this.$message.info("已取消删除");
}else{
this.$message.error("操作失败,原因:" + err);
}
});
},
},

7
src/components/patientRegister/PatientRegisterEdit.vue

@ -44,12 +44,12 @@
<el-row>
<el-col :span="5">
<el-form-item label="姓名" prop="patientName">
<el-input v-model="form.patientName" @blur="query(form.patientName)"></el-input>
<el-input v-model="form.patientName" @blur="Query(form.patientName)"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="身份证号" prop="idNo">
<el-input v-model="form.idNo" @change="changeIdNo" @blur="query(form.idNo)"></el-input>
<el-input v-model="form.idNo" @change="changeIdNo" @blur="Query(form.idNo)"></el-input>
</el-form-item>
</el-col>
<el-col :span="5">
@ -923,7 +923,7 @@ export default {
},
//
query(param) {
Query(param) {
//
if (this.form.id || !param) return;
@ -1133,6 +1133,7 @@ export default {
this.$message.info("该信息尚未保存,不可执行此操作!");
return;
}
this.patientRegister.photo = '/pic/Photo.jpg'
this.patientRegister.patientRegisterId = '';
this.form.id = '';
this.form.patientId = '00000000-0000-0000-0000-000000000000';

248
src/components/patientRegister/PatientRegisterItem.vue

@ -1,6 +1,6 @@
<template>
<div style="display: flex; margin-left: 10px; margin-top: 10px;">
<div style="width:230px;">
<div style="width:220px;">
<div>
<span>项目类别</span>
<el-cascader :options="dict.itemTypeTree" v-model="itemTypeIds" style="margin-left: 3px;width:160px;"
@ -10,10 +10,13 @@
</div>
<div class="mainareaBox">
<el-table :data="dict.asbItem"
:height="(window.pageHeight > 720 ? (window.pageHeight - 460) : 260)" @row-dblclick="dbClickChoosedAsb"
@selection-change="handleSelectionChange" size="small">
<el-table-column type="selection" align="center" />
<el-table-column prop="displayName" label="未选组合项目" width="120" />
:height="(window.pageHeight > 720 ? (window.pageHeight - 460) : 260)" @row-dblclick="dbClickChoosedAsb" highlight-current-row
@selection-change="handleSelectionChange" size="small" :row-class-name="handleRowClassName"
@row-click="chooseAsbItem">
<!--
<el-table-column type="selection" align="center" width="40" />
-->
<el-table-column prop="displayName" label="未选组合项目" />
<!--
<el-table-column prop="price" label="标准价格" width="70">
<template slot-scope="scope">
@ -32,11 +35,19 @@
<div style="width:100px;margin-top: 70px;">
<div class="btnList">
<el-button type="primary" @click="addAbs(asbItemChoosed)" style="width:90px;">添加 <i class="el-icon-right"></i>
<el-button type="primary" @click="addAbs(asbItemChoosed,'choosed')" style="width:90px;">添加 <i class="el-icon-arrow-right"></i>
</el-button>
</div>
<div class="btnList">
<el-button type="primary" @click="delAbs(patientRegisterAbsChoosed)" style="width:90px;">移除 <i class="el-icon-back"></i>
<el-button type="success" @click="addAbs(asbItemChoosed,'all')" style="width:90px;">全添加 <i class="el-icon-d-arrow-right"></i>
</el-button>
</div>
<div class="btnList">
<el-button type="warning" @click="delAbs(patientRegisterAbsChoosed,'choosed')" style="width:90px;"><i class="el-icon-arrow-left"> 移除</i>
</el-button>
</div>
<div class="btnList">
<el-button type="danger" @click="delAbs(patientRegisterAbsChoosed,'all')" style="width:90px;"><i class="el-icon-d-arrow-left"> 全移除</i>
</el-button>
</div>
<!-- 不显示保存当已选组合有修改时失去焦点自动保存
@ -72,11 +83,14 @@
</div>
</div>
<div class="mainareaBox">
<el-table :data="patientRegister.patientRegisterAbs"
<el-table :data="patientRegister.patientRegisterAbs" highlight-current-row
:height="(window.pageHeight > 720 ? (window.pageHeight - 460) : 260)" width="100%" :summary-method="getSummaries"
show-summary :row-class-name="tableRowClassName" @row-dblclick="removeAbs" @selection-change="selecteditems" size="small">
show-summary :row-class-name="tableRowClassName" @row-dblclick="removeAbs" @selection-change="selecteditems" size="small"
@row-click="removeAsbItem">
<!-- temporaryselection personnelUnit.nogroupselected-->
<!-- 取消勾选换成选中
<el-table-column type="selection" align="center"/>
-->
<el-table-column label="已选组合项目" width="120" prop="asbitemName" />
<el-table-column label="标准价格" prop="standardPrice" width="70" align="center" />
<el-table-column label="折扣" prop="discount" width="60">
@ -135,7 +149,7 @@
import moment from 'moment';
import { mapState, mapActions } from "vuex";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { arrayFilter, arrayReduce, arrayExistObj, dddw } from "../../utlis/proFunc";
import { arrayFilter, arrayReduce, arrayExistObj, dddw, deepCopy} from "../../utlis/proFunc";
export default {
props: ["patientRegisterForm","payTypeFlag"],
data() {
@ -143,24 +157,26 @@ export default {
itemType: [], //
itemTypeIds: '', //ID
asbItemChoosed: [], //
startPoint:-1,
//patientRegisterAbs:[], // vuex
patientRegisterAbsChoosed: [], //
PstartPoint:-1,
//patientRegisterAbsDel: [], //
patientRegisterAbsRd: {
id: null, //
asbitemId: null, // string($uuid)
asbitemName: '', //
patientRegisterId: null, //string($uuid)
standardPrice: 0, //number($double)
chargePrice: 0, // number($double)
payTypeFlag: "0", // string , 021
isCharge: "N", // string
//lisRequestId: null, // string($uuid)LISID
amount: 1, // integer($int32)
groupPackageId: null, // string($uuid) ID
}, //
// patientRegisterAbsRd: {
// id: null, //
// asbitemId: null, // string($uuid)
// asbitemName: '', //
// patientRegisterId: null, //string($uuid)
// standardPrice: 0, //number($double)
// chargePrice: 0, // number($double)
// payTypeFlag: "0", // string , 021
// isCharge: "N", // string
// //lisRequestId: null, // string($uuid)LISID
// amount: 1, // integer($int32)
// groupPackageId: null, // string($uuid) ID
// }, //
asbItemId: '',
discount: 100,
@ -194,13 +210,134 @@ export default {
tableRowClassName({row, rowIndex}){
//console.log(row)
if (row.groupPackageId) {
//console.log('row.groupPackageId',row.groupPackageId)
return 'purple-row'; //
}else{
if (row.choosed) {
return 'current-row';
} else {
if (row.groupPackageId) {
//console.log('row.groupPackageId',row.groupPackageId)
return 'purple-row'; //
}else{
return '';
}
}
},
handleRowClassName({ row, rowIndex }) {
// highLightBg 'selected'
//console.log(rowIndex, row)
//return row.highLightBg == 'selected' ? 'high-light-bg' : '';
if (row.choosed) {
return 'current-row';
} else {
return '';
}
}
},
//
chooseAsbItem(row){
this.dict.asbItem.forEach((e,index) => {
e.index = index;
return e
});
// shift
if (this.window.shift) {
//
this.dict.asbItem.forEach(e => {
e.choosed = false;
return e
});
if (this.startPoint == - 1) {
this.dict.asbItem[row.index].choosed = true;
this.startPoint = row.index;
return
}
if (this.startPoint > row.index) {
for (let i = row.index; i <= this.startPoint; i++) {
this.dict.asbItem[i].choosed = true
}
} else if (this.startPoint <= row.index) {
for (let i = this.startPoint; i <= row.index; i++) {
this.dict.asbItem[i].choosed = true
}
}
return
}
// ctrl
if (this.window.ctrl) {
console.log('this.window.ctrl',this.window.ctrl,this.dict.asbItem)
this.dict.asbItem[row.index].choosed = true;
this.startPoint = row.index;
return
}
// ctrl shift
//
//console.log('')
this.dict.asbItem.forEach(e => {
e.choosed = false;
return e
});
this.dict.asbItem[row.index].choosed = true;
this.startPoint = row.index;
},
//
removeAsbItem(row){
this.patientRegister.patientRegisterAbs.forEach((e,index) => {
e.index = index;
return e
});
// shift
if (this.window.shift) {
//
this.patientRegister.patientRegisterAbs.forEach(e => {
e.choosed = false;
return e
});
if (this.PstartPoint == - 1) {
this.patientRegister.patientRegisterAbs[row.index].choosed = true;
this.PstartPoint = row.index;
return
}
if (this.PstartPoint > row.index) {
for (let i = row.index; i <= this.PstartPoint; i++) {
this.patientRegister.patientRegisterAbs[i].choosed = true
}
} else if (this.PstartPoint <= row.index) {
for (let i = this.PstartPoint; i <= row.index; i++) {
this.patientRegister.patientRegisterAbs[i].choosed = true
}
}
return
}
// ctrl
if (this.window.ctrl) {
console.log('this.window.ctrl',this.window.ctrl,this.patientRegister.patientRegisterAbs)
this.patientRegister.patientRegisterAbs[row.index].choosed = true;
this.PstartPoint = row.index;
return
}
// ctrl shift
//
//console.log('')
this.patientRegister.patientRegisterAbs.forEach(e => {
e.choosed = false;
return e
});
this.patientRegister.patientRegisterAbs[row.index].choosed = true;
this.startPoint = row.index;
},
//
// [
// {
@ -238,11 +375,11 @@ export default {
async onSubmit(msg) {
let body = [], insBody = []
if (!this.patientRegisterForm.id) {
//alert("")
//this.$message.warning("")
return
}
if (this.patientRegister.patientRegisterAbs.length < 1) {
//alert("")
//this.$message.warning("")
return
}
for (let i = 0; i < this.patientRegister.patientRegisterAbs.length; i++) {
@ -319,13 +456,28 @@ export default {
//
///api/app/register-asbitem/many/3fa85f64-5717-4562-b3fc-2c963f66afa6'
async addAbs(asbItemChoosed) {
async addAbs(asbItemChoosed,oprType) {
let body = []
let checked = true
let payTypeFlag = '0' //
let lfind = -1
// start
if(oprType && oprType == 'all'){
asbItemChoosed = deepCopy(this.dict.asbItem)
}else if(oprType && oprType == 'choosed'){
asbItemChoosed = []
this.dict.asbItem.forEach(e =>{
if(e.choosed){
asbItemChoosed.push(e)
e.choosed = false
}
})
}
// end
if (asbItemChoosed.length < 1) {
alert("请选择要添加的组合项目")
this.$message.warning("请选择要添加的组合项目")
return
}
@ -340,7 +492,7 @@ export default {
if (this.patientRegisterForm.sexId == 'U') break //
if (asbItemChoosed[i].forSexId == 'A') continue
if (asbItemChoosed[i].forSexId != this.patientRegisterForm.sexId) {
alert(`所选项目:${asbItemChoosed[i].displayName},不适合当前人员性别`)
this.$message.warning(`所选项目:${asbItemChoosed[i].displayName},不适合当前人员性别`)
checked = false
break
}
@ -404,14 +556,28 @@ export default {
//
///api/app/register-asbitem/many?RegisterAsbitemIds=3fa85f64-5717-4562-b3fc-2c963f66afa6
delAbs(absForDel) {
delAbs(absForDel,oprType) {
let body = {}
let registerAsbitemIds = []
let chargeComplete = ''
let lfind = -1
// start
if(oprType && oprType == 'all'){
absForDel = deepCopy(this.patientRegister.patientRegisterAbs)
}else if(oprType && oprType == 'choosed'){
absForDel = []
this.patientRegister.patientRegisterAbs.forEach(e =>{
if(e.choosed){
absForDel.push(e)
e.choosed = false
}
})
}
// end
if (absForDel.length < 1) {
alert("请选择要移除的组合项目")
this.$message.warning("请选择要移除的组合项目")
return
}
@ -873,18 +1039,18 @@ export default {
::v-deep .el-table th.el-table__cell {
/*text-align: center;*/
padding-left: 1px;
padding-right: 1px;
padding-left: 2px;
padding-right: 2px;
}
::v-deep .el-table td.el-table__cell {
padding-left: 1px;
padding-right: 1px;
padding-left: 2px;
padding-right: 2px;
}
::v-deep .el-table .cell {
padding-left: 1px;
padding-right: 1px;
padding-left: 2px;
padding-right: 2px;
}
::v-deep input[type="number"]::-webkit-inner-spin-button,

118
src/components/patientRegister/PatientRegisterList.vue

@ -6,19 +6,20 @@
:height="window.pageHeight < 600 ? 172 : Math.floor((window.pageHeight - 342) * 2 / 3)" highlight-current-row
@row-click="rowClick" size="small" @selection-change="handleSelectionChange" @cell-contextmenu="onCellRightClick"
ref="info" :row-class-name="handleRowClassName" >
<el-table-column type="selection" width="40">
</el-table-column>
<el-table-column prop="completeFlag" label="体检进度">
<!-- 取消勾选改为选中
<el-table-column type="selection" width="40"/>
-->
<el-table-column prop="completeFlag" label="体检进度" align="center">
<template slot-scope="scope">
<div>{{ ldddw(dict.completeFlag, "id", scope.row.completeFlag, "displayName") }}</div>
</template>
</el-table-column>
<el-table-column prop="guidePrintTimes" label="打印" width="50">
<el-table-column prop="guidePrintTimes" label="打印" width="50" align="center">
<template slot-scope="scope">
<i class="el-icon-printer" v-if="scope.row.guidePrintTimes > 0" style="font-size: 24px;color: green;"></i>
</template>
</el-table-column>
<el-table-column prop="isLock" label="锁住">
<el-table-column prop="isLock" label="锁住" width="50" align="center">
<template slot-scope="scope">
<div>{{ scope.row.isLock == "Y" ? "是" : "否" }}</div>
</template>
@ -33,17 +34,17 @@
<div>{{ scope.row.customerOrgParentName ? scope.row.customerOrgName : "" }}</div>
</template>
</el-table-column>
<el-table-column prop="patientName" label="姓名" />
<el-table-column prop="sexId" label="性别">
<el-table-column prop="patientName" label="姓名" width="80" align="center"/>
<el-table-column prop="sexId" label="性别" width="50" align="center">
<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">
<el-table-column prop="age" label="年龄" width="50" align="center"/>
<el-table-column prop="patientRegisterNo" label="条码号" width="150" align="center"/>
<el-table-column prop="patientNo" label="档案号" align="center"/>
<el-table-column prop="medicalTimes" label="体检次数" width="80" align="center"></el-table-column>
<el-table-column label="分组/套餐" width="150" align="center">
<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") }}
@ -53,15 +54,15 @@
</div>
</template>
</el-table-column>
<el-table-column prop="nationId" label="民族">
<el-table-column prop="nationId" label="民族" width="50" align="center">
<template slot-scope="scope">
<div>
{{ ldddw(dict.nation, "nationId", 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">
<el-table-column prop="idNo" label="身份证" width="150" align="center"/>
<el-table-column prop="birthDate" label="出生日期" width="80" align="center">
<template slot-scope="scope">
<div v-if="scope.row.birthDate">
{{ lmoment(scope.row.birthDate, "yyyy-MM-DD") }}
@ -69,12 +70,12 @@
</template>
</el-table-column>
<el-table-column prop="email" label="邮箱" width="180" />
<el-table-column prop="mobileTelephone" label="手机" width="100" />
<el-table-column prop="mobileTelephone" label="手机" width="100" align="center"/>
<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="婚姻状况">
<el-table-column prop="maritalStatusId" label="婚姻状况" width="80" align="center">
<template slot-scope="scope">
<div>
{{ ldddw(dict.maritalStatus, "id", scope.row.maritalStatusId, "displayName") }}
@ -98,18 +99,18 @@
<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">
<el-table-column prop="isVip" label="是否VIP" width="80" align="center">
<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">
<el-table-column prop="creatorName" label="登记人" align="center"/>
<el-table-column prop="creationTime" label="登记日期" width="90" align="center">
<template slot-scope="scope">
<div>{{ lmoment(scope.row.creationTime, "yyyy-MM-DD") }}</div>
</template>
</el-table-column>
<el-table-column prop="isUpload" label="是否上传">
<el-table-column prop="isUpload" label="是否上传" width="80" align="center">
<template slot-scope="scope">
<div>{{ scope.row.isUpload == "Y" ? "是" : "否" }}</div>
</template>
@ -163,9 +164,11 @@
<div class="listBtn">
<el-button type="" class="btnClass commonbutton" @click="openCamera" icon="el-icon-camera">拍照</el-button>
</div>
<!--
<div class="listBtn">
<el-button type="" class="btnClass commonbutton">健康档案</el-button>
</div>
-->
<div class="listBtn">
<el-button type="" class="btnClass commonbutton" @click="btnGroupBatch">调整分组</el-button>
</div>
@ -178,9 +181,11 @@
<div class="listBtn">
<el-button type="" class="btnClass commonbutton" @click="guidePrint('0001', true)">指引单预览</el-button>
</div>
<!--
<div class="listBtn">
<el-button type="" class="btnClass commonbutton" @click="rowSelected(patientRegister.prList)">选中</el-button>
</div>
-->
</div>
<!-- 体检人员登记 -->
@ -230,7 +235,7 @@
</span>
</el-dialog>
<!-- 批量调整分组 -->
<!-- 批量调整项目 -->
<el-dialog title="批量调整项目" :visible.sync="dialogAsbitem" width="600px" height="800" :append-to-body="true"
:close-on-click-modal="false">
<div>
@ -305,6 +310,12 @@
</span>
</el-dialog>
<!-- 通用进度条 -->
<el-dialog title="数据处理中……" :visible.sync="elProgress.display" width="600px" height="400"
:show-close="false" :close-on-click-modal="false" :append-to-body="true">
<ElProgressOCX />
</el-dialog>
</div>
</template>
<script>
@ -318,11 +329,15 @@ import PatientRegisterEdit from "../../components/patientRegister/PatientRegiste
import Camera from "../../components/patientRegister/Camera.vue";
import PatientRegisterAsbItem from "../../components/patientRegister/patientRegisterAsbItem.vue";
import ElProgressOCX from "../../components/report/ElProgressOCX.vue";
export default {
components: {
PatientRegisterEdit,
Camera,
PatientRegisterAsbItem,
ElProgressOCX,
},
data() {
return {
@ -374,7 +389,7 @@ export default {
this.quickAsb = this.dict.asbItemAll;
},
computed: {
...mapState(["window", "dict", "patientRegister", "customerOrg"]),
...mapState(["window", "dict","elProgress","patientRegister", "customerOrg"]),
},
methods: {
...mapActions(["getCustomerOrgGroup", "getPatientRegisterAbs"]),
@ -382,7 +397,7 @@ export default {
handleRowClassName({ row, rowIndex }) {
// highLightBg 'selected'
console.log(rowIndex, row)
//console.log(rowIndex, row)
//return row.highLightBg == 'selected' ? 'high-light-bg' : '';
if (row.choosed) {
return 'current-row';
@ -400,6 +415,10 @@ export default {
// (isPreview)
async guidePrint(ReportCode, isPreview) {
if(!this.$peisAPI) {
this.$message.info("此功能,需要在壳客户端才可运行!")
return
}
let token = localStorage.getItem('token');
let user = localStorage.getItem('user');
let toOutShell = {
@ -674,10 +693,8 @@ export default {
},
//
async query() {
async Query() {
this.patientRegister.prList = [];
let body = {}
console.log(`this.patientRegister.query`, this.patientRegister.query)
@ -748,7 +765,7 @@ export default {
//
onCellRightClick(row, column) {
this.rClickRow = { ...row }; //
this.rClickRow = { ...row }; //
this.rClickColumn = { ...column }; //
console.log(row, column.property);
},
@ -805,9 +822,16 @@ export default {
btnGroupBatch() {
let customerOrgId = this.patientRegister.query.customerOrgId;
if (!customerOrgId) {
alert("请选择单位或个人");
alert("请选择单位");
return;
}
// start
this.multipleSelection = []
this.patientRegister.prList.forEach(e => {
if(e.choosed) this.multipleSelection.push(e)
});
// end
if (this.multipleSelection.length < 1) {
this.$message.info("请勾选要操作的人员!");
return;
@ -841,7 +865,7 @@ export default {
}
this.$message.success("操作成功!");
this.dialogGroup = false;
this.query();
this.Query();
},
@ -913,9 +937,17 @@ export default {
asbBatch() {
let customerOrgId = this.patientRegister.query.customerOrgId;
if (!customerOrgId) {
alert("请选择单位或个人");
alert("请选择单位");
return;
}
// start
this.multipleSelection = []
this.patientRegister.prList.forEach(e => {
if(e.choosed) this.multipleSelection.push(e)
});
// end
this.dialogAsbitem = true;
//
this.dict.asbItemQuick = [...this.dict.asbItemAll];
@ -950,6 +982,7 @@ export default {
});
},
//
async asbitemBatchHandle() {
let msg = '', body = {};
if (this.asbitemBatch.asbitemsTemp.length == 0) {
@ -982,12 +1015,14 @@ export default {
// }
// ]
// }
let createRegisterAsbitemDtos = [...this.asbitemBatch.asbitemsTemp];
let createRegisterAsbitemDtos = deepCopy(this.asbitemBatch.asbitemsTemp);
createRegisterAsbitemDtos.forEach(e => {
delete e.asbitemName;
return e;
});
this.elProgress.display = true
this.elProgress.percentage = 0
for (let i = 0; i < this.multipleSelection.length; i++) {
createRegisterAsbitemDtos.forEach(e => {
e.patientRegisterId = this.multipleSelection[i].id;
@ -1002,7 +1037,9 @@ export default {
} catch (error) {
console.log('批量增加项目错误,原因:', error);
}
this.elProgress.percentage = Math.floor((i+1)*100/this.multipleSelection.length)
}
} else {
// {
// isDeleteGroup: 'N',
@ -1015,6 +1052,8 @@ export default {
} else {
body.isDeleteGroup = 'N';
}
this.elProgress.display = true
this.elProgress.percentage = 0
for (let i = 0; i < this.multipleSelection.length; i++) {
this.asbitemBatch.asbitemsTemp.forEach(e => {
@ -1029,12 +1068,13 @@ export default {
} catch (error) {
console.log('批量删除项目错误,原因:', error);
}
this.elProgress.percentage = Math.floor((i+1)*100/this.multipleSelection.length)
}
}
this.$message.success("操作成功!");
this.dialogAsbitem = false;
this.query();
this.Query();
},
//
@ -1082,7 +1122,10 @@ export default {
//
lisPrint(prId, ReportCode, isPreview) {
if(!this.$peisAPI) {
this.$message.info("此功能,需要在壳客户端才可运行!")
return
}
let token = localStorage.getItem('token');
let user = localStorage.getItem('user');
let toOutShell = {
@ -1141,7 +1184,10 @@ export default {
//pacs
pacsPrint(prId, ReportCode, isPreview) {
if(!this.$peisAPI) {
this.$message.info("此功能,需要在壳客户端才可运行!")
return
}
let token = localStorage.getItem('token');
let user = localStorage.getItem('user');
let toOutShell = {
@ -1205,7 +1251,7 @@ export default {
"patientRegister.query.times"(newVal, oldVal) {
if (newVal != oldVal) {
//alert('')
this.query();
this.Query();
}
},

43
src/components/report/ElProgressOCX.vue

@ -0,0 +1,43 @@
<template>
<div style="margin:60 30 100 30px; ">
<el-progress :text-inside="elProgress.textInside" :stroke-width="elProgress.strokeWidth" :percentage="elProgress.percentage" />
</div>
</template>
<script>
import { mapState } from "vuex";
export default {
data() {
return {
};
},
computed: {
...mapState(["elProgress"]),
},
created() {
},
mounted() {
},
methods: {
},
//
watch: {
"elProgress.percentage"(newVal, oldVal) {
if (newVal == 100) {
this.elProgress.display = false
}
},
},
};
</script>
<style lang="scss" scoped>
</style>

1
src/main.js

@ -108,6 +108,7 @@ onResize();
// 监听keydown:获取键盘按住事件,code返回按住的键信息
window.addEventListener('keydown', code => {
console.log('keydown',code)
if (code.key == "Shift" && code.shiftKey) {
store.commit('setData', { key: 'window.shift', value: true });// 标记按住了shift键
}

6
src/store/index.js

@ -21,6 +21,12 @@ export default new Vuex.Store({
shift:false, //是否按下 shift键
ctrl:false, //是否按下 ctrl键
},
elProgress:{ //通用进度条相关参数
display:false, //是否显示
textInside:true,
strokeWidth:30,
percentage:0
},
customerOrg: {
//体检单位设置
customerOrgTree: [], //体检单位列表

Loading…
Cancel
Save