中文亚洲精品无码_熟女乱子伦免费_人人超碰人人爱国产_亚洲熟妇女综合网

當(dāng)前位置: 首頁(yè) > news >正文

九九電視劇免費(fèi)觀看完整版seo搜索培訓(xùn)

九九電視劇免費(fèi)觀看完整版,seo搜索培訓(xùn),免費(fèi)注冊(cè)域名網(wǎng)站推薦,昆明網(wǎng)絡(luò)建設(shè)寫(xiě)在最前 如果這個(gè)項(xiàng)目讓你有所收獲,記得 Star 關(guān)注哦,這對(duì)我是非常不錯(cuò)的鼓勵(lì)與支持。 源碼地址(后端):https://gitee.com/csps/mingyue 源碼地址(前端):https://gitee.com/csps…

寫(xiě)在最前

如果這個(gè)項(xiàng)目讓你有所收獲,記得 Star 關(guān)注哦,這對(duì)我是非常不錯(cuò)的鼓勵(lì)與支持。

源碼地址(后端):https://gitee.com/csps/mingyue

源碼地址(前端):https://gitee.com/csps/mingyue-ui

文檔地址:https://gitee.com/csps/mingyue/wikis

本節(jié)概要

mingyue-ui 目前與后端交互只有登錄登出接口,本節(jié)從用戶入手,完成用戶前后端交互增刪改查。

分頁(yè)查詢用戶

分頁(yè)查詢通用類

@Data
@Schema(description = "分頁(yè)查詢通用類")
public class PageCommon implements Serializable {private static final long serialVersionUID = 1L;@Schema(description = "分頁(yè)大小")private Integer pageSize;@Schema(description = "當(dāng)前頁(yè)數(shù)")private Integer pageNum;@Schema(description = "排序列")private String orderByColumn;@Schema(description = "排序的方向 desc 或者 asc")private String isAsc;/*** 當(dāng)前記錄起始索引 默認(rèn)值*/public static final int DEFAULT_PAGE_NUM = 1;/*** 每頁(yè)顯示記錄數(shù) 默認(rèn)值 默認(rèn)查全部*/public static final int DEFAULT_PAGE_SIZE = Integer.MAX_VALUE;public <T> Page<T> build() {Integer pageNum = ObjectUtil.defaultIfNull(getPageNum(), DEFAULT_PAGE_NUM);Integer pageSize = ObjectUtil.defaultIfNull(getPageSize(), DEFAULT_PAGE_SIZE);if (pageNum <= 0) {pageNum = DEFAULT_PAGE_NUM;}Page<T> page = new Page<>(pageNum, pageSize);List<OrderItem> orderItems = buildOrderItem();if (CollUtil.isNotEmpty(orderItems)) {page.addOrder(orderItems);}return page;}/*** 構(gòu)建排序** 支持的用法如下: {isAsc:"asc",orderByColumn:"id"} order by id asc* {isAsc:"asc",orderByColumn:"id,createTime"} order by id asc,create_time asc* {isAsc:"desc",orderByColumn:"id,createTime"} order by id desc,create_time desc* {isAsc:"asc,desc",orderByColumn:"id,createTime"} order by id asc,create_time desc*/private List<OrderItem> buildOrderItem() {if (StrUtil.isBlank(orderByColumn) || StrUtil.isBlank(isAsc)) {return null;}String orderBy = SqlUtil.escapeOrderBySql(orderByColumn);orderBy = StrUtil.toUnderlineCase(orderBy);String[] orderByArr = orderBy.split(StrUtil.COMMA);String[] isAscArr = isAsc.split(StrUtil.COMMA);if (isAscArr.length != 1 && isAscArr.length != orderByArr.length) {throw new ServiceException("排序參數(shù)有誤");}List<OrderItem> list = new ArrayList<>();// 每個(gè)字段各自排序for (int i = 0; i < orderByArr.length; i++) {String orderByStr = orderByArr[i];String isAscStr = isAscArr.length == 1 ? isAscArr[0] : isAscArr[i];if ("asc".equals(isAscStr)) {list.add(OrderItem.asc(orderByStr));}else if ("desc".equals(isAscStr)) {list.add(OrderItem.desc(orderByStr));}else {throw new ServiceException("排序參數(shù)有誤");}}return list;}}

接口層

@GetMapping("list")
@SaCheckPermission("system:user:list")
@Operation(summary = "獲取所有用戶信息")
public R<IPage<SysUserVo>> getSysUsers(PageCommon page, UserQueryDto dto) {return R.ok(sysUserService.getSysUsers(page, dto));
}

邏輯層

@Override
public IPage<SysUserVo> getSysUsers(PageCommon page, UserQueryDto dto) {return sysUserMapper.getUserVosPage(page.build(), dto);
}

數(shù)據(jù)層

<select id="getUserVosPage" resultType="com.csp.mingyue.system.api.vo.SysUserVo">SELECT su.*,sr.role_name, sr.role_codeFROM sys_user suLEFT JOIN sys_user_role sur ON sur.user_id = su.user_idLEFT JOIN sys_role sr ON sur.role_id = sr.role_id<where>su.is_deleted = '0'<if test="query.username != null and query.username != ''"><bind name="usernameLike" value="'%' + query.username + '%'" />and su.username LIKE #{usernameLike}</if></where>ORDER BY su.create_time DESC</select>

接口測(cè)試

非排序入?yún)?/p>

curl -X 'GET' \'http://mingyue-gateway:9100/system/sysUser/list?pageSize=10&pageNum=1&username=' \-H 'accept: */*' \-H 'Authorization: vhiqUYS3NtT5zpvyzwudffAhyu3vswAV'

排序入?yún)?/p>

curl -X 'GET' \'http://mingyue-gateway:9100/system/sysUser/list?pageSize=10&pageNum=2&orderByColumn=userId&isAsc=desc&username=' \-H 'accept: */*' \-H 'Authorization: vhiqUYS3NtT5zpvyzwudffAhyu3vswAV'

添加或編輯用戶

接口層

@PostMapping("addOrEdit")
@Operation(summary = "添加或編輯用戶")
public R<Boolean> addOrEdit(@Valid @RequestBody UserAddOrEditDto dto) {return R.ok(sysUserService.addOrEdit(dto));
}

邏輯層

@Override
@Transactional(rollbackFor = Exception.class)
public boolean addOrEdit(UserAddOrEditDto dto) {SysUser sysUser = BeanUtil.copyProperties(dto, SysUser.class);// 添加用戶if (Objects.isNull(sysUser.getUserId())) {// 密碼加密sysUser.setPassword(BCrypt.hashpw(sysUser.getPassword(), userPasswordProperties.getSalt()));}boolean flag = this.saveOrUpdate(sysUser);if (!flag) {throw new UserException("用戶信息保存異常");}// 保存角色關(guān)系flag = sysRoleService.addUserRole(sysUser.getUserId(), dto.getRoleCode());if (!flag) {throw new UserException("用戶角色信息保存異常");}return true;
}

刪除用戶

接口層

@DeleteMapping("{userId}")
@Operation(summary = "刪除用戶", parameters = { @Parameter(name = "userId", description = "用戶ID", required = true) })
public R<Boolean> delUser(@PathVariable Long userId) {return R.ok(sysUserService.delUser(userId));
}

邏輯層

@Override
public boolean delUser(Long userId) {return sysUserMapper.deleteByIdLogic(userId) > 0;
}

數(shù)據(jù)層

<delete id="deleteByIdLogic">UPDATE sys_user su SET su.is_deleted = '1' WHERE su.user_id = #{userId}
</delete>

mingyue-ui 接口交互

接口定義

list: (page: object) => {return request({url: '/api/system/sysUser/list',method: 'get',params: page});
},
addOrEdit: (data: object) => {return request({url: '/api/system/sysUser/addOrEdit',method: 'post',data: data});
},
del: (userId: number) => {return request({url: '/api/system/sysUser/' + userId,method: 'delete'});
}

分頁(yè)查詢

src/views/system/user/index.vue

const getTableData = async () => {state.tableData.loading = true;const res = await getUserList();state.tableData.data = res.data.records;state.tableData.total = res.data.total;state.tableData.loading = false;
};

添加或編輯用戶

src/views/system/user/dialog.vue

const onSubmit = () => {userApi().addOrEdit(state.ruleForm).then(res => {if (res.data) {closeDialog();emit('refresh');state.dialog.type === 'add' ? ElMessage.success('添加成功') : ElMessage.success('修改成功');} else {state.dialog.type === 'add' ? ElMessage.error('添加失敗') : ElMessage.error('修改失敗');}})
};

刪除用戶

src/views/system/user/index.vue

const onRowDel = (row: RowUserType) => {ElMessageBox.confirm(`此操作將永久刪除賬戶名稱:“${row.username}”,是否繼續(xù)?`, '提示', {confirmButtonText: '確認(rèn)',cancelButtonText: '取消',type: 'warning',}).then(() => {userApi().del(row.userId).then(() => {getTableData();ElMessage.success('刪除成功');});}).catch(() => {});
};

小結(jié)

用戶管理已經(jīng)可以交互接口完成真實(shí)的增刪改查了。

目前 mingyue 已經(jīng)包含了 統(tǒng)一網(wǎng)關(guān)服務(wù)、統(tǒng)一認(rèn)證服務(wù)統(tǒng)一系統(tǒng)服務(wù)統(tǒng)一推送服務(wù),距離目標(biāo)還差

統(tǒng)一文件服務(wù)、統(tǒng)一定時(shí)服務(wù)、統(tǒng)一搜索服務(wù) 等等。接下來(lái)搞一搞 統(tǒng)一文件服務(wù) 吧!

本人后端一枚,前端粗通,等后續(xù)后端服務(wù)基本完成后,再去抽時(shí)間完善前端代碼哈~~ 見(jiàn)諒《 - 。- 》

http://www.risenshineclean.com/news/63221.html

相關(guān)文章:

  • 大連商城網(wǎng)站建設(shè)百度營(yíng)銷登錄入口
  • 廣東微信網(wǎng)站制作哪家好西安網(wǎng)站優(yōu)化公司
  • 網(wǎng)頁(yè)設(shè)計(jì)與制作教程web前端開(kāi)發(fā)整站優(yōu)化提升排名
  • 平?jīng)鍪凶》亢统青l(xiāng)建設(shè)局網(wǎng)站sem賬戶托管外包
  • 網(wǎng)站登陸驗(yàn)證怎么用java做拓客最有效方案
  • 網(wǎng)站設(shè)計(jì)任務(wù)怎么讓客戶主動(dòng)找你
  • dw做的網(wǎng)站如何上傳圖片灰色行業(yè)推廣平臺(tái)網(wǎng)站
  • 網(wǎng)站開(kāi)發(fā)要網(wǎng)絡(luò)營(yíng)銷運(yùn)營(yíng)策劃
  • 政府網(wǎng)站數(shù)據(jù)開(kāi)放 建設(shè)方案網(wǎng)絡(luò)營(yíng)銷師證書(shū)有用嗎
  • 免費(fèi)信息網(wǎng)站建設(shè)平臺(tái)有趣的軟文
  • 保定市城鄉(xiāng)規(guī)劃建設(shè)局網(wǎng)站公司宣傳網(wǎng)頁(yè)怎么做
  • 政府網(wǎng)站建設(shè)監(jiān)管力度不夠成都seo達(dá)人
  • 杭州網(wǎng)站制作報(bào)價(jià)推廣網(wǎng)站要注意什么
  • 找合作項(xiàng)目app平臺(tái)濟(jì)南做seo外包
  • 外包公司做的網(wǎng)站貼吧友情鏈接在哪
  • 專業(yè)做幼兒園網(wǎng)站萬(wàn)網(wǎng)域名注冊(cè)查詢網(wǎng)
  • xxx網(wǎng)站建設(shè)規(guī)劃治療腰椎間盤突出的特效藥
  • 合肥 做網(wǎng)站濟(jì)南seo官網(wǎng)優(yōu)化
  • 香港公司如何做國(guó)內(nèi)網(wǎng)站的備案小說(shuō)推廣關(guān)鍵詞怎么弄
  • 重慶旅游景點(diǎn)廈門seo優(yōu)化多少錢
  • 網(wǎng)站頭部導(dǎo)航代碼網(wǎng)站seo優(yōu)化怎么做
  • 美橙網(wǎng)站建設(shè)怎么做推廣一次多少錢
  • 企業(yè)手機(jī)網(wǎng)站建設(shè)策劃書(shū)百度搜索次數(shù)統(tǒng)計(jì)
  • wordpress用戶前端創(chuàng)建相冊(cè)關(guān)鍵詞seo公司推薦
  • 買域名后 怎么做網(wǎng)站長(zhǎng)沙網(wǎng)
  • 網(wǎng)站建設(shè)費(fèi) 什么科目鄭州seo網(wǎng)站有優(yōu)化
  • wordpress清新seo服務(wù)包括哪些
  • wordpress inerhtmlseo怎么做優(yōu)化工作
  • 中山外貿(mào)網(wǎng)站建設(shè)網(wǎng)絡(luò)營(yíng)銷師報(bào)名官網(wǎng)
  • 外行怎么做網(wǎng)站十大廣告投放平臺(tái)