|
@@ -3,9 +3,13 @@ package com.kingtom.shengtai.api.controller;
|
|
|
import java.util.List;
|
|
|
import java.util.Map;
|
|
|
|
|
|
+import cn.dev33.satoken.annotation.SaCheckPermission;
|
|
|
+import cn.dev33.satoken.annotation.SaCheckRole;
|
|
|
+import com.kingtom.kirin.api.security.SaSecurityUtils;
|
|
|
import com.kingtom.kirin.app.auth.base.AuthInit;
|
|
|
import com.kingtom.kirin.app.auth.base.Menu;
|
|
|
import com.kingtom.kirin.app.auth.base.Role;
|
|
|
+import com.kingtom.kirin.app.security.base.SessionData;
|
|
|
import com.kingtom.kirin.core.common.base.PageInfo;
|
|
|
import com.kingtom.kirin.core.common.base.Result;
|
|
|
import com.kingtom.kirin.core.common.utils.CollectionUtils;
|
|
@@ -14,7 +18,9 @@ import com.kingtom.shengtai.api.mapper.SrmMapper;
|
|
|
import com.kingtom.shengtai.api.model.SrmCooperateDTO;
|
|
|
import com.kingtom.shengtai.app.srm.model.SrmCooperate;
|
|
|
import com.kingtom.shengtai.app.srm.model.SrmCooperateDO;
|
|
|
+import com.kingtom.shengtai.app.srm.model.SrmSupplier;
|
|
|
import com.kingtom.shengtai.app.srm.service.ISrmCooperateService;
|
|
|
+import com.kingtom.shengtai.app.srm.service.ISrmSupplierService;
|
|
|
import com.mybatisflex.core.paginate.Page;
|
|
|
import io.swagger.v3.oas.annotations.Operation;
|
|
|
import io.swagger.v3.oas.annotations.Parameter;
|
|
@@ -33,14 +39,15 @@ import org.springframework.web.bind.annotation.*;
|
|
|
@RestController
|
|
|
@RequestMapping("/srmCooperates")
|
|
|
@AuthInit(menus = {@Menu(name = "组织管理:供应商管理", otherName = "供应商管理", code = "organization_supplier",
|
|
|
- routeUri = "supplier", orderNum = 25)},
|
|
|
- roles = {@Role(name = "业务管理员", code = "businessAdmin", menuCode = {"organization_supplier"}),
|
|
|
- @Role(name = "供应商", code = "supplier")})
|
|
|
+ routeUri = "supplier", orderNum = 25)}, roles = {@Role(name = "供应商", code = "supplier")})
|
|
|
public class SrmCooperateController{
|
|
|
|
|
|
@Autowired
|
|
|
private ISrmCooperateService iSrmCooperateService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private ISrmSupplierService iSrmSupplierService;
|
|
|
+
|
|
|
/**
|
|
|
* 添加 供应商合作记录表。
|
|
|
*
|
|
@@ -49,6 +56,7 @@ public class SrmCooperateController{
|
|
|
*/
|
|
|
@Operation(summary = "添加 供应商合作记录表。", description = "添加 供应商合作记录表。")
|
|
|
@PostMapping("/")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<SrmCooperateDTO> save(@RequestBody SrmCooperateDTO dto){
|
|
|
SrmCooperate convert = SrmMapper.INSTANCE.convert(dto);
|
|
|
SrmCooperateDO srmCooperateDO = iSrmCooperateService.create(convert);
|
|
@@ -64,6 +72,7 @@ public class SrmCooperateController{
|
|
|
@Parameter(name = "id", description = "主键", in = ParameterIn.PATH, required = true)
|
|
|
@Operation(summary = "根据主键删除 供应商合作记录表。", description = "根据主键删除 供应商合作记录表。")
|
|
|
@PostMapping("/{id}/")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<String> remove(@PathVariable String id){
|
|
|
iSrmCooperateService.deleteById(id);
|
|
|
return Result.ok(null);
|
|
@@ -77,19 +86,21 @@ public class SrmCooperateController{
|
|
|
*/
|
|
|
@Operation(summary = "根据主键批量删除供应商信息表。", description = "根据主键批量删除供应商信息表。")
|
|
|
@PostMapping("/remove_batch")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<String> remove(@RequestBody List<String> ids){
|
|
|
iSrmCooperateService.deleteByIds(ids);
|
|
|
return Result.ok(null);
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 根据主键更新 供应商合作记录表。
|
|
|
+ * 根据id更新供应商合作记录
|
|
|
*
|
|
|
* @param dto 供应商合作记录表
|
|
|
* @return {@code true} 更新成功,{@code false} 更新失败
|
|
|
*/
|
|
|
- @Operation(summary = "根据主键更新 供应商合作记录表。", description = "根据主键更新 供应商合作记录表。")
|
|
|
+ @Operation(description = "根据id更新供应商合作记录")
|
|
|
@PostMapping("/{id}/info")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<SrmCooperateDTO> update(@RequestBody SrmCooperateDTO dto){
|
|
|
SrmCooperate convert = SrmMapper.INSTANCE.convert(dto);
|
|
|
SrmCooperateDO srmCooperateDO = iSrmCooperateService.update(convert);
|
|
@@ -97,30 +108,30 @@ public class SrmCooperateController{
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 根据 供应商合作记录表主键获取详细信息。
|
|
|
+ * 根据id获取供应商合作记录
|
|
|
*
|
|
|
* @param id 供应商合作记录表主键
|
|
|
* @return 供应商合作记录表详情
|
|
|
*/
|
|
|
- @Parameter(name = "id", description = "供应商合作记录表主键", in = ParameterIn.PATH, required = true)
|
|
|
- @Operation(summary = "根据 供应商合作记录表主键获取详细信息。",
|
|
|
- description = "根据 供应商合作记录表主键获取详细信息。")
|
|
|
+ @Operation(description = "根据id获取供应商合作记录")
|
|
|
@GetMapping("/{id}/info")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<SrmCooperateDTO> getInfo(@PathVariable String id){
|
|
|
SrmCooperateDO srmCooperateDO = iSrmCooperateService.findById(id);
|
|
|
return Result.ok(SrmCooperateDTO.convert(srmCooperateDO));
|
|
|
}
|
|
|
|
|
|
/**
|
|
|
- * 分页查询 供应商合作记录表。
|
|
|
+ * 分页查询供应商合作记录
|
|
|
*
|
|
|
* @param query 查询条件
|
|
|
* @param pageNum 当前页码
|
|
|
* @param pageSize 每页数量
|
|
|
* @return 分页对象
|
|
|
*/
|
|
|
- @Operation(summary = "分页查询 供应商合作记录表。", description = "分页查询 供应商合作记录表。")
|
|
|
+ @Operation(description = "分页查询供应商合作记录")
|
|
|
@GetMapping("/page")
|
|
|
+ @SaCheckPermission(value = {"AuthMenu:organization_supplier:Execute"})
|
|
|
public Result<PageInfo<SrmCooperateDTO>> page(String query, Integer pageNum, Integer pageSize){
|
|
|
Map<String, Object> object = JsonUtils.toObject(query, Map.class);
|
|
|
String search = object.get("search") == null ? null : object.get("search").toString();
|
|
@@ -129,4 +140,17 @@ public class SrmCooperateController{
|
|
|
return Result.ok(CollectionUtils.convertPage(page, SrmCooperateDTO::convert));
|
|
|
}
|
|
|
|
|
|
+ @Operation(description = "分页查询查询我的供应商合作记录")
|
|
|
+ @GetMapping("/self/page")
|
|
|
+ @SaCheckRole(value = {"supplier"})
|
|
|
+ public Result<PageInfo<SrmCooperateDTO>> getSelfPage(String query, Integer pageNum, Integer pageSize){
|
|
|
+ SessionData sessionData = SaSecurityUtils.findSessionData();
|
|
|
+ String userId = sessionData.getUserId();
|
|
|
+ SrmSupplier supplier = iSrmSupplierService.findByPerson(userId);
|
|
|
+ Map<String, Object> object = JsonUtils.toObject(query, Map.class);
|
|
|
+ String search = object.get("search") == null ? null : object.get("search").toString();
|
|
|
+ Page<SrmCooperateDO> page = iSrmCooperateService.page(search, supplier.getId(), pageNum, pageSize);
|
|
|
+ return Result.ok(CollectionUtils.convertPage(page, SrmCooperateDTO::convert));
|
|
|
+ }
|
|
|
+
|
|
|
}
|