package com.java110.fee.api;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.java110.fee.bmo.importFeeDetail.IDeleteImportFeeDetailBMO;
|
import com.java110.fee.bmo.importFeeDetail.IGetImportFeeDetailBMO;
|
import com.java110.fee.bmo.importFeeDetail.ISaveImportFeeDetailBMO;
|
import com.java110.fee.bmo.importFeeDetail.IUpdateImportFeeDetailBMO;
|
import com.java110.po.importFee.MaintenancePayment;
|
import com.java110.utils.util.Assert;
|
import com.java110.utils.util.BeanConvertUtil;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.http.ResponseEntity;
|
import org.springframework.web.bind.annotation.*;
|
|
/**
|
* 维修资金支取信息接口
|
* 匹配原有 ImportFeeApi 代码风格
|
*/
|
@RestController
|
@RequestMapping(value = "/maintenancePayment")
|
public class MaintenancePaymentApi {
|
|
@Autowired
|
private ISaveImportFeeDetailBMO saveImportFeeDetailBMOImpl;
|
@Autowired
|
private IUpdateImportFeeDetailBMO updateImportFeeDetailBMOImpl;
|
@Autowired
|
private IDeleteImportFeeDetailBMO deleteImportFeeDetailBMOImpl;
|
@Autowired
|
private IGetImportFeeDetailBMO getImportFeeDetailBMOImpl;
|
|
/**
|
* 保存维修资金支取信息
|
*
|
* @param reqJson 请求参数
|
* @return 响应结果
|
* @serviceCode /maintenancePayment/saveMaintenancePayment
|
* @path /app/maintenancePayment/saveMaintenancePayment
|
*/
|
@RequestMapping(value = "/saveMaintenancePayment", method = RequestMethod.POST)
|
public ResponseEntity<String> saveMaintenancePayment(@RequestBody JSONObject reqJson) {
|
// 核心参数校验(id为主键,新增时非必传,这里校验核心业务字段)
|
Assert.hasKeyAndValue(reqJson, "flowNumber", "请求报文中未包含流转编号");
|
Assert.hasKeyAndValue(reqJson, "projectCode", "请求报文中未包含项目编码");
|
|
// 将JSON参数转换为实体类
|
MaintenancePayment maintenancePayment = BeanConvertUtil.covertBean(reqJson, MaintenancePayment.class);
|
return saveImportFeeDetailBMOImpl.save(maintenancePayment);
|
}
|
|
/**
|
* 修改维修资金支取信息
|
*
|
* @param reqJson 请求参数
|
* @return 响应结果
|
* @serviceCode /maintenancePayment/updateMaintenancePayment
|
* @path /app/maintenancePayment/updateMaintenancePayment
|
*/
|
@RequestMapping(value = "/updateMaintenancePayment", method = RequestMethod.POST)
|
public ResponseEntity<String> updateMaintenancePayment(@RequestBody JSONObject reqJson) {
|
// 主键校验(修改必须传id)
|
Assert.hasKeyAndValue(reqJson, "id", "请求报文中未包含主键ID");
|
Assert.hasKeyAndValue(reqJson, "id", "主键ID不能为空");
|
|
// 将JSON参数转换为实体类
|
MaintenancePayment maintenancePayment = BeanConvertUtil.covertBean(reqJson, MaintenancePayment.class);
|
return updateImportFeeDetailBMOImpl.update(maintenancePayment);
|
}
|
|
/**
|
* 删除维修资金支取信息
|
*
|
* @param reqJson 请求参数
|
* @return 响应结果
|
* @serviceCode /maintenancePayment/deleteMaintenancePayment
|
* @path /app/maintenancePayment/deleteMaintenancePayment
|
*/
|
@RequestMapping(value = "/deleteMaintenancePayment", method = RequestMethod.POST)
|
public ResponseEntity<String> deleteMaintenancePayment(@RequestBody JSONObject reqJson) {
|
// 必要参数校验
|
Assert.hasKeyAndValue(reqJson, "communityId", "小区ID不能为空");
|
Assert.hasKeyAndValue(reqJson, "id", "主键ID不能为空");
|
|
// 将JSON参数转换为实体类
|
MaintenancePayment maintenancePayment = BeanConvertUtil.covertBean(reqJson, MaintenancePayment.class);
|
return deleteImportFeeDetailBMOImpl.delete(maintenancePayment);
|
}
|
|
/**
|
* 分页查询维修资金支取信息列表
|
*
|
* @param communityName 小区名称
|
* @param page 页码
|
* @param row 每页条数
|
* @param flowNumber 流转编号(可选)
|
* @param projectCode 项目编码(可选)
|
* @param year 年份(可选)
|
* @param id 主键ID(可选)
|
* @return 响应结果
|
* @serviceCode /maintenancePayment/queryMaintenancePayment
|
* @path /app/maintenancePayment/queryMaintenancePayment
|
*/
|
@RequestMapping(value = "/queryMaintenancePayment", method = RequestMethod.GET)
|
public ResponseEntity<String> queryMaintenancePayment(@RequestParam(value = "communityName") String communityName,
|
@RequestParam(value = "page") int page,
|
@RequestParam(value = "row") int row,
|
@RequestParam(value = "flowNumber", required = false) String flowNumber,
|
@RequestParam(value = "projectCode", required = false) String projectCode,
|
@RequestParam(value = "year", required = false) Integer year,
|
@RequestParam(value = "id", required = false) String id) {
|
// 封装查询DTO(需确保MaintenancePaymentDto已定义,字段与查询参数匹配)
|
MaintenancePayment maintenancePaymentDto = new MaintenancePayment();
|
maintenancePaymentDto.setPage(page);
|
maintenancePaymentDto.setRow(row);
|
maintenancePaymentDto.setProjectName(communityName);
|
maintenancePaymentDto.setFlowNumber(flowNumber);
|
maintenancePaymentDto.setProjectCode(projectCode);
|
maintenancePaymentDto.setYear(year);
|
if (id != null && !id.isEmpty()) {
|
maintenancePaymentDto.setId(Long.parseLong(id));
|
}
|
return getImportFeeDetailBMOImpl.get(maintenancePaymentDto);
|
}
|
|
/**
|
* 根据ID查询单条维修资金支取信息
|
*
|
* @param reqJson 请求参数
|
* @return 响应结果
|
* @serviceCode /maintenancePayment/getMaintenancePaymentById
|
* @path /app/maintenancePayment/getMaintenancePaymentById
|
*/
|
@RequestMapping(value = "/getMaintenancePaymentById", method = RequestMethod.POST)
|
public ResponseEntity<String> getMaintenancePaymentById(@RequestBody JSONObject reqJson) {
|
// 主键校验
|
Assert.hasKeyAndValue(reqJson, "id", "请求报文中未包含主键ID");
|
Assert.hasKeyAndValue(reqJson, "id", "主键ID不能为空");
|
|
// 封装查询DTO
|
MaintenancePayment maintenancePaymentDto = new MaintenancePayment();
|
maintenancePaymentDto.setId(reqJson.getLong("id"));
|
return getImportFeeDetailBMOImpl.get(maintenancePaymentDto);
|
}
|
}
|