WXL
昨天 f64155f6ad27c50451bb7d4a15f553bc72ead7de
年龄计算相关
已添加1个文件
已修改18个文件
401 ■■■■ 文件已修改
dist-opo.zip 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/components/fundsummary/index.vue 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donateannex/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatebaseinfo/index.vue 141 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatefinish/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatefinishcheck/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donateorgan/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donateorganstatics/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donatereview/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donationdetails/index.vue 48 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/donationwitness/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/ethicalReview/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/fund/applyDetail/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/fundstatistics/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/medicalevaluation/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/organallocation/index0.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/project/relativesconfirmation/index.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/medicalevalustion/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/system/student/index.vue 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
dist-opo.zip
Binary files differ
src/views/project/components/fundsummary/index.vue
@@ -54,8 +54,6 @@
</template>
<script>
//这里可以导入其他文件(比如:组件,工具js,第三方插件js,json文件,图片文件等等)
//例如:import 《组件名称》 from '《组件路径》';
import { getDonationCost, exportFundCost } from "@/api/project/financesubject";
export default {
  name: "fundsummary",
src/views/project/donateannex/index.vue
@@ -163,7 +163,21 @@
          <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="120" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0
                ? `${scope.row.age}${scope.row.ageunit}`
                : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
        align="center"
src/views/project/donatebaseinfo/index.vue
@@ -217,7 +217,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
        align="center"
@@ -457,8 +469,15 @@
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="年龄" prop="age">
                <el-input v-model="form.age" placeholder="请输入年龄" />
              <el-form-item label="学历" prop="education">
                <el-select v-model="form.education" placeholder="请选择学历">
                  <el-option
                    v-for="dict in dict.type.sys_education"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
              </el-form-item>
            </el-col>
          </el-row>
@@ -471,10 +490,19 @@
                  v-model="form.birthday"
                  type="date"
                  style="width: 174px"
                  value-format="yyyy-MM-dd HH:mm:ss"
                  @change="calculateAge"
                  value-format="yyyy-MM-dd"
                  placeholder="选择出生日期"
                >
                </el-date-picker>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <!-- <el-form-item label="年龄" prop="age">
                <el-input v-model="form.age" placeholder="请输入年龄" />
              </el-form-item> -->
              <el-form-item label="年龄" prop="age">
                <el-input v-model="form.andAge" disabled> </el-input>
              </el-form-item>
            </el-col>
            <el-col :span="6">
@@ -482,18 +510,6 @@
                <el-select v-model="form.occupation" placeholder="请选择职业">
                  <el-option
                    v-for="dict in dict.type.sys_occupation"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
                  ></el-option>
                </el-select>
              </el-form-item>
            </el-col>
            <el-col :span="6">
              <el-form-item label="学历" prop="education">
                <el-select v-model="form.education" placeholder="请选择学历">
                  <el-option
                    v-for="dict in dict.type.sys_education"
                    :key="dict.value"
                    :label="dict.label"
                    :value="dict.value"
@@ -1041,7 +1057,11 @@
        sex: null,
        idcardtype: null,
        idcardno: null,
        age: null,
        age: null, // 年龄(年)
        andAge: "",
        ageunit: "年", // 单位,通常固定为“年”
        age2: null, // 年龄(月或天)
        ageunit2: "月", // 单位,根据计算决定是“月”还是“天”
        ageunit: null,
        birthday: null,
        phone: null,
@@ -1144,7 +1164,7 @@
          { required: true, message: "请正确输入证件号码", trigger: "blur" }
        ],
        sex: [{ required: true, message: "性别不能为空", trigger: "blur" }],
        age: [{ required: true, message: "请输入年龄", trigger: "blur" }],
        // age: [{ required: true, message: "请输入年龄", trigger: "blur" }],
        treatmenthospitalno: [
          { required: true, message: "请选择医疗机构", trigger: "blur" }
        ],
@@ -1287,7 +1307,83 @@
        this.currentuser = response.data;
      });
    },
    calculateAge(birthday) {
      if (!birthday) {
        // 清空年龄字段
        this.form.age = null;
        this.form.age2 = null;
        // this.form.age3 = null;
        return;
      }
      const birthDate = new Date(birthday);
      const today = new Date();
      // 计算总月份差异
      let yearDiff = today.getFullYear() - birthDate.getFullYear();
      let monthDiff = today.getMonth() - birthDate.getMonth();
      let dayDiff = today.getDate() - birthDate.getDate();
      // 如果当前日期的天数小于出生日期的天数,则借月
      if (dayDiff < 0) {
        monthDiff--;
        // 获取上个月的最后一天
        const lastDayOfMonth = new Date(
          today.getFullYear(),
          today.getMonth(),
          0
        ).getDate();
        dayDiff += lastDayOfMonth;
      }
      // 如果月份差为负,则借年
      if (monthDiff < 0) {
        yearDiff--;
        monthDiff += 12;
      }
      // 赋值年部分
      this.form.age = yearDiff;
      this.form.ageunit = "岁";
      // 赋值月部分(或者您也可以选择显示剩余的天数)
      this.form.age2 = monthDiff;
      this.form.ageunit2 = "月";
      // 如果您还想显示天数
      // this.form.age3 = dayDiff;
      // this.form.ageunit3 = '天';
      // 如果年龄小于1岁,可能您希望用月或天来表示主年龄
      // 这里是一个简单的逻辑,您可以根据需求调整
      if (yearDiff === 0) {
        if (monthDiff === 0) {
          // 小于1个月,用天表示
          this.form.age = dayDiff;
          this.form.ageunit = "天";
          this.form.age2 = null; // 清空第二字段
          // this.form.age3 = null;
        } else {
          // 小于1年,用月表示
          this.form.age = monthDiff;
          this.form.ageunit = "月";
          this.form.age2 = dayDiff; // 第二字段显示天
          this.form.ageunit2 = "天";
        }
      }
      this.form.andAge = `${
        this.form.age && this.form.age !== 0
          ? `${this.form.age}${this.form.ageunit}`
          : ""
      } ${
        this.form.age2 && this.form.age2 !== 0
          ? `${this.form.age2}${this.form.ageunit2}`
          : ""
      }`.trim();
      this.$forceUpdate(); // 强制更新
      console.log(this.form.andAge);
    },
    LoadReportList() {
      listDonatebaseinfo().then(res => {
        let list = res.rows;
@@ -1450,7 +1546,8 @@
          // 赋值给表格
          this.form.sex = sex;
          this.form.birthday = birthday;
          this.form.age = age;
          this.calculateAge(birthday);
          // this.form.age = age;
        } else {
        }
      } catch {}
@@ -1927,4 +2024,10 @@
  margin: auto !important;
  padding-bottom: 0px !important;
}
::v-deep .el-input.is-disabled .el-input__inner {
  background-color: #fff;
  border-color: #dfe4ed;
  color: #000;
  cursor: not-allowed;
}
</style>
src/views/project/donatefinish/index.vue
@@ -155,7 +155,21 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0
                ? `${scope.row.age}${scope.row.ageunit}`
                : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
        align="center"
src/views/project/donatefinishcheck/index.vue
@@ -139,7 +139,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="现所在地市"
        align="center"
src/views/project/donateorgan/index.vue
@@ -186,7 +186,19 @@
          <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="获取前活检"
        width="160"
src/views/project/donateorganstatics/index.vue
@@ -456,7 +456,21 @@
        </template>
      </el-table-column>
      <el-table-column label="性别" align="center" prop="sex" />
      <el-table-column label="年龄" align="center" prop="age" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0
                ? `${scope.row.age}${scope.row.ageunit}`
                : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="捐献类别 根据字典sys_DonationCategory"
        align="center"
src/views/project/donatereview/index.vue
@@ -144,7 +144,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="现所在地市"
        align="center"
src/views/project/donationdetails/index.vue
@@ -278,7 +278,11 @@
              </el-col>
              <el-col :span="6">
                <el-form-item label="年龄" prop="age">
                  <el-input v-model="form.age" placeholder="请输入年龄" />
                  <el-input
                    disabled
                    v-model="form.andAge"
                    placeholder="请输入年龄"
                  />
                </el-form-item>
              </el-col>
              <el-col :span="6">
@@ -429,11 +433,18 @@
          <el-row>
            <el-col :span="6">
              <el-form-item label="当前医疗机构" prop="occupation">
                <el-input v-model="form.currentMedicalInstitution" placeholder="请输入" />
                <el-input
                  v-model="form.currentMedicalInstitution"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :span="10">
              <el-form-item label-width="130px" label="当前医疗机构科室" prop="education">
              <el-form-item
                label-width="130px"
                label="当前医疗机构科室"
                prop="education"
              >
                <el-input v-model="form.currentDept" placeholder="请输入" />
              </el-form-item>
            </el-col>
@@ -441,11 +452,18 @@
          <el-row>
            <el-col :span="6">
              <el-form-item label="首次医疗机构" prop="occupation">
                <el-input v-model="form.firstMedicalInstitution" placeholder="请输入" />
                <el-input
                  v-model="form.firstMedicalInstitution"
                  placeholder="请输入"
                />
              </el-form-item>
            </el-col>
            <el-col :span="10">
              <el-form-item label-width="130px" label="首次医疗机构科室" prop="education">
              <el-form-item
                label-width="130px"
                label="首次医疗机构科室"
                prop="education"
              >
                <el-input v-model="form.firstDept" placeholder="请输入" />
              </el-form-item>
            </el-col>
@@ -1057,7 +1075,10 @@
            </el-col>
            <el-col :span="6">
              <el-form-item label="学历" prop="education">
                <el-select v-model="affirmform.education" placeholder="请选择学历">
                <el-select
                  v-model="affirmform.education"
                  placeholder="请选择学历"
                >
                  <el-option
                    v-for="dict in dict.type.sys_education || []"
                    :key="dict.value"
@@ -1069,7 +1090,10 @@
            </el-col>
           <el-col :span="6">
              <el-form-item label="职业" prop="occupation">
                <el-select v-model="affirmform.occupation" placeholder="请选择职业">
                <el-select
                  v-model="affirmform.occupation"
                  placeholder="请选择职业"
                >
                  <el-option
                    v-for="dict in dict.type.sys_occupation || []"
                    :key="dict.value"
@@ -2981,7 +3005,15 @@
      // 表单数据
      getDonatebaseinfo(this.infoid).then(response => {
        this.form = response.data;
        console.log(this.form, "form");
        this.form.andAge = `${
          this.form.age && this.form.age !== 0
            ? `${this.form.age}${this.form.ageunit}`
            : ""
        } ${
          this.form.age2 && this.form.age2 !== 0
            ? `${this.form.age2}${this.form.ageunit2}`
            : ""
        }`.trim();
        if (response.data.terminationCase) {
          this.showTerminationBtn = response.data.terminationCase;
src/views/project/donationwitness/index.vue
@@ -165,7 +165,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
        align="center"
src/views/project/ethicalReview/index.vue
@@ -134,7 +134,19 @@
        </template>
      </el-table-column>
      <el-table-column label="捐献者" align="center" prop="name" width="120" />
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column label="性别" align="center" prop="sex" width="100">
        <template slot-scope="scope">
          <dict-tag
src/views/project/fund/applyDetail/index.vue
@@ -763,7 +763,7 @@
            >
              <el-radio-group v-model="accountfrom" style="margin-bottom: 0">
                <el-radio label="1">从账户库</el-radio>
                <el-radio label="2"
                <el-radio disabled  label="2"
                  >新增账户(新增专家账户后需要审核启用才能使用)</el-radio
                >
              </el-radio-group>
src/views/project/fundstatistics/index.vue
@@ -67,7 +67,21 @@
            align="center"
            prop="name"
          />
          <el-table-column label="年龄" width="120" align="center" prop="age" />
          <el-table-column label="年龄" align="center" prop="age" width="100">
            <template slot-scope="scope">
              {{
                `${
                  scope.row.age && scope.row.age !== 0
                    ? `${scope.row.age}${scope.row.ageunit}`
                    : ""
                } ${
                  scope.row.age2 && scope.row.age2 !== 0
                    ? `${scope.row.age2}${scope.row.ageunit2}`
                    : ""
                }`.trim()
              }}
            </template>
          </el-table-column>
          <el-table-column label="性别" width="120" align="center" prop="sex">
            <template slot-scope="scope">
              <dict-tag
src/views/project/medicalevaluation/index.vue
@@ -150,7 +150,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
src/views/project/organallocation/index0.vue
@@ -101,7 +101,19 @@
      <el-table-column label="受体姓氏" align="center" prop="name" width="100" />      
      <el-table-column label="证件类型" align="center" prop="age" width="100" />      
      <el-table-column label="证件号" align="center" prop="idcardno" width="100" />      
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column label="性别" align="center" prop="sex" width="100">
        <template slot-scope="scope">
          <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
src/views/project/relativesconfirmation/index.vue
@@ -148,7 +148,19 @@
          />
        </template>
      </el-table-column>
      <el-table-column label="年龄" align="center" prop="age" width="100" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
           {{
            `${
              scope.row.age && scope.row.age !== 0 ? `${scope.row.age}${scope.row.ageunit?scope.row.ageunit:''}` : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column
        label="医疗机构"
src/views/system/medicalevalustion/index.vue
@@ -105,7 +105,21 @@
      <el-table-column label="姓名" align="center" prop="name" />
      <el-table-column label="性别" align="center" prop="sex" />
      <el-table-column label="证件号码" align="center" prop="idcardno" />
      <el-table-column label="年龄" align="center" prop="age" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0
                ? `${scope.row.age}${scope.row.ageunit}`
                : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column label="记录状态" align="center" prop="recordstate" />
      <el-table-column label="治疗医院名称" align="center" prop="treatmenthospitalname" />
      <el-table-column label="疾病诊断名称" align="center" prop="diagnosisname" />
src/views/system/student/index.vue
@@ -117,7 +117,21 @@
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="编号" align="center" prop="studentId" />
      <el-table-column label="学生名称" align="center" prop="studentName" />
      <el-table-column label="年龄" align="center" prop="studentAge" />
      <el-table-column label="年龄" align="center" prop="age" width="100">
        <template slot-scope="scope">
          {{
            `${
              scope.row.age && scope.row.age !== 0
                ? `${scope.row.age}${scope.row.ageunit}`
                : ""
            } ${
              scope.row.age2 && scope.row.age2 !== 0
                ? `${scope.row.age2}${scope.row.ageunit2}`
                : ""
            }`.trim()
          }}
        </template>
      </el-table-column>
      <el-table-column label="爱好" align="center" prop="studentHobby" />
      <el-table-column label="性别" align="center" prop="studentSex">
        <template slot-scope="scope">