first commit
This commit is contained in:
@@ -0,0 +1,42 @@
|
||||
/**
|
||||
* 基础数据-医院 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-04 14:06:17
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const basicHospitalApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/basicHospital/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 列表查询 @author xing
|
||||
*/
|
||||
queryList : (param) => {
|
||||
return postRequest('/basicHospital/queryList', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/basicHospital/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/basicHospital/update', param);
|
||||
},
|
||||
|
||||
|
||||
|
||||
};
|
||||
@@ -0,0 +1,72 @@
|
||||
/**
|
||||
* 病例库-临床-文章 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-04 10:17:15
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const caseClinicalArticleApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/caseClinicalArticle/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/caseClinicalArticle/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/caseClinicalArticle/update', param);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 删除 @author xing
|
||||
*/
|
||||
delete: (id) => {
|
||||
return getRequest(`/caseClinicalArticle/delete/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 批量删除 @author xing
|
||||
*/
|
||||
batchDelete: (idList) => {
|
||||
return postRequest('/caseClinicalArticle/batchDelete', idList);
|
||||
},
|
||||
|
||||
/**
|
||||
* 生成文章分享二维码 @author xing
|
||||
*/
|
||||
addUnlimitedQrcode: (articleId) => {
|
||||
return postRequest(`/caseClinicalArticle/addUnlimitedQrcode/${articleId}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取文章详情 @author xing
|
||||
*/
|
||||
getDetail: (articleId) => {
|
||||
return getRequest(`/caseClinicalArticle/getDetail/${articleId}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取疾病标签数据 @author xing
|
||||
*/
|
||||
getCaseLabel: (pId = '0') => {
|
||||
return getRequest(`/caseClinicalLabel/queryList?pId=${pId}`);
|
||||
},
|
||||
updateStatus: (articleId, status) => {
|
||||
return postRequest(`/caseClinicalArticle/status/update`, { articleId, status });
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,76 @@
|
||||
/**
|
||||
* 医生管理 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-04 15:24:56
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const caseClinicalDoctorApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/caseClinicalDoctor/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 列表查询 @author xing
|
||||
*/
|
||||
queryList : (param) => {
|
||||
return postRequest('/caseClinicalDoctor/queryList', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/caseClinicalDoctor/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/caseClinicalDoctor/update', param);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 删除 @author xing
|
||||
*/
|
||||
delete: (id) => {
|
||||
return getRequest(`/caseClinicalDoctor/delete/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 批量删除 @author xing
|
||||
*/
|
||||
batchDelete: (idList) => {
|
||||
return postRequest('/caseClinicalDoctor/batchDelete', idList);
|
||||
},
|
||||
|
||||
/**
|
||||
* 更新状态 @author xing
|
||||
*/
|
||||
updateStatus: (doctorId, status) => {
|
||||
return postRequest('/caseClinicalDoctor/status/update', { doctorId, status });
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取APP医生信息 @author xing
|
||||
*/
|
||||
getAppDoctor: (doctorName) => {
|
||||
return getRequest(`/caseClinicalDoctor/getAppDoctor?doctorName=${encodeURIComponent(doctorName)}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取医生详情 @author xing
|
||||
*/
|
||||
getDetail: (doctorId) => {
|
||||
return getRequest(`/caseClinicalDoctor/getDetail/${doctorId}`);
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,69 @@
|
||||
/**
|
||||
* 病例库-临床-视频 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-08 13:26:37
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const caseClinicalVideoApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/caseClinicalVideo/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/caseClinicalVideo/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/caseClinicalVideo/update', param);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 删除 @author xing
|
||||
*/
|
||||
delete: (id) => {
|
||||
return getRequest(`/caseClinicalVideo/delete/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 批量删除 @author xing
|
||||
*/
|
||||
batchDelete: (idList) => {
|
||||
return postRequest('/caseClinicalVideo/batchDelete', idList);
|
||||
},
|
||||
|
||||
/**
|
||||
* 更新状态 @author xing
|
||||
*/
|
||||
updateStatus: (videoId, status) => {
|
||||
return postRequest('/caseClinicalVideo/updateStatus', { videoId, status });
|
||||
},
|
||||
|
||||
/**
|
||||
* 生成二维码 @author xing
|
||||
*/
|
||||
addUnlimitedQrcode: (videoId) => {
|
||||
return getRequest(`/caseClinicalVideo/addUnlimitedQrcode/${videoId}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取详情 @author xing
|
||||
*/
|
||||
getDetail: (videoId) => {
|
||||
return getRequest(`/caseClinicalVideo/getDetail/${videoId}`);
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,81 @@
|
||||
/**
|
||||
* 病例库-病例交流 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-08 18:28:17
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const caseExchangeApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/caseExchange/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/caseExchange/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/caseExchange/update', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 删除 @author xing
|
||||
*/
|
||||
delete: (id) => {
|
||||
return getRequest(`/caseExchange/delete/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 批量删除 @author xing
|
||||
*/
|
||||
batchDelete: (idList) => {
|
||||
return postRequest('/caseExchange/batchDelete', idList);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取详情 @author xing
|
||||
*/
|
||||
getDetail: (exchangeId) => {
|
||||
return getRequest(`/caseExchange/getDetail/${exchangeId}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 更新状态 @author xing
|
||||
*/
|
||||
updateStatus: (exchangeId, status) => {
|
||||
return postRequest(`/caseExchange/status/update`, { exchangeId, status });
|
||||
},
|
||||
|
||||
/**
|
||||
* 更新精选状态 @author xing
|
||||
*/
|
||||
updateSelected: (exchangeId, isSelected) => {
|
||||
return postRequest(`/caseExchange/selected/update`, { exchangeId, isSelected });
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取疾病标签数据 @author xing
|
||||
*/
|
||||
getCaseLabel: (pId = '0') => {
|
||||
return getRequest(`/caseClinicalLabel/queryList?pId=${pId}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 获取投票信息 @author xing
|
||||
*/
|
||||
getVoteInfo: (exchangeId) => {
|
||||
return getRequest(`/caseExchange/getVoteInfo/${exchangeId}`);
|
||||
},
|
||||
};
|
||||
@@ -0,0 +1,30 @@
|
||||
/*
|
||||
* 类目api
|
||||
*
|
||||
* @Author: 卓大
|
||||
* @Date: 2022-09-03 21:35:00
|
||||
* @Wechat: zhuda1024
|
||||
* @Email: lab1024@163.com
|
||||
* @Copyright 1024创新实验室 ( https://1024lab.net ),Since 2012
|
||||
*/
|
||||
import { getRequest, postRequest } from '/@/lib/axios';
|
||||
|
||||
export const categoryApi = {
|
||||
// 添加类目 @author 卓大
|
||||
addCategory: (param) => {
|
||||
return postRequest('/category/add', param);
|
||||
},
|
||||
// GET
|
||||
// 删除类目 @author 卓大
|
||||
deleteCategoryById: (categoryId) => {
|
||||
return getRequest(`/category/delete/${categoryId}`);
|
||||
},
|
||||
// 查询类目层级树 @author 卓大
|
||||
queryCategoryTree: (param) => {
|
||||
return postRequest('/category/tree', param);
|
||||
},
|
||||
// 更新类目 @author 卓大
|
||||
updateCategory: (param) => {
|
||||
return postRequest('/category/update', param);
|
||||
},
|
||||
};
|
||||
@@ -0,0 +1,41 @@
|
||||
/*
|
||||
* @Description:
|
||||
* @Author: zhuoda
|
||||
* @Date: 2021-11-05
|
||||
* @LastEditTime: 2022-06-23
|
||||
* @LastEditors: zhuoda
|
||||
*/
|
||||
import {postRequest, getRequest, getDownload} from '/@/lib/axios';
|
||||
|
||||
export const goodsApi = {
|
||||
// 添加商品 @author zhuoda
|
||||
addGoods: (param) => {
|
||||
return postRequest('/goods/add', param);
|
||||
},
|
||||
// 删除 @author zhuoda
|
||||
deleteGoods: (goodsId) => {
|
||||
return getRequest(`/goods/delete/${goodsId}`);
|
||||
},
|
||||
// 批量 @author zhuoda
|
||||
batchDelete: (goodsIdList) => {
|
||||
return postRequest('/goods/batchDelete', goodsIdList);
|
||||
},
|
||||
// 分页查询 @author zhuoda
|
||||
queryGoodsList: (param) => {
|
||||
return postRequest('/goods/query', param);
|
||||
},
|
||||
// 更新商品 @author zhuoda
|
||||
updateGoods: (param) => {
|
||||
return postRequest('/goods/update', param);
|
||||
},
|
||||
|
||||
// 导入 @author 卓大
|
||||
importGoods : (file) =>{
|
||||
return postRequest('/goods/importGoods',file);
|
||||
},
|
||||
|
||||
// 导出 @author 卓大
|
||||
exportGoods : () =>{
|
||||
return getDownload('/goods/exportGoods');
|
||||
}
|
||||
};
|
||||
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* 银行卡
|
||||
*
|
||||
* @Author: 善逸
|
||||
* @Date: 2022-09-03 21:42:08
|
||||
* @Wechat: zhuda1024
|
||||
* @Email: lab1024@163.com
|
||||
* @Copyright 1024创新实验室 ( https://1024lab.net ),Since 2012
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const bankApi = {
|
||||
// 新建银行信息 @author 善逸
|
||||
create: (param) => {
|
||||
return postRequest('/oa/bank/create', param);
|
||||
},
|
||||
|
||||
// 删除银行信息 @author 善逸
|
||||
delete: (bankId) => {
|
||||
return getRequest(`/oa/bank/delete/${bankId}`);
|
||||
},
|
||||
|
||||
// 查询银行信息详情 @author 善逸
|
||||
detail: (bankId) => {
|
||||
return getRequest(`/oa/bank/get/${bankId}`);
|
||||
},
|
||||
|
||||
// 分页查询银行信息 @author 善逸
|
||||
pageQuery: (param) => {
|
||||
return postRequest('/oa/bank/page/query', param);
|
||||
},
|
||||
|
||||
// 编辑银行信息 @author 善逸
|
||||
update: (param) => {
|
||||
return postRequest('/oa/bank/update', param);
|
||||
},
|
||||
|
||||
// 根据企业ID查询不分页的银行列表 @author 善逸
|
||||
queryList: (enterpriseId) => {
|
||||
return getRequest(`/oa/bank/query/list/${enterpriseId}`);
|
||||
},
|
||||
};
|
||||
@@ -0,0 +1,69 @@
|
||||
/*
|
||||
* 企业信息
|
||||
*
|
||||
* @Author: 开云
|
||||
* @Date: 2022-09-03 21:47:28
|
||||
* @Wechat: zhuda1024
|
||||
* @Email: lab1024@163.com
|
||||
* @Copyright 1024创新实验室 ( https://1024lab.net ),Since 2012
|
||||
*/
|
||||
import {postRequest, getRequest, postDownload} from '/@/lib/axios';
|
||||
|
||||
export const enterpriseApi = {
|
||||
// 新建企业 @author 开云
|
||||
create: (param) => {
|
||||
return postRequest('/oa/enterprise/create', param);
|
||||
},
|
||||
|
||||
// 删除企业 @author 开云
|
||||
delete: (enterpriseId) => {
|
||||
return getRequest(`/oa/enterprise/delete/${enterpriseId}`);
|
||||
},
|
||||
|
||||
// 查询企业详情 @author 开云
|
||||
detail: (enterpriseId) => {
|
||||
return getRequest(`/oa/enterprise/get/${enterpriseId}`);
|
||||
},
|
||||
|
||||
// 分页查询企业模块 @author 开云
|
||||
pageQuery: (param) => {
|
||||
return postRequest('/oa/enterprise/page/query', param);
|
||||
},
|
||||
|
||||
// 导出企业数据excel @author 卓大
|
||||
exportExcel: (param) => {
|
||||
return postDownload('/oa/enterprise/exportExcel', param);
|
||||
},
|
||||
|
||||
//企业列表查询 含数据范围 @author 开云
|
||||
queryList: (type) => {
|
||||
let query = '';
|
||||
if (type) {
|
||||
query = `?type=${type}`;
|
||||
}
|
||||
return getRequest(`/oa/enterprise/query/list${query}`);
|
||||
},
|
||||
|
||||
// 编辑企业 @author 开云
|
||||
update: (param) => {
|
||||
return postRequest('/oa/enterprise/update', param);
|
||||
},
|
||||
// 企业全部员工List @author yandy
|
||||
employeeList: (param) => {
|
||||
return postRequest('/oa/enterprise/employee/list', param);
|
||||
},
|
||||
// 分页查询企业员工List @author 卓大
|
||||
queryPageEmployeeList: (param) => {
|
||||
return postRequest('/oa/enterprise/employee/queryPage', param);
|
||||
},
|
||||
// 添加员工 @author yandy
|
||||
addEmployee: (param) => {
|
||||
return postRequest('/oa/enterprise/employee/add', param);
|
||||
},
|
||||
|
||||
// 删除员工 @author yandy
|
||||
deleteEmployee: (param) => {
|
||||
return postRequest('/oa/enterprise/employee/delete', param);
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,44 @@
|
||||
/*
|
||||
* OA发票信息
|
||||
*
|
||||
* @Author: 善逸
|
||||
* @Date: 2022-09-03 21:48:54
|
||||
* @Wechat: zhuda1024
|
||||
* @Email: lab1024@163.com
|
||||
* @Copyright 1024创新实验室 ( https://1024lab.net ),Since 2012
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const invoiceApi = {
|
||||
|
||||
// 新建发票信息 @author 善逸
|
||||
create: (param) => {
|
||||
return postRequest('/oa/invoice/create', param);
|
||||
},
|
||||
|
||||
// 删除发票信息 @author 善逸
|
||||
delete: (bankId) => {
|
||||
return getRequest(`/oa/invoice/delete/${bankId}`);
|
||||
},
|
||||
|
||||
// 查询发票信息详情 @author 善逸
|
||||
detail: (bankId) => {
|
||||
return getRequest(`//oa/invoice/get/${bankId}`);
|
||||
},
|
||||
|
||||
// 分页查询发票信息 @author 善逸
|
||||
pageQuery: (param) => {
|
||||
return postRequest('/oa/invoice/page/query', param);
|
||||
},
|
||||
|
||||
// 编辑发票信息 @author 善逸
|
||||
update: (param) => {
|
||||
return postRequest('/oa/invoice/update', param);
|
||||
},
|
||||
|
||||
// 查询发票列表 @author 善逸
|
||||
queryList: (enterpriseId) => {
|
||||
return getRequest(`/oa/invoice/query/list/${enterpriseId}`);
|
||||
},
|
||||
|
||||
};
|
||||
@@ -0,0 +1,74 @@
|
||||
/*
|
||||
* @Description: 公告信息、企业动态
|
||||
* @version:
|
||||
* @Author: zhuoda
|
||||
* @Date: 2022-08-16 20:34:36
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const noticeApi = {
|
||||
// ---------------- 通知公告类型 -----------------------
|
||||
|
||||
// 通知公告类型-获取全部 @author zhuoda
|
||||
getAllNoticeTypeList() {
|
||||
return getRequest('/oa/noticeType/getAll');
|
||||
},
|
||||
|
||||
// 通知公告类型-添加 @author zhuoda
|
||||
addNoticeType(name) {
|
||||
return getRequest(`/oa/noticeType/add/${name}`);
|
||||
},
|
||||
|
||||
// 通知公告类型-修改 @author zhuoda
|
||||
updateNoticeType(noticeTypeId, name) {
|
||||
return getRequest(`/oa/noticeType/update/${noticeTypeId}/${name}`);
|
||||
},
|
||||
// 通知公告类型-删除 @author zhuoda
|
||||
deleteNoticeType(noticeTypeId) {
|
||||
return getRequest(`/oa/noticeType/delete/${noticeTypeId}`);
|
||||
},
|
||||
|
||||
// ---------------- 通知公告管理 -----------------------
|
||||
|
||||
// 通知公告-分页查询 @author zhuoda
|
||||
queryNotice(param) {
|
||||
return postRequest('/oa/notice/query', param);
|
||||
},
|
||||
|
||||
// 通知公告-添加 @author zhuoda
|
||||
addNotice(param) {
|
||||
return postRequest('/oa/notice/add', param);
|
||||
},
|
||||
|
||||
// 通知公告-更新 @author zhuoda
|
||||
updateNotice(param) {
|
||||
return postRequest('/oa/notice/update', param);
|
||||
},
|
||||
|
||||
// 通知公告-删除 @author zhuoda
|
||||
deleteNotice(noticeId) {
|
||||
return getRequest(`/oa/notice/delete/${noticeId}`);
|
||||
},
|
||||
|
||||
// 通知公告-更新详情 @author zhuoda
|
||||
getUpdateNoticeInfo(noticeId) {
|
||||
return getRequest(`/oa/notice/getUpdateVO/${noticeId}`);
|
||||
},
|
||||
|
||||
// --------------------- 【员工】查看 通知公告 -------------------------
|
||||
|
||||
// 通知公告-员工-查看详情 @author zhuoda
|
||||
view(noticeId) {
|
||||
return getRequest(`/oa/notice/employee/view/${noticeId}`);
|
||||
},
|
||||
|
||||
// 通知公告-员工-查询 @author zhuoda
|
||||
queryEmployeeNotice(param) {
|
||||
return postRequest('/oa/notice/employee/query', param);
|
||||
},
|
||||
|
||||
// 【员工】通知公告-查询 查看记录 @author zhuoda
|
||||
queryViewRecord(param) {
|
||||
return postRequest('/oa/notice/employee/queryViewRecord', param);
|
||||
},
|
||||
};
|
||||
@@ -0,0 +1,48 @@
|
||||
/**
|
||||
* 用户管理 api 封装
|
||||
*
|
||||
* @Author: xing
|
||||
* @Date: 2025-08-06 11:07:39
|
||||
* @Copyright gdxz
|
||||
*/
|
||||
import { postRequest, getRequest } from '/@/lib/axios';
|
||||
|
||||
export const userApi = {
|
||||
|
||||
/**
|
||||
* 分页查询 @author xing
|
||||
*/
|
||||
queryPage : (param) => {
|
||||
return postRequest('/user/queryPage', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 增加 @author xing
|
||||
*/
|
||||
add: (param) => {
|
||||
return postRequest('/user/add', param);
|
||||
},
|
||||
|
||||
/**
|
||||
* 修改 @author xing
|
||||
*/
|
||||
update: (param) => {
|
||||
return postRequest('/user/update', param);
|
||||
},
|
||||
|
||||
|
||||
/**
|
||||
* 删除 @author xing
|
||||
*/
|
||||
delete: (id) => {
|
||||
return getRequest(`/user/delete/${id}`);
|
||||
},
|
||||
|
||||
/**
|
||||
* 批量删除 @author xing
|
||||
*/
|
||||
batchDelete: (idList) => {
|
||||
return postRequest('/user/batchDelete', idList);
|
||||
},
|
||||
|
||||
};
|
||||
Reference in New Issue
Block a user