| 
					
				 | 
			
			
				@@ -0,0 +1,101 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package com.qmrb.system.controller; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.Arrays; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.List; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import java.util.stream.Collectors; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.framework.security.util.SecurityUtils; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springdoc.core.annotations.ParameterObject; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.security.access.prepost.PreAuthorize; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.validation.annotation.Validated; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.DeleteMapping; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.GetMapping; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.PathVariable; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.PostMapping; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.PutMapping; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.RequestBody; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.RequestMapping; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import io.swagger.v3.oas.annotations.Operation; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import io.swagger.v3.oas.annotations.Parameter; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import io.swagger.v3.oas.annotations.security.SecurityRequirement; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import io.swagger.v3.oas.annotations.tags.Tag; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.baomidou.mybatisplus.extension.plugins.pagination.Page; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.common.result.PageResult; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.common.result.Result; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.common.result.ResultCode; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.framework.resubmit.Resubmit; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.service.IContractPlaceNumberRelService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.pojo.form.ContractPlaceNumberRelForm; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.pojo.vo.ContractPlaceNumberRelVO; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.qmrb.system.pojo.query.ContractPlaceNumberRelQuery; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import cn.hutool.core.util.StrUtil; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import org.springframework.web.bind.annotation.RestController; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import jakarta.validation.Valid; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import lombok.RequiredArgsConstructor; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/** 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * <p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 协议(客商)车牌关系 前端控制器 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * </p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @author xue 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ * @since 2025-03-11 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@Tag(name = "协议(客商)车牌关系接口") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@RestController 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@RequestMapping("/api/v1/contract_place_number_rel") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@RequiredArgsConstructor 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+public class ContractPlaceNumberRelController{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    private final IContractPlaceNumberRelService contractPlaceNumberRelService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+	@Operation(summary = "协议(客商)车牌关系分页列表", security = {@SecurityRequirement(name = "Authorization")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @GetMapping("/page") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public PageResult<ContractPlaceNumberRelVO> getPage(@ParameterObject ContractPlaceNumberRelQuery queryParams) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 校验当前登录用户id 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(SecurityUtils.getUserId() == null){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            return PageResult.success(null); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        Page<ContractPlaceNumberRelVO> result = contractPlaceNumberRelService.getPage(queryParams); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return PageResult.success(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Operation(summary = "新增协议(客商)车牌关系", security = {@SecurityRequirement(name = "Authorization")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @PostMapping 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Result<ContractPlaceNumberRelForm> saveForm(@RequestBody @Valid ContractPlaceNumberRelForm form) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ContractPlaceNumberRelForm result = contractPlaceNumberRelService.saveForm(form); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Result.success(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Operation(summary = "协议(客商)车牌关系表单数据", security = {@SecurityRequirement(name = "Authorization")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @GetMapping("/{id}/form") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Result<ContractPlaceNumberRelForm> getForm(@Parameter(description = "协议(客商)车牌关系ID") @PathVariable Long id) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	ContractPlaceNumberRelForm formData = contractPlaceNumberRelService.getFormData(id); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Result.success(formData); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Operation(summary = "修改协议(客商)车牌关系", security = {@SecurityRequirement(name = "Authorization")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @PutMapping(value = "/{id}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Result<?> updateForm(@Parameter(description = "协议(客商)车牌关系ID") @PathVariable Long id, @RequestBody @Validated ContractPlaceNumberRelForm form) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        boolean result = contractPlaceNumberRelService.updateForm(id,form); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Result.judge(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @Operation(summary = "删除协议(客商)车牌关系", security = {@SecurityRequirement(name = "Authorization")}) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    @DeleteMapping("/{ids}") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    public Result<?> deleteUsers( @Parameter(description = "协议(客商)车牌关系ID,多个以英文逗号(,)分割") @PathVariable String ids) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	if(StrUtil.isBlank(ids)) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    		 return Result.failed(ResultCode.PARAM_ERROR, "删除的协议(客商)车牌关系数据为空"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    	} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // 逻辑删除 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        List<Long> idList = Arrays.asList(ids.split(",")).stream() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                .map(idStr -> Long.parseLong(idStr)).collect(Collectors.toList()); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        boolean result = contractPlaceNumberRelService.removeByIds(idList); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return Result.judge(result); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 |