Commit b4547dbe authored by daniel's avatar daniel

fix(partnerBanner):banner菜单权限优化

parent cee3fd80
...@@ -11,6 +11,7 @@ import org.springframework.stereotype.Service; ...@@ -11,6 +11,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.UUID; import java.util.UUID;
@Service @Service
...@@ -21,6 +22,7 @@ public class BannerService { ...@@ -21,6 +22,7 @@ public class BannerService {
// 赛小客partnerId // 赛小客partnerId
private final static String GEEXEK_PARTNER_ID = "DAE435E335D5001162F2"; private final static String GEEXEK_PARTNER_ID = "DAE435E335D5001162F2";
private final static Integer GK_CMPT_ID = 27307;
public List<Banner> queryAll(int cmptId){ public List<Banner> queryAll(int cmptId){
return bannerMapper.queryAll(cmptId); return bannerMapper.queryAll(cmptId);
...@@ -65,6 +67,29 @@ public class BannerService { ...@@ -65,6 +67,29 @@ public class BannerService {
return bannerMapper.queryAllPartnerBanner(partnerId); return bannerMapper.queryAllPartnerBanner(partnerId);
} }
/**
* 检查是否有编辑权限
* 0 无权限 1 有权限
* @param cmptId
* @return
*/
public Integer checkPartnerBannerAuth (Integer cmptId){
String partnerId = GEEXEK_PARTNER_ID;
Partner partner = bannerMapper.getPartnerIdByCmptId(cmptId);
if(partner != null && StringUtils.isNotBlank(partner.getPartnerId())){
partnerId = partner.getPartnerId();
// 定制小程序允许修改 by ggb 2025-06-05
if(partnerId!=GEEXEK_PARTNER_ID){
return 1;
}
}
// 赛客的限制一个可以赛事编辑 演示赛事 by ggb 2025-06-05
if(!Objects.equals(cmptId, GK_CMPT_ID)){
return 0;
}
return 1;
}
/** /**
* 保存组委会banner图 * 保存组委会banner图
* @param banner * @param banner
...@@ -75,6 +100,14 @@ public class BannerService { ...@@ -75,6 +100,14 @@ public class BannerService {
Partner partner = bannerMapper.getPartnerIdByCmptId(banner.getCmptId()); Partner partner = bannerMapper.getPartnerIdByCmptId(banner.getCmptId());
if(partner != null && StringUtils.isNotBlank(partner.getPartnerId())){ if(partner != null && StringUtils.isNotBlank(partner.getPartnerId())){
partnerId = partner.getPartnerId(); partnerId = partner.getPartnerId();
// 限制其他赛事的处理
if(partnerId!=GEEXEK_PARTNER_ID){
return null;
}
}
// 限制其他赛事的处理 by ggb 2025-06-05
if(partnerId==GEEXEK_PARTNER_ID&&banner.getCmptId()!=GK_CMPT_ID){
return null;
} }
// Integer maxSeq = bannerMapper.getMaxSeqPartnerBanner(partnerId); // Integer maxSeq = bannerMapper.getMaxSeqPartnerBanner(partnerId);
// banner.setSeq(maxSeq == null ? 1 : ++maxSeq); // banner.setSeq(maxSeq == null ? 1 : ++maxSeq);
......
...@@ -105,51 +105,64 @@ public class BannerController { ...@@ -105,51 +105,64 @@ public class BannerController {
/** /**
* 查询组委会轮播图列表 * 查询组委会轮播图列表
* @param cmptId * @param cmptId 赛事id
* @return * @return Result
*/ */
@RequestMapping("partner/list/{cmptId}") @RequestMapping("partner/list/{cmptId}")
@ResponseBody @ResponseBody
public Result queryAllPartnerBanner(@PathVariable("cmptId") Integer cmptId) { public Result<?> queryAllPartnerBanner(@PathVariable("cmptId") Integer cmptId) {
List<PartnerBanner> banners = bannerService.queryAllPartnerBanner(cmptId); List<PartnerBanner> banners = bannerService.queryAllPartnerBanner(cmptId);
return Result.success().setContent(banners); return Result.success().setContent(banners);
} }
/** /**
* 查询组委会轮播图列表 * 查询组委会轮播图列表
* @param partnerId * @param partnerId partnerId
* @return * @return Result
*/ */
@RequestMapping("partner/query/{partnerId}") @RequestMapping("partner/query/{partnerId}")
@ResponseBody @ResponseBody
public Result queryAllPartnerBannerByPartnerId(@PathVariable("partnerId") String partnerId) { public Result<?> queryAllPartnerBannerByPartnerId(@PathVariable("partnerId") String partnerId) {
List<PartnerBanner> banners = bannerService.queryAllPartnerBannerByPartnerId(partnerId); List<PartnerBanner> banners = bannerService.queryAllPartnerBannerByPartnerId(partnerId);
return Result.success().setContent(banners); return Result.success().setContent(banners);
} }
/** /**
* 组委会轮播图保存 * 组委会轮播图保存
* @param banner * @param banner banner
* @return * @return Result
*/ */
@RequestMapping("savePartnerBanner") @RequestMapping("savePartnerBanner")
@ResponseBody @ResponseBody
public Result savePartnerBanner(@RequestBody PartnerBanner banner) { public Result<?> savePartnerBanner(@RequestBody PartnerBanner banner) {
if(banner.getCmptId() == null){ if(banner.getCmptId() == null){
return Result.fail().setMsg("赛事ID不能为空!").setCode(403); return Result.fail().setMsg("赛事ID不能为空!").setCode(403);
} }
banner = bannerService.saveOrUpdatePartnerBanner(banner); banner = bannerService.saveOrUpdatePartnerBanner(banner);
if(banner == null){
return Result.fail().setMsg("无权操作!").setCode(403);
}
return Result.success().setContent(banner); return Result.success().setContent(banner);
} }
/**
* 检查是否有编辑权限
* @param cmptId 赛事id
* @return 0 无权限 1 有权限
*/
@RequestMapping("partner/auth/{cmptId}")
@ResponseBody
public Result<?> checkPartnerBannerAuth(@PathVariable("cmptId") Integer cmptId) {
Integer enable = bannerService.checkPartnerBannerAuth(cmptId);
return Result.success().setContent(enable);
}
/** /**
* 删除小程序组委会轮播图 * 删除小程序组委会轮播图
* @param id * @param id id
* @param mv * @return Result
* @return
*/ */
@RequestMapping("delPartnerBanner/{id}") @RequestMapping("delPartnerBanner/{id}")
@ResponseBody @ResponseBody
public Result delPartnerBanner(@PathVariable("id") Integer id, ModelAndView mv) { public Result<?> delPartnerBanner(@PathVariable("id") Integer id, ModelAndView mv) {
bannerService.delPartnerBanner(id); bannerService.delPartnerBanner(id);
return Result.success(); return Result.success();
} }
......
...@@ -341,7 +341,7 @@ ...@@ -341,7 +341,7 @@
<span class="menu-txt">分类管理</span> <span class="menu-txt">分类管理</span>
</a> </a>
</li> </li>
<li class="parnterBanner menu-sub-item"> <li class="partnerBanner menu-sub-item" style="display: none;">
<a <a
href="/gk/banner/partner/${cmpt.cmptId}?uId=${uId}&cId=${cId}&timestamp=${timestamp}&sign=${sign}"> href="/gk/banner/partner/${cmpt.cmptId}?uId=${uId}&cId=${cId}&timestamp=${timestamp}&sign=${sign}">
<span class="left-arrow"></span> <span class="left-arrow"></span>
...@@ -410,7 +410,7 @@ ...@@ -410,7 +410,7 @@
var classes = ['cmptSetting', 'nameList', 'manual', 'contact', 'manage', var classes = ['cmptSetting', 'nameList', 'manual', 'contact', 'manage',
'route', 'road', 'equip', 'photo', 'news', 'cert', 'data', 'route', 'road', 'equip', 'photo', 'news', 'cert', 'data',
'banner', 'score', 'auto', 'scan', 'review', 'customer', 'rule', 'banner', 'score', 'auto', 'scan', 'review', 'customer', 'rule',
'outter-link', 'sure-letter', 'rankSetting', 'service', "module","parnterBanner"]; 'outter-link', 'sure-letter', 'rankSetting', 'service', "module", "partnerBanner"];
let url = document.location.href; let url = document.location.href;
var done = false; var done = false;
for (var i in classes) { for (var i in classes) {
...@@ -437,6 +437,7 @@ ...@@ -437,6 +437,7 @@
} }
} }
done = true; done = true;
break; break;
} }
...@@ -458,6 +459,7 @@ ...@@ -458,6 +459,7 @@
classList.add('active'); classList.add('active');
document.getElementById('base').nextSibling.nextSibling.classList.add('menu-hidden'); document.getElementById('base').nextSibling.nextSibling.classList.add('menu-hidden');
document.getElementById('cmptSetting').nextSibling.nextSibling.classList.add('menu-hidden'); document.getElementById('cmptSetting').nextSibling.nextSibling.classList.add('menu-hidden');
} }
function getCmptId() { function getCmptId() {
...@@ -481,4 +483,6 @@ ...@@ -481,4 +483,6 @@
} }
window.baseURL = '${baseURL}'; window.baseURL = '${baseURL}';
</script> </script>
\ No newline at end of file
$(function () { $(function () {
// 检查是否有修改banner的权限
$(function () {
$.ajax({
url: "/gk/banner/partner/auth/" + getCId(),
type: 'post',
contentType: 'application/json',
beforeSend: () => {
layer.load()
},
success: (res) => {
// by ggb 2025-06-29 11:55:40
res.content ? $(".partnerBanner").show() : $(".partnerBanner").hide();
},
complete: () => {
layer.closeAll()
}
});
})
$('body').on('click', '.fixed .status', function () { $('body').on('click', '.fixed .status', function () {
var attr = $(this).attr('data-attr'); var attr = $(this).attr('data-attr');
console.log(attr); console.log(attr);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment