|
@@ -16,25 +16,34 @@
|
|
|
*/
|
|
*/
|
|
|
package org.springblade.bank.autostruct.controller;
|
|
package org.springblade.bank.autostruct.controller;
|
|
|
|
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
|
|
+import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
+import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
import io.swagger.annotations.Api;
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
import io.swagger.annotations.ApiParam;
|
|
|
-import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
|
|
|
|
|
import lombok.AllArgsConstructor;
|
|
import lombok.AllArgsConstructor;
|
|
|
-import javax.validation.Valid;
|
|
|
|
|
-
|
|
|
|
|
|
|
+import org.springblade.bank.autostruct.entity.AutoStruct;
|
|
|
|
|
+import org.springblade.bank.autostruct.service.IAutoStructService;
|
|
|
|
|
+import org.springblade.bank.autostruct.vo.AutoStructVO;
|
|
|
|
|
+import org.springblade.bank.autostruct.wrapper.AutoStructWrapper;
|
|
|
|
|
+import org.springblade.core.boot.ctrl.BladeController;
|
|
|
import org.springblade.core.mp.support.Condition;
|
|
import org.springblade.core.mp.support.Condition;
|
|
|
import org.springblade.core.mp.support.Query;
|
|
import org.springblade.core.mp.support.Query;
|
|
|
|
|
+import org.springblade.core.secure.BladeUser;
|
|
|
|
|
+import org.springblade.core.secure.utils.AuthUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
import org.springblade.core.tool.api.R;
|
|
|
|
|
+import org.springblade.core.tool.utils.BeanUtil;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
|
|
+import org.springblade.core.tool.utils.StringUtil;
|
|
|
|
|
+import org.springblade.modules.system.service.IDeptService;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
-import org.springframework.web.bind.annotation.RequestParam;
|
|
|
|
|
-import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
|
|
-import org.springblade.bank.autostruct.entity.AutoStruct;
|
|
|
|
|
-import org.springblade.bank.autostruct.vo.AutoStructVO;
|
|
|
|
|
-import org.springblade.bank.autostruct.wrapper.AutoStructWrapper;
|
|
|
|
|
-import org.springblade.bank.autostruct.service.IAutoStructService;
|
|
|
|
|
-import org.springblade.core.boot.ctrl.BladeController;
|
|
|
|
|
|
|
+
|
|
|
|
|
+import javax.validation.Valid;
|
|
|
|
|
+import java.util.ArrayList;
|
|
|
|
|
+import java.util.HashMap;
|
|
|
|
|
+import java.util.List;
|
|
|
|
|
+import java.util.Map;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 控制器
|
|
* 控制器
|
|
@@ -49,6 +58,7 @@ import org.springblade.core.boot.ctrl.BladeController;
|
|
|
public class AutoStructController extends BladeController {
|
|
public class AutoStructController extends BladeController {
|
|
|
|
|
|
|
|
private final IAutoStructService autoStructService;
|
|
private final IAutoStructService autoStructService;
|
|
|
|
|
+ private final IDeptService deptService;
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
* 详情
|
|
* 详情
|
|
@@ -62,19 +72,68 @@ public class AutoStructController extends BladeController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 分页
|
|
|
|
|
|
|
+ * 分页
|
|
|
*/
|
|
*/
|
|
|
@GetMapping("/list")
|
|
@GetMapping("/list")
|
|
|
@ApiOperationSupport(order = 2)
|
|
@ApiOperationSupport(order = 2)
|
|
|
@ApiOperation(value = "分页", notes = "传入autoStruct")
|
|
@ApiOperation(value = "分页", notes = "传入autoStruct")
|
|
|
public R<IPage<AutoStructVO>> list(AutoStruct autoStruct, Query query) {
|
|
public R<IPage<AutoStructVO>> list(AutoStruct autoStruct, Query query) {
|
|
|
- IPage<AutoStruct> pages = autoStructService.page(Condition.getPage(query), Condition.getQueryWrapper(autoStruct));
|
|
|
|
|
|
|
+ QueryWrapper<AutoStruct> queryWrapper = Condition.getQueryWrapper(new AutoStruct());
|
|
|
|
|
+ if (StringUtil.isNotBlank(autoStruct.getName())){
|
|
|
|
|
+ queryWrapper.lambda().like(AutoStruct::getName, autoStruct.getName());
|
|
|
|
|
+ }
|
|
|
|
|
+ IPage<AutoStruct> pages = autoStructService.page(Condition.getPage(query), queryWrapper);
|
|
|
return R.data(AutoStructWrapper.build().pageVO(pages));
|
|
return R.data(AutoStructWrapper.build().pageVO(pages));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 自定义分页
|
|
|
|
|
|
|
+ *
|
|
|
|
|
+ */
|
|
|
|
|
+ @GetMapping("/getSelectAndPermissionByDept")
|
|
|
|
|
+ @ApiOperationSupport(order = 2)
|
|
|
|
|
+ @ApiOperation(value = "分页", notes = "传入autoStruct")
|
|
|
|
|
+ public R getSelectAndPermissionByDept() {
|
|
|
|
|
+ List<Map> mapList = new ArrayList<>();
|
|
|
|
|
+ List<AutoStruct> list = autoStructService.list(new QueryWrapper<>(new AutoStruct()).lambda().like(AutoStruct::getDeptId, AuthUtil.getDeptId()));
|
|
|
|
|
+ BladeUser user = AuthUtil.getUser();
|
|
|
|
|
+ String userDeptId = AuthUtil.getDeptId();
|
|
|
|
|
+ //多個角色問題
|
|
|
|
|
+ String[] userRoles = user.getRoleId().split(",");
|
|
|
|
|
+
|
|
|
|
|
+ list.forEach(item -> {
|
|
|
|
|
+ Map<String, Object> map = new HashMap<>();
|
|
|
|
|
+ Map<String, Object> map1 = BeanUtil.toMap(item);
|
|
|
|
|
+ Map<String, Object> map2 = new HashMap<>();
|
|
|
|
|
+// map.put("tableStruct", item);
|
|
|
|
|
+ String tableDeptIds = item.getDeptId();
|
|
|
|
|
+ String tableRoleIds = item.getRoleId();
|
|
|
|
|
+ boolean canWrite = tableDeptIds.contains(userDeptId);
|
|
|
|
|
+ boolean roleFlag = false;
|
|
|
|
|
+
|
|
|
|
|
+ boolean isManageRole = false;
|
|
|
|
|
+ for (int i = 0; i < userRoles.length; i++) {
|
|
|
|
|
+ String roleId = userRoles[i];
|
|
|
|
|
+ isManageRole = isManageRole || item.getManageRoleId().contains(roleId);
|
|
|
|
|
+ if (StringUtil.isNotBlank(tableRoleIds)){
|
|
|
|
|
+ roleFlag = roleFlag && tableRoleIds.contains(roleId);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtil.isNotBlank(tableRoleIds)){
|
|
|
|
|
+ canWrite = canWrite && roleFlag;
|
|
|
|
|
+ }
|
|
|
|
|
+ map2.put("isManageRole", isManageRole);
|
|
|
|
|
+ map2.put("canWrite", canWrite);
|
|
|
|
|
+ map.putAll(map1);
|
|
|
|
|
+ map.putAll(map2);
|
|
|
|
|
+ mapList.add(map);
|
|
|
|
|
+ });
|
|
|
|
|
+ return R.data(mapList);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ /**
|
|
|
|
|
+ * 自定义分页
|
|
|
*/
|
|
*/
|
|
|
@GetMapping("/page")
|
|
@GetMapping("/page")
|
|
|
@ApiOperationSupport(order = 3)
|
|
@ApiOperationSupport(order = 3)
|
|
@@ -85,7 +144,7 @@ public class AutoStructController extends BladeController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 新增
|
|
|
|
|
|
|
+ * 新增
|
|
|
*/
|
|
*/
|
|
|
@PostMapping("/save")
|
|
@PostMapping("/save")
|
|
|
@ApiOperationSupport(order = 4)
|
|
@ApiOperationSupport(order = 4)
|
|
@@ -95,7 +154,7 @@ public class AutoStructController extends BladeController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 修改
|
|
|
|
|
|
|
+ * 修改
|
|
|
*/
|
|
*/
|
|
|
@PostMapping("/update")
|
|
@PostMapping("/update")
|
|
|
@ApiOperationSupport(order = 5)
|
|
@ApiOperationSupport(order = 5)
|
|
@@ -105,7 +164,7 @@ public class AutoStructController extends BladeController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
/**
|
|
|
- * 新增或修改
|
|
|
|
|
|
|
+ * 新增或修改
|
|
|
*/
|
|
*/
|
|
|
@PostMapping("/submit")
|
|
@PostMapping("/submit")
|
|
|
@ApiOperationSupport(order = 6)
|
|
@ApiOperationSupport(order = 6)
|
|
@@ -114,9 +173,9 @@ public class AutoStructController extends BladeController {
|
|
|
return R.status(autoStructService.saveOrUpdate(autoStruct));
|
|
return R.status(autoStructService.saveOrUpdate(autoStruct));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
/**
|
|
/**
|
|
|
- * 删除
|
|
|
|
|
|
|
+ * 删除
|
|
|
*/
|
|
*/
|
|
|
@PostMapping("/remove")
|
|
@PostMapping("/remove")
|
|
|
@ApiOperationSupport(order = 7)
|
|
@ApiOperationSupport(order = 7)
|
|
@@ -125,5 +184,5 @@ public class AutoStructController extends BladeController {
|
|
|
return R.status(autoStructService.deleteLogic(Func.toLongList(ids)));
|
|
return R.status(autoStructService.deleteLogic(Func.toLongList(ids)));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
-
|
|
|
|
|
|
|
+
|
|
|
}
|
|
}
|