| | |
| | | </up-form-item> |
| | | <up-form-item label="指标选择" |
| | | prop="testStandardId" |
| | | required |
| | | border-bottom> |
| | | <up-input v-model="testStandardDisplay" |
| | | placeholder="请选择指标" |
| | |
| | | border-bottom> |
| | | <up-input v-model="form.checkTime" |
| | | placeholder="请选择检测日期" |
| | | readonly /> |
| | | readonly |
| | | @click="showDatePicker" /> |
| | | <!-- <template #right> |
| | | <up-icon name="calendar" |
| | | <up-icon name="arrow-right" |
| | | @click="showDatePicker"></up-icon> |
| | | </template> --> |
| | | </up-form-item> |
| | |
| | | </up-button> |
| | | </view> |
| | | <!-- 日期选择器 --> |
| | | <up-popup v-model:show="showDate" |
| | | mode="date" |
| | | :start-year="2020" |
| | | :end-year="2030" |
| | | @confirm="confirmDate" /> |
| | | <up-popup :show="showDate" |
| | | mode="bottom" |
| | | @close="showDate = false"> |
| | | <up-datetime-picker :show="true" |
| | | v-model="pickerValue" |
| | | @confirm="confirmDate" |
| | | @cancel="showDate = false" |
| | | mode="date" /> |
| | | </up-popup> |
| | | <!-- 供应商选择 --> |
| | | <up-action-sheet :show="showSupplierSheet" |
| | | :actions="supplierOptions" |
| | |
| | | |
| | | <script setup> |
| | | import { ref, computed, onMounted, nextTick } from "vue"; |
| | | import { onShow } from "@dcloudio/uni-app"; |
| | | import { onShow, onLoad } from "@dcloudio/uni-app"; |
| | | import PageHeader from "@/components/PageHeader.vue"; |
| | | import dayjs from "dayjs"; |
| | | import { getOptions } from "@/api/procurementManagement/procurementLedger.js"; |
| | |
| | | const loading = ref(false); |
| | | // 日期选择器 |
| | | const showDate = ref(false); |
| | | const pickerValue = ref(Date.now()); |
| | | // 供应商选择 |
| | | const showSupplierSheet = ref(false); |
| | | // 产品选择 |
| | |
| | | { required: true, message: "请选择产品型号", trigger: "change" }, |
| | | ], |
| | | testStandardId: [ |
| | | { required: false, message: "请选择指标", trigger: "change" }, |
| | | { required: true, message: "请选择指标", trigger: "change" }, |
| | | ], |
| | | unit: [{ required: false, message: "请输入", trigger: "blur" }], |
| | | quantity: [{ required: true, message: "请输入", trigger: "blur" }], |
| | |
| | | |
| | | // 是否为编辑模式 |
| | | const isEdit = computed(() => { |
| | | const id = getPageId(); |
| | | const id = optionsId.value; |
| | | return !!id; |
| | | }); |
| | | |
| | |
| | | const v = form.value || {}; |
| | | return !!(v.productMainId != null || v.purchaseLedgerId != null); |
| | | }); |
| | | |
| | | // 获取页面ID |
| | | const getPageId = () => { |
| | | const pages = getCurrentPages(); |
| | | const currentPage = pages[pages.length - 1]; |
| | | return currentPage.options.id; |
| | | }; |
| | | |
| | | // 返回上一页 |
| | | const goBack = () => { |
| | |
| | | // 确认日期选择 |
| | | const confirmDate = e => { |
| | | form.value.checkTime = dayjs(e.value).format("YYYY-MM-DD"); |
| | | showDate.value = false; |
| | | }; |
| | | |
| | | // 选择供应商 |
| | |
| | | showToast("请选择产品"); |
| | | return; |
| | | } |
| | | if (!form.value.testStandardId) { |
| | | showToast("请选择指标"); |
| | | return; |
| | | } |
| | | if (!form.value.checkResult) { |
| | | showToast("请选择检测结果"); |
| | | return; |
| | |
| | | loading.value = true; |
| | | |
| | | form.value.inspectType = 0; |
| | | if (isEdit.value) { |
| | | if (!isEdit.value) { |
| | | tableData.value.forEach(item => { |
| | | delete item.id; |
| | | }); |
| | |
| | | |
| | | // 初始化表单 |
| | | const initForm = async () => { |
| | | const id = getPageId(); |
| | | const id = optionsId.value; |
| | | if (id) { |
| | | // 编辑模式,加载数据 |
| | | // 先重置表单数据 |
| | |
| | | onShow(() => { |
| | | initForm(); |
| | | }); |
| | | |
| | | const optionsId = ref(""); |
| | | onLoad(options => { |
| | | optionsId.value = options.id || ""; |
| | | initForm(); |
| | | }); |
| | | </script> |
| | | |
| | | <style scoped lang="scss"> |