Browse Source

group

master
pengjun 2 years ago
parent
commit
0632431c78
  1. 24
      src/assets/css/global_button.css
  2. 483
      src/components/customerOrg/customerOrgGroupList.vue
  3. 162
      src/components/patientRegister/PatientRegisterEdit.vue
  4. 15
      src/components/patientRegister/PatientRegisterList.vue
  5. 33
      src/components/patientRegister/customerOrgTreeAll.vue
  6. 2
      src/components/patientRegister/patientRegisterAsbItem.vue
  7. 8
      src/components/patientRegister/patientRegisterQuery.vue
  8. 38
      src/components/report/CusOrgOCX.vue
  9. 27
      src/store/index.js
  10. 64
      src/views/customerOrg/customerOrgGroup.vue
  11. 15
      src/views/customerOrg/patientRegister.vue
  12. 17
      src/views/user-list/OrganizationUnits.vue
  13. 15
      src/views/user-list/UserList.vue

24
src/assets/css/global_button.css

@ -0,0 +1,24 @@
.el-button {
background: #FFF;
border: 1px solid #0B663D !important; /*原始 默认值 1px solid #DCDFE6; */
color: #0B663D !important; /*原始 默认值 #606266 */
font-weight: 700; /*原始 默认值 500 */
font-family: 'Microsoft YaHei'; /*原始 默认值 Arial */
padding: 10px 5px; /*原始 默认值 500 */
min-width: 60px;
/*
display: inline-block;
line-height: 1;
white-space: nowrap;
cursor: pointer;
-webkit-appearance: none;
text-align: center;
box-sizing: border-box;
outline: 0;
margin: 0;
transition: .1s;
font-size: 14px;
border-radius: 4px;
*/
}

483
src/components/customerOrg/customerOrgGroupList.vue

@ -0,0 +1,483 @@
<template>
<div>
<div>
<div style="display: flex;">
<div>
<span>体检单位</span>
<el-select
v-model="customerOrgId"
placeholder="请选择体检单位" filterable clearable
style="margin-left: 10px;"
@change="changeCustomerOrg"
size="small"
>
<el-option
v-for="item in customerOrg"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</div>
<div style="margin-left: 20px;">
<span>单位体检次数</span>
<el-select v-model="customerOrgRegister" placeholder="次数" style="width: 60px;margin-left: 10px;" size="small"
@change="changeTimes" value-key="id">
<el-option v-for="item in customerOrgRegisterList" :key="item.id" :label="item.medicalTimes"
:value="item" />
</el-select>
</div>
</div>
</div>
<div style="display: flex;">
<el-table
:data="customerOrgGroups"
style="margin-top: 2px"
row-key="id" border
height="300px" size="small"
highlight-current-row
@row-click="rowClick"
>
<el-table-column type="index" label="序号" min-width="50" align="center"/>
<el-table-column prop="displayName" label="名称" min-width="150" />
<el-table-column prop="price" label="价格" min-width="60" align="center"/>
<el-table-column prop="forSexId" label="适用性别" min-width="60" align="center">
<template slot-scope="scope">
{{ dddw(dict.forSex,'id',scope.row.forSexId,'displayName') }}
</template>
</el-table-column>
<el-table-column prop="maritalStatusId" label="适用婚姻状况" min-width="80" align="center">
<template slot-scope="scope">
{{ dddw(dict.forMaritalStatus,'id',scope.row.maritalStatusId,'displayName') }}
</template>
</el-table-column>
<el-table-column prop="creatorName" label="创建者" min-width="60" align="center" />
<el-table-column label="创建时间" min-width="150" align="center" >
<template slot-scope="scope">
{{ scope.row.creationTime ? moment(scope.row.creationTime).format('yyyy-MM-DD HH:mm:ss'):'' }}
</template>
</el-table-column>
<el-table-column label="操作">
<template>
<el-tag
class="move"
style="cursor: move; margin-left: 15px"
draggable="true"
>
<i class="el-icon-d-caret" style="width: 1rem; height: 1rem"></i>
</el-tag>
</template>
</el-table-column>
</el-table>
<div style="margin-left: 10px;">
<div style="margin-top: 10px">
<el-button
type=""
@click="btnAdd"
class="commonbutton"
>新增</el-button
>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="btnEdit" class="commonbutton"
>编辑</el-button
>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="btnDel" class="commonbutton"
>删除</el-button
>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="topping" class="commonbutton"
>置顶</el-button
>
</div>
<div style="margin-top: 10px">
<el-button type="" @click="bottoming" class="commonbutton"
>置低</el-button
>
</div>
<div style="margin-top: 10px">
<el-button
type=""
@click="sortok"
:disabled="isshow"
class="commonbutton"
>确定</el-button
>
</div>
</div>
</div>
<!-- 新增或者编辑弹框 -->
<el-dialog
:title="form.id ? '编辑' : '新增'"
:visible.sync="dialogVisible"
width="800px"
>
<el-form :model="form" label-width="80px" :rules="rules" ref='form'>
<el-row>
<el-col :span="8">
<el-form-item prop="displayName" 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.price"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="适用性别">
<el-select v-model="form.forSexId" placeholder="请选择">
<el-option
v-for="item in dict.forSex"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="婚姻状况">
<el-select
v-model="form.maritalStatusId"
placeholder="请选择"
style="width: 100%"
>
<el-option
v-for="item in dict.forMaritalStatus"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="年龄下限">
<el-input v-model="form.ageLowerLimit"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="年龄上限">
<el-input v-model="form.ageUpperLimit"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="适用职务">
<el-input v-model="form.jobPost"></el-input>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="适用职称">
<el-input v-model="form.jobTitle"></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-form>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="onSubmit('form')"> </el-button>
</span>
</el-dialog>
<!-- -->
</div>
</template>
<script>
import moment from "moment";
import Sortable from "sortablejs";
import { getapi, postapi, putapi, deletapi } from "@/api/api";
import { mapState } from "vuex";
import { dddw, deepCopy,objCopy,arrayExistObj } from "../../utlis/proFunc";
export default {
data() {
return {
customerOrg:[], //
customerOrgGroups:[], //
customerOrgId:'', //id
customerOrgRegisterList:[], //
customerOrgRegister:{}, //
isshow: true,
form: { //
id:'',
customerOrgRegisterId:null, //
displayName: "",
price: 0,
forSexId: "",
maritalStatusId: "",
ageLowerLimit: null,
ageUpperLimit: null,
jobPost: "",
jobTitle: "",
remark: "",
isMaxMedicalTimes:'N'
},
formInit:{},
rules:{
displayName:[
{ required: true, message: "请填写分组名称", trigger: "blur" },
],
},
dialogVisible: false,
tableData: [],
initTableData: [],
// tableData: [
// ],
};
},
computed: {
...mapState(["personnelUnit","window","dict"]),
},
created() {
this.rowDrop();
this.formInit = deepCopy(this.form)
},
mounted() {
//
this.dictInit()
},
methods: {
moment,dddw,
//
sortok() {
const result = [];
this.tableData.forEach((item, index) => {
// index 0 displayOrder
console.log(item.id);
// const currentDisplayOrder = this.tableData.length -1
const currentDisplayOrder = this.initTableData[index].displayOrder;
if (item.displayOrder != currentDisplayOrder) {
// displayOrder
result.push({ id: item.id, displayOrder: currentDisplayOrder });
}
});
putapi("/api/app/customerorggroup/updatesortmany", {
itemList: result,
}).then((res) => {
this.$message.success("操作成功");
this.isshow = true;
});
},
//Sortable
rowDrop() {
this.$nextTick(() => {
const tbody = document.querySelector(".el-table__body-wrapper tbody");
const _this = this;
Sortable.create(tbody, {
handle: ".move",
animation: 300,
onEnd({ newIndex, oldIndex }) {
_this.isshow = false;
const currRow = _this.tableData.splice(oldIndex, 1)[0];
_this.tableData.splice(newIndex, 0, currRow);
_this.tableData.map((item, index) => {
if (index == newIndex && index == oldIndex) {
} else if (index == oldIndex) {
} else if (index == newIndex) {
}
});
console.log(_this.tableData.map((item) => item.displayOrder));
},
});
});
},
//
bottoming() {
if (this.form.id == undefined) {
this.$message.warning("请选择操作的数据");
} else {
putapi(
`/api/app/customerorggroup/updatemanysort?id=${this.form.id}&SortType=2`
).then((res) => {
this.$message.success("操作成功");
});
}
},
//
topping() {
if (this.form.id == undefined) {
this.$message.warning("请选择操作的数据");
} else {
putapi(
`/api/app/customerorggroup/updatemanysort?id=${this.form.id}&SortType=1`
).then((res) => {
this.$message.success("操作成功");
});
}
},
//
dictInit() {
//
getapi("/api/app/customer-org/parent-all").then((res) => {
this.customerOrg = res.data;
});
//
getapi("/api/app/for-sex").then((res) => {
if(res.code != -1){
this.dict.forSex = res.data
}
})
},
//
getCustomerOrgGroup(customerOrgRegisterId) {
this.customerOrgGroups = []
getapi(`/api/app/customerorggroup/getlistinfilter?CustomerOrgRegisterId=${customerOrgRegisterId}`).then(res => {
if (res.code != - 1) {
this.customerOrgGroups = res.data.items;
this.customerOrgGroups.forEach(e =>{
e.customerOrgRegisterId = customerOrgRegisterId
})
}
})
},
//
changeCustomerOrg(v) {
getapi(`/api/app/customerorgregister/getlistincustomerorgid?CustomerOrgId=${v}`).then( res => {
if(res.code != -1){
this.customerOrgRegisterList = res.data
if(res.data.length > 0){
this.customerOrgRegister = res.data[res.data.length - 1]
this.getCustomerOrgGroup(this.customerOrgRegister.id)
}else{
this.customerOrgRegister = {}
this.customerOrgGroups = []
}
}
})
},
//
changeTimes(v){
this.getCustomerOrgGroup(v.id)
},
//
rowClick(row) {
objCopy(row,this.form)
},
//
btnAdd() {
if(!this.customerOrgRegister.id){
this.$message.warning("请选择体检次数")
return
}
if(this.customerOrgRegister.isComplete.toUpperCase() == 'Y'){
this.$message.warning("该单位的该次体检次数已完成,不能再添加分组!")
return
}
this.form = deepCopy(this.formInit)
this.form.customerOrgRegisterId = this.customerOrgRegister.id
this.dialogVisible = true;
},
//
btnEdit() {
this.dialogVisible = true;
},
//
btnDel() {
if (!this.form.id) {
this.$message.warning("请选择需要操作的数据");
return
}
this.$confirm("此操作将永久删除该记录, 是否继续?", "提示", {
confirmButtonText: "是",
cancelButtonText: " 否 ",
type: "warning",
}).then(() => {
return deletapi(`/api/app/customer-org-group/${this.form.id}`)
}).then(res =>{
if(res.code != -1){
this.$message.success("删除成功");
let lfind = arrayExistObj(this.customerOrgGroups,'id',this.form.id)
if(lfind > -1) this.customerOrgGroups.splice(lfind,1)
}
}).catch(err =>{
if (err == "cancel") {
this.$message.info("已取消删除");
}
})
},
onSubmit(formName) {
this.$refs[formName].validate((valid,fields) => {
if(!valid){
this.$message.warning(fields[Object.keys(fields)[0]][0].message);
return false
}
if(!this.form.customerOrgRegisterId){
this.$message.warning("请选择单位体检次数!");
return false
}
let body = deepCopy(this.form)
delete body.id
if(this.form.id){
//
putapi(`/api/app/customer-org-group/${this.form.id}`,body).then(res =>{
if(res.code != -1 ){
this.$message.success("操作成功!")
let lfind = arrayExistObj(this.customerOrgGroups,'id',this.form.id)
if(lfind > -1) objCopy(this.form,this.customerOrgGroups[lfind])
this.dialogVisible = false
}
})
}else{
//
postapi('/api/customerorggroup/createcustomerorggroupincustomerorgregister',body).then(res =>{
if(res.code != -1 ){
this.$message.success("操作成功!")
this.form.id = res.data.id
this.customerOrgGroups.push(res.data)
this.dialogVisible = false
}
})
}
})
},
},
};
</script>
<style scoped>
@import '../../assets/css/global_button.css';
@import '../../assets/css/global_dialog.css';
@import '../../assets/css/global_table.css';
@import '../../assets/css/global_form.css';
@import '../../assets/css/global_input.css';
@import '../../assets/css/global.css';
</style>

162
src/components/patientRegister/PatientRegisterEdit.vue

@ -714,8 +714,11 @@ export default {
], //uuidnull
rules: {
customerOrgId:[
{ required: true, message: "请填写单位", trigger: "blur" },
],
patientName: [
{ required: true, message: "请输入姓名", trigger: "blur" },
{ required: true, message: "请填写姓名", trigger: "blur" },
],
organizationUnitId: [
{ required: true, message: "请填写体检中心", trigger: "blur" },
@ -1051,91 +1054,98 @@ export default {
//
btnSubmit(formName, msgTip) {
this.$refs[formName].validate((valid) => {
if (valid) {
//
let body = deepCopy(this.form);
if (this.form.birthDate) {
body.birthDate = moment(this.form.birthDate).format("yyyy-MM-DD")
this.$refs[formName].validate((valid,fields) => {
if(!valid){
this.$message.warning(fields[Object.keys(fields)[0]][0].message);
return false
}
if(this.form.customerOrgId != this.dict.personOrgId){
if(!this.form.customerOrgRegisterId){
this.$message.warning("请填写单位体检次数!");
return false
}
}
//
let body = deepCopy(this.form);
delete body.id;
delete body.patientRegisterNo;
delete body.medicalTimes;
delete body.completeFlag;
delete body.isMedicalStart;
delete body.patientNo;
delete body.creatorId;
delete body.creationTime;
delete body.lastModificationTime;
delete body.lastModifierId;
delete body.isVipBox;
delete body.isNameHideBox;
delete body.isPhoneFollowBox;
delete body.isLockBox;
delete body.photo;
setNull(body, this.defaultNull);
//
// console.log("body.birthDate", body.birthDate);
// if (body.birthDate) {
// body.birthDate = moment(new Date(body.birthDate)).format(
// "yyyy-MM-DD"
// );
// }
if (this.form.id.length < 1) {
//id
console.log(`/api/patientregister/createreturninfo`, body);
postapi(`/api/patientregister/createreturninfo`, body).then(
(res) => {
if (res.code == 1) {
//console.log('res',res)
if (msgTip) this.$message.success("创健 操作成功");
//
if (this.patientRegister.photo.indexOf("data:image") > -1) savePeoplePhoto(res.data.id, this.patientRegister.photo);
objCopy(res.data, this.form);
// this.patientRegister.prList.push(res.data); //
this.patientRegister.patientRegisterId = res.data.id;
this.patientRegister.patientRegisterRd = res.data;
//this.patientRegister.query.times++;
this.patientRegister.prList.push(res.data)
//
this.patientRegister.patientRegisterAbs.forEach(e => {
e.patientRegisterId = res.data.id;
return e;
});
this.patientRegister.saveTimes++;
}
}
);
} else {
//id api/patientregister/updatepatientregister
console.log(`/api/patientregister/updatepatientregister?PatientRegisterId=${this.form.id}`, body);
postapi(`/api/patientregister/updatepatientregister?PatientRegisterId=${this.form.id}`, body).then((res) => {
if (this.form.birthDate) {
body.birthDate = moment(this.form.birthDate).format("yyyy-MM-DD")
}
delete body.id;
delete body.patientRegisterNo;
delete body.medicalTimes;
delete body.completeFlag;
delete body.isMedicalStart;
delete body.patientNo;
delete body.creatorId;
delete body.creationTime;
delete body.lastModificationTime;
delete body.lastModifierId;
delete body.isVipBox;
delete body.isNameHideBox;
delete body.isPhoneFollowBox;
delete body.isLockBox;
delete body.photo;
setNull(body, this.defaultNull);
//
// console.log("body.birthDate", body.birthDate);
// if (body.birthDate) {
// body.birthDate = moment(new Date(body.birthDate)).format(
// "yyyy-MM-DD"
// );
// }
if (this.form.id.length < 1) {
//id
console.log(`/api/patientregister/createreturninfo`, body);
postapi(`/api/patientregister/createreturninfo`, body).then(
(res) => {
if (res.code == 1) {
if (msgTip) this.$message.success("更新 操作成功");
//console.log('res',res)
if (msgTip) this.$message.success("创健 操作成功");
//
if (this.patientRegister.photo.indexOf("data:image") > -1) savePeoplePhoto(this.form.id, this.patientRegister.photo);
//this.patientRegister.query.times++;
let lfind = arrayExistObj(this.patientRegister.prList, 'id', this.form.id)
if(lfind > - 1) objCopy(this.form,this.patientRegister.prList[lfind])
if (this.patientRegister.photo.indexOf("data:image") > -1) savePeoplePhoto(res.data.id, this.patientRegister.photo);
objCopy(res.data, this.form);
// this.patientRegister.prList.push(res.data); //
this.patientRegister.patientRegisterId = res.data.id;
this.patientRegister.patientRegisterRd = res.data;
//this.patientRegister.saveTimes++; //
//this.patientRegister.query.times++;
this.patientRegister.prList.push(res.data)
//
this.patientRegister.patientRegisterAbs.forEach(e => {
e.patientRegisterId = res.data.id;
return e;
});
this.patientRegister.saveTimes++;
}
});
}
}
);
} else {
alert("未通过数据校验");
return false;
//id api/patientregister/updatepatientregister
console.log(`/api/patientregister/updatepatientregister?PatientRegisterId=${this.form.id}`, body);
postapi(`/api/patientregister/updatepatientregister?PatientRegisterId=${this.form.id}`, body).then((res) => {
if (res.code == 1) {
if (msgTip) this.$message.success("更新 操作成功");
//
if (this.patientRegister.photo.indexOf("data:image") > -1) savePeoplePhoto(this.form.id, this.patientRegister.photo);
//this.patientRegister.query.times++;
let lfind = arrayExistObj(this.patientRegister.prList, 'id', this.form.id)
if(lfind > - 1) objCopy(this.form,this.patientRegister.prList[lfind])
//this.patientRegister.saveTimes++; //
}
});
}
});
},

15
src/components/patientRegister/PatientRegisterList.vue

@ -2,7 +2,7 @@
<div style="display: flex">
<div
:style="
'margin-left:5px;width:' + (window.pageWidth - 200 - 120 - 85) + 'px;'
'margin-left:5px;width:' + (window.pageWidth - 200 - 120 - 55) + 'px;'
"
@contextmenu.prevent="onContextmenu"
>
@ -11,8 +11,8 @@
border
:height="
window.pageHeight < 600
? 172
: Math.floor(((window.pageHeight - 342) * 2) / 3)
? 202
: Math.floor(((window.pageHeight - 302) * 2) / 3)
"
highlight-current-row
@row-click="rowClick"
@ -858,11 +858,10 @@ export default {
this.patientRegister.query.times++;
this.patientRegister.patientRegisterId = "";
})
.catch(() => {
this.$message({
type: "info",
message: "已取消删除",
});
.catch((err) => {
if (err == "cancel") {
this.$message.info("已取消删除");
}
});
},

33
src/components/patientRegister/customerOrgTreeAll.vue

@ -1,9 +1,14 @@
<template>
<el-tree
:data="patientRegister.customerOrgTreeAll"
:props="customerOrg.treeprops"
@node-click="treeclick"
></el-tree>
<div>
<div style="margin:2px 2px 2px 2px;">
<el-input placeholder="输入关键字进行过滤" v-model="filterText" size="small" />
</div>
<div :style="'overflow: scroll;height:' +(window.pageHeight < 600 ? 410 : window.pageHeight - 190) + 'px;'">
<el-tree :data="patientRegister.customerOrgTreeAll" :props="customerOrg.treeprops"
node-key="id" :filter-node-method="filterNode"
@node-click="treeclick" highlight-current ref="customerOrgTree"/>
</div>
</div>
</template>
<script>
import { mapState } from "vuex";
@ -12,11 +17,13 @@ import { tcdate } from "../../utlis/proFunc";
export default {
components: {},
data() {
return {};
return {
filterText:'',
};
},
//<el-tree :data="$store.state.customerOrg.customerOrgTree" :props="$store.state.customerOrg.treeprops" @node-click="treeclick"></el-tree>
computed: {
...mapState(["dict", "customerOrg", "patientRegister"]),
...mapState(["window","dict", "customerOrg", "patientRegister"]),
},
//
created() {},
@ -52,6 +59,13 @@ export default {
});
},
//
filterNode(value, data) {
//console.log(value,data)
if (!value) return true;
return data['displayName'].indexOf(value) !== -1 || data['simpleCode'].indexOf(value.toUpperCase()) !== -1;
},
//
treeclick(data) {
this.patientRegister.query.customerOrgId = data.id;
@ -59,6 +73,11 @@ export default {
this.patientRegister.query.times++; //
},
},
watch: {
"filterText"(newVal,oldVal){
this.$refs['customerOrgTree'].filter(newVal);
}
},
};
</script>
<style></style>

2
src/components/patientRegister/patientRegisterAsbItem.vue

@ -2,7 +2,7 @@
<div>
<div style="display: flex">
<el-table :data="patientRegister.patientRegisterAbs" border
:height="window.pageHeight < 600 ? 86 : Math.floor((window.pageHeight - 342) / 3)" size="small"
:height="window.pageHeight < 600 ? 100 : Math.floor((window.pageHeight - 302) / 3)" size="small"
:row-class-name="tableRowClassName" highlight-current-row :summary-method="getSummaries" show-summary
ref="patientRegister.patientRegisterAbs">
<el-table-column type="index" label="序号" width="50" />

8
src/components/patientRegister/patientRegisterQuery.vue

@ -1,8 +1,8 @@
<template>
<div style="display: flex">
<div style="display: flex; ">
<div :style="'display: flex; flex-wrap: wrap; height:100px;width:' + (window.pageWidth - (orgEnable=='Y' ? 0:200) - 120 - 80) + 'px;'">
<div :style="'margin-left: 5px;display: flex; flex-wrap: wrap; height:100px;width:' + (window.pageWidth - (orgEnable=='Y' ? 0:200) - 120 - 50) + 'px;'">
<div class="query">
<span>登记日期</span>
<el-date-picker v-model="patientRegister.query.startDate" type="date" placeholder="起始日期" size="small" style="width:90px;"/>
@ -61,7 +61,7 @@
<!-- 按钮区域 -->
<div style="margin-left: 10px; width: 110px">
<div class="listBtn">
<el-button type="primary" class="btnClass" @click="btnQuery">查询</el-button>
<el-button class="btnClass" @click="btnQuery">查询</el-button>
</div>
<div class="listBtn">
<el-button type="danger" class="btnClass" @click="readIdCard">读身份证</el-button>
@ -124,7 +124,7 @@ export default {
}
.query {
margin-left: 10px;
margin-right: 10px;
}
.listBtn {

38
src/components/report/CusOrgOCX.vue

@ -390,40 +390,8 @@ export default {
</script>
<style lang="scss" scoped>
@import "../../assets/css/global_dialog.css";
@import "../../assets/css/global_table.css";
@import "../../assets/css/global_input.css";
@import "../../assets/css/global.css";
::v-deep .el-input__inner {
/*text-align: center;*/
padding-left: 2px;
padding-right: 15px;
}
::v-deep .el-input__icon{
width: 15px; /* 输入框下拉箭头或清除图标 默认 25 */
}
/* 表格 表头 列间距控制 */
::v-deep .el-table th.el-table__cell>.cell{
text-align: center; /* 表格 表头 对齐方式,默认 left */
padding-right: 2px; /* 表格 表头 列间距控制,默认 10px */
padding-left: 2px; /* 表格 表头 列间距控制,默认 10px */
}
/* 表格 表体 首列左间距控制 */
::v-deep .el-table--border .el-table__cell:first-child .cell {
padding-left: 2px; /* 表格 表体 首列左间距控制,默认 10px */
}
/* 表格 行列间距控制 ,默认 10 px*/
::v-deep .el-table__cell {
padding: 2px 2px 2px 2px; /* 上,右,下,左 */
}
/* 表格单元格 .el-table .cell ,默认 10 px*/
::v-deep .cell {
padding-left: 2px;
padding-right: 2px;
}
::v-deep .el-icon-date:before {
content: ""
}
</style>

27
src/store/index.js

@ -18,21 +18,21 @@ export default new Vuex.Store({
window: {
pageHeight: 960, //页面高度
pageWidth: 1920, //页面宽度
shift:false, //是否按下 shift键
ctrl:false, //是否按下 ctrl键
shift: false, //是否按下 shift键
ctrl: false, //是否按下 ctrl键
},
elProgress:{ //通用进度条相关参数
display:false, //是否显示
textInside:true,
strokeWidth:30,
percentage:0
elProgress: { //通用进度条相关参数
display: false, //是否显示
textInside: true,
strokeWidth: 30,
percentage: 0
},
customerOrg: {
//体检单位设置
oprStatus:'',//空,add,edit 三种状态
oprStatus: '',//空,add,edit 三种状态
customerOrgTree: [], //体检单位列表
defaultExpandedKeys:[], //当前选中树的节点
treeCurrentNodekey:'', //当前选中树的节点
defaultExpandedKeys: [], //当前选中树的节点
treeCurrentNodekey: '', //当前选中树的节点
treeprops: {
label: "displayName",
value: "id",
@ -166,7 +166,7 @@ export default new Vuex.Store({
//总检医生
sumDoctorCheck: {
sumDoctorCheckDialogVisible: false,
sumDiagnosisVisible:false,
sumDiagnosisVisible: false,
sumPREdit: {}, //总检医生时间等相关信息(sumPREditInit)
summaryList: [], //综述
suggestionList: [], //建议
@ -189,6 +189,7 @@ export default new Vuex.Store({
medicalType: [], //体检类别
personnelType: [], //人员类别
maritalStatus: [], //婚姻状况
forMaritalStatus: [{ id: '0', displayName: '未婚' },{ id: '1', displayName: '已婚' },{ id: 'A', displayName: '全部' }], //适用婚姻
sexHormoneTerm: [], //性激素期
nation: [], //民族
birthPlace: [], //籍惯 ,出生地
@ -241,8 +242,8 @@ export default new Vuex.Store({
},
//项目特有的对象数据
projPriv:{
idNos:{
projPriv: {
idNos: {
Code: "Success", //读取成功/失败
Name: "刘滔",
Sex: "男",

64
src/views/customerOrg/customerOrgGroup.vue

@ -1,39 +1,22 @@
<template>
<div style="display: flex">
<div class="box">
<el-card>
<div class="publiccss">单位分组</div>
<span>单位</span>
<el-select
v-model="value"
placeholder="请选择"
style="margin-left: 20px; margin-top: 20px"
@change="secltchang"
>
<el-option
v-for="item in options"
:key="item.id"
:label="item.displayName"
:value="item.id"
>
</el-option>
</el-select>
<div>
<CustomerOrgTree></CustomerOrgTree>
<UnitGroupCategory></UnitGroupCategory>
</div>
</el-card>
</div>
<div>
<el-card>
<div slot="header">单位分组</div>
<div>
<CustomerOrgGroupList />
<UnitGroupCategory />
</div>
</el-card>
</div>
</template>
<script>
import CustomerOrgTree from "../../components/unitGrouping/unitGroupingTable.vue";
import CustomerOrgGroupList from "../../components/customerOrg/customerOrgGroupList.vue";
import UnitGroupCategory from "../../components/unitGrouping/unitGroupCategory.vue";
import { mapState } from "vuex";
import { getapi } from "@/api/api";
export default {
components: {
CustomerOrgTree,
CustomerOrgGroupList,
UnitGroupCategory,
},
data() {
@ -49,33 +32,10 @@ export default {
this.getitemtype();
},
methods: {
secltchang(v) {
this.personnelUnit.id = v;
//let that=this
console.log(this.customerOrg);
getapi(`/api/app/customer-org-group/in-customer-org-id/${v}`).then(
(res) => {
this.personnelUnit.personnelgrouping = res.data;
// console.log(res.data);
// console.log(that.customerOrg.personnelgrouping);
}
);
console.log(v);
},
//
getitemtype() {
getapi("/api/app/customer-org/parent-all").then((res) => {
this.options = res.data;
});
},
},
};
</script>
<style scoped>
::v-deep .el-card__body {
height: 800px;
}
.box {
width: 100%;
}
</style>

15
src/views/customerOrg/patientRegister.vue

@ -1,13 +1,15 @@
<template>
<div>
<el-card>
<div class="publiccss">体检人员登记</div>
<div style="display: flex; margin-top: 20px">
<div slot="header">
体检人员登记
</div>
<div style="display: flex;">
<!-- 单位树组件 -->
<div
:style="
'overflow: scroll;border: 1px solid;width:200px; height:' +
(window.pageHeight < 600 ? 410 : window.pageHeight - 190) +
'border: 1px solid;width:200px; height:' +
(window.pageHeight < 600 ? 450 : window.pageHeight - 150) +
'px;'
"
>
@ -16,9 +18,9 @@
<div
:style="
'display:block;width:' +
(window.pageWidth - 200 - 80) +
(window.pageWidth - 200 - 50) +
'px;height:' +
(window.pageHeight < 600 ? 410 : window.pageHeight - 190) +
(window.pageHeight < 600 ? 450 : window.pageHeight - 150) +
'px;' +
(window.pageHeight < 600 ? 'overflow-y: scroll;' : '')
"
@ -199,6 +201,7 @@ export default {
};
</script>
<style scoped>
@import '../../assets/css/global_button.css';
@import '../../assets/css/global_dialog.css';
@import '../../assets/css/global_form.css';
@import '../../assets/css/global_input.css';

17
src/views/user-list/OrganizationUnits.vue

@ -1,16 +1,14 @@
<template>
<div>
<el-card class="elcard">
<!-- <el-button type="primary" @click="addorginiztiom">新增组织</el-button> -->
<!-- <div class="publicfontsize">科室设置</div> -->
<div class="publiccss">科室设置</div>
<!-- <div class="allC"> -->
<el-card>
<div slot="header">
<span>科室设置</span>
</div>
<div
:style="
'display: flex; overflow: scroll;width:' +
(window.pageWidth - 85) +
'px; margin-top:20px;height:' + (window.pageHeight < 600 ? 410 : window.pageHeight - 190)+ 'px;'
(window.pageWidth - 50) +
'px;height:' + (window.pageHeight < 600 ? 450 : window.pageHeight - 150)+ 'px;'
"
>
<!-- <i
@ -33,6 +31,7 @@
ref="tree"
node-key="id"
@check="check"
style="width:600px;"
>
<span slot-scope="{ node, data }">
<span>{{ node.label }}</span>
@ -87,7 +86,7 @@
<el-dialog
:title="title == 2 ? '修改组织' : '新增组织'"
:visible.sync="dialogVisible"
width="50%"
width="800px"
@close="closethiebox"
:close-on-click-modal="false"
class="el-dialog__title"

15
src/views/user-list/UserList.vue

@ -1,19 +1,18 @@
<template>
<div>
<el-card class="elcard">
<div class="publiccss">用户管理</div>
<!-- <el-button type="primary" @click="newlyincreased" style="margin-top: 20px"
>新增</el-button
> -->
<div slot="header">
<span>用户管理</span>
</div>
<div>
<div style="display: flex;padding: 2px 0px;">
<div style="display: flex;padding: 0px 0px 2px;">
<el-input v-model="pages.Filter" clearable @change="btnQuery" placeholder="输入查询关键字" style="width: 200px" size="small" />
<el-button style="margin-left: 5px;" type="primary" @click="btnQuery" size="small">查询</el-button>
</div>
<div style="display: flex">
<div :style="'overflow: scroll;border: 1px solid;width:200px;height:' +(window.pageHeight < 600 ? 410 : window.pageHeight - 190) + 'px;'">
<div :style="'overflow: scroll;border: 1px solid;width:200px;height:' +(window.pageHeight < 600 ? 430 : window.pageHeight - 170) + 'px;'">
<el-tree
:data="treedata"
:props="defaultProps"
@ -21,9 +20,9 @@
highlight-current
></el-tree>
</div>
<div :style="'margin-left: 5px;width: '+(window.pageWidth - 200 - 90)+'px;'">
<div :style="'margin-left: 5px;width: '+(window.pageWidth - 200 - 50)+'px;'">
<el-table highlight-current-row
:height="window.pageHeight < 600 ? 410 : window.pageHeight - 190"
:height="window.pageHeight < 600 ? 430 : window.pageHeight - 170"
:data="tableData" size="small" border>
<el-table-column type="index" label="序号" min-width="50" align="center"></el-table-column>
<el-table-column prop="userName" label="账号" min-width="100">

Loading…
Cancel
Save