lkk
2024-12-16 c7b33db117fd2893d7d1c93bf5d46e87d33e44d0
src/views/system/package/index.vue
@@ -301,8 +301,9 @@
    <el-dialog
      :title="title"
      :visible.sync="open"
      width="1100px"
      width="1500px"
      append-to-body
      :close-on-click-modal="false"
    >
      <el-form
        ref="form"
@@ -431,6 +432,22 @@
            style="width: 150px"
          />
        </el-form-item>
        <el-form-item label="体检类别" prop="tjCategory">
          <el-select
            v-model="form.tjCategory"
            placeholder="请选择是否上架"
            style="width: 150px"
            filterable
            clearable
          >
            <el-option
              v-for="dict in dict.type.dict_tjtype"
              :key="dict.value"
              :label="dict.label"
              :value="dict.value"
            ></el-option>
          </el-select>
        </el-form-item>
        <div v-if="!isCollapsed" style="display: flex">
          <div>
@@ -499,7 +516,7 @@
      </el-table> -->
      <el-row :gutter="20">
        <el-col :span="6">
        <el-col :span="7">
          <div
            style="text-align: center; margin-bottom: 10px; margin-top: 10px"
          >
@@ -519,6 +536,7 @@
              :default-checked-keys="checkedkey"
              :filter-node-method="filterNode"
              ref="tree"
              :render-content="renderContent"
            >
            </el-tree>
          </div>
@@ -541,6 +559,7 @@
              @check-change="handleCurrentChecked1"
              :default-checked-keys="checkedListkey"
              ref="trees"
              :render-content="renderContent"
            >
            </el-tree>
          </div>
@@ -561,9 +580,9 @@
            >
              <el-table-column prop="propinName" label="检查项目">
              </el-table-column>
              <el-table-column prop="proName" label="明细项目" width="260px">
              </el-table-column>
              <el-table-column prop="proPrice" label="原价" width="56px">
              </el-table-column>
              <el-table-column prop="proName" label="明细项目" width="260px">
              </el-table-column>
              <!-- <el-table-column
@@ -584,6 +603,7 @@
                </template> 
              </el-table-column>-->
            </el-table>
            <h3 style="font-weight: 600">合计:{{ pics }}元</h3>
          </div>
        </el-col>
      </el-row>
@@ -636,7 +656,7 @@
import { Message } from "element-ui";
export default {
  name: "Package",
  dicts: ["sys_normal_disable", "sys_yes_no"],
  dicts: ["sys_normal_disable", "sys_yes_no", "dict_tjtype"],
  components: { Packages },
  data() {
    let checkPhoneNum = (rule, value, callback) => {
@@ -650,6 +670,7 @@
      }
    };
    return {
      pics: 0,
      filterText: "",
      DataList: [],
      list1: true,
@@ -760,7 +781,12 @@
    },
    filterNode(value, data) {
      if (!value) return true;
      return data.proName.indexOf(value) !== -1;
      // return data.proName.indexOf(value) !== -1;
      if(data.proName.indexOf(value) !== -1){
        return data.proName.indexOf(value) !== -1;
      }else{
        return data.proEngName.indexOf(value) !== -1;
      }
    },
    /** 查询体检套餐列表 */
    getList() {
@@ -873,6 +899,8 @@
      this.open = true;
      this.title = "体检套餐信息维护";
      this.DataList = [];
      this.checkedkey = [];
      this.checkedListkey = [];
      this.getDataList();
      // getAllList().then((response) => {
      //   this.allList = response.data;
@@ -928,6 +956,7 @@
        this.form.keywords = this.form.keywords.slice(0, -1);
        this.form.keywords = this.form.keywords.split(",");
        this.DataList = [];
        // this.pics = 0;
        this.checkedkey = [];
        this.checkedListkey = [];
        this.getDataList();
@@ -1046,7 +1075,14 @@
        }
      }
    },
    renderContent(h, { node, data, store }) {
      return (
        <span class="custom-tree-node">
          <span>{node.label}</span>
          <span>({data.proPrice}元)</span>
        </span>
      );
    },
    getDataList() {
      this.loading = true;
      getProParentIdDxList().then((response) => {
@@ -1070,6 +1106,10 @@
                          item.propinPrice = item1.proPrice;
                        }
                      });
                      this.pics = 0;
                      this.DataList.forEach((item) => {
                        this.pics += item.proPrice;
                      });
                    }
                  });
                });
@@ -1088,6 +1128,10 @@
              this.DataList.forEach((item) => {
                item.propinName = this.Treedata[0].proName;
                item.propinPrice = this.Treedata[0].proPrice;
              });
              this.pics = 0;
              this.DataList.forEach((item) => {
                this.pics += item.proPrice;
              });
            });
          });
@@ -1108,7 +1152,9 @@
            this.checkedListkey.push(item.proId);
            this.DataList.push(item);
            this.spliceData();
            this.pics = 0;
            this.DataList.forEach((item1) => {
              this.pics += item1.proPrice;
              if (item1.proParentId == data.proId) {
                item1.propinName = data.proName;
                item1.propinPrice = this.dataObj.proPrice;
@@ -1116,10 +1162,12 @@
            });
          });
          this.TotalPrice1 = 0;
          this.pics = 0;
          if (this.DataList.length != 0) {
            this.list1 = false;
            this.DataList.forEach((item) => {
              this.TotalPrice1 = item.proPrice + this.TotalPrice1;
              this.pics += item.proPrice;
            });
          }
        });
@@ -1135,6 +1183,10 @@
            if (item.proParentId == this.dataObj.proId) {
              this.DataList.splice(index, this.TreedataList.length);
            }
          });
          this.pics = 0;
          this.DataList.forEach((item, index) => {
            this.pics += item.proPrice;
          });
        });
      }
@@ -1160,14 +1212,18 @@
          if (item.proId == data.proId) {
            this.DataList.splice(index, 1);
            this.TotalPrice1 = 0;
            this.pics = 0;
            this.DataList.forEach((item1) => {
              this.TotalPrice1 = item1.proPrice + this.TotalPrice1;
              this.pics += item1.proPrice;
              // this.TotalPrice1 = item1.proPrice + this.TotalPrice1;
            });
          }
        });
      } else if (checked == true) {
        this.DataList.push(data);
        this.pics = 0;
        this.DataList.forEach((item1) => {
          this.pics += item1.proPrice;
          if (item1.proParentId == this.dataObj.proId) {
            item1.propinName = this.dataObj.proName;
            item1.propinPrice = this.dataObj.proPrice;
@@ -1175,8 +1231,10 @@
        });
        this.spliceData();
        this.TotalPrice1 = 0;
        this.pics = 0;
        this.DataList.forEach((item1) => {
          this.TotalPrice1 = item1.proPrice + this.TotalPrice1;
          // this.TotalPrice1 = item1.proPrice + this.TotalPrice1;
          this.pics += item1.proPrice;
        });
      }
    },
@@ -1204,13 +1262,15 @@
          this.treeList = JSON.parse(JSON.stringify(this.DataList));
          for (var i = 0; i < this.treeList.length; i++) {
            for (var j = i + 1; j < this.treeList.length; j++) {
              if (this.treeList[i].proParentId == this.treeList[j].proParentId) {
              if (
                this.treeList[i].proParentId == this.treeList[j].proParentId
              ) {
                this.treeList.splice(j, 1);
                j--;
              }
            }
          }
           this.treeList.forEach((item) => {
          this.treeList.forEach((item) => {
            this.form.tjProjectList.push({
              // id: 0,
              proName: item.propinName,
@@ -1387,4 +1447,12 @@
  overflow-y: auto;
  border: 1px solid #d9d9d9;
}
/* .custom-tree-node {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 14px;
    padding-right: 8px;
  } */
</style>