| | |
| | | * @version: |
| | | * @Date: 2024-06-18 15:09:48 |
| | | * @LastEditors: Ben Lin |
| | | * @LastEditTime: 2024-07-23 21:00:06 |
| | | * @LastEditTime: 2024-08-01 11:18:39 |
| | | --> |
| | | <!-- |
| | | * @Description: 表单项属性,控件属性面板 |
| | |
| | | <div class="properties-content"> |
| | | <Form class="properties-body" label-align="left" layout="vertical"> |
| | | <FormItem label="工艺路线编码" name="工艺路线编码"> |
| | | <Input :style="{ width: '100%' }" v-model:value="mesRoute.ROT_CODE" :min="0" :step="1" :readonly="true" /> |
| | | <Input |
| | | :style="{ width: '100%' }" |
| | | v-model:value="mesRoute.ROT_CODE" |
| | | :min="0" |
| | | :step="1" |
| | | :readonly="true" |
| | | /> |
| | | </FormItem> |
| | | <FormItem label="节点名称" name="节点名称"> |
| | | <Input :style="{ width: '100%' }" v-model:value="routeConfig.currentItem.NODE_NAME" :min="0" :step="1" /> |
| | | <Input |
| | | :style="{ width: '100%' }" |
| | | v-model:value="routeConfig.currentItem.NODE_NAME" |
| | | :min="0" |
| | | :step="1" |
| | | /> |
| | | </FormItem> |
| | | <FormItem label="工段" name="工段"> |
| | | <Input :style="{ width: '100%' }" v-model:value="routeConfig.currentItem.SEGMENT" :min="0" :step="1" /> |
| | | <Input |
| | | :style="{ width: '100%' }" |
| | | v-model:value="routeConfig.currentItem.SEGMENT" |
| | | :min="0" |
| | | :step="1" |
| | | /> |
| | | </FormItem> |
| | | <FormItem label="工序编码" name="工序编码"> |
| | | <Input :style="{ width: '100%' }" v-model:value="routeConfig.currentItem.GPH_TYPE" :min="0" :step="1" /> |
| | | <Input |
| | | :style="{ width: '100%' }" |
| | | v-model:value="routeConfig.currentItem.GPH_TYPE" |
| | | :min="0" |
| | | :step="1" |
| | | /> |
| | | </FormItem> |
| | | <FormItem label="是否启用" name="是否启用"> |
| | | <Select ref="select" v-model:value="routeConfig.currentItem.IS_ACTIVE" style="width: 120px" |
| | | :options="options1" /> |
| | | <Switch v-model:checked="routeConfig.isActive" /> |
| | | </FormItem> |
| | | <FormItem label="是否允许跳站" name="是否允许跳站"> |
| | | <Switch v-model:checked="routeConfig.canSkip" /> |
| | | </FormItem> |
| | | |
| | | <FormItem label="是否允许不良品进站(Y/N)" name="是否允许不良品进站(Y/N)"> |
| | | <Switch v-model:checked="routeConfig.allowDftIn" /> |
| | | </FormItem> |
| | | <!-- <FormItem label="是否计算直通率" name="是否计算直通率"> |
| | | <Switch v-model:checked="routeConfig.isCalcFpy" /> |
| | |
| | | </div> |
| | | </template> |
| | | <script lang="ts" setup> |
| | | import { Select, Switch, Input, Form, FormItem } from 'ant-design-vue'; |
| | | import { useRouteDesignState } from '../hooks/useRouteDesignState'; |
| | | import { SelectTypes } from 'ant-design-vue/es/select'; |
| | | import { ref, watch } from 'vue'; |
| | | import { isNullOrUnDef } from '/@/utils/is'; |
| | | import { Select, Switch, Input, Form, FormItem } from 'ant-design-vue'; |
| | | import { useRouteDesignState } from '../hooks/useRouteDesignState'; |
| | | import { SelectTypes } from 'ant-design-vue/es/select'; |
| | | import { ref, watch } from 'vue'; |
| | | import { isNullOrUnDef } from '/@/utils/is'; |
| | | |
| | | const { routeConfig, mesRoute } = useRouteDesignState(); |
| | | const emit = defineEmits(['changeNodeName']); |
| | | const options1 = ref<SelectTypes['options']>([ |
| | | { |
| | | value: 'Y', |
| | | label: '启用', |
| | | }, |
| | | { |
| | | value: 'N', |
| | | label: '不启用', |
| | | }, |
| | | ]); |
| | | const { routeConfig, mesRoute } = useRouteDesignState(); |
| | | const emit = defineEmits(['changeNodeName']); |
| | | const options1 = ref<SelectTypes['options']>([ |
| | | { |
| | | value: 'Y', |
| | | label: '启用', |
| | | }, |
| | | { |
| | | value: 'N', |
| | | label: '不启用', |
| | | }, |
| | | ]); |
| | | |
| | | watch( |
| | | [ |
| | | () => routeConfig.isCalcFpy, |
| | | () => routeConfig.canSkip, |
| | | () => routeConfig.isInput, |
| | | () => routeConfig.isOutput, |
| | | () => routeConfig.currentItem, |
| | | ], |
| | | (newVal, oldVal) => { |
| | | routeConfig.routeData.nodes.forEach((r) => { |
| | | if (r.ID == routeConfig.currentItem.ID) { |
| | | if (oldVal[0] != newVal[0] && !isNullOrUnDef(oldVal[0])) { |
| | | r.IS_CALC_FPY = newVal[0] ? 'Y' : 'N'; |
| | | watch( |
| | | [ |
| | | () => routeConfig['isCalcFpy'], |
| | | () => routeConfig['canSkip'], |
| | | () => routeConfig['isInput'], |
| | | () => routeConfig['isOutput'], |
| | | () => routeConfig['allowDftIn'], |
| | | () => routeConfig['isActive'], |
| | | () => routeConfig['currentItem'], |
| | | ], |
| | | (newVal, oldVal) => { |
| | | routeConfig['routeData'].nodes.forEach((r) => { |
| | | if (r.ID == routeConfig['currentItem'].ID) { |
| | | if (oldVal[0] != newVal[0] && !isNullOrUnDef(oldVal[0])) { |
| | | r.IS_CALC_FPY = newVal[0] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[1] != newVal[1] && !isNullOrUnDef(oldVal[1])) { |
| | | r.CAN_SKIP = newVal[1] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[2] != newVal[2] && !isNullOrUnDef(oldVal[2])) { |
| | | r.IS_INPUT = newVal[2] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[3] != newVal[3] && !isNullOrUnDef(oldVal[3])) { |
| | | r.IS_OUTPUT = newVal[3] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[4] != newVal[4] && !isNullOrUnDef(oldVal[4])) { |
| | | r.ALLOW_DFT_IN = newVal[4] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[5] != newVal[5] && !isNullOrUnDef(oldVal[5])) { |
| | | r.IS_ACTIVE = newVal[5] ? 'Y' : 'N'; |
| | | } |
| | | // r.IS_ACTIVE = newVal[4].IS_ACTIVE; |
| | | r.SEGMENT = newVal[6].SEGMENT; |
| | | if (r.NODE_NAME != newVal[6].NODE_NAME) { |
| | | r.NODE_NAME = newVal[6].NODE_NAME; |
| | | emit('changeNodeName', { id: r.ID, val: r.NODE_NAME }); |
| | | } |
| | | } |
| | | if (oldVal[1] != newVal[1] && !isNullOrUnDef(oldVal[1])) { |
| | | r.CAN_SKIP = newVal[1] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[2] != newVal[2] && !isNullOrUnDef(oldVal[2])) { |
| | | r.IS_INPUT = newVal[2] ? 'Y' : 'N'; |
| | | } |
| | | if (oldVal[3] != newVal[3] && !isNullOrUnDef(oldVal[3])) { |
| | | r.IS_OUTPUT = newVal[3] ? 'Y' : 'N'; |
| | | } |
| | | r.IS_ACTIVE = newVal[4].IS_ACTIVE; |
| | | r.SEGMENT = newVal[4].SEGMENT; |
| | | if (r.NODE_NAME != newVal[4].NODE_NAME) { |
| | | r.NODE_NAME = newVal[4].NODE_NAME; |
| | | emit('changeNodeName', { id: r.ID, val: r.NODE_NAME }); |
| | | } |
| | | } |
| | | }); |
| | | }, |
| | | { deep: true, immediate: true }, |
| | | ); |
| | | }); |
| | | }, |
| | | { deep: true, immediate: true }, |
| | | ); |
| | | </script> |