From 9ab7c949663a59e3f7424a8caa08d650d168fd11 Mon Sep 17 00:00:00 2001 From: xiangpei <xiangpei@timesnew.cn> Date: 星期二, 23 四月 2024 14:26:48 +0800 Subject: [PATCH] 核算记录代码 --- /dev/null | 62 ----- ycl-server/src/main/java/com/ycl/platform/service/CalculateRecordService.java | 65 +++++ ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java | 64 ---- ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml | 92 +------- ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateRecordVO.java | 46 ++++ ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CalculateRecord.java | 64 ++--- ycl-pojo/src/main/java/com/ycl/platform/domain/form/CalculateRecordForm.java | 54 ++++ ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java | 1 ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRecordServiceImpl.java | 160 +++++++++----- ycl-pojo/src/main/java/com/ycl/platform/domain/query/CalculateRecordQuery.java | 23 ++ 10 files changed, 342 insertions(+), 289 deletions(-) diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CalculateRecord.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CalculateRecord.java index d5af7c1..26c4d7b 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CalculateRecord.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/entity/CalculateRecord.java @@ -1,52 +1,42 @@ package com.ycl.platform.domain.entity; -import annotation.Excel; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.ycl.system.entity.BaseEntity; -import lombok.Data; -import org.apache.commons.lang.builder.ToStringBuilder; -import org.apache.commons.lang.builder.ToStringStyle; - +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableName; import java.math.BigDecimal; -import java.util.Date; +import com.ycl.platform.base.AbsEntity; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; /** - * 鏍哥畻璁板綍瀵硅薄 t_calculate_record - * - * @author ruoyi - * @date 2024-04-03 + * 鏍哥畻璁板綍 + * + * @author xp + * @since 2024-04-23 */ @Data -public class CalculateRecord extends BaseEntity -{ +@Accessors(chain = true) +@TableName("t_calculate_record") +@ApiModel(value = "CalculateRecord瀵硅薄", description = "鏍哥畻璁板綍") +public class CalculateRecord extends AbsEntity { + private static final long serialVersionUID = 1L; - /** $column.columnComment */ - private Long id; + @ApiModelProperty("鏍哥畻瑙勫垯") + @TableField("rule_id") + private Integer ruleId; - /** 鏍哥畻璁板綍鏃ユ湡 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "鏍哥畻璁板綍鏃ユ湡", width = 30, dateFormat = "yyyy-MM-dd") - private Date date; + @ApiModelProperty("鍚堝悓") + @TableField("contract_id") + private Integer contractId; - /** 鏍哥畻瑙勫垯 */ - @Excel(name = "鏍哥畻瑙勫垯") - private Long ruleId; + @ApiModelProperty("鎵e噺鏈嶅姟璐�") + @TableField("deduct_money") + private BigDecimal deductMoney; - /** 鍗曚綅id */ - @Excel(name = "鍗曚綅id") - private Long unitId; - - /** 鎬绘湇鍔¤垂 */ - @Excel(name = "鎬绘湇鍔¤垂") - private BigDecimal totalAmount; - - /** 鎵e噺鏈嶅姟璐� */ - @Excel(name = "鎵e噺鏈嶅姟璐�") - private BigDecimal deductAmount; - - /** 鑰冩牳鍒嗘暟 */ - @Excel(name = "鑰冩牳鍒嗘暟") + @ApiModelProperty("鑰冩牳鍒嗘暟") + @TableField("score") private BigDecimal score; diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/form/CalculateRecordForm.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/CalculateRecordForm.java new file mode 100644 index 0000000..4ead8f5 --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/form/CalculateRecordForm.java @@ -0,0 +1,54 @@ +package com.ycl.platform.domain.form; + +import com.ycl.system.domain.group.Update; +import com.ycl.system.domain.group.Add; +import com.ycl.platform.base.AbsForm; +import com.ycl.platform.domain.entity.CalculateRecord; + +import java.math.BigDecimal; +import java.time.LocalDateTime; +import org.springframework.beans.BeanUtils; +import jakarta.validation.constraints.NotBlank; +import jakarta.validation.constraints.NotNull; +import org.springframework.lang.NonNull; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 鏍哥畻璁板綍琛ㄥ崟 + * + * @author xp + * @since 2024-04-23 + */ +@Data +@Accessors(chain = true) +@ApiModel(value = "CalculateRecord琛ㄥ崟", description = "鏍哥畻璁板綍琛ㄥ崟") +public class CalculateRecordForm extends AbsForm { + + @NotNull(message = "鏍哥畻瑙勫垯涓嶈兘涓虹┖", groups = {Add.class, Update.class}) + @ApiModelProperty("鏍哥畻瑙勫垯") + private Integer ruleId; + + @NotNull(message = "鍚堝悓涓嶈兘涓虹┖", groups = {Add.class, Update.class}) + @ApiModelProperty("鍚堝悓") + private Integer contractId; + + @NotNull(message = "鎵e噺鏈嶅姟璐逛笉鑳戒负绌�", groups = {Add.class, Update.class}) + @ApiModelProperty("鎵e噺鏈嶅姟璐�") + private BigDecimal deductMoney; + + @NotNull(message = "鑰冩牳鍒嗘暟涓嶈兘涓虹┖", groups = {Add.class, Update.class}) + @ApiModelProperty("鑰冩牳鍒嗘暟") + private BigDecimal score; + + public static CalculateRecord getEntityByForm(@NonNull CalculateRecordForm form, CalculateRecord entity) { + if(entity == null) { + entity = new CalculateRecord(); + } + BeanUtils.copyProperties(form, entity); + return entity; + } + +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CalculateRecordQuery.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CalculateRecordQuery.java new file mode 100644 index 0000000..b3011cb --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/query/CalculateRecordQuery.java @@ -0,0 +1,23 @@ +package com.ycl.platform.domain.query; + +import com.ycl.platform.base.AbsQuery; +import java.util.List; +import org.springframework.lang.NonNull; +import jakarta.validation.constraints.NotBlank; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 鏍哥畻璁板綍鏌ヨ + * + * @author xp + * @since 2024-04-23 + */ +@Data +@Accessors(chain = true) +@ApiModel(value = "CalculateRecord鏌ヨ", description = "鏍哥畻璁板綍鏌ヨ") +public class CalculateRecordQuery extends AbsQuery { +} + diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateRecordVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateRecordVO.java new file mode 100644 index 0000000..9c3e44a --- /dev/null +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateRecordVO.java @@ -0,0 +1,46 @@ +package com.ycl.platform.domain.vo; + +import com.ycl.platform.base.AbsVo; +import com.ycl.platform.domain.entity.CalculateRecord; + +import java.math.BigDecimal; +import java.util.List; +import java.time.LocalDateTime; +import org.springframework.lang.NonNull; +import org.springframework.beans.BeanUtils; +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; +import lombok.experimental.Accessors; + +/** + * 鏍哥畻璁板綍灞曠ず + * + * @author xp + * @since 2024-04-23 + */ +@Data +public class CalculateRecordVO extends AbsVo { + + /** 鏍哥畻瑙勫垯 */ + private Integer ruleId; + + /** 鍚堝悓 */ + private Integer contractId; + private String contractName; + + /** 鎵e噺鏈嶅姟璐� */ + private BigDecimal deductMoney; + + /** 鑰冩牳鍒嗘暟 */ + private BigDecimal score; + + public static CalculateRecordVO getVoByEntity(@NonNull CalculateRecord entity, CalculateRecordVO vo) { + if(vo == null) { + vo = new CalculateRecordVO(); + } + BeanUtils.copyProperties(entity, vo); + return vo; + } + +} diff --git a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java index 3acb4d9..ba81f0a 100644 --- a/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java +++ b/ycl-pojo/src/main/java/com/ycl/platform/domain/vo/CalculateReportVO.java @@ -20,7 +20,6 @@ * @since 2024-04-23 */ @Data -@Accessors(chain = true) public class CalculateReportVO extends AbsVo { /** 鍚堝悓 */ diff --git a/ycl-server/src/main/java/com/ycl/platform/controller/CalculateRecordController.java b/ycl-server/src/main/java/com/ycl/platform/controller/CalculateRecordController.java deleted file mode 100644 index c963552..0000000 --- a/ycl-server/src/main/java/com/ycl/platform/controller/CalculateRecordController.java +++ /dev/null @@ -1,98 +0,0 @@ -package com.ycl.platform.controller; - -import annotation.Log; -import com.ycl.platform.domain.entity.CalculateRecord; -import com.ycl.platform.service.ICalculateRecordService; -import com.ycl.system.AjaxResult; -import com.ycl.system.controller.BaseController; -import com.ycl.system.page.TableDataInfo; -import com.ycl.utils.poi.ExcelUtil; -import enumeration.BusinessType; -import jakarta.servlet.http.HttpServletResponse; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.security.access.prepost.PreAuthorize; -import org.springframework.web.bind.annotation.*; - -import java.util.List; - -/** - * 鏍哥畻璁板綍Controller - * - * @author ruoyi - * @date 2024-04-03 - */ -@RestController -@RequestMapping("/calculate/record") -public class CalculateRecordController extends BaseController -{ - @Autowired - private ICalculateRecordService calculateRecordService; - - /** - * 鏌ヨ鏍哥畻璁板綍鍒楄〃 - */ -// @PreAuthorize("@ss.hasPermi('system:record:list')") - @GetMapping("/list") - public TableDataInfo list(CalculateRecord calculateRecord) - { - startPage(); - List<CalculateRecord> list = calculateRecordService.selectCalculateRecordList(calculateRecord); - return getDataTable(list); - } - - /** - * 瀵煎嚭鏍哥畻璁板綍鍒楄〃 - */ -// @PreAuthorize("@ss.hasPermi('system:record:export')") - @Log(title = "鏍哥畻璁板綍", businessType = BusinessType.EXPORT) - @PostMapping("/export") - public void export(HttpServletResponse response, CalculateRecord calculateRecord) - { - List<CalculateRecord> list = calculateRecordService.selectCalculateRecordList(calculateRecord); - ExcelUtil<CalculateRecord> util = new ExcelUtil<CalculateRecord>(CalculateRecord.class); - util.exportExcel(response, list, "鏍哥畻璁板綍鏁版嵁"); - } - - /** - * 鑾峰彇鏍哥畻璁板綍璇︾粏淇℃伅 - */ -// @PreAuthorize("@ss.hasPermi('system:record:query')") - @GetMapping(value = "/{id}") - public AjaxResult getInfo(@PathVariable("id") Long id) - { - return success(calculateRecordService.selectCalculateRecordById(id)); - } - - /** - * 鏂板鏍哥畻璁板綍 - */ - @PreAuthorize("@ss.hasPermi('system:record:add')") - @Log(title = "鏍哥畻璁板綍", businessType = BusinessType.INSERT) - @PostMapping - public AjaxResult add(@RequestBody CalculateRecord calculateRecord) - { - return toAjax(calculateRecordService.insertCalculateRecord(calculateRecord)); - } - - /** - * 淇敼鏍哥畻璁板綍 - */ - @PreAuthorize("@ss.hasPermi('system:record:edit')") - @Log(title = "鏍哥畻璁板綍", businessType = BusinessType.UPDATE) - @PutMapping - public AjaxResult edit(@RequestBody CalculateRecord calculateRecord) - { - return toAjax(calculateRecordService.updateCalculateRecord(calculateRecord)); - } - - /** - * 鍒犻櫎鏍哥畻璁板綍 - */ - @PreAuthorize("@ss.hasPermi('system:record:remove')") - @Log(title = "鏍哥畻璁板綍", businessType = BusinessType.DELETE) - @DeleteMapping("/{ids}") - public AjaxResult remove(@PathVariable Long[] ids) - { - return toAjax(calculateRecordService.deleteCalculateRecordByIds(ids)); - } -} diff --git a/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java b/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java index 4c7db31..fd51c68 100644 --- a/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java +++ b/ycl-server/src/main/java/com/ycl/platform/mapper/CalculateRecordMapper.java @@ -1,63 +1,19 @@ package com.ycl.platform.mapper; -import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.ycl.platform.domain.entity.CalculateRecord; - +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.ycl.platform.domain.vo.CalculateRecordVO; +import com.ycl.platform.domain.form.CalculateRecordForm; import java.util.List; +import org.apache.ibatis.annotations.Mapper; /** - * 鏍哥畻璁板綍Mapper鎺ュ彛 - * - * @author ruoyi - * @date 2024-04-03 + * 鏍哥畻璁板綍 Mapper 鎺ュ彛 + * + * @author xp + * @since 2024-04-23 */ -public interface CalculateRecordMapper extends BaseMapper<CalculateRecord> -{ - /** - * 鏌ヨ鏍哥畻璁板綍 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 鏍哥畻璁板綍 - */ - public CalculateRecord selectCalculateRecordById(Long id); +@Mapper +public interface CalculateRecordMapper extends BaseMapper<CalculateRecord> { - /** - * 鏌ヨ鏍哥畻璁板綍鍒楄〃 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 鏍哥畻璁板綍闆嗗悎 - */ - public List<CalculateRecord> selectCalculateRecordList(CalculateRecord calculateRecord); - - /** - * 鏂板鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 - */ - public int insertCalculateRecord(CalculateRecord calculateRecord); - - /** - * 淇敼鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 - */ - public int updateCalculateRecord(CalculateRecord calculateRecord); - - /** - * 鍒犻櫎鏍哥畻璁板綍 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 缁撴灉 - */ - public int deleteCalculateRecordById(Long id); - - /** - * 鎵归噺鍒犻櫎鏍哥畻璁板綍 - * - * @param ids 闇�瑕佸垹闄ょ殑鏁版嵁涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int deleteCalculateRecordByIds(Long[] ids); } diff --git a/ycl-server/src/main/java/com/ycl/platform/service/CalculateRecordService.java b/ycl-server/src/main/java/com/ycl/platform/service/CalculateRecordService.java new file mode 100644 index 0000000..cdfed2c --- /dev/null +++ b/ycl-server/src/main/java/com/ycl/platform/service/CalculateRecordService.java @@ -0,0 +1,65 @@ +package com.ycl.platform.service; + +import com.ycl.platform.domain.entity.CalculateRecord; +import com.baomidou.mybatisplus.extension.service.IService; +import com.ycl.system.Result; +import com.ycl.platform.domain.form.CalculateRecordForm; +import com.ycl.platform.domain.query.CalculateRecordQuery; +import java.util.List; + +/** + * 鏍哥畻璁板綍 鏈嶅姟绫� + * + * @author xp + * @since 2024-04-23 + */ +public interface CalculateRecordService extends IService<CalculateRecord> { + + /** + * 娣诲姞 + * @param form + * @return + */ + Result add(CalculateRecordForm form); + + /** + * 淇敼 + * @param form + * @return + */ + Result update(CalculateRecordForm form); + + /** + * 鎵归噺鍒犻櫎 + * @param ids + * @return + */ + Result remove(List<String> ids); + + /** + * id鍒犻櫎 + * @param id + * @return + */ + Result removeById(String id); + + /** + * 鍒嗛〉鏌ヨ + * @param query + * @return + */ + Result page(CalculateRecordQuery query); + + /** + * 鏍规嵁id鏌ユ壘 + * @param id + * @return + */ + Result detail(String id); + + /** + * 鍒楄〃 + * @return + */ + Result all(); +} diff --git a/ycl-server/src/main/java/com/ycl/platform/service/ICalculateRecordService.java b/ycl-server/src/main/java/com/ycl/platform/service/ICalculateRecordService.java deleted file mode 100644 index f299715..0000000 --- a/ycl-server/src/main/java/com/ycl/platform/service/ICalculateRecordService.java +++ /dev/null @@ -1,62 +0,0 @@ -package com.ycl.platform.service; - -import com.ycl.platform.domain.entity.CalculateRecord; - -import java.util.List; - -/** - * 鏍哥畻璁板綍Service鎺ュ彛 - * - * @author ruoyi - * @date 2024-04-03 - */ -public interface ICalculateRecordService -{ - /** - * 鏌ヨ鏍哥畻璁板綍 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 鏍哥畻璁板綍 - */ - public CalculateRecord selectCalculateRecordById(Long id); - - /** - * 鏌ヨ鏍哥畻璁板綍鍒楄〃 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 鏍哥畻璁板綍闆嗗悎 - */ - public List<CalculateRecord> selectCalculateRecordList(CalculateRecord calculateRecord); - - /** - * 鏂板鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 - */ - public int insertCalculateRecord(CalculateRecord calculateRecord); - - /** - * 淇敼鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 - */ - public int updateCalculateRecord(CalculateRecord calculateRecord); - - /** - * 鎵归噺鍒犻櫎鏍哥畻璁板綍 - * - * @param ids 闇�瑕佸垹闄ょ殑鏍哥畻璁板綍涓婚敭闆嗗悎 - * @return 缁撴灉 - */ - public int deleteCalculateRecordByIds(Long[] ids); - - /** - * 鍒犻櫎鏍哥畻璁板綍淇℃伅 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 缁撴灉 - */ - public int deleteCalculateRecordById(Long id); -} diff --git a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRecordServiceImpl.java b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRecordServiceImpl.java index 071559b..cac5d05 100644 --- a/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRecordServiceImpl.java +++ b/ycl-server/src/main/java/com/ycl/platform/service/impl/CalculateRecordServiceImpl.java @@ -1,95 +1,145 @@ package com.ycl.platform.service.impl; -import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ycl.platform.domain.entity.CalculateRecord; import com.ycl.platform.mapper.CalculateRecordMapper; -import com.ycl.platform.service.ICalculateRecordService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Service; - +import com.ycl.platform.service.CalculateRecordService; +import com.ycl.system.Result; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ycl.platform.domain.form.CalculateRecordForm; +import com.ycl.platform.domain.vo.CalculateRecordVO; +import com.ycl.platform.domain.query.CalculateRecordQuery; import java.util.List; +import org.apache.commons.lang3.StringUtils; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.ycl.system.page.PageUtil; +import org.springframework.stereotype.Service; +import org.springframework.security.core.context.SecurityContextHolder; +import org.springframework.beans.BeanUtils; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.Assert; +import java.util.ArrayList; +import java.util.stream.Collectors; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper; +import lombok.RequiredArgsConstructor; /** - * 鏍哥畻璁板綍Service涓氬姟灞傚鐞� - * - * @author ruoyi - * @date 2024-04-03 + * 鏍哥畻璁板綍 鏈嶅姟瀹炵幇绫� + * + * @author xp + * @since 2024-04-23 */ @Service -public class CalculateRecordServiceImpl extends ServiceImpl<CalculateRecordMapper, CalculateRecord> implements ICalculateRecordService -{ - @Autowired - private CalculateRecordMapper calculateRecordMapper; +@RequiredArgsConstructor +public class CalculateRecordServiceImpl extends ServiceImpl<CalculateRecordMapper, CalculateRecord> implements CalculateRecordService { + + private final CalculateRecordMapper calculateRecordMapper; /** - * 鏌ヨ鏍哥畻璁板綍 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 鏍哥畻璁板綍 + * 娣诲姞 + * @param form + * @return */ @Override - public CalculateRecord selectCalculateRecordById(Long id) - { - return calculateRecordMapper.selectCalculateRecordById(id); + public Result add(CalculateRecordForm form) { + CalculateRecord entity = CalculateRecordForm.getEntityByForm(form, null); + if(baseMapper.insert(entity) > 0) { + return Result.ok("娣诲姞鎴愬姛"); + } + return Result.error("娣诲姞澶辫触"); } /** - * 鏌ヨ鏍哥畻璁板綍鍒楄〃 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 鏍哥畻璁板綍 + * 淇敼 + * @param form + * @return */ @Override - public List<CalculateRecord> selectCalculateRecordList(CalculateRecord calculateRecord) - { - return calculateRecordMapper.selectCalculateRecordList(calculateRecord); + public Result update(CalculateRecordForm form) { + + CalculateRecord entity = baseMapper.selectById(form.getId()); + + // 涓虹┖鎶汭llegalArgumentException锛屽仛鍏ㄥ眬寮傚父澶勭悊 + Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); + BeanUtils.copyProperties(form, entity); + if (baseMapper.updateById(entity) > 0) { + return Result.ok("淇敼鎴愬姛"); + } + return Result.error("淇敼澶辫触"); } /** - * 鏂板鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 + * 鎵归噺鍒犻櫎 + * @param ids + * @return */ @Override - public int insertCalculateRecord(CalculateRecord calculateRecord) - { - return calculateRecordMapper.insertCalculateRecord(calculateRecord); + public Result remove(List<String> ids) { + if(baseMapper.deleteBatchIds(ids) > 0) { + return Result.ok("鍒犻櫎鎴愬姛"); + } + return Result.error("鍒犻櫎澶辫触"); } /** - * 淇敼鏍哥畻璁板綍 - * - * @param calculateRecord 鏍哥畻璁板綍 - * @return 缁撴灉 + * id鍒犻櫎 + * @param id + * @return */ @Override - public int updateCalculateRecord(CalculateRecord calculateRecord) - { - return calculateRecordMapper.updateCalculateRecord(calculateRecord); + public Result removeById(String id) { + if(baseMapper.deleteById(id) > 0) { + return Result.ok("鍒犻櫎鎴愬姛"); + } + return Result.error("鍒犻櫎澶辫触"); } /** - * 鎵归噺鍒犻櫎鏍哥畻璁板綍 - * - * @param ids 闇�瑕佸垹闄ょ殑鏍哥畻璁板綍涓婚敭 - * @return 缁撴灉 + * 鍒嗛〉鏌ヨ + * @param query + * @return */ @Override - public int deleteCalculateRecordByIds(Long[] ids) - { - return calculateRecordMapper.deleteCalculateRecordByIds(ids); + public Result page(CalculateRecordQuery query) { + + IPage<CalculateRecord> page = new LambdaQueryChainWrapper<>(baseMapper) + .orderByDesc(CalculateRecord::getCreateTime) + .page(PageUtil.getPage(query, CalculateRecord.class)); + + List<CalculateRecordVO> vos = page.getRecords().stream() + .map( + entity -> CalculateRecordVO.getVoByEntity(entity, null) + ) + .collect(Collectors.toList()); + return Result.ok().data(vos).total(page.getTotal()); } /** - * 鍒犻櫎鏍哥畻璁板綍淇℃伅 - * - * @param id 鏍哥畻璁板綍涓婚敭 - * @return 缁撴灉 + * 鏍规嵁id鏌ユ壘 + * @param id + * @return */ @Override - public int deleteCalculateRecordById(Long id) - { - return calculateRecordMapper.deleteCalculateRecordById(id); + public Result detail(String id) { + + CalculateRecord entity = baseMapper.selectById(id); + Assert.notNull(entity, "璁板綍涓嶅瓨鍦�"); + CalculateRecordVO vo = CalculateRecordVO.getVoByEntity(entity, null); + return Result.ok().data(vo); + } + + /** + * 鍒楄〃 + * @return + */ + @Override + public Result all() { + List<CalculateRecord> entities = baseMapper.selectList(null); + List<CalculateRecordVO> vos = entities.stream() + .map( + entity -> CalculateRecordVO.getVoByEntity(entity, null) + ) + .collect(Collectors.toList()); + return Result.ok().data(vos); } } diff --git a/ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml b/ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml index da7e9ee..ed5ee91 100644 --- a/ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml +++ b/ycl-server/src/main/resources/mapper/zgyw/CalculateRecordMapper.xml @@ -1,83 +1,15 @@ -<?xml version="1.0" encoding="UTF-8" ?> -<!DOCTYPE mapper -PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" -"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.ycl.platform.mapper.CalculateRecordMapper"> - - <resultMap type="com.ycl.platform.domain.entity.CalculateRecord" id="CalculateRecordResult"> - <result property="id" column="id" /> - <result property="date" column="date" /> - <result property="ruleId" column="rule_id" /> - <result property="unitId" column="unit_id" /> - <result property="totalAmount" column="total_amount" /> - <result property="deductAmount" column="deduct_amount" /> - <result property="score" column="score" /> + + <!-- 閫氱敤鏌ヨ鏄犲皠缁撴灉 --> + <resultMap id="BaseResultMap" type="com.ycl.platform.domain.vo.CalculateRecordVO"> + <result column="id" property="id" /> + <result column="create_time" property="createTime" /> + <result column="rule_id" property="ruleId" /> + <result column="contract_id" property="contractId" /> + <result column="deduct_money" property="deductMoney" /> + <result column="score" property="score" /> </resultMap> - <sql id="selectCalculateRecordVo"> - select id, date, rule_id, unit_id, total_amount, deduct_amount, score from t_calculate_record - </sql> - - <select id="selectCalculateRecordList" resultMap="CalculateRecordResult"> - <include refid="selectCalculateRecordVo"/> - <where> - <if test="date != null "> and date = #{date}</if> - <if test="ruleId != null "> and rule_id = #{ruleId}</if> - <if test="unitId != null "> and unit_id = #{unitId}</if> - <if test="totalAmount != null "> and total_amount = #{totalAmount}</if> - <if test="deductAmount != null "> and deduct_amount = #{deductAmount}</if> - <if test="score != null "> and score = #{score}</if> - </where> - </select> - - <select id="selectCalculateRecordById" resultMap="CalculateRecordResult"> - <include refid="selectCalculateRecordVo"/> - where id = #{id} - </select> - - <insert id="insertCalculateRecord" parameterType="CalculateRecord"> - insert into t_calculate_record - <trim prefix="(" suffix=")" suffixOverrides=","> - <if test="id != null">id,</if> - <if test="date != null">date,</if> - <if test="ruleId != null">rule_id,</if> - <if test="unitId != null">unit_id,</if> - <if test="totalAmount != null">total_amount,</if> - <if test="deductAmount != null">deduct_amount,</if> - <if test="score != null">score,</if> - </trim> - <trim prefix="values (" suffix=")" suffixOverrides=","> - <if test="id != null">#{id},</if> - <if test="date != null">#{date},</if> - <if test="ruleId != null">#{ruleId},</if> - <if test="unitId != null">#{unitId},</if> - <if test="totalAmount != null">#{totalAmount},</if> - <if test="deductAmount != null">#{deductAmount},</if> - <if test="score != null">#{score},</if> - </trim> - </insert> - - <update id="updateCalculateRecord"> - update t_calculate_record - <trim prefix="SET" suffixOverrides=","> - <if test="date != null">date = #{date},</if> - <if test="ruleId != null">rule_id = #{ruleId},</if> - <if test="unitId != null">unit_id = #{unitId},</if> - <if test="totalAmount != null">total_amount = #{totalAmount},</if> - <if test="deductAmount != null">deduct_amount = #{deductAmount},</if> - <if test="score != null">score = #{score},</if> - </trim> - where id = #{id} - </update> - - <delete id="deleteCalculateRecordById" > - delete from t_calculate_record where id = #{id} - </delete> - - <delete id="deleteCalculateRecordByIds" > - delete from t_calculate_record where id in - <foreach item="id" collection="array" open="(" separator="," close=")"> - #{id} - </foreach> - </delete> -</mapper> \ No newline at end of file +</mapper> -- Gitblit v1.8.0