diff --git a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java index 343912d93..4eb967c56 100644 --- a/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java +++ b/mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java @@ -787,7 +787,7 @@ public class WxFinanceController extends BaseController { }) public ResultData checkOutList(@ModelAttribute WxFinanceCheckOut record, Integer pageNum, Integer pageSize) { record.updateTenantInfo(getTenantInfo()); - record.setSortColumns("period desc"); + record.setSortColumns("end_date desc"); PageInfo page = wxFinanceService.checkOutListAsPage(record, pageNum, pageSize); return new ResultData(page); } @@ -796,6 +796,41 @@ public class WxFinanceController extends BaseController { @PostMapping("saveCheckOut") public ResultData saveCheckOut(@RequestBody WxFinanceCheckOut record) { record.updateTenantInfo(getTenantInfo()); + //是否已经存在年月,或者开始时间,结束时间的 + if (StringUtils.isBlank(record.getPeroid())) { + return new ResultData(Result.ERROR,"请选择年月"); + } + if (null == record.getStartDate()) { + return new ResultData(Result.ERROR,"请选择开始日期"); + } + if (null == record.getEndDate()) { + return new ResultData(Result.ERROR,"请选择结束日期"); + } + + WxFinanceCheckOut periodFindq = new WxFinanceCheckOut(); + periodFindq.updateTenantInfo(record); + periodFindq.setPeroid(record.getPeroid()); + List list = wxFinanceService.getCheckOutList(periodFindq); + if (null != list && list.size() > 0 ) { + return new ResultData(Result.ERROR,"已存在改年月的结账记录"); + } + //校验收款单是否都已审核 + WxFinanceReceive frq = new WxFinanceReceive(); + frq.updateTenantInfo(record); + frq.setReceiveDateBegin(record.getStartDate()); + frq.setReceiveDateEnd(record.getEndDate()); + List statusList = new ArrayList(); + statusList.add(EnumFinanceReceiveStatus.NORMAL.getCode()); + statusList.add(EnumFinanceReceiveStatus.RED_SETOFF.getCode()); + statusList.add(EnumFinanceReceiveStatus.AUDITING.getCode()); + statusList.add(EnumFinanceReceiveStatus.AUDITING_REJECT.getCode()); + frq.setStatusList(statusList); + frq.setIsFinish(EnumYesOrNo.NO.getCode()); + List relist = wxFinanceService.findReceiveList(frq); + if (null != relist && relist.size() > 0 ) { + return new ResultData(Result.ERROR,"存在未审核的单据"); + } + wxFinanceService.saveOrUpdateCheckOut(record, getUser()); return new ResultData(); } diff --git a/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceCheckOut.java b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceCheckOut.java index 6ca8ae96a..0ee759650 100644 --- a/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceCheckOut.java +++ b/mallinkService/src/main/java/com/iformall/domain/po/WxFinanceCheckOut.java @@ -49,6 +49,8 @@ public class WxFinanceCheckOut extends TenantEntity { @io.swagger.annotations.ApiModelProperty(value="所属年月",name="peroid") private String peroid; + @TableField(exist = false) + private String peroidEqual; @io.swagger.annotations.ApiModelProperty(value = "交款开始日期", name = "startDate") private Date startDate; diff --git a/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java b/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java index 9e8078a3c..5e7604efc 100644 --- a/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java +++ b/mallinkService/src/main/java/com/iformall/service/WxFinanceService.java @@ -93,4 +93,5 @@ public interface WxFinanceService { PageInfo checkOutListAsPage(WxFinanceCheckOut record, Integer pageIndex, Integer pageSize); void saveOrUpdateCheckOut(WxFinanceCheckOut record,MallUserInfo user); void deleteCheckOut(WxFinanceCheckOut record); + List getCheckOutList(WxFinanceCheckOut record); } diff --git a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java index cf3e51b50..dc1127f77 100644 --- a/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java +++ b/mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java @@ -1966,6 +1966,11 @@ public class WxFinanceServiceImpl implements WxFinanceService { wxFinanceCheckOutMapper.deleteByConditon(record);; } + @Override + public List getCheckOutList(WxFinanceCheckOut record) { + return wxFinanceCheckOutMapper.findList(record); + } + } diff --git a/mallinkService/src/main/resources/mapper/WxFinanceCheckOutMapper.xml b/mallinkService/src/main/resources/mapper/WxFinanceCheckOutMapper.xml index 6306bf4b3..33f72a2cd 100644 --- a/mallinkService/src/main/resources/mapper/WxFinanceCheckOutMapper.xml +++ b/mallinkService/src/main/resources/mapper/WxFinanceCheckOutMapper.xml @@ -36,6 +36,9 @@ and peroid concat('%', #{peroid},'%') + + and peroid = #{peroidEqual} + and `create_by` = #{createBy} and `start_date` >= #{startDate} and `end_date` <= #{endDate}