gaoluyang
4 天以前 2075144baf459fe5ef89892d189784636f27f862
src/views/personnelManagement/onboarding/components/formDia.vue
@@ -83,11 +83,11 @@
              <el-input v-model="form.emergencyContactPhone" placeholder="请输入" clearable/>
            </el-form-item>
          </el-col>
<!--          <el-col :span="12">-->
<!--            <el-form-item label="合同年限:" prop="contractTermcontractTerm">-->
<!--              <el-input-number v-model="form.contractTerm" :precision="0" :step="1" style="width: 100%" :disabled="true"/>-->
<!--            </el-form-item>-->
<!--          </el-col>-->
         <el-col :span="12">
           <el-form-item label="合同年限:" prop="contractTerm">
             <el-input-number v-model="form.contractTerm" :precision="0" :step="1" style="width: 100%" :disabled="true"/>
           </el-form-item>
         </el-col>
        </el-row>
        <el-row :gutter="30">
          <el-col :span="12">
@@ -100,6 +100,7 @@
                  format="YYYY-MM-DD"
                  clearable
                  style="width: 100%"
                  @change="calculateContractTerm"
              />
            </el-form-item>
          </el-col>
@@ -113,6 +114,7 @@
                  format="YYYY-MM-DD"
                  clearable
                  style="width: 100%"
                  @change="calculateContractTerm"
              />
            </el-form-item>
          </el-col>
@@ -129,7 +131,7 @@
</template>
<script setup>
import {ref} from "vue";
import {ref, reactive, toRefs, getCurrentInstance} from "vue";
import {getStaffJoinInfo, staffJoinAdd, staffJoinUpdate} from "@/api/personnelManagement/onboarding.js";
const { proxy } = getCurrentInstance()
const emit = defineEmits(['close'])
@@ -183,8 +185,28 @@
    getStaffJoinInfo(row.id).then(res => {
      form.value = {...res.data}
      // 编辑时也计算一次合同年限
      // calculateContractTerm();
      calculateContractTerm();
    })
  } else {
    // 新增时重置表单
    form.value = {
      staffNo: "",
      staffName: "",
      sex: "",
      nativePlace: "",
      postJob: "",
      adress: "",
      firstStudy: "",
      profession: "",
      age: 0,
      phone: "",
      emergencyContact: "",
      emergencyContactPhone: "",
      contractTerm: 0,
      contractStartTime: "",
      contractEndTime: "",
      staffState: "",
    };
  }
}
// 提交产品表单
@@ -212,7 +234,7 @@
    const startDate = new Date(form.value.contractStartTime);
    const endDate = new Date(form.value.contractEndTime);
    
    if (endDate > startDate) {
    if (endDate >= startDate) {
      // 计算年份差
      const yearDiff = endDate.getFullYear() - startDate.getFullYear();
      const monthDiff = endDate.getMonth() - startDate.getMonth();