1
wwl
2025-01-21 c36ada6253862acaa44a1dc0eb5b9cbb28e68fd8
src/views/hosp/order/index.vue
@@ -177,6 +177,7 @@
          type="primary"
          size="mini"
          @click="handleRevoke"
          :loading="isLoading"
          :disabled="single"
          >撤销签到</el-button
        >
@@ -230,6 +231,16 @@
          :disabled="single"
          v-hasPermi="['hosp:order:export']"
          >打印补录单</el-button
        >
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="primary"
          size="mini"
          @click="ForceChexiao"
          :disabled="single"
          v-hasPermi="['qzcx']"
          >强制撤销</el-button
        >
      </el-col>
      <right-toolbar
@@ -648,6 +659,7 @@
                      width="260px"
                    >
                    </el-table-column>
                    <el-table-column prop="proPrice" label="原价" width="56px">
                    </el-table-column>
@@ -752,6 +764,8 @@
                >
                  <el-table-column prop="propinName" label="检查项目">
                  </el-table-column>
                  <el-table-column prop="sl" label="数量" width="56px">
                  </el-table-column>
                  <el-table-column prop="proPrice" label="原价" width="56px">
                  </el-table-column>
                  <el-table-column
@@ -831,7 +845,7 @@
                        style="width: 90px"
                      ></el-input>
                    </el-form-item>
                    <el-form-item label="付款类型" prop="payType">
                    <el-form-item label="付款类型">
                      <el-select
                        style="width: 120px"
                        v-model="payType"
@@ -851,6 +865,7 @@
                        type="primary"
                        @click="submitPrice"
                        :disabled="confirm"
                        :loading="isSubmit"
                        style="margin-top: 34px"
                        >提交</el-button
                      >
@@ -1101,7 +1116,9 @@
          >
            <el-table-column prop="propinName" label="检查项目">
            </el-table-column>
            <el-table-column prop="proName" label="明细项目" width="260px">
            <el-table-column prop="proName" label="明细项目" width="200px">
            </el-table-column>
            <el-table-column prop="sl" label="数量" width="56px">
            </el-table-column>
            <el-table-column prop="proPrice" label="原价" width="56px">
            </el-table-column>
@@ -1128,7 +1145,95 @@
        </div>
      </div>
      <div class="heji">
      <el-form
        :model="form"
        inline
        style="display: flex; justify-content: space-between; margin-top: 20px"
      >
        <!-- 体检类型 -->
        <el-form-item label="体检类型" prop="tjType" style="display: flex">
          <div class="type">
            {{ { 1: "团队", 2: "个人", 3: "团体票" }[form.tjType] }}
          </div>
        </el-form-item>
        <!-- 原价 -->
        <el-form-item label="原价" style="display: flex">
          <el-input
            placeholder="原价"
            :value="TotalPrice1"
            disabled
            style="width: 90px"
          ></el-input>
        </el-form-item>
        <!-- 折扣设定 -->
        <el-form-item label="折扣" style="display: flex">
          <el-input
            style="width: 90px"
            type="number"
            v-model="discount"
            :value="discount"
          ></el-input>
        </el-form-item>
        <!-- 应付金额 -->
        <el-form-item label="应付" style="display: flex">
          <el-input
            placeholder="应付金额"
            :value="TotalPrice1 * (discount / 10)"
            style="width: 90px"
          ></el-input>
        </el-form-item>
        <!-- 付款类型 -->
        <el-form-item label="付款类型" prop="payType" style="display: flex">
          <el-select
            style="width: 120px"
            v-model="payType"
            placeholder="请选择付款类型"
            @change="onPayTypeChange"
          >
            <el-option
              v-for="dict in dict.type.dict_pay_type"
              :key="dict.value"
              :label="dict.label"
              :value="dict.value"
            ></el-option>
          </el-select>
        </el-form-item>
        <!-- 结算方式 -->
        <el-form-item label="结算方式" prop="jsType" style="display: flex">
          <el-select
            v-model="jsType"
            placeholder="请选择结算方式"
            style="width: 130px"
            clearable
          >
            <el-option
              v-for="dict in dict.type.reservation_pay_type"
              :key="dict.value"
              :label="dict.label"
              :value="dict.value"
            />
          </el-select>
        </el-form-item>
        <!-- 提交按钮 -->
        <el-form-item style="display: flex">
          <el-button
            type="primary"
            :loading="isSubmit1"
            @click="submitPrice1"
            :disabled="confirm"
          >
            提交
          </el-button>
        </el-form-item>
      </el-form>
      <!-- <div class="heji">
        <div class="o">
          <el-form
            :model="form"
@@ -1183,6 +1288,21 @@
                ></el-option>
              </el-select>
            </el-form-item>
            <el-form-item label="结算方式" prop="payType">
              <el-select
                v-model="payType"
                placeholder="请选择结算方式"
                style="width: 130px"
                clearable
              >
                <el-option
                  v-for="dict in dict.type.reservation_pay_type"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                />
              </el-select>
            </el-form-item>
            <el-form-item style="display: flex">
              <el-button
                type="primary"
@@ -1193,7 +1313,7 @@
            </el-form-item>
          </el-form>
        </div>
      </div>
      </div> -->
    </el-dialog>
    <!-- 添加或修改体检记录对话框 -->
@@ -1506,6 +1626,7 @@
  getTransitionInfo,
  getBlproByTjh,
  revokeBlProByBldhAndTjh,
  getForceChexiao,
} from "@/api/hosp/order";
import moment from "moment";
import { getZhList, getlistByZhId } from "@/api/system/package";
@@ -1524,12 +1645,11 @@
  queryCompany,
  addbatch,
} from "@/api/team/tuanti";
import { createLogger } from "vuex";
export default {
  components: {
    ViewPdf,
  },
  dicts: ["dict_pay_type", "dict_team"],
  dicts: ["dict_pay_type", "dict_team", "reservation_pay_type"],
  name: "Order",
  data() {
    return {
@@ -1545,6 +1665,9 @@
      DataList3: [],
      bldhid: "",
      budadaozhen: false,
      isLoading: false,
      isSubmit: false,
      isSubmit1: false,
      huizongList: [],
      DataLists: [],
      infoList: [],
@@ -1572,6 +1695,7 @@
      packagedataList: [],
      cusId: "",
      payType: "0",
      jsType: "0",
      packageList: [],
      checkedkeys: [],
      dialogVisible: false,
@@ -1834,7 +1958,6 @@
      // 获取单位信息集合
      getCompany(this.queryParams).then((response) => {
        this.CompanyList = response.data;
        console.log(this.CompanyList, 555);
        this.loading = false;
      });
@@ -1931,14 +2054,22 @@
        });
    },
    handleRevoke() {
      this.$confirm("您确认要撤销?", "确认信息", {
        distinguishCancelAndClose: true,
        confirmButtonText: "确认",
        cancelButtonText: "取消",
      })
    // 强制撤销按钮
    ForceChexiao() {
      const tjNum = this.tjnumbers;
      this.$confirm(
        "您是否需要强制撤销?撤销后该人员本次体检记录不可恢复!",
        "确认信息",
        {
          distinguishCancelAndClose: true,
          confirmButtonText: "确认",
          cancelButtonText: "取消",
          customClass: "custom-message-box",
        }
      )
        .then(() => {
          revokeTjOrderByTjNum(this.tjnumbers).then((res) => {
          getForceChexiao(tjNum).then((res) => {
            this.$modal.msgSuccess("撤销成功");
            this.getList();
          });
@@ -1950,6 +2081,43 @@
              message: "已取消",
            });
          }
        });
      this.$nextTick(() => {
        // 确保弹框渲染后应用样式
        const messageBox = document.querySelector(
          ".custom-message-box .el-message-box__message"
        );
        if (messageBox) {
          messageBox.style.color = "red"; // 通过 JS 强制设置颜色
        }
      });
    },
    handleRevoke() {
      this.isLoading = true;
      this.$confirm("您确认要撤销?", "确认信息", {
        distinguishCancelAndClose: true,
        confirmButtonText: "确认",
        cancelButtonText: "取消",
      })
        .then(() => {
          revokeTjOrderByTjNum(this.tjnumbers).then((res) => {
            this.$modal.msgSuccess("撤销成功");
            // this.isLoading = false;
            this.getList();
          });
        })
        .catch((action) => {
          if (action === "cancel") {
            this.$message({
              type: "warning",
              message: "已取消",
            });
          }
        })
        .finally(() => {
          // 不论操作成功还是失败,都会执行
          this.isLoading = false;
        });
    },
    /** 点击显示体检报告报表*/
@@ -2161,7 +2329,7 @@
        var discount = "";
        response.data.water.forEach((item) => {
          copeWith += item.copeWith;
          paidIn += item.copeWith;
          paidIn += item.paidIn;
          discount = item.discount;
        });
        this.bill.push({
@@ -2202,7 +2370,7 @@
        var discount = "";
        response.data.water.forEach((item) => {
          copeWith += item.copeWith;
          paidIn += item.copeWith;
          paidIn += item.paidIn;
          discount = item.discount;
        });
        this.bill.push({
@@ -2313,8 +2481,10 @@
        let datas = {
          zhId: data.id,
        };
        getlistByZhId(datas).then((res) => {
          this.packagedataList = res.data.tjProjectList;
          for (var i = 0; i < this.packagedataList.length; i++) {
            let proId = this.packagedataList[i].proId;
            getProSonDxList(proId).then((res) => {
@@ -2466,7 +2636,6 @@
            this.checkedListkey.push(item.proId);
            this.DataList.push(item);
            this.DataList3 = this.DataList.concat(this.Datalists);
            console.log(this.DataList, 77777);
            this.spliceData();
            this.DataList.forEach((item1) => {
              if (item1.proParentId == data.proId) {
@@ -2477,7 +2646,7 @@
          this.TotalPrice1 = 0;
          if (this.DataList3.length != 0) {
            this.DataList3.forEach((item) => {
              this.TotalPrice1 += item.proPrice;
              this.TotalPrice1 += item.proPrice * item.sl;
            });
          }
          // this.TotalPrice1 = 0;
@@ -2530,7 +2699,6 @@
        });
      } else if (checked == true) {
        this.DataList.push(data);
        console.log(this.DataList, 6666);
        this.DataList.forEach((item1) => {
          if (item1.proParentId == this.dataObj.proId) {
            item1.propinName = this.dataObj.proName;
@@ -2539,6 +2707,9 @@
        this.spliceData();
        this.TotalPrice1 = 0;
        this.DataList.forEach((item1) => {
          console.log(item1.proPrice, 3322);
          console.log(this.TotalPrice1, 1122);
          this.TotalPrice1 = item1.proPrice + this.TotalPrice1;
        });
        if (this.marryalls != 0) {
@@ -2665,6 +2836,7 @@
    // 收费按钮
    submitPrice() {
      this.proIds = [];
      this.isSubmit = true;
      if (this.DataList.length != 0) {
        this.DataList.forEach((item) => {
          this.proIds.push(item.proId);
@@ -2700,6 +2872,7 @@
            payType: this.payType,
          };
          getwater(data).then((res) => {
            this.isSubmit = false;
            this.$modal.msgSuccess("提交成功");
            this.mobanId = res.data.mobanId;
            this.waterId = res.data.waterId;
@@ -2715,6 +2888,7 @@
    // 收费按钮
    submitPrice1() {
      this.proIds = [];
      this.isSubmit1 = true;
      if (this.DataList.length != 0) {
        this.DataList.forEach((item) => {
          this.proIds.push(item.proId);
@@ -2744,10 +2918,12 @@
            discount,
            copeWith,
            tjType,
            payStasus: this.jsType,
            orderId: this.orderIds,
            tjProIds: this.proIds,
            payType: this.payType,
          };
          getwater(data).then((res) => {
            this.$modal.msgSuccess("提交成功");
            this.mobanId = res.data.mobanId;
@@ -2757,6 +2933,7 @@
            const params = { viewNum, tjnumber };
            this.$tab.openPage("收款小票", "/report/charge", params);
            this.Projectopen1 = false;
            this.isSubmit1 = false;
          });
        }
      });
@@ -2871,6 +3048,12 @@
// .el-dialog__body {
//   padding: 20px;
// }
::v-deep .el-message-box__message {
  color: red !important; /* 强制设置颜色为红色 */
}
// .custom-message-box .el-message-box__message {
//   color: red !important; /* 设置文字为红色 */
// }
.o {
  margin-top: 8px;
}
@@ -2918,6 +3101,7 @@
  display: flex;
  flex-direction: column;
}
::v-deep .el-step__title.is-process {
  color: rgb(24, 144, 255);
}