qinxianzhangyao
2023-11-30 be330a8520fce4f9010295a8d727461962e76969
qxtj
10个文件已修改
468 ■■■■■ 已修改文件
src/api/count/chart.js 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/hosp/hzlog.js 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/hosp/inspection.js 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/hosp/project.js 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/doctor/check/index.vue 152 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/inspection/index.vue 23 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/standard/renshunum/index.vue 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/standard/tijianxinxi/index.vue 122 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/tijian/index.vue 18 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/count/chart.js
@@ -7,4 +7,16 @@
      method: 'get',
      params:query
    })
  }
  }
  // 体检科室列表显示接口
export function getTiaoNumsByDate(query) {
  return request({
    url: '/home/page/getTiaoNumsByDate',
    method: 'get',
    params:query
  })
}
src/api/hosp/hzlog.js
@@ -41,7 +41,8 @@
export function delHzlog(id) {
    return request({
        url: '/hosp/hzlog/' + id,
        method: 'delete'
        url: '/hosp/hzlog/remove',
        method: 'delete',
        data:id
    })
}
src/api/hosp/inspection.js
@@ -16,3 +16,12 @@
        method: 'get'
    })
}
// 恢复弃检
export function recall(data) {
    return request({
        url: '/hosp/inspection/recall',
        method: 'post',
        data: data
    })
}
src/api/hosp/project.js
@@ -57,4 +57,14 @@
    url: 'system/dept/deptTree',
    method: 'get'
  })
}
}
// 新增体检项目
export function getChartByDeptId(query) {
  return request({
    url: '/home/page/getChartByDeptId',
    method: 'get',
    params: query
  })
}
src/views/doctor/check/index.vue
@@ -60,16 +60,24 @@
    <el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
      <el-row>
        <el-col :span="7" v-if="hzlogList.length >= 1">
        <el-col :span="9" v-if="hzlogList.length >= 1">
          <h3>会诊申请记录</h3>
          <el-table :data="hzlogList" style="width: 100%" border>
            <el-table-column label="申请人" align="center" prop="hzDoctorName" width="100px" />
            <el-table-column label="科室" align="center" prop="hzDeptName" width="260px" />
            <el-table-column label="科室" align="center" prop="hzDeptName" />
            <el-table-column label="操作" align="center" width="150px">
              <template slot-scope="scope">
                <el-button type="primary" size="mini" @click="hadleedit(scope.row)"
                  v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId">修改</el-button>
                <el-button type="primary" size="mini"
                  v-if="scope.row.hzReplyLogsList.length == 0 && scope.row.hzDoctorId == info.userId"
                  @click="handledele(scope.row)">删除</el-button>
              </template>
            </el-table-column>
          </el-table>
        </el-col>
        <el-col :span="16">
          <!-- :rules="rules" -->
          <el-form ref="form" :model="form" label-width="80px">
        <el-col :span="14">
          <el-form ref="form" :model="form" :rules="rules" label-width="80px">
            <el-form-item label="姓名" prop="cusName">
              <el-input v-model="form.cusName" placeholder="请输入姓名" disabled />
            </el-form-item>
@@ -365,7 +373,7 @@
import {
  addReplylog, hzHasDept
} from "@/api/hosp/replylog";
import { listHzlog, addHzlog } from "@/api/hosp/hzlog";
import { listHzlog, addHzlog, delHzlog,updateHzlog  } from "@/api/hosp/hzlog";
import { listUser } from "@/api/system/user";
import { getChildList } from "@/api/system/dept";
export default {
@@ -387,6 +395,7 @@
      // proDefault: "",
      // dataList: [],
      rows: [],
      id: [],
      deptAdviceList: [],
      value: [],
      remark: "", //备注
@@ -404,6 +413,7 @@
      deptList: [],
      tableAll: {},
      row: {},
      info: {},
      allList: [],
      form: {
        createTime: new Date()
@@ -448,6 +458,11 @@
        type: "",
        name: null,
      },
      rules: {
        hzType: [
          { required: true, message: '请选择科室', trigger: 'change' }
        ]
      }
    };
  },
@@ -484,7 +499,7 @@
        }
      );
      getInfo().then((response) => {
        this.form.hzDoctorId = response.user.userId;
        this.info = response.user
        this.deptId = response.user.deptId;
        this.userId = response.user.userId;
        this.nickName = response.user.nickName;
@@ -628,10 +643,10 @@
    Changeapplyfor(row) {
      this.open = true;
      this.form = row
      this.form.hzDoctorId = this.info.userId;
      getChildList().then(res => {
        this.deptList = res.data;
      })
      this.Hzlog(this.form.tjNumber)
    },
@@ -657,50 +672,84 @@
        })
      });
    },
    handledele(row) {
      this.id = []
      this.id.push(row.id)
      delHzlog(this.id).then(res => {
        this.$modal.msgSuccess("删除成功");
        this.Hzlog(this.form.tjNumber)
      })
    },
    hadleedit(row) {
      this.form.hzType = row.hzType
      this.form.id = row.id
    },
    submitFormapply() {
      console.log(this.form)
      let data = {}
      this.userList.forEach(item1 => {
        if (this.form.hzDoctorId == item1.userId) {
          this.form.hzDoctorName = item1.nickName
        }
      })
      if (this.form.hzDeptId) {
        // let hzDeptId = ""
        // this.form.hzDeptId.forEach(item => {
        //   hzDeptId += item + ','
        // })
        data = {
          tjNumber: this.form.tjNumber,
          userId: this.form.cusId,
          userName: this.form.cusName,
          hzDeptIdList: this.form.hzDeptId,
          hzDoctorId: this.form.hzDoctorId,
          hzType: this.form.hzType,
          orderId: this.form.orderId,
          hzDoctorName: this.form.hzDoctorName
      if (this.form.hzType != undefined) {
        if (this.form.hzDeptId && this.form.id) {
          // let hzDeptId = ""
          // this.form.hzDeptId.forEach(item => {
          //   hzDeptId += item + ','
          // })
          data = {
            tjNumber: this.form.tjNumber,
            userId: this.form.cusId,
            userName: this.form.cusName,
            hzDeptIdList: this.form.hzDeptId,
            hzDoctorId: this.form.hzDoctorId,
            hzType: this.form.hzType,
            orderId: this.form.orderId,
            hzDoctorName: this.form.hzDoctorName,
            id:this.form.id
          }
        } else {
          data = {
            tjNumber: this.form.tjNumber,
            userId: this.form.cusId,
            userName: this.form.cusName,
            hzDoctorId: this.form.hzDoctorId,
            hzType: this.form.hzType,
            orderId: this.form.orderId,
            hzDoctorName: this.form.hzDoctorName
          }
        }
        this.$refs["form"].validate((valid) => {
          if (valid) {
            if (this.form.id != null) {
              updateHzlog(data).then(res => {
                if (res.code == 200) {
                  this.$modal.msgSuccess("修改成功");
                  this.form = {}
                  this.Hzlog()
                  this.radioChange(1)
                }
              })
            } else {
              addHzlog(data).then(res => {
                if (res.code == 200) {
                  this.$modal.msgSuccess("申请成功");
                  this.form = {}
                  this.Hzlog()
                  this.radioChange(1)
                }
              })
              this.open = false;
            }
          }
        })
      } else {
        data = {
          tjNumber: this.form.tjNumber,
          userId: this.form.cusId,
          userName: this.form.cusName,
          hzDoctorId: this.form.hzDoctorId,
          hzType: this.form.hzType,
          orderId: this.form.orderId,
          hzDoctorName: this.form.hzDoctorName
        }
        this.$modal.msgError("请选择会诊科室");
      }
      addHzlog(data).then(res => {
        if (res.code == 200) {
          this.$modal.msgSuccess("申请成功");
          this.form = {}
          this.Hzlog()
          this.radioChange(1)
        }
      })
      this.open = false;
    },
    cancel() {
      this.open = false;
@@ -746,20 +795,21 @@
            return false;
          }
        });
      //   this.allList = []
      //   if(newRows[0].hzReplyLogsList){
      //     this.hzReplyLogsList = newRows[0].hzReplyLogsList
      //   }
      //  console.log(this.hzReplyLogsList)
      //   this.allList = newRows
      }else{
        //   this.allList = []
        //   if(newRows[0].hzReplyLogsList){
        //     this.hzReplyLogsList = newRows[0].hzReplyLogsList
        //   }
        //  console.log(this.hzReplyLogsList)
        //   this.allList = newRows
      } else {
        this.allList = []
        if(selection[0].hzReplyLogsList){
          this.hzReplyLogsList = selection[0].hzReplyLogsList
        }else{
        if (selection[0]) {
          if (selection[0].hzReplyLogsList) {
            this.hzReplyLogsList = selection[0].hzReplyLogsList
          }
        } else {
          this.hzReplyLogsList = []
        }
       console.log(this.hzReplyLogsList)
        this.allList = selection
      }
    },
src/views/hosp/inspection/index.vue
@@ -23,13 +23,13 @@
        <el-row :gutter="10" class="mb8">
            <el-col :span="1.5">
                <el-button type="primary" plain icon="el-icon-plus" size="mini"
                    v-hasPermi="['hosp:detail:add']">恢复</el-button>
                <el-button type="primary" plain size="mini" v-hasPermi="['hosp:detail:add']"
                    @click="handlerestore">恢复</el-button>
            </el-col>
        </el-row>
        <el-table v-loading="loading" :data="inspectionList" border>
        <el-table v-loading="loading" :data="inspectionList" border @selection-change="handleSelectionChange">
            <el-table-column type="selection" width="55" align="center" />
            <el-table-column label="序号" align="center" prop="newID" width="55px" />
            <el-table-column label="体检号" align="center" prop="tjNum" :show-overflow-tooltip="true" />
@@ -66,7 +66,7 @@
<script>
import {
    listInspection
    listInspection, recall
} from "@/api/hosp/inspection";
export default {
@@ -85,6 +85,7 @@
            showSearch: true,
            // 总条数
            total: 0,
            allList: [],
            // 弃检表格数据
            inspectionList: [],
@@ -152,7 +153,19 @@
            this.resetForm("queryForm");
            this.handleQuery();
        },
        // 多选框选中数据
        handleSelectionChange(selection) {
            this.allList = selection
            console.log(this.allList )
        },
        handlerestore() {
            recall(this.allList).then(res => {
                if(res.code == 200){
                    this.$modal.msgSuccess("已撤回成功");
                    this.getList();
                }
            })
        }
    }
};
</script>
src/views/standard/renshunum/index.vue
@@ -2,7 +2,10 @@
    <div>
        <el-form :model="queryParams" ref="tableList" :inline="true" label-width="76px" style="margin: 10px 10px">
            <el-form-item label="体检时间" prop="date">
                <el-date-picker v-model="value1" type="date" placeholder="选择日期">
                <el-date-picker v-model="startTime" type="datetimerange" align="right" :picker-options="pickerOptions"
                    style="width: 310px" start-placeholder="开始日期" end-placeholder="结束日期"
                    :default-time="['00:00:00', '23:00:00']" format="yyyy-MM-dd HH:mm" value-format="yyyy-MM-dd HH:mm"
                    @change="dateChangebirthday1">
                </el-date-picker>
            </el-form-item>
            <el-form-item>
@@ -18,7 +21,7 @@
    
        
<script>
import { GetChartByDate } from "@/api/count/chart";
import { getTiaoNumsByDate } from "@/api/count/chart";
const echarts = require("echarts/lib/echarts");
require("echarts/lib/component/title");
require("echarts/lib/component/tooltip");
@@ -58,46 +61,52 @@
            },
            value1: "",
            DateList: [],
            startTime: "",
            startTime: [],
            dateAll: [],
            queryParams: {
                date: null,
                startDate: null,
                endDate: null,
                beginTime: null,
                endTime: null,
            },
        };
    },
    created() {
        this.getNowTime();
        this.getList();
    },
    methods: {
        getList() {
            this.queryParams.startDate = this.startTime[0];
            this.queryParams.endDate = this.startTime[1];
            let myChart = this.$echarts.init(document.getElementById("main"));
            //你进入页面先把图表渲染了  然后才获取的数据把
            myChart.setOption({
                color: ['#5470c6'],
                legend: {},
                tooltip: {},
                xAxis: {
                    type: 'category',
                    data: ['体检人数', '男生数量', '女生数量', '收入', '个检人数', '单位体检人数']
                },
                yAxis: {
                    type: 'value'
                },
                series: [
                    {
                        data: [120, 80, 40, {
                            value: 380,
                            itemStyle: {
                                color: '#a90000'
                            }
                        }, 100, 200],
                        type: 'bar'
                    }
                ]
            });
            this.queryParams.beginTime = this.startTime[0];
            this.queryParams.endTime = this.startTime[1];
            getTiaoNumsByDate(this.queryParams).then(res => {
                let myChart = this.$echarts.init(document.getElementById("main"));
                //你进入页面先把图表渲染了  然后才获取的数据把
                myChart.setOption({
                    color: ['#5470c6'],
                    legend: {},
                    tooltip: {},
                    xAxis: {
                        type: 'category',
                        data: ['体检人数', '男生数量', '女生数量', '收入', '个检人数', '单位体检人数']
                    },
                    yAxis: {
                        type: 'value'
                    },
                    series: [
                        {
                            data: [res.data.tijianNum, res.data.boysNum, res.data.girlsNum, {
                                value: res.data.moneysNum,
                                itemStyle: {
                                    color: '#a90000'
                                }
                            }, res.data.personNum, res.data.tuanDuiNum],
                            type: 'bar'
                        }
                    ]
                });
            })
        },
        // 时间
@@ -105,15 +114,43 @@
            this.startTime = val;
        },
        // / 处理默认选中当前日期
        getNowTime() {
            var curDate = new Date().getTime();
            var dayNum = 7 * 24 * 3600 * 1000;
            var threeDays = curDate - dayNum;
            var sDay = this.getLocalTime(threeDays);
            var end = this.getLocalTime(curDate);
            this.startTime = [sDay, end];
        },
        add0(m) {
            return m < 10 ? "0" + m : m;
        },
        getLocalTime(nS) {
            var time = new Date(nS);
            var y = time.getFullYear();
            var m = time.getMonth() + 1;
            var d = time.getDate();
            var h = time.getHours();
            var mm = time.getMinutes();
            return (
                y +
                "-" +
                this.add0(m) +
                "-" +
                this.add0(d) +
                " " +
                this.add0(h) +
                ":" +
                this.add0(mm)
            );
        },
        // 搜索
        submitForm() {
            this.queryParams.pageNum = 1;
            this.getList();
        },
    },
    mounted() {
        this.getList();
    },
};
</script>
src/views/standard/tijianxinxi/index.vue
@@ -29,11 +29,11 @@
          <el-table v-if="refreshTable" v-loading="loading" :data="projectList" ref="tableRef" border row-key="proId"
            :expand-row-keys="ListId" :row-class-name="selectSingleRow"
            :tree-props="{ children: 'tjProjectList', hasChildren: 'tjProjectList.length>0', }">
            <el-table-column label="项目名称" align="center" prop="proName"  />
            <el-table-column label="已检人数" align="center" prop="a"  />
            <el-table-column label="未检人数" align="center" prop="b"  />
            <el-table-column label="延期人数" align="center" prop="c"  />
            <el-table-column label="弃检人数" align="center" prop="d" />
            <el-table-column label="项目名称" align="center" prop="deptName"  />
            <el-table-column label="已检人数" align="center" prop="yijianNum"  />
            <el-table-column label="未检人数" align="center" prop="weijianNum"  />
            <el-table-column label="延期人数" align="center" prop="yanqiNum"  />
            <el-table-column label="弃检人数" align="center" prop="qijianNum" />
          </el-table>
        </el-col>
      </el-row>
@@ -42,28 +42,14 @@
  
  <script>
  import {
    getProject,
    delProject,
    addProject,
    updateProject,
    ProjectTree,
    deptTree,
    getChartByDeptId
  } from "@/api/hosp/project";
  import { listDept } from "@/api/system/dept";
  import Treeselect from "@riophae/vue-treeselect";
  import "@riophae/vue-treeselect/dist/vue-treeselect.css";
  import IconSelect from "@/components/IconSelect";
  import { listConsumables } from "@/api/hosp/consumables";
  import { Message } from "element-ui";
  import {
    listSfxm,
    getSfxm,
    delSfxm,
    addSfxm,
    updateSfxm,
    gettreeList,
    getListByXmId
  } from "@/api/system/sfxm";
  
  export default {
    name: "Project",
@@ -107,7 +93,6 @@
        tjStandardList: [],
        // 表格树数据
        deptList: [],
        parentNameList: [],
        sfxmId:null,
        // 体检项目表格数据
        projectList: [],
@@ -207,77 +192,26 @@
    },
  
    created() {
      this.getDeptList();
      this.getDeptTree();
    },
    methods: {
      //是否显示选中的值
      display(value) { },
      /** 查询体检项目列表 */
      getList() {
        this.loading = true;
        let data = {
          proName: this.queryParams.proName,
          checkType: this.queryParams.checkType,
          deptId: this.queryParams.deptId,
        };
        ProjectTree(data).then((response) => {
          this.projectList = this.handleTree(response.data.list, "proId");
          this.projectList.forEach(element => {
            element.a="0"
            element.b=0
            element.c="0"
            element.d="0"
            element.tjProjectList.forEach(item => {
                item.a="0"
                item.b=0
                item.c="0"
                item.d="0"
            })
          });
          this.loading = false;
        });
      },
      // // 查询体检项目列表(树形结构)
      getData() {
        /** 查询部门下拉树结构 */
        ProjectTree().then((response) => {
          this.projectOptions = [];
          const project = { proId: 0, proName: "主类目", children: [] };
          project.children = this.handleTree(response.data.list, "proId");
          this.key = response.data.key
          // if (this.key == "Y") {
          //   this.key = response.data.key
          // } else if (response.data.key == "N") {
          //   this.key = response.data.key
          // }
          this.projectOptions.push(project);
        });
      },
      /** 查询部门列表 */
      getDeptList() {
        listDept(this.queryParams).then((response) => {
          console.log(response)
          this.parentNameList = response.data;
          this.deptList = this.handleTree(response.data, "proId");
        });
      },
      /** 查询部门下拉树结构 */
      getDeptTree() {
        deptTree().then((response) => {
          console.log(response,11111)
          this.deptOptions = response.data;
          this.treeId.push(this.deptOptions[0].id)
          let data = {
            deptId : this.deptOptions[0].id
          }
          getChartByDeptId(data).then(res => {
            this.projectList = res.data
          })
        });
      },
      // 筛选节点
      filterNode2(value, data) {
        if (!value) return true;
        return data.xmmc.indexOf(value) !== -1;
      },
      // 筛选节点
      filterNode(value, data) {
        if (!value) return true;
@@ -290,28 +224,8 @@
        let data = {
          deptId: this.queryParams.deptId,
        };
        ProjectTree(data).then((response) => {
          this.projectList = this.handleTree(response.data.list, "proId");
          this.projectList.forEach(element => {
            element.a="0"
            element.b=0
            element.c="0"
            element.d="0"
            element.tjProjectList.forEach(item => {
                item.a="0"
                item.b=0
                item.c="0"
                item.d="0"
            })
          });
          this.ListId.push(this.projectList[0].proId)
          this.key = response.data.key
          // if (this.key == "Y") {
          //   this.key = response.data.key
          // } else if (response.data.key == "N") {
          //   this.key = response.data.key
          // }
        getChartByDeptId(data).then((response) => {
          this.projectList = response.data;
          this.loading = false;
        });
      },
src/views/system/tijian/index.vue
@@ -150,7 +150,7 @@
        <el-form :inline="true" ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="98px"
          v-show="top">
          <el-row>
            <el-col :span="10">
            <el-col :span="9">
              <el-form-item label="介绍人" prop="cusIntroduce" style="display: flex;">
                <el-input  :disabled="isDisabled" v-model="form.cusIntroduce" placeholder="请输入介绍人" />
              </el-form-item>
@@ -160,6 +160,7 @@
                <el-input style="width: 100%;"  :disabled="isDisabled" v-model="form.company" placeholder="请输入工作单位" />
              </el-form-item>
            </el-col>
          </el-row>
        </el-form>
        <el-form :inline="true" ref="form" :model="form" :rules="rules" :label-position="labelPosition" label-width="80px"
@@ -168,7 +169,6 @@
            <el-col :span="24">
              <el-form-item>
                <el-button :disabled="isDisabled" type="primary" size="mini" @click="submitForm">登记</el-button>
                <el-button :disabled="isDisabled" type="primary" size="mini" @click="submitForm">领取方式</el-button>
                <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" @queryTable="getList">重置</el-button>
              </el-form-item>
            </el-col>
@@ -342,7 +342,15 @@
              <el-form-item label="实收金额">
                <el-input placeholder="实收金额" v-model="TotalPrice" style="width: 126px"></el-input>
              </el-form-item>
              <el-form-item label="领取方式" >
                <!-- <el-input style="width: 100%;"  v-model="form.getType" placeholder="请选择领取方式" /> -->
                <el-select  v-model="getType" style="width: 94%">
                  <el-option v-for="dict in dict.type.report_get_type" :key="dict.value" :label="dict.label"
                    :value="dict.value"></el-option>
                </el-select>
           </el-form-item>
              <el-form-item>
                <el-button type="primary" @click="Package" size="mini">选择套餐</el-button>
                <el-button type="primary" @click="submitPrice" :disabled="confirm" v-if="showHidden.has_charge == 'N'"
@@ -603,6 +611,7 @@
import VTreeTransfer from './TreeTransfer.vue'
export default {
  dicts: [
    "report_get_type",
    "dict_user_national",
    "dict_user_marry",
    "sys_yes_no",
@@ -645,6 +654,7 @@
        payType: "0",
        paidIn: "0.00",
      },
      getType:"",
      hospName: "",
      currentDate: "",
      currentTime: "",
@@ -1645,6 +1655,7 @@
          tjFlowingWater: this.tjFlowingWater,
          userId,
          tjType,
          getType:this.getType
        };
      } else {
        data = {
@@ -1653,6 +1664,7 @@
          tjFlowingWater: this.tjFlowingWater,
          userId,
          tjType,
          getType:this.getType
        };
      }
      getOrder(data).then((res) => {
vue.config.js
@@ -36,7 +36,7 @@
      // detail: https://cli.vuejs.org/config/#devserver-proxy
      [process.env.VUE_APP_BASE_API]: {
        //target: `https://ltpeis.xaltjdkj.cn:5501/prod-api/getInfo`,
        target: `http://192.168.0.100:5011`,
        target: `http://192.168.0.106:5011`,
        // // target: `http://192.168.0.99:8080/ltkj-admin`,
        // target: `https://ltpeis.xaltjdkj.cn:5011/ltkj-admin`,
        changeOrigin: true,