Browse Source

导入报表

master
mch 2 years ago
parent
commit
518aca8053
  1. 95
      src/store/index.js
  2. 16
      src/views/basic-dictionary/ResultStatus.vue
  3. 33
      src/views/doctorCheck/personnelBatch.vue

95
src/store/index.js

@ -7,15 +7,18 @@ Vue.use(Vuex);
export default new Vuex.Store({
state: {
changepassword:'',//用户密码
changepassword: '',//用户密码
set: "qqqq",
router:{
path:'',
importexcel: {
},
router: {
path: '',
},
window: {
pageHeight: 960, //页面高度
pageWidth: 1920, //页面宽度
},
window:{
pageHeight:960, //页面高度
pageWidth:1920, //页面宽度
},
customerOrg: {
//体检单位设置
customerOrgTree: [], //体检单位列表
@ -25,14 +28,14 @@ export default new Vuex.Store({
children: "treeChildren",
}, //树形组件的数据结构
customerOrgId: "", //当前单位ID(可根据此值是否为空,判断是新增还是编辑)
customerOrgRd: { id: "", isLock: "N", isActive: "Y",}, //单个体检单位记录值
customerOrgRd: { id: "", isLock: "N", isActive: "Y", }, //单个体检单位记录值
customerOrgRegisterList: [], //单位体检次数登记列表
contactPersonList: [], //联系人列表
contactMethodList: [], //联系方式列表
orgEditStyle:'', //编辑表单样式
orgDetailStyle:'', //体检次数样式
orgDetailHeight:300, //体检次数LIST表格高度
personStyle:'', //联系人样式
orgEditStyle: '', //编辑表单样式
orgDetailStyle: '', //体检次数样式
orgDetailHeight: 300, //体检次数LIST表格高度
personStyle: '', //联系人样式
},
//体检单位分组
personnelUnit: {
@ -50,8 +53,8 @@ export default new Vuex.Store({
patientRegisterRd: { id: "" }, //体检人员记录
patientRegisterTimes: 0, //体检人员登记窗口显示次数(弃用)
addTimes: 0, //用于触发新增时初始化赋值
saveTimes:0, //用于体检登记时,触发分组调整保存
photo:"", //单独抽出,拍照时会更新
saveTimes: 0, //用于体检登记时,触发分组调整保存
photo: "", //单独抽出,拍照时会更新
cameraVisble: false, //拍照控件显示
patientRegisterRdInit: {
id: "", //id
@ -108,9 +111,9 @@ export default new Vuex.Store({
}, //查询条件
customerOrgGroup: [], //分组(针对单位)
patientRegisterAbs: [], //人员已选组合项目
prListHeight:312, //人员列表高度
prAsbItemHeight:156, //组合项目高度
prList:[], //体检登记记录
prListHeight: 312, //人员列表高度
prAsbItemHeight: 156, //组合项目高度
prList: [], //体检登记记录
},
//体检医生诊台
@ -131,22 +134,22 @@ export default new Vuex.Store({
auditorUserId: null,
auditTime: '',
}, //组合项目详情
doctorCheckDialogVisible:false,
RegisterCheckList:[], //人员体检 组合项目列表
RegisterCheck:{}, //单组合项目记录
RegisterCheckId:'', //
checkItemList:[], //组合项目包含的明细项目
checkItem:{}, //单项目记录
checkSummaryList:[], //小结
checkSuggestionList:[], //建议
doctorCheckDialogVisible: false,
RegisterCheckList: [], //人员体检 组合项目列表
RegisterCheck: {}, //单组合项目记录
RegisterCheckId: '', //
checkItemList: [], //组合项目包含的明细项目
checkItem: {}, //单项目记录
checkSummaryList: [], //小结
checkSuggestionList: [], //建议
},
//总检医生
sumDoctorCheck:{
sumDoctorCheckDialogVisible:false,
sumPREdit:{}, //总检医生时间等相关信息(sumPREditInit)
summaryList:[], //综述
suggestionList:[], //建议
sumDoctorCheck: {
sumDoctorCheckDialogVisible: false,
sumPREdit: {}, //总检医生时间等相关信息(sumPREditInit)
summaryList: [], //综述
suggestionList: [], //建议
},
//公共字典数据 add by pengjun
@ -243,15 +246,15 @@ export default new Vuex.Store({
sumPREditInit(state) {
state.sumDoctorCheck.sumPREdit = {
id:'', //体检登记ID
completeFlag:'', //完成状态
summaryDoctor:'', //总检医生
summaryDate:'', //总检日期
isAudit:'', //审核状态
auditDoctor:'', //审核医生
auditDate:'', //审核日期
isLock:'', //锁定状态
patientId:'', //人员档案ID
id: '', //体检登记ID
completeFlag: '', //完成状态
summaryDoctor: '', //总检医生
summaryDate: '', //总检日期
isAudit: '', //审核状态
auditDoctor: '', //审核医生
auditDate: '', //审核日期
isLock: '', //锁定状态
patientId: '', //人员档案ID
} //人员体检登记显示基本信息
},
},
@ -260,7 +263,7 @@ export default new Vuex.Store({
//获取体检人员所选组合项目
getPatientRegisterAbs(context, id) {
//console.log(`vuex getPatientRegisterAbs /api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`, context.state.dict.asbItemAll)
if(id){
if (id) {
getapi(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`).then(
(res) => {
console.log(`/api/app/registerasbitem/getlistinpatientregisterid?PatientRegisterId=${id}`, res)
@ -273,9 +276,9 @@ export default new Vuex.Store({
});
context.commit("setData", {
key: "patientRegister.patientRegisterAbs",
value:patientRegisterAbs,
value: patientRegisterAbs,
});
context.commit("setData", {
key: "dict.asbItem",
value: arrayReduce(
@ -286,16 +289,16 @@ export default new Vuex.Store({
});
context.commit("setData", {
key: "dict.asbItemQuick",
value: arrayReduce([...context.state.dict.asbItemAll],[...context.state.patientRegister.patientRegisterAbs],"id=asbitemId"),
value: arrayReduce([...context.state.dict.asbItemAll], [...context.state.patientRegister.patientRegisterAbs], "id=asbitemId"),
});
//console.log(`getPatientRegisterAbs ${id}`,context.state.dict.asbItemQuick)
}
}
);
}else{
} else {
context.commit("setData", {
key: "patientRegister.patientRegisterAbs",
value:[],
value: [],
});
context.commit("setData", {
@ -306,7 +309,7 @@ export default new Vuex.Store({
key: "dict.asbItemQuick",
value: [...context.state.dict.asbItemAll],
});
}
}
},
//获取单位分组 /api/app/customer-org-group/in-customer-org-id/3a0c0444-d7a0-871f-4074-19faf1655caf

16
src/views/basic-dictionary/ResultStatus.vue

@ -133,7 +133,7 @@
value="form.reportFontColor16"
@change="reportFontColorchange"
></el-color-picker>
<el-input
<el-input
v-model.number="form.reportFontColor"
@change="reportFontColor1"
maxlength="15"
@ -141,7 +141,7 @@
style="
width: 85%;
position: absolute;
top: 0px;
top: 0px;h
margin-left: 10px;
"
></el-input>
@ -292,7 +292,6 @@ export default {
this.form.dataInputFontColor = parseInt(hexColor, 16);
},
//
dataInputBackgroundColorchange(v) {
var hexColor = v;
@ -302,7 +301,11 @@ export default {
//
reportFontColorchange(v) {
var hexColor = v;
console.log('form.reportFontColor16',hexColor,this.form.reportFontColor16);
console.log(
"form.reportFontColor16",
hexColor,
this.form.reportFontColor16
);
hexColor = hexColor.substring(1);
this.form.reportFontColor = parseInt(hexColor, 16);
},
@ -321,10 +324,9 @@ export default {
},
//
reportFontColor1(v) {
console.log('v',v);
console.log("v", v);
this.form.reportFontColor16 = "#" + Number(v).toString(16);
console.log('this.form.reportFontColor16',this.form.reportFontColor16);
console.log("this.form.reportFontColor16", this.form.reportFontColor16);
},
//
reportBackgroundColorchange1(v) {

33
src/views/doctorCheck/personnelBatch.vue

@ -177,11 +177,31 @@
</span>
</el-dialog>
<!-- -->
<!-- dialogVisible6 -->
<el-dialog
title="批量预约登记提示"
:visible.sync="dialogVisible6"
width="50%"
>
<div>
<div>成功导入的数据</div>
{{ object }}
姓名 {{ object.姓名 }}
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible6 = false"> </el-button>
<el-button type="primary" @click="dialogVisible6 = false"
> </el-button
>
</span>
</el-dialog>
<!-- -->
</div>
</template>
<script>
import ExcelJS from "exceljs";
import { postapi, getapi } from "@/api/api";
import { mapState } from "vuex";
export default {
data() {
return {
@ -205,25 +225,34 @@ export default {
dialogVisible3: false,
dialogVisible4: false,
dialogVisible5: false,
dialogVisible6: false,
startRow: 2, // startRow - 1
importData: [], //
tableDataCol: [], // {excelCol,apiCol,label}
tableData: [], //
formrow: {},
departmentdata: [], //
object: {},
};
},
computed: {
...mapState(["importexcel"]),
},
methods: {
submitto() {
if (this.form.customerOrgId == undefined) {
this.$message.warning("请选择单位");
} else {
this.form = Object.assign(this.form, this.formrow);
// this.form = Object.assign(this.form, this.formrow);
postapi(
"/api/app/patientregister/createpatientregisterexcel",
this.form
).then((res) => {
if (res.code == 1) {
this.object = this.form;
this.importexcel = this.form;
this.dialogVisible6 = true;
this.dialogVisible5 = false;
this.$message.success(res.data.msg);
}
console.log(res);
@ -245,6 +274,8 @@ export default {
splices() {
if (this.nameType == 1) {
this.nameType = "同名病人提示";
console.log(this.nameType);
console.log(this.form.nameType);
}
console.log(this.nameType);
},

Loading…
Cancel
Save