| | |
| | | <!-- 中间状态部分,上下结构,包含调机流程的三个步骤 --> |
| | | <view class="middle-section"> |
| | | <view class="item" style="height: 100px;"> |
| | | <h4>说明:点击'调机开始'后再点击'保存生效'</h4> |
| | | <h4>说明:点击'调机开始'后再点击'保存生效'</h4> |
| | | <h4> |
| | | <!--说明: |
| | | 1.点击'调机开始'、'送检呼叫'后再点击'保存生效'<br /> |
| | | 2.主界面首检合格后再点击'保存生效'<br /> |
| | | 3.首检不合格再点击'保存生效'会清空送检时间<br /> |
| | | 4.清空送检时间后点击‘检验不合格重新送检呼叫’再保存--> |
| | | </h4> |
| | | </view> |
| | | <view class="item"> |
| | | <!-- 调机开始按钮,maStartTime有值时禁用 --> |
| | |
| | | 调机开始 |
| | | </button> |
| | | <!-- 显示调机开始时间 --> |
| | | <input class="txt-inp" v-model="maStartTime" placeholder="点击按钮带出时间" disabled="true" /> |
| | | <input class="txt-inp" v-model="maStartTime" placeholder="点击按钮带出调机时间" disabled="true" /> |
| | | </view> |
| | | <view class="item"> |
| | | <!-- 送检呼叫按钮,maShoutTime有值时禁用 --> |
| | |
| | | 送检呼叫 |
| | | </button> |
| | | <!-- 显示送检呼叫时间 --> |
| | | <input class="txt-inp" v-model="maShoutTime" placeholder="点击按钮带出时间" disabled="true" /> |
| | | <input class="txt-inp" v-model="maShoutTime" placeholder="点击按钮带出送检时间" disabled="true" /> |
| | | </view> |
| | | <!--<view class="item">--> |
| | | <!-- 调机完成按钮,maEndTime有值时禁用 --> |
| | | <!--<button :class="maEndTime ? 'btn-disabled' : 'btn-blue'" |
| | | :disabled="!!maEndTime" |
| | | @click="handleMaEndTime"> |
| | | 调机完成(=检验通过) |
| | | </button>--> |
| | | <!-- 显示调机完成时间 --> |
| | | <!--<input class="txt-inp" v-model="maEndTime" placeholder="首次首检确认通过写入" disabled="true" /> |
| | | <!-- 调机完成按钮,maEndTime有值时禁用 --> |
| | | <!--<button :class="maEndTime ? 'btn-disabled' : 'btn-blue'" |
| | | :disabled="!!maEndTime" |
| | | @click="handleMaEndTime"> |
| | | 调机完成(=检验通过) |
| | | </button>--> |
| | | <!-- 显示调机完成时间 --> |
| | | <!--<input class="txt-inp" v-model="maEndTime" placeholder="首次首检确认通过写入" disabled="true" /> |
| | | </view>--> |
| | | <view class="item"> |
| | | <button class="btn-disabled" disabled> |
| | |
| | | </button> |
| | | <input class="txt-inp" v-model="maEndTime" placeholder="首次首检确认通过写入" disabled="true" /> |
| | | </view> |
| | | |
| | | <!--启用该功能--> |
| | | <!--新增:检验不合格送检呼叫 按钮(功能与送检呼叫一样,仅在特定 remark 下可以点击)--> |
| | | <view class="item"> |
| | | <!--检验不合格送检呼叫按钮,仅在 remark 为指定文本 且 当前无送检时间 时可点击--> |
| | | <button :class="canFailResend ? 'btn-blue' : 'btn-disabled'" |
| | | :disabled="!canFailResend" |
| | | @click="ReHandleMaShoutTime"> |
| | | 检验不合格重新送检呼叫 |
| | | </button> |
| | | <!--仍复用同一送检时间字段,避免重复状态--> |
| | | <input class="txt-inp" |
| | | v-model="maShoutTime" |
| | | placeholder="首检不合格重新呼叫时点击按钮带出送检时间" |
| | | disabled="true" /> |
| | | </view> |
| | | |
| | | </view> |
| | | |
| | | <!-- 底部保存/取消按钮 --> |
| | |
| | | maShoutTime: '', // 送检呼叫时间 |
| | | maStartTime: '', // 调机开始时间 |
| | | maEndTime: '', // 调机完成时间 |
| | | statusForm: {}, // 工单状态表单数据 |
| | | statusForm: {}, // 工单状态表单数据(包含 remark 字段) |
| | | flag: -1, // 操作标记 |
| | | failedRemark: '首检不合格,送检时间已清空,请重新送检呼叫生成新的首检单' // 首检不合格后由后端返回的提示 |
| | | } |
| | | }, |
| | | computed: { |
| | | // 满足首检不合格重新呼叫条件且当前尚未重新生成送检时间 => 按钮可用 |
| | | canFailResend() { |
| | | return this.statusForm && |
| | | this.statusForm.remark === this.failedRemark && |
| | | !this.maShoutTime; |
| | | } |
| | | }, |
| | | created() { |
| | |
| | | }, |
| | | methods: { |
| | | // 处理调机开始按钮点击 |
| | | handleMaStartTime() { |
| | | if (!this.maStartTime) { |
| | | this.setMaStartTime(); |
| | | this.flag = -1; // 调机开始按钮按下时回传的flag=-1 |
| | | } |
| | | }, |
| | | // 处理送检呼叫按钮点击 |
| | | handleMaStartTime() { |
| | | if (!this.maStartTime) { |
| | | this.setMaStartTime(); |
| | | this.flag = -1; // 调机开始按钮按下时回传的flag=-1 |
| | | } |
| | | }, |
| | | // 处理送检呼叫按钮点击(不含首检不合格重呼叫) |
| | | handleMaShoutTime() { |
| | | if (!this.maShoutTime) { |
| | | this.stateCheck(1); |
| | | } |
| | | }, |
| | | // 首检不合格重呼叫:flag = 2 |
| | | ReHandleMaShoutTime() { |
| | | if (!this.maShoutTime && this.canFailResend) { |
| | | this.stateCheck(2); |
| | | } |
| | | }, |
| | | // 处理调机完成按钮点击 |
| | | handleMaEndTime() { |
| | | if (!this.maEndTime) { |
| | |
| | | this.maEndTime = this.statusForm.maEndTime; |
| | | }, |
| | | // 送检呼叫,item=1时设置送检呼叫时间 |
| | | stateCheck(item) { |
| | | // 送检呼叫与重新送检呼叫以及调机开始对应的 flag 值 |
| | | // flag 说明:-1 = 调机开始;1 = 首次送检呼叫;2 = 不合格重新送检呼叫 |
| | | stateCheck(item) { |
| | | switch (item) { |
| | | case 0: |
| | | break; |
| | | case 1: |
| | | case 1:// 首次送检呼叫 |
| | | this.maShoutTime = this.$getDate('yyyy-mm-dd hh24:mi:ss'); |
| | | this.flag = -1; // 送检呼叫有值后,flag始终为-1 |
| | | break; |
| | | case 2: |
| | | case 2:// 检验不合格重新送检呼叫 |
| | | this.maShoutTime = this.$getDate('yyyy-mm-dd hh24:mi:ss'); |
| | | //this.flag = -1; // 送检呼叫有值后,flag始终为-1 |
| | | break; |
| | | default: |
| | | // 其它值不处理 |
| | | break; |
| | | } |
| | | this.flag = item; |
| | | }, |