outsourcing.vue 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <!-- -->
  2. <template>
  3. <div >
  4. <el-form ref="formRef" :model="otherInfo" label-position="left" label-width="auto" disabled>
  5. <div class="hc-form-item">
  6. <el-form-item label="关联项目:">
  7. <el-select block v-model="otherInfo.projectId">
  8. <el-option v-for="item in projectType" :label="item.projectName" :value="item.projectId"/>
  9. </el-select>
  10. </el-form-item>
  11. </div>
  12. <el-form-item label="对方单位:">
  13. <el-input v-model="otherInfo.toUnit"/>
  14. </el-form-item>
  15. <el-form-item label="支付金额:" prop="key3">
  16. <el-input v-model="otherInfo.payMoney" onkeyup="this.value=this.value.match(/\d+\.?\d{0,2}/)">
  17. <template #append>元</template>
  18. </el-input>
  19. </el-form-item>
  20. <el-form-item label="申请支付时间:">
  21. <el-date-picker type="date" class="block" v-model="otherInfo.payDate" format="YYYY-MM-DD" value-format="YYYY-MM-DD"/>
  22. </el-form-item>
  23. <el-form-item label="外包类型:">
  24. <el-select block v-model="otherInfo.outsourcingType">
  25. <el-option v-for="item in outsourcingTypeData" :label="item.dictName" :value="item.dictValue"/>
  26. </el-select>
  27. </el-form-item>
  28. </el-form>
  29. </div>
  30. </template>
  31. <script setup>
  32. import { ref, watch,onActivated } from 'vue'
  33. import {getProjectList} from "~api/other";
  34. import {getArrValue} from "js-fast-way";
  35. onActivated(()=>{
  36. getProjectData()
  37. })
  38. //参数
  39. const props = defineProps({
  40. otherInfo: {
  41. type: Object,
  42. default: {}
  43. }
  44. })
  45. const outsourcingTypeData=ref([])
  46. //项目类型
  47. const projectType = ref([])
  48. const getProjectData = async () => {
  49. const {error, code, data} = await getProjectList()
  50. //判断状态
  51. if (!error && code === 200) {
  52. projectType.value = getArrValue(data)
  53. } else {
  54. projectType.value = []
  55. }
  56. }
  57. //监听
  58. watch(() => [
  59. props.otherInfo,
  60. ], ([otherInfo]) => {
  61. console.log(otherInfo, 'otherInfo');
  62. })
  63. </script>
  64. <style lang='scss' scoped>
  65. </style>