qinxianzhangyao
2024-07-05 97261fe1216d84c14e9f257050f09ff9101d307f
qxtj
4个文件已修改
260 ■■■■ 已修改文件
src/api/hosp/order.js 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/request.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/doctor/examination/index.vue 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/order/index.vue 227 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/hosp/order.js
@@ -351,3 +351,21 @@
    }
  })
}
export function getBlproByTjh(tjNumber) {
  return request({
    url: '/hosp/order/getBlproByTjh',
    method: 'get',
    params: {
      tjNum:tjNumber
    }
  })
}
export function revokeBlProByBldhAndTjh(data) {
  return request({
    url: '/hosp/order/revokeBlProByBldhAndTjh',
    method: 'post',
    data:data
  })
}
src/utils/request.js
@@ -17,7 +17,7 @@
  // axios中请求配置有baseURL选项,表示请求URL公共部分
  baseURL: process.env.VUE_APP_BASE_API,
  // 超时
  timeout: 20000
  // timeout: 20000
})
// request拦截器
src/views/doctor/examination/index.vue
@@ -311,6 +311,7 @@
      exaList: [],
      // 表单参数
      form: {},
      clearTimeSet:null,
      tjNumbers: "",
      multipleSelection: "",
      tjnum: "",
@@ -505,7 +506,6 @@
      });
    },
    tableRowClassName({ row, rowIndex }) {
      console.log(111);
      for (let i = 0; i < this.selectList.length; i++) {
        if (row === this.selectList[i]) {
          return "warning-row";
@@ -549,13 +549,24 @@
        });
      });
    },
    setTime() {
      //设置定时器
      this.clearTimeSet = setInterval(() => {
        this.$modal.closeLoading();
      }, 300000);
    },
    tongbu(row) {
      // this.$refs.tb.toggleRowSelection(row);
      this.$modal.loading("正在同步,请稍候...");
      this.setTime();
      let tjNumber = row.tjNumber;
      dataSynchronization(tjNumber).then((res) => {
        if (res.code == 200) {
          // this.$forceUpdate();
          // this.getList();
          clearInterval(this.clearTimeSet)
          this.clearTimeSet=null
          this.$modal.closeLoading();
          this.$modal.msgSuccess("同步成功!");
        }
      });
src/views/hosp/order/index.vue
@@ -116,7 +116,7 @@
          >补录项目</el-button
        >
      </el-col>
      <!-- <el-col :span="1.5">
      <el-col :span="1.5">
        <el-button
          type="primary"
          size="mini"
@@ -125,7 +125,7 @@
          v-hasPermi="['hosp:order:export']"
          >撤销补录</el-button
        >
      </el-col> -->
      </el-col>
      <el-col :span="1.5">
        <el-button
@@ -841,13 +841,21 @@
        </el-tab-pane> -->
        <el-tab-pane label="项目汇总" name="second">
          <el-table :data="huizongList" style="width: 100%" max-height="280">
            <el-table-column align="center" prop="newID" label="序号" width="50"> </el-table-column>
            <el-table-column
              align="center"
              prop="newID"
              label="序号"
              width="50"
            >
            </el-table-column>
            <el-table-column align="center" prop="parent_pro_name" label="项目">
            </el-table-column>
            <el-table-column align="center" prop="ks" label="科室"> </el-table-column>
            <el-table-column align="center" prop="price" label="费用合计"> </el-table-column>
            <el-table-column align="center" prop="ks" label="科室">
            </el-table-column>
            <el-table-column align="center" prop="price" label="费用合计">
            </el-table-column>
          </el-table>
          <el-table :data="bill" style="width: 100%;margin-top: 10px;">
          <el-table :data="bill" style="width: 100%; margin-top: 10px">
            <el-table-column align="center" prop="copeWith" label="应付">
            </el-table-column>
            <el-table-column align="center" prop="discount" label="折扣">
@@ -857,15 +865,36 @@
          </el-table>
        </el-tab-pane>
        <el-tab-pane label="明细项目" name="third">
          <el-table :data="infoList" style="width: 100%" max-height    ="300" :span-method="objectSpanMethod1">
            <el-table-column align="center" prop="newID" label="序号"  width="50"> </el-table-column>
          <el-table
            :data="infoList"
            style="width: 100%"
            max-height="300"
            :span-method="objectSpanMethod1"
          >
            <el-table-column
              align="center"
              prop="newID"
              label="序号"
              width="50"
            >
            </el-table-column>
            <el-table-column align="center" prop="parent_pro_name" label="父项">
            </el-table-column>
            <el-table-column align="center" prop="pro_name" label="子项"> </el-table-column>
            <el-table-column align="center" prop="danjia" label="单价"> </el-table-column>
            <el-table-column align="center" prop="num" label="数量"> </el-table-column>
            <el-table-column align="center" prop="zongjia" label="总价"> </el-table-column>
            <el-table-column align="center" prop="time" label="开单时间"  width="180"> </el-table-column>
            <el-table-column align="center" prop="pro_name" label="子项">
            </el-table-column>
            <el-table-column align="center" prop="danjia" label="单价">
            </el-table-column>
            <el-table-column align="center" prop="num" label="数量">
            </el-table-column>
            <el-table-column align="center" prop="zongjia" label="总价">
            </el-table-column>
            <el-table-column
              align="center"
              prop="time"
              label="开单时间"
              width="180"
            >
            </el-table-column>
          </el-table>
        </el-tab-pane>
      </el-tabs>
@@ -874,43 +903,64 @@
      </div>
    </el-dialog>
    <!-- <el-dialog
      :title="title"
      :visible.sync="Projectopen"
    <el-dialog
      :title="title1"
      :visible.sync="Projectssopen"
      width="1100px"
      style="height: 860px"
      append-to-body
    >
      <el-row type="flex" class="row-bg" justify="space-around">
        <el-col :span="6">
        <el-col :span="13">
          <div
            style="text-align: center; margin-bottom: 10px; margin-top: 10px"
          >
            项目列表
            补录列表
          </div>
          <el-input placeholder="输入关键字进行过滤" v-model="filterText">
          </el-input>
          <div class="tab3">
            <el-table
              :data="DataList"
              border
              style="width: 100%"
              height="400"
              :span-method="objectSpanMethod"
            <el-table :data="DataLists" border style="width: 100%" height="400"  @selection-change="handleProjectssChange" >
              <el-table-column type="selection" width="40" align="center" />
              <el-table-column
                prop="id"
                label="序号"
                align="center"
                width="49px"
            >
              <el-table-column prop="propinName" label="检查项目">
              </el-table-column>
              <el-table-column prop="proPrice" label="原价" width="56px">
              <el-table-column
                prop="bldh"
                label="补录单号"
                align="center"
                width="155px"
              >
              </el-table-column>
              <el-table-column prop="proName" label="明细项目" width="260px">
              <el-table-column
                prop="blsj"
                label="补录时间"
                align="center"
                width="156px"
              >
              </el-table-column>
              <el-table-column
                prop="blrmc"
                label="补录人"
                align="center"
                width="96px"
              >
              </el-table-column>
              <el-table-column
                prop="blje"
                label="补录金额"
                align="center"
                width="74px"
              >
              </el-table-column>
            </el-table>
          </div>
        </el-col>
       
        <el-col :span="11">
        <el-col :span="10">
          <div class="grid-content bg-purple">
            <div
              style="text-align: center; margin-bottom: 10px; margin-top: 10px"
@@ -918,11 +968,11 @@
              补录项目
            </div>
            <el-table
              :data="DataList"
              :data="DataListss"
              border
              style="width: 100%"
              height="400"
              :span-method="objectSpanMethod"
              :span-method="objectSpanMethod2"
            >
              <el-table-column prop="propinName" label="检查项目">
              </el-table-column>
@@ -930,13 +980,15 @@
              </el-table-column>
              <el-table-column prop="proName" label="明细项目" width="260px">
              </el-table-column>
            </el-table>
          </div>
        </el-col>
      </el-row>
    </el-dialog> -->
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">撤 销</el-button>
        <!-- <el-button @click="cancel">取 消</el-button> -->
      </div>
    </el-dialog>
  </div>
</template>
@@ -949,6 +1001,7 @@
  getNewDateList,
  revokeTjOrderByTjNum,
  getTransitionInfo,
  getBlproByTjh,revokeBlProByBldhAndTjh
} from "@/api/hosp/order";
import moment from "moment";
import { getwater } from "@/api/hosp/customer";
@@ -968,11 +1021,15 @@
  data() {
    return {
      huizongList: [],
      DataLists:[],
      infoList: [],
      bldhs:[],
      activeName1: "second",
      filterText: "",
      orderIds: "",
      tjnumbers: "",
      Projectssopen: false,
      title1: "",
      cusIds: "",
      userIds: "",
      cusIdcard: "",
@@ -992,6 +1049,7 @@
      flag: true,
      bill: null,
      Treedata: [],
      DataListss:[],
      checkedkey: [],
      checkedListkey: [],
      defaultProps: {
@@ -1480,7 +1538,18 @@
      });
    },
    revokeProject(){
      getBlproByTjh(this.tjnumbers).then((res) => {
        if (res.data) {
          this.DataLists = res.data
          this.Projectssopen = true;
          this.title1 = "撤销补录";
        } else {
          this.$message({
            type: "warning ",
            message: "该客户没有补录项目",
          });
        }
      });
    },
    // 补录项目
    handleProject1() {
@@ -1632,6 +1701,27 @@
      }
    },
    objectSpanMethod2({ row, column, rowIndex, columnIndex }) {
      // console.log(row, column, rowIndex, columnIndex);
      let fields = ["propinName"];
      let cellValue = row[column.property];
      if (cellValue && fields.includes(column.property)) {
        let prevRow = this.DataListss[rowIndex - 1];
        let nextRow = this.DataListss[rowIndex + 1];
        if (prevRow && prevRow[column.property] === cellValue) {
          return { rowspan: 0, colspan: 0 };
        } else {
          let countRowspan = 1;
          while (nextRow && nextRow[column.property] === cellValue) {
            nextRow = this.DataListss[++countRowspan + rowIndex];
          }
          if (countRowspan > 1) {
            return { rowspan: countRowspan, colspan: 1 };
          }
        }
      }
    },
    // 收费按钮
    submitPrice() {
      this.proIds = [];
@@ -1715,26 +1805,49 @@
      });
    },
    handleProjectssChange(selection){
      this.DataListss =[]
      this.bldhs = selection.map((item) => item.bldh);
      selection.forEach(item => {
        item.projectList.forEach(item1 => {
          item1.children.forEach(item2 => {
            this.DataListss.push(item2)
            if(this.DataListss.length != 0){
              this.DataListss.forEach(item => {
                if(item.proParentId ==item1.proId )
                item.propinName= item1.proName
              })
            }
          })
        })
      })
    },
    /** 提交按钮 */
    // submitForm() {
    //   this.$refs["form"].validate(valid => {
    //     if (valid) {
    //       if (this.form.orderId != null) {
    //         updateOrder(this.form).then(response => {
    //           this.$modal.msgSuccess("修改成功");
    //           this.open = false;
    //           this.getList();
    //         });
    //       } else {
    //         addOrder(this.form).then(response => {
    //           this.$modal.msgSuccess("新增成功");
    //           this.open = false;
    //           this.getList();
    //         });
    //       }
    //     }
    //   });
    // },
    submitForm() {
      this.$confirm(" 是否撤销该补录项目?", "提示", {
        confirmButtonText: "是",
        cancelButtonText: "否",
        type: "warning",
      })
        .then(() => {
          let data = {
            tjh: this.tjnumbers,
            bldhs:this.bldhs
          }
          revokeBlProByBldhAndTjh(data).then(res => {
            this.Projectssopen =false
          })
        })
        .catch(() => {
          this.$message({
            type: "info",
            message: "已取消撤销",
          });
          this.Projectssopen =false
        });
    },
    /** 导出按钮操作 */
    handleExport() {