| | |
| | | error-message-align="right"> |
| | | <!-- 基本信息 --> |
| | | <view class="form-section"> |
| | | <u-form-item label="机台" |
| | | prop="deviceName" |
| | | required> |
| | | <u-input v-model="form.deviceName" |
| | | disabled |
| | | placeholder="请输入机台" /> |
| | | </u-form-item> |
| | | <u-form-item label="计划开始时间" |
| | | prop="planStartTime" |
| | | required> |
| | | <u-input v-model="form.planStartTime" |
| | | placeholder="请选择计划开始时间" |
| | | readonly |
| | | @click="showStartTimePicker = true" |
| | | suffix-icon="calendar" /> |
| | | </u-form-item> |
| | | <u-form-item label="计划结束时间" |
| | | prop="planEndTime" |
| | | required> |
| | | <u-input v-model="form.planEndTime" |
| | | placeholder="请选择计划结束时间" |
| | | readonly |
| | | @click="showEndTimePicker = true" |
| | | suffix-icon="calendar" /> |
| | | </u-form-item> |
| | | <u-form-item label="待生产数量" |
| | | prop="planQuantity" |
| | | required> |
| | |
| | | title="选择生产人" |
| | | @select="onProducerConfirm" |
| | | @close="showProducerPicker = false" /> |
| | | |
| | | <!-- 开始时间选择器 --> |
| | | <up-datetime-picker :show="showStartTimePicker" |
| | | v-model="startTimeValue" |
| | | mode="datetime" |
| | | @confirm="onStartTimeConfirm" |
| | | @cancel="showStartTimePicker = false" /> |
| | | |
| | | <!-- 结束时间选择器 --> |
| | | <up-datetime-picker :show="showEndTimePicker" |
| | | v-model="endTimeValue" |
| | | mode="datetime" |
| | | @confirm="onEndTimeConfirm" |
| | | @cancel="showEndTimePicker = false" /> |
| | | </view> |
| | | </template> |
| | | |
| | |
| | | |
| | | // 表单数据 |
| | | const form = ref({ |
| | | deviceName: "", |
| | | planStartTime: "", |
| | | planEndTime: "", |
| | | planQuantity: "", |
| | | quantity: "", |
| | | scrapQty: "", |
| | |
| | | |
| | | // 生产人选择器状态 |
| | | const showProducerPicker = ref(false); |
| | | // 时间选择器状态 |
| | | const showStartTimePicker = ref(false); |
| | | const showEndTimePicker = ref(false); |
| | | const startTimeValue = ref(Number(new Date())); |
| | | const endTimeValue = ref(Number(new Date())); |
| | | |
| | | const producerList = ref([]); |
| | | const currentField = ref(""); // 当前选择的字段 |
| | | |
| | |
| | | showProducerPicker.value = false; |
| | | }; |
| | | |
| | | // 格式化日期 |
| | | const formatDateTime = (timestamp) => { |
| | | const date = new Date(timestamp); |
| | | const y = date.getFullYear(); |
| | | const m = (date.getMonth() + 1).toString().padStart(2, '0'); |
| | | const d = date.getDate().toString().padStart(2, '0'); |
| | | const h = date.getHours().toString().padStart(2, '0'); |
| | | const min = date.getMinutes().toString().padStart(2, '0'); |
| | | const s = date.getSeconds().toString().padStart(2, '0'); |
| | | return `${y}-${m}-${d} ${h}:${min}:${s}`; |
| | | }; |
| | | |
| | | // 开始时间确认 |
| | | const onStartTimeConfirm = (e) => { |
| | | form.value.planStartTime = formatDateTime(e.value); |
| | | showStartTimePicker.value = false; |
| | | }; |
| | | |
| | | // 结束时间确认 |
| | | const onEndTimeConfirm = (e) => { |
| | | form.value.planEndTime = formatDateTime(e.value); |
| | | showEndTimePicker.value = false; |
| | | }; |
| | | |
| | | // 提交状态 |
| | | const submitting = ref(false); |
| | | |
| | |
| | | const submitForm = async () => { |
| | | submitting.value = true; |
| | | // 校验表单 |
| | | if (!form.value.deviceName) { |
| | | submitting.value = false; |
| | | showToast("请输入机台"); |
| | | return; |
| | | } |
| | | if (!form.value.planStartTime) { |
| | | submitting.value = false; |
| | | showToast("请选择计划开始时间"); |
| | | return; |
| | | } |
| | | if (!form.value.planEndTime) { |
| | | submitting.value = false; |
| | | showToast("请选择计划结束时间"); |
| | | return; |
| | | } |
| | | if (!form.value.quantity) { |
| | | submitting.value = false; |
| | | showToast("请输入本次生产数量"); |
| | |
| | | onLoad(options => { |
| | | try { |
| | | const orderRow = JSON.parse(options.orderRow); |
| | | console.log(orderRow, "orderRow"); |
| | | // 确保 planQuantity 转换为字符串,以便在 u-input 中正确显示 |
| | | form.value.planQuantity = orderRow.planQuantity != null ? String(orderRow.planQuantity) : ""; |
| | | form.value.productProcessRouteItemId = orderRow.productProcessRouteItemId || ""; |
| | | form.value.workOrderId = orderRow.id || ""; |
| | | form.value.deviceName = orderRow.deviceName || ""; |
| | | form.value.planStartTime = orderRow.planStartTime || ""; |
| | | form.value.planEndTime = orderRow.planEndTime || ""; |
| | | getInfo().then(res => { |
| | | // 默认使用当前登录用户,但允许用户修改 |
| | | form.value.userId.value = res.user.userId; |