//package com.java110.fee.api.contract; // //import com.alibaba.fastjson.JSONObject; //import com.java110.dto.contract.ContractAmountDetailDto; //import com.java110.utils.util.Assert; //import com.java110.utils.util.BeanConvertUtil; //import org.mybatis.spring.SqlSessionTemplate; //import org.springframework.beans.factory.annotation.Autowired; //import org.springframework.http.ResponseEntity; //import org.springframework.web.bind.annotation.*; // //import java.util.HashMap; //import java.util.List; //import java.util.Map; // ///** // * 合同金额明细信息接口 // * 适配 contract_amount_detail 表 // * @author dev // * @date 2025-12-24 // */ ////@RestController //@RequestMapping(value = "/contractAmountDetaila") //public class ContractAmountDetailApi { // // @Autowired // protected SqlSessionTemplate sqlSessionTemplate; // // /** // * 保存合同金额明细信息 // * // * @param reqJson 请求参数 // * @return 响应结果 // * @serviceCode /contractAmountDetail/saveContractAmountDetail // * @path /app/contractAmountDetail/saveContractAmountDetail // */ // @RequestMapping(value = "/saveContractAmountDetail", method = RequestMethod.POST) // public ResponseEntity saveContractAmountDetail(@RequestBody JSONObject reqJson) { // // 核心参数校验 // Assert.hasKeyAndValue(reqJson, "contractId", "请求报文中未包含合同ID"); // // // 转换为DTO // ContractAmountDetailDto dto = BeanConvertUtil.covertBean(reqJson, ContractAmountDetailDto.class); // // // 调用Mapper保存方法 // int insert = sqlSessionTemplate.insert("contractAmountDetailDaoImpl.saveContractAmountDetail", // BeanConvertUtil.beanCovertMap(dto)); // // // 构造响应结果 // JSONObject resJson = new JSONObject(); // if (insert > 0) { // resJson.put("code", "0000"); // resJson.put("msg", "保存合同金额明细信息成功"); // } else { // resJson.put("code", "0001"); // resJson.put("msg", "保存合同金额明细信息失败"); // } // resJson.put("count", insert); // return ResponseEntity.ok(resJson.toJSONString()); // } // // /** // * 重载保存方法(入参为DTO) // */ // public ResponseEntity saveContractAmountDetail(ContractAmountDetailDto dto) { // int insert = sqlSessionTemplate.insert("contractAmountDetailDaoImpl.saveContractAmountDetail", // BeanConvertUtil.beanCovertMap(dto)); // // JSONObject resJson = new JSONObject(); // if (insert > 0) { // resJson.put("code", "0000"); // resJson.put("msg", "保存合同金额明细信息成功"); // } else { // resJson.put("code", "0001"); // resJson.put("msg", "保存合同金额明细信息失败"); // } // resJson.put("count", insert); // return ResponseEntity.ok(resJson.toJSONString()); // } // // /** // * 修改合同金额明细信息 // * // * @param reqJson 请求参数 // * @return 响应结果 // * @serviceCode /contractAmountDetail/updateContractAmountDetail // * @path /app/contractAmountDetail/updateContractAmountDetail // */ // @RequestMapping(value = "/updateContractAmountDetail", method = RequestMethod.POST) // public ResponseEntity updateContractAmountDetail(@RequestBody JSONObject reqJson) { // // 主键/合同ID校验(二选一) // Assert.hasKey(reqJson, "id", "请求报文中未包含主键ID"); // Assert.hasKey(reqJson, "contractId", "请求报文中未包含合同ID"); // // ContractAmountDetailDto dto = BeanConvertUtil.covertBean(reqJson, ContractAmountDetailDto.class); // // // 调用Mapper修改方法 // int update = sqlSessionTemplate.update("contractAmountDetailDaoImpl.updateContractAmountDetail", // BeanConvertUtil.beanCovertMap(dto)); // // JSONObject resJson = new JSONObject(); // if (update > 0) { // resJson.put("code", "0000"); // resJson.put("msg", "修改合同金额明细信息成功"); // } else { // resJson.put("code", "0001"); // resJson.put("msg", "修改合同金额明细信息失败,未找到对应记录"); // } // resJson.put("count", update); // return ResponseEntity.ok(resJson.toJSONString()); // } // // /** // * 分页查询合同金额明细信息列表 // * // * @param id 主键ID(可选) // * @param contractId 合同ID(可选) // * @param totalContractAmount 合同总金额(可选) // * @param unitPrice 单价(可选) // * @param accountInfo 账户信息(可选) // * @param mainMeterNo 主表编号(可选) // * @param paymentRemark 付款备注(可选) // * @param page 页码(默认1) // * @param row 每页条数(默认10) // * @return 响应结果 // * @serviceCode /contractAmountDetail/queryContractAmountDetail // * @path /app/contractAmountDetail/queryContractAmountDetail // */ // @RequestMapping(value = "/queryContractAmountDetail", method = RequestMethod.GET) // public ResponseEntity queryContractAmountDetail( // @RequestParam(value = "id", required = false) String id, // @RequestParam(value = "contractId", required = false) String contractId, // @RequestParam(value = "totalContractAmount", required = false) String totalContractAmount, // @RequestParam(value = "unitPrice", required = false) String unitPrice, // @RequestParam(value = "accountInfo", required = false) String accountInfo, // @RequestParam(value = "mainMeterNo", required = false) String mainMeterNo, // @RequestParam(value = "paymentRemark", required = false) String paymentRemark, // @RequestParam(value = "page", defaultValue = "1") int page, // @RequestParam(value = "row", defaultValue = "10") int row) { // // // 封装查询参数 // ContractAmountDetailDto queryDto = new ContractAmountDetailDto(); // queryDto.setId(Integer.parseInt(id)); // queryDto.setContractId(contractId); // queryDto.setTotalContractAmount(totalContractAmount); // queryDto.setUnitPrice(unitPrice); // queryDto.setAccountInfo(accountInfo); // queryDto.setMainMeterNo(mainMeterNo); // queryDto.setPaymentRemark(paymentRemark); // queryDto.setPage((page - 1) * row); // queryDto.setRow(row); // // // 查询列表数据 // List> list = sqlSessionTemplate.selectList( // "contractAmountDetailDaoImpl.getContractAmountDetail", // BeanConvertUtil.beanCovertMap(queryDto)); // // // 查询总数 // Object total = ((HashMap) sqlSessionTemplate.selectOne( // "contractAmountDetailDaoImpl.queryContractAmountDetailsCount", // BeanConvertUtil.beanCovertMap(queryDto))).get("count"); // // // 构造分页响应 // JSONObject resJson = new JSONObject(); // resJson.put("code", "0000"); // resJson.put("msg", "查询合同金额明细信息成功"); // resJson.put("page", page); // resJson.put("row", row); // resJson.put("total", total); // resJson.put("data", list); // // return ResponseEntity.ok(resJson.toJSONString()); // } // // /** // * 根据ID查询单条合同金额明细信息 // * // * @param id 主键ID // * @return 响应结果 // * @serviceCode /contractAmountDetail/getContractAmountDetailById // * @path /app/contractAmountDetail/getContractAmountDetailById // */ // @RequestMapping(value = "/getContractAmountDetailById", method = RequestMethod.GET) // public ResponseEntity getContractAmountDetailById(@RequestParam(value = "id") Integer id) { // // 主键校验 // Assert.notNull(id, "主键ID不能为空"); // // ContractAmountDetailDto queryDto = new ContractAmountDetailDto(); // queryDto.setId(id); // // // 查询单条数据 // Map result = sqlSessionTemplate.selectOne( // "contractAmountDetailDaoImpl.getContractAmountDetail", // BeanConvertUtil.beanCovertMap(queryDto)); // // JSONObject resJson = new JSONObject(); // if (result != null) { // resJson.put("code", "0000"); // resJson.put("msg", "查询合同金额明细信息成功"); // resJson.put("data", result); // } else { // resJson.put("code", "0001"); // resJson.put("msg", "未找到对应合同金额明细记录"); // } // // return ResponseEntity.ok(resJson.toJSONString()); // } // // /** // * 根据合同ID查询合同金额明细信息 // * // * @param contractId 合同ID // * @return 响应结果 // * @serviceCode /contractAmountDetail/getContractAmountDetailByContractId // * @path /app/contractAmountDetail/getContractAmountDetailByContractId // */ // @RequestMapping(value = "/getContractAmountDetailByContractId", method = RequestMethod.GET) // public ResponseEntity getContractAmountDetailByContractId(@RequestParam(value = "contractId") String contractId) { // Assert.hasLength(contractId, "合同ID不能为空"); // // ContractAmountDetailDto queryDto = new ContractAmountDetailDto(); // queryDto.setContractId(contractId); // // List> result = sqlSessionTemplate.selectList( // "contractAmountDetailDaoImpl.getContractAmountDetail", // BeanConvertUtil.beanCovertMap(queryDto)); // // JSONObject resJson = new JSONObject(); // resJson.put("code", "0000"); // resJson.put("msg", "查询合同金额明细信息成功"); // resJson.put("data", result); // // return ResponseEntity.ok(resJson.toJSONString()); // } //}