zhangherong
2025-04-08 be84867c57d55112ade4cc45b9e7d7434054778e
src/views/eam/maintenance/EamWeekMaintenanceOrderList.vue
@@ -22,7 +22,7 @@
          </a-col>
          <a-col :xl="4" :lg="7" :md="8" :sm="24">
            <a-form-item label="保养状态">
              <j-dict-select-tag placeholder="请选择保养状态" dict-code="maintenance_status" v-model="queryParam.maintenanceStatus" />
              <j-dict-select-tag placeholder="请选择保养状态" dict-code="week_maintenance_status" v-model="queryParam.maintenanceStatus" />
            </a-form-item>
          </a-col>
          <a-col :xl="4" :lg="7" :md="8" :sm="24">
@@ -41,9 +41,13 @@
      <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
      <a-dropdown v-if="selectedRowKeys.length > 0">
        <a-menu slot="overlay">
          <a-menu-item key="1" @click="batchDel">
          <a-menu-item key="1" @click="handlerBatchAbolish">
            <a-icon type="delete" />
            删除
            作废
          </a-menu-item>
          <a-menu-item key="1" @click="handlerBatchCollect">
            <a-icon type="delete" />
            领取
          </a-menu-item>
        </a-menu>
        <a-button style="margin-left: 8px"> 批量操作
@@ -74,15 +78,23 @@
        @change="handleTableChange">
        <span slot="action" slot-scope="text, record">
          <a @click="handleEdit(record)">编辑</a>
          <a v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'" @click="handleEdit(record)">编辑</a>
          <a-divider type="vertical" />
          <a-dropdown>
            <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
            <a-menu slot="overlay">
              <a-menu-item>
                <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
                  <a>删除</a>
               <a-menu-item v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'">
                <a-popconfirm title="确定领取吗?" @confirm="() => handlerCollect(record.id)">
                  <a>领取</a>
                </a-popconfirm>
              </a-menu-item>
              <a-menu-item v-if="record.maintenanceStatus === 'WAIT_MAINTENANCE'">
                <a-popconfirm title="确定作废吗?" @confirm="() => handlerAbolish(record.id)">
                  <a>作废</a>
                </a-popconfirm>
              </a-menu-item>
              <a-menu-item >
                <a @click="handleDetail(record)">详情</a>
              </a-menu-item>
            </a-menu>
          </a-dropdown>
@@ -102,6 +114,7 @@
import EamWeekMaintenanceOrderModal from './modules/EamWeekMaintenanceOrderModal'
import { JeecgListMixin } from '@/mixins/JeecgListMixin'
import LxSearchEquipmentSelect from '@views/eam/equipment/modules/LxSearchEquipmentSelect.vue'
import { deleteAction, getAction } from '@api/manage'
export default {
  name: 'EamWeekMaintenanceOrderList',
@@ -205,8 +218,9 @@
      ],
      url: {
        list: '/eam/weekMaintenanceOrder/list',
        delete: '/eam/weekMaintenanceOrder/delete',
        deleteBatch: '/eam/weekMaintenanceOrder/deleteBatch'
        abolish: '/eam/weekMaintenanceOrder/abolish',
        abolishBatch: '/eam/weekMaintenanceOrder/abolishBatch',
        collect: '/eam/weekMaintenanceOrder/collect',
      }
    }
  },
@@ -215,6 +229,109 @@
    onMaintenanceDateChange: function(value, dateString) {
      this.queryParam.maintenanceDateBegin = dateString[0]
      this.queryParam.maintenanceDateEnd = dateString[1]
    },
    handlerAbolish(id) {
      if(!this.url.abolish){
        this.$message.error("请设置url.abolish属性!")
        return
      }
      var that = this;
      deleteAction(that.url.abolish, {id: id}).then((res) => {
        if (res.success) {
          //重新计算分页问题
          that.reCalculatePage(1)
          // that.$message.success(res.message);
          that.$notification.success({
            message:'消息',
            description:res.message
          });
          that.loadData();
        } else {
          // that.$message.warning(res.message);
          that.$notification.warning({
            message:'消息',
            description:res.message
          });
        }
      });
    },
    handlerBatchAbolish() {
      if(!this.url.abolishBatch){
        this.$message.error("请设置url.abolishBatch属性!")
        return
      }
      if (this.selectedRowKeys.length <= 0) {
        // this.$message.warning('请选择一条记录!');
        this.$notification.warning({
          message:'消息',
          description:"请选择一条记录"
        });
        return;
      } else {
        var ids = "";
        for (var a = 0; a < this.selectedRowKeys.length; a++) {
          ids += this.selectedRowKeys[a] + ",";
        }
        var that = this;
        this.$confirm({
          title: "确认作废",
          content: "是否作废选中数据,只有待保养状态的数据才可作废成功?",
          onOk: function () {
            that.loading = true;
            deleteAction(that.url.abolishBatch, {ids: ids}).then((res) => {
              if (res.success) {
                //重新计算分页问题
                that.reCalculatePage(that.selectedRowKeys.length)
                // that.$message.success(res.message);
                that.$notification.success({
                  message:'消息',
                  description:res.message
                });
                that.loadData();
                that.onClearSelected();
              } else {
                // that.$message.warning(res.message);
                that.$notification.warning({
                  message:'消息',
                  description:res.message
                });
              }
            }).finally(() => {
              that.loading = false;
            });
          }
        });
      }
    },
    //单个领取
    handlerCollect(id) {
      if(!this.url.collect){
        this.$message.error("请设置url.collect属性!")
        return
      }
      var that = this;
      getAction(that.url.collect, {id: id}).then((res) => {
        if (res.success) {
          //重新计算分页问题
          that.reCalculatePage(1)
          // that.$message.success(res.message);
          that.$notification.success({
            message:'消息',
            description:res.message
          });
          that.loadData();
        } else {
          // that.$message.warning(res.message);
          that.$notification.warning({
            message:'消息',
            description:res.message
          });
        }
      });
    },
    //批量领取
    handlerBatchCollect(){
    }
  }
}