import { getModule, Module, MutationAction, VuexModule } from 'vuex-module-decorators';
import store from '@/store';
import http from '@/utils/request';
import { url } from '@/utils/url';
@Module({
  namespaced: true,
  dynamic: true,
  store,
  name: 'page.equipment.Repair',
})
export class Repair extends VuexModule {
  rowdata: any = [];
  orderNoItemList: any = [];
  getTaskRecordList: any = [];
  @MutationAction
  async getMaintenancePendRecords(params: any) {
    const result: any = await http.get(url.lanjuequipment.product.Repair.getMaintenancePendRecords, { params: params });
    const orderNoItemList = result.data;
    return { orderNoItemList };
  }
  @MutationAction
  async getTaskRecord(params: any) {
    const result: any = await http.get(url.lanjuequipment.product.Repair.getTaskRecord, { params: params });
    const getTaskRecordList = result.data;
    return { getTaskRecordList };
  }
  //巡检列表巡检记录
  OrderInfList: any = [];
  @MutationAction
  async getInspectionOrderInfo(workId: any) {
    const result: any = await http.get(url.lanjuequipment.product.Repair.selectPdaRepairWorkOrderDetails + '/' + workId);
    const OrderInfList: [] = result.data;
    return { OrderInfList };
  }
  SubmitCode: any = '';
  //巡检提交
  @MutationAction
  async updateDowntime(params: any) {
    const result: any = await http.put(url.lanjuequipment.product.Repair.updateDowntime, params);
    const SubmitCode: [] = result;
    return { SubmitCode };
  }
  @MutationAction
  async updateMaintenanceRecords(params: any) {
    const result: any = await http.put(url.lanjuequipment.product.Repair.updateMaintenanceRecords, params);
    const SubmitCode: [] = result;
    return { SubmitCode };
  }
  Checklist: any = [];
  @MutationAction
  async queryhandChecklist(params: any) {
    const result: any = await http.get(url.lanjuequipment.product.Repair.list, { params: params });
    const Checklist: any = result.rows;
    console.log('this.tableData', Checklist);
    // debugger
    return { Checklist };
  }
  //维修维修措施
  locList: any = [];
  @MutationAction
  async getFaultMeasuresList() {
    const result: any = await http.get(url.lanjuequipment.product.Repair.getFaultMeasuresList);
    const DictListoild: [] = result.data;
    const locList = DictListoild.map((item: any) => ({
      label: item.faultSubclass,
      value: item.faultSubclass,
    }));
    return { locList };
  }
  //原因分析
  locList2: any = [];
  @MutationAction
  async getFaultReasonList() {
    const result: any = await http.get(url.lanjuequipment.product.Repair.getFaultReasonList);
    const DictListoild: [] = result.data;
    const locList2 = DictListoild.map((item: any) => ({
      label: item.faultSubclass,
      value: item.faultSubclass,
    }));
    return { locList2 };
  }
  @MutationAction
  async rowdatanull() {
    const rowdata: [] = [];
    return { rowdata };
  }
}

export default getModule(Repair);
