JeecgBoot代碼生成器自定義請求接口實例
按鈕效果圖展示
想要實現(xiàn)一個在使用代碼生成器生成的頁面,在Table表格實現(xiàn)啟用/停用來回切換

代碼生成器的原生表單
JeecgBoot這款框架對新手十分不友好 想看代碼得一個一個去細找。(學藝不精)
這是我經(jīng)過許久研究出來的我的按鈕寫在了使用代碼生成器生成出來的頁面進行添加的。
?請使用原生表單,至少這個看起來,不是那么復雜。

請求缺少的東西
正常寫請求可以請求到,但是后臺會返回給你身份認證失敗,在F12仔細觀察后會發(fā)現(xiàn)你自己寫的少了一個請求標頭的token他是關(guān)鍵。
這是一個點擊啟用、停用的操作欄link按鈕就跟定時任務(wù)的頁面啟用停用一樣,只是找不到相應(yīng)的代碼沒法復制就研究了一個。
缺少X-Access-Token自己寫的接口并沒有token。導致前端顯示401后端顯示身份認證失敗。

代碼部分(關(guān)鍵的來啦)
代碼生成器頁面的List.vue的頁面
const API_ENDPOINT = '/jeecgboot/regulatory_conditions/supervision/edit' //請求編輯的修改狀態(tài)開關(guān)接口
async function updateRecordStatus(recordId: number, warningStatus: string): Promise<void> {
const token = getToken(); //獲取自身token,可以打印測試一下。
const data = {id: recordId, warningStatus: warningStatus};
const config = { headers: { 'X-Access-Token': `${token}`}};
let str = JSON.stringify(data)
console.log("asd:> " + str) //此處是來回檢查寫的 可以不寫
try {
await axios.post(API_ENDPOINT,data,config);
} catch (error) {
console.error('錯誤信息: ', error);
}
}
async function toggleStatus(record: {id: number, warningStatus: string}, isEnabled: boolean): Promise<void> {
const newStatus = isEnabled ? 'Y' : 'N';
if (record.warningStatus !== newStatus){
try {
await updateRecordStatus(record.id, newStatus);
record.warningStatus = newStatus;
} catch (error) {
console.log('失敗記錄: ',error);
}
}
}
function getTableAction(record: {id: number, warningStatus: string}) {
const isDisabled = record.warningStatus === 'Y';
return [
{
label: isDisabled ? '停用' : '啟用',
onClick: ()=> toggleStatus(record, !isDisabled).catch(error => console.error('錯誤: ', error)),
auth: 'regulatory_conditions:supervision:editEnable' //權(quán)限
}
];
}
當然有前端代碼就有后端代碼必須全乎
//其實就是正常寫接口對應(yīng)上就行
@RequiresPermissions("regulatory_conditions:supervision:editEnable") //權(quán)限
@RequestMapping(value = "/editEnable", method = {RequestMethod.PUT,RequestMethod.POST})
@ApiOperation(value = "啟動定時任務(wù)")
public Result<Object> startJob(@RequestBody Supervision supervision) throws SchedulerException {
// System.out.println("測試>>>>>>>>>>>>>>>>>>>>---------------------");
jobService.EnableTask(supervision);
return Result.ok("啟動定時任務(wù)成功");
}
JeecgBoot其他配置
這些配置完后,只是可以請求了,還有還有一些其他的潛在危險。
找到菜單管理,以及你的按鈕頁面添加下級。

按鈕/權(quán)限就是名稱隨便填。

這個添加完后在找到角色管理給你的用戶進行授權(quán)
然后就去查看你的按鈕是否生效,按鈕不出現(xiàn)退出系統(tǒng)重新登錄,記得授權(quán)按鈕關(guān)掉看是否顯示如果不顯示就證明生效了。
數(shù)據(jù)字典也是非常有用的東西可以多多查看
至此所有東西就完成了。

總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用dubbo+zookeeper+spring boot構(gòu)建服務(wù)的方法詳解
這篇文章主要給大家介紹了關(guān)于如何使用dubbo+zookeeper+spring boot構(gòu)建服務(wù)的相關(guān)資料,文中通過示例代碼及圖片介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧2018-05-05
java ThreadPool線程池的使用,線程池工具類用法說明
這篇文章主要介紹了java ThreadPool線程池的使用,線程池工具類用法說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10
SpringBoot整合Elasticsearch?8.x的實戰(zhàn)總結(jié)(附完整示例)
Elasticsearch(簡稱 ES)是當前最流行的分布式搜索引擎,具備強大的全文檢索與數(shù)據(jù)分析能力,本文基于官方文檔與實戰(zhàn)經(jīng)驗,系統(tǒng)總結(jié) ?Spring Boot 整合 Elasticsearch 8.x 的核心要點、版本選型和三種主流實現(xiàn)方式,感興趣的小伙伴可以了解下2026-03-03

