?ue-vben-admin 與.net core 結(jié)合實例 這里計劃使用.net core 作為后端 。目標:打造好看 易用 開箱即用 的netcore一體化框架。Vue Vben Admin For NetCore 取命 hcrain-vvadmin 我不是前端人員 但有時開發(fā)還是要寫一些界面。
之前使用layui是時候 狠心升級下了。
只為了好看----------于是 ?小白教程來了。可以根據(jù) git提交一步步來重現(xiàn)我的實現(xiàn)。
【后面會發(fā)布到在線 效果預覽 ? 還沒發(fā)布啊 我要將它改造成我自己想要的。要時間。這里占個坑而已。不回改文章了?!?/p>
目錄
目錄
第4節(jié)---部門列表的增刪查改及對應API開發(fā)
?編輯
目錄
第4節(jié)---部門列表(樹形列表)的增刪查改及對應API開發(fā)
?編輯?
1部門表定義
2部門表API開發(fā)及定義
3列表新的接觸
表單頁
git提交參考
1部門表定義
2部門表API開發(fā)及定義
本系列文章后在還說會什么?
第4節(jié)---部門列表(樹形列表)的增刪查改及對應API開發(fā)
?
1部門表定義
因為是層級結(jié)構(gòu)? ?這里定義子級數(shù)據(jù)對象Children?
/// <summary>
/// 部門
/// </summary>
public class SysDep : RootEntityBase<int>
{
public SysDep()
{
CreatedTime = DateTime.Now;
}
/// <summary>
/// 機構(gòu)代碼
/// </summary>
public string OrgCode { get; set; }
/// <summary>
/// 上級代碼
/// </summary>
public int ParentId { get; set; } = 0;
/// <summary>
/// 所屬機構(gòu)
/// </summary>
public long OrgId { get; set; }
/// <summary>
/// 部門名稱
/// </summary>
public string DepName { get; set; }
/// <summary>
/// 部門代碼
/// </summary>
public string DepCode { get; set; }
/// <summary>
/// 排序
/// </summary>
public int OrderNo { get; set; }
/// <summary>
/// 添加時間
/// </summary>
[SugarColumn(IndexGroupNameList = new string[] { "index_time1" })]
public DateTime CreatedTime { get; set; }
/// <summary>
/// (子級)不映射數(shù)據(jù)庫字段
/// </summary>
[SugarColumn(IsIgnore = true)]
public List<SysDep> Children { get; set; }
}
2部門表API開發(fā)及定義
系統(tǒng)使用ORM框架 ---SqlSugar? 有多好用 ,這里就不說了,建議.net 人員多支持。
后臺系統(tǒng)對單表實現(xiàn)了所有的常規(guī)接口,不需要開發(fā)。只要單獨開發(fā)樹形查詢接口即可。
添加/刪除/導入/導出/統(tǒng)計/查詢/列新
?
這里要單獨實現(xiàn)非標準接口 樹結(jié)構(gòu)查詢 。SqlSugar有支持,使用即可ToTree。
/// <summary>
/// 部門
/// </summary>
[Route("api/[controller]/[action]")]
[ApiController]
public class SysDepController : BaseSimpleController<SysDep>
{
public SysDepController(IUnitOfWork unitOfWork, IBaseRepository<SysDep> rep, IWebHostEnvironment env)
{
base._env = env;
base._rep = rep;
base._unitOfWork = unitOfWork;
}
/// <summary>
/// 查詢樹
/// </summary>
/// <param name="input"></param>
/// <returns></returns>
[HttpPost]
public async Task<ResultMo<List<SysDep>>> SearchTree(QueryPageInput input)
{
input.queryKeyValue.Add(new AndWhere {
FieldName= "ParentId", FieldValue="0"
} );
var main = await _rep.QueryPage(input);
var Ids = main.data.Select(m => m.Id).ToList();
var re = await _rep.Db.Queryable<SysDep>().Where(m => Ids.Contains(m.Id)|| Ids.Contains(m.ParentId)).
ToTreeAsync(it => it.Children, it => it.ParentId, 0);
re.ForEach(m =>
{
if (m.Children == null) m.Children = new List<SysDep> { };
});
return new ResultMo<List<SysDep>>(re, main.dataCount);
}
}
3列表新的接觸
1查詢時間段,數(shù)據(jù)處理
console.log(prams);
postsearch = [];
for (let pS in prams) {
if (pS != "page" && pS != "pageSize" && prams[pS]!=undefined) {
if (pS.startsWith('find_rp_')) {//find_g_ find_s_
console.log('日期2');
console.log(pS.replace('find_rp_',''));
postsearch.push({
fieldName: 'find_g_'+pS.replace('find_rp_',''),
fieldValue: prams[pS][0]
});
postsearch.push({
fieldName: 'find_s_'+pS.replace('find_rp_',''),
fieldValue: prams[pS][1]
});
}
else {
postsearch.push({
fieldName: pS,
fieldValue: prams[pS]
});
}
}
}
2樹形的不用單獨配置? 他本身有字級后 會自動處理?我也不明白,哈哈。(開關(guān)沒找到)
表單頁
下拉數(shù)據(jù)的轉(zhuǎn)換。
使用apiselect? 只會第一次進行會加載,后面不會更新,那位大神可以告訴二次進入也可以更新的方法?
這里改成 select 每次進入接取綁定。
//下接數(shù)據(jù)獲取
var postsearch = [{ fieldName: 'ParentId', fieldValue: '0' }];
postsearch.push({
fieldName: 'find_q_orgCode',
fieldValue: useUserStore().getUserInfo.orgCode
});
const listdata = await HcrainPost('/api/SysDep/Search', {
queryKeyValue: postsearch,
});
var stype = [{}];
for (let i in listdata.data) {
stype.push({
label: listdata.data[i]['depName'],
value: listdata.data[i]['id']
}
);
}
console.log(stype);
//將數(shù)據(jù)放到下拉框上
updateSchema({
field: 'parentId',
componentProps: {
options: unref(stype),
},
});
git提交參考
?文章來源:http://www.zghlxwxcb.cn/news/detail-793940.html
多謝文章來源地址http://www.zghlxwxcb.cn/news/detail-793940.html
到了這里,關(guān)于vue-vben-admin 與.net core 結(jié)合實例 【自學與教學 小白教程】---第4節(jié)---部門管理的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!