職位批量刪除實現
編寫后端接口
PositionController
@DeleteMapping("/")public RespBean deletePositionByIds(Integer[] ids){if(positionsService.deletePositionsByIds(ids)==ids.length){return RespBean.ok("刪除成功");}return RespBean.err("刪除失敗");}
PositionsService
public int deletePositionsByIds(Integer[] ids) {return positionMapper.deletePositionsByIds(ids);}
PositionMapper
int deletePositionsByIds(@Param("ids") Integer[] idsInteger[] ids);
PositionMapper.xml
delete from position where id in<foreach collection="ids" item="id" separator="," open="(" close=")">#{id}</foreach>;
添加批量刪除按鈕
<el-button type="danger" size="small" style="margin-top:10px" >批量刪除</el-button>
沒有選中肯定默認是禁用批量刪除按鈕的,添加一個
賦值就是當前選擇的項
定義一個變量,空數組變量
multipleSelection: []
添加一個點擊事件,這個是一個點擊多選框會觸發的點擊事件
賦值給這個空數組變量,保存著始終點擊項
按鈕禁用
<el-button type="danger" size="small" style="margin-top:10px" :disabled="multipleSelection.length==0">批量刪除</el-button>
給這個按鈕添加一個點擊事件,進行連接后端,批量刪除
<el-button type="danger" size="small" style="margin-top:10px" :disabled="multipleSelection.length==0" @click="deleteMany">批量刪除</el-button>
deleteMany(){let ids ="?";this.multipleSelection.forEach(item=>{ids += 'ids='+item.id+'&' //ida = ?ids= + id + & ids= + id + &})console.log(ids)this.deleteRequest("/system/basic/pos/"+ids).then(resp=>{if (resp){this.initPositions()}})},