1
lkk
2025-05-07 208d124f1512f45c90ac41849bd50dffda2d4f4a
1
3个文件已修改
257 ■■■■ 已修改文件
src/components/jianqianwenzhen/index.vue 219 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/history/index.vue 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/comp/index.vue 29 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/jianqianwenzhen/index.vue
@@ -59,10 +59,17 @@
                style="width: 710px"
              />
            </el-form-item>
            <el-form-item label="工作单位名称" prop="gongZhong" >
            <el-form-item label="单位名称" prop="dwmc">
              <el-input
                v-model="form.gongZhong"
                placeholder="请输入工种"
                v-model="form.dwmc"
                placeholder="请输入单位名称"
                style="width: 710px"
              />
            </el-form-item>
            <el-form-item label="用工单位" prop="ygdw">
              <el-input
                v-model="form.ygdw"
                placeholder="请输入用工单位"
                style="width: 710px"
              />
            </el-form-item>
@@ -92,7 +99,7 @@
                <el-radio :label="2">否</el-radio>
              </el-radio-group>
            </el-form-item>
            <el-form-item label="接触毒物" prop="contactPoison">
            <!--  <el-form-item label="接触毒物" prop="contactPoison">
              <el-input
                type="textarea"
                rows="4"
@@ -100,8 +107,44 @@
                placeholder="请输入接触毒物"
                style="width: 700px"
              />
            </el-form-item> -->
            <el-form-item label="体检危害因素" prop="tjwhyx">
              <el-select
                filterable
                v-model="form.tjwhyx"
                placeholder="请选择体检危害因素"
                clearable
                style="width: 180px"
              >
                <el-option
                  v-for="dict in dict.type.tj_work_status"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="既往病史" prop="medicalHistory">
            <el-form-item
              label="接触危害因素"
              prop="tcwhyx"
              style="margin-left: 30px"
            >
              <el-select
                filterable
                v-model="form.tcwhyx"
                placeholder="请选择接触危害因素"
                clearable
                style="width: 180px"
              >
                <el-option
                  v-for="dict in dict.type.tj_work_status"
                  :key="dict.value"
                  :label="dict.label"
                  :value="dict.value"
                />
              </el-select>
            </el-form-item>
            <!-- <el-form-item label="既往病史" prop="medicalHistory">
              <el-input
                type="textarea"
                rows="4"
@@ -109,8 +152,33 @@
                placeholder="请输入既往病史"
                style="width: 700px"
              />
            </el-form-item> -->
            <el-form-item label="既往病史" prop="medicalHistory">
              <el-select
                v-model="form.medicalHistory"
                multiple
                allow-create
                filterable
                placeholder="请选择或输入既往病史"
                style="width: 700px"
              >
                <el-option
                  v-for="item in rulesList"
                  :key="item.id"
                  :label="item.icdname"
                  :value="item.icdname"
                />
              </el-select>
              <!-- <el-input
                type="textarea"
                rows="4"
                v-model="form.medicalHistory"
                placeholder="请输入既往病史"
                style="width: 700px"
              /> -->
            </el-form-item>
            <el-form-item label="症状" prop="zzsjj">
            <!--  <el-form-item label="症状" prop="zzsjj">
              <el-select
                multiple
                filterable
@@ -126,7 +194,99 @@
                  :value="dict.proName"
                />
              </el-select>
            </el-form-item>
            </el-form-item> -->
            <div style="width: 900px">
              <el-row :gutter="10" class="mb8">
                <el-col :span="1.5">
                  <el-button
                    type="primary"
                    icon="el-icon-plus"
                    size="mini"
                    @click="addmembers()"
                    >添加
                  </el-button>
                </el-col>
                <el-col :span="1.5">
                  <el-button
                    type="danger"
                    icon="el-icon-delete"
                    size="mini"
                    @click="delemembers()"
                    >删除
                  </el-button>
                </el-col>
              </el-row>
              <el-table
                border
                :data="form.tjAskHistorysList"
                ref="tjAskHistorys"
                style="width: 98%"
                @selection-change="handlebingChange"
              >
                <el-table-column type="selection" width="40" align="center" />
                <el-table-column
                  label="序号"
                  width="80"
                  align="center"
                  type="index"
                  :index="indexMethod"
                />
                <el-table-column
                  label="症状名称"
                  prop="diseaseName"
                  align="center"
                >
                  <template slot-scope="scope">
                    <el-select
                      :remote-method="getRemoteData"
                      v-model="scope.row.diseaseName"
                      remote
                      filterable
                      placeholder="请选择症状名称"
                      clearable
                      @change="jibing"
                    >
                      <el-option
                        v-for="dict in zhenghuzangList"
                        :key="dict.id"
                        :label="dict.proName"
                        :value="dict.proName"
                      />
                    </el-select>
                  </template>
                </el-table-column>
                <el-table-column
                  label="症状日期"
                  width="160"
                  prop="diseaseData"
                  align="center"
                >
                  <template slot-scope="scope">
                    <el-date-picker
                      size="mini"
                      v-model="scope.row.diseaseData"
                      align="right"
                      type="date"
                      placeholder="选择日期"
                      :picker-options="pickerOptions"
                      style="width: 130px"
                      value-format="yyyy-MM-dd"
                    >
                    </el-date-picker>
                  </template>
                </el-table-column>
                <el-table-column label="备注" prop="remark" align="center">
                  <template slot-scope="scope">
                    <el-input
                      size="mini"
                      v-model="scope.row.remark"
                      placeholder="请输入备注"
                    />
                  </template>
                </el-table-column>
              </el-table>
            </div>
          </div>
        </el-collapse-item>
        <el-collapse-item title="月经史" name="2" v-show="sex">
@@ -149,7 +309,8 @@
                v-model="form.yjsfyc"
                placeholder="请选择是否异常"
                clearable
                style="width: 150px"
                style="width: 70px"
                @change="onYjsfycChange"
              >
                <el-option
                  v-for="dict in dict.type.sys_yes_no"
@@ -158,6 +319,9 @@
                  :value="dict.value"
                />
              </el-select>
            </el-form-item>
            <el-form-item label="月经异常描述" prop="ycms">
              <el-input v-model="form.ycms" style="width: 490px" />
            </el-form-item>
          </div>
        </el-collapse-item>
@@ -206,7 +370,7 @@
              <el-input
                v-model="form.xiyanyear"
                style="width: 70px"
              />年 </el-form-item
              />月 </el-form-item
            ><br />
            <el-form-item label="是否饮酒" prop="yinjiu">
              <!-- <el-input v-model="form.yinjiupinlv" placeholder="请输入饮酒频率" /> -->
@@ -229,7 +393,7 @@
              <el-input v-model="form.yinjiupinlv" style="width: 70px" />ml/天
            </el-form-item>
            <el-form-item label="饮酒时间" prop="yinjiuyear">
              <el-input v-model="form.yinjiuyear" style="width: 70px" />年
              <el-input v-model="form.yinjiuyear" style="width: 70px" />月
            </el-form-item>
            <el-form-item label="其他" prop="qita">
              <el-input
@@ -743,7 +907,7 @@
        },
      ],
      icdId: "",
      radio: '1',
      radio: "1",
      zhiye: true,
      queryParams: {
        pageNum: 1,
@@ -791,7 +955,10 @@
      title: "",
      harmTypeList: [],
      // 表单参数
      form: {},
      form: {
        yjsfyc: "", // 是否异常
        ycms: "", // 异常描述
      },
      chageall: [],
      bingshiall: [],
      // 疾病字典表格数据
@@ -806,9 +973,22 @@
            trigger: "blur",
          },
        ],
        ycms: [
          {
            validator: (rule, value, callback) => {
              if (this.form.yjsfyc === "Y" && !value) {
                callback(new Error("月经异常描述不能为空"));
              } else {
                callback();
              }
            },
            trigger: "blur",
          },
        ], // 初始不设置为必填
      },
    };
  },
  watch: {
    jianqianwenzhendata(val, newVla) {
      if (val) {
@@ -867,6 +1047,8 @@
    this.getList();
    this.getzhenzhuangList();
    console.log("接收", this.jianqianwenzhendata);
    // console.log(this.dict.type.sys_yes_no,666666);
    if (this.jianqianwenzhendata.length == 1) {
      this.jianqianwenzhendata.forEach((item) => {
        let tjNumber = item;
@@ -995,6 +1177,19 @@
      this.$forceUpdate();
    },
    indexMethod(index) {
      return (
        (this.queryParams.pageNum - 1) * this.queryParams.pageSize + index + 1
      );
    },
    onYjsfycChange() {
      // 手动触发“月经异常描述”的校验
      this.$nextTick(() => {
        this.$refs.form.validateField('ycms');
      });
    },
    jibing(sel) {
      this.diseaseNames = sel;
      this.rulesList.forEach((item) => {
src/views/hosp/history/index.vue
@@ -133,6 +133,7 @@
              :page.sync="queryParams.pageNum"
              :limit.sync="queryParams.pageSize"
              @pagination="getList"
              small
            />
          </div>
        </div>
@@ -451,12 +452,12 @@
</script>
<style lang="scss" scoped >
.pagi {
  margin-right: -10px;
  margin-right: 30px;
}
/* .pag1 {
  width: 30%;
} */
/* .pagi1 {
  width: 8%;
}  */
.hist1 {
  width: 1580px;
  display: flex;
src/views/system/comp/index.vue
@@ -1236,8 +1236,8 @@
        >
          <el-form-item label="单位类型" prop="isZybUnit">
            <el-radio-group v-model="form.isZybUnit">
              <el-radio :label="false">普通单位</el-radio>
              <el-radio :label="true">职业病单位</el-radio>
              <el-radio :label="0">普通单位</el-radio>
              <el-radio :label="1">职业病单位</el-radio>
            </el-radio-group>
          </el-form-item>
          <el-form-item
@@ -1476,7 +1476,7 @@
      id: "",
      // 表单参数
      form: {
        isZybUnit: false,
        isZybUnit: 0,
      },
      lastXianPrice: 0,
      forms: {
@@ -1555,6 +1555,7 @@
      return this.sfzs === "Y";
    },
  },
  created() {
    this.getList();
  },
@@ -1718,6 +1719,7 @@
        validTime: null,
        wbm: null,
        deleted: null,
        isZybUnit: 0
      };
      this.resetForm("form");
    },
@@ -1777,6 +1779,7 @@
    /** 新增按钮操作 */
    handleAdd() {
      this.reset();
      this.form.isZybUnit = 0;
      this.open = true;
      this.title = "添加体检单位信息维护";
    },
@@ -1785,7 +1788,10 @@
      this.reset();
      const drugManufacturerId = row.drugManufacturerId || this.ids;
      getComp(drugManufacturerId).then((response) => {
        this.form = response.data;
        // 不要直接赋值整个 response.data,而是逐个属性赋值
        Object.assign(this.form, response.data);
        this.form.isZybUnit = response.data.isZybUnit === true ? 1 : 0;
        console.log('修改时的 isZybUnit 值:', this.form.isZybUnit);
        this.open = true;
        this.title = "修改体检单位信息维护";
      });
@@ -1823,7 +1829,6 @@
              new Big(0)
            ).toNumber();
          });
          // ----------------------------------------------------------
        })
        .catch(() => {
          this.youhui = oldValue;
@@ -2423,19 +2428,19 @@
    submitForm() {
      this.$refs["form"].validate((valid) => {
        if (valid) {
          const submitData = {
            ...this.form,
            isZybUnit: Boolean(this.form.isZybUnit)  // 转换为布尔值
          };
          if (this.form.drugManufacturerId != null) {
            updateComp(this.form).then((response) => {
            updateComp(submitData).then((response) => {
              this.$modal.msgSuccess("修改成功");
              this.open = false;
              this.getList();
            });
          } else {
            if (
              this.form.cnName &&
              this.form.contactPerson &&
              this.form.contactPhone
            ) {
              addComp(this.form).then((response) => {
            if (this.form.cnName && this.form.contactPerson && this.form.contactPhone) {
              addComp(submitData).then((response) => {
                this.$modal.msgSuccess("新增成功");
                this.open = false;
                this.getList();