| @@ -703,8 +703,17 @@ public class WxFinanceController extends BaseController { | |||||
| if (null == record.getReceiveIds() || record.getReceiveIds().size() <= 0 ) { | if (null == record.getReceiveIds() || record.getReceiveIds().size() <= 0 ) { | ||||
| return new ResultData(Result.ERROR,"无关联的单据"); | return new ResultData(Result.ERROR,"无关联的单据"); | ||||
| } | } | ||||
| //修改 | |||||
| if (null != record.getId()) { | |||||
| WxFinanceFinish finish = wxFinanceService.getFinishById(record, record.getId()); | |||||
| if (null == finish ) { | |||||
| return new ResultData(Result.ERROR,"参数错误"); | |||||
| } | |||||
| if (finish.getStatus() == EnumFinanceFinishStatus.AUDITED.getCode()) { | |||||
| return new ResultData(Result.ERROR,"已经审核,不允许修改"); | |||||
| } | |||||
| } | |||||
| //如果单据已经存在了,则不允许提交。 | //如果单据已经存在了,则不允许提交。 | ||||
| List<WxFinanceFinishReceive> list = wxFinanceService.findFinishReceiveList(record); | List<WxFinanceFinishReceive> list = wxFinanceService.findFinishReceiveList(record); | ||||
| if (null != list && list.size() > 0 ) { | if (null != list && list.size() > 0 ) { | ||||
| return new ResultData(Result.ERROR,"单据已经存在交款批次"); | return new ResultData(Result.ERROR,"单据已经存在交款批次"); | ||||
| @@ -724,6 +733,31 @@ public class WxFinanceController extends BaseController { | |||||
| return new ResultData(); | return new ResultData(); | ||||
| } | } | ||||
| @ApiOperation("删除交款") | |||||
| @PostMapping("deleteFinish") | |||||
| public ResultData deleteFinish(@RequestBody WxFinanceFinish record) { | |||||
| if (null == record.getId()) { | |||||
| return new ResultData(Result.ERROR,"finishId参数不能为空"); | |||||
| } | |||||
| //未审核的才能删除 | |||||
| WxFinanceFinish finish = wxFinanceService.getFinishById(record, record.getId()); | |||||
| if (null == finish ) { | |||||
| return new ResultData(Result.ERROR,"参数错误"); | |||||
| } | |||||
| if (finish.getStatus() == EnumFinanceFinishStatus.AUDITED.getCode()) { | |||||
| return new ResultData(Result.ERROR,"已经审核,不允许删除"); | |||||
| } | |||||
| //如果已存在已审核的单据,也不允许删除 | |||||
| List<WxFinanceReceive> list = wxFinanceService.findAuditedFinishReceiveList(record); | |||||
| if (null != list && list.size() > 0 ) { | |||||
| return new ResultData(Result.ERROR,"已存在审核的单据,不允许删除"); | |||||
| } | |||||
| record.updateTenantInfo(getTenantInfo()); | |||||
| wxFinanceService.deleteFinish(record); | |||||
| return new ResultData(); | |||||
| } | |||||
| @ApiOperation("批次审核/反审核单据结账") | @ApiOperation("批次审核/反审核单据结账") | ||||
| @PostMapping("batchReceiveFinish") | @PostMapping("batchReceiveFinish") | ||||
| public ResultData batchReceiveFinish(@RequestBody WxFinanceFinish record) { | public ResultData batchReceiveFinish(@RequestBody WxFinanceFinish record) { | ||||
| @@ -12,5 +12,7 @@ public interface WxFinanceFinishMapper extends CommonMapper<WxFinanceFinish, Lon | |||||
| List<WxFinanceFinish> findList(WxFinanceFinish wxBillRent); | List<WxFinanceFinish> findList(WxFinanceFinish wxBillRent); | ||||
| WxFinanceFinish selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | WxFinanceFinish selectById(@Param("id")Long id,@Param("tenantId")String tenantId); | ||||
| void deleteByConditon(WxFinanceFinish wxBillRent); | |||||
| } | } | ||||
| @@ -74,6 +74,7 @@ public interface WxFinanceService { | |||||
| WxFinanceFinish getFinishById(TenantEntity tenantEntity,Long id); | WxFinanceFinish getFinishById(TenantEntity tenantEntity,Long id); | ||||
| void saveOrUpdateFinish(WxFinanceFinish record,MallUserInfo user); | void saveOrUpdateFinish(WxFinanceFinish record,MallUserInfo user); | ||||
| List<WxFinanceFinishReceive> findFinishReceiveList(WxFinanceFinish record); | List<WxFinanceFinishReceive> findFinishReceiveList(WxFinanceFinish record); | ||||
| List<WxFinanceReceive> findAuditedFinishReceiveList(WxFinanceFinish record); | |||||
| WxFinanceReceiveSumVo getReceiveSum(WxFinanceReceive record); | WxFinanceReceiveSumVo getReceiveSum(WxFinanceReceive record); | ||||
| List<WxFinanceReceiveCountVo> getReceiveFinishCount(WxFinanceFinish record); | List<WxFinanceReceiveCountVo> getReceiveFinishCount(WxFinanceFinish record); | ||||
| List<WxFinanceReceiveCountVo> getReceiveCount(WxFinanceFinish record); | List<WxFinanceReceiveCountVo> getReceiveCount(WxFinanceFinish record); | ||||
| @@ -84,5 +85,6 @@ public interface WxFinanceService { | |||||
| void auditReceive(WxFinanceFinish record,MallUserInfo user); | void auditReceive(WxFinanceFinish record,MallUserInfo user); | ||||
| Integer getReceiveUnFinisedCount(WxFinanceReceive record); | Integer getReceiveUnFinisedCount(WxFinanceReceive record); | ||||
| void batchAuditFinishReceive(WxFinanceFinish record,MallUserInfo user); | void batchAuditFinishReceive(WxFinanceFinish record,MallUserInfo user); | ||||
| void deleteFinish(WxFinanceFinish record); | |||||
| SysConfig getFinishEndTime(TenantEntity tenantEntity); | SysConfig getFinishEndTime(TenantEntity tenantEntity); | ||||
| } | } | ||||
| @@ -1871,7 +1871,7 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||||
| ffr.setId(idWorker.nextId()); | ffr.setId(idWorker.nextId()); | ||||
| ffr.setCreateTime(new Date()); | ffr.setCreateTime(new Date()); | ||||
| ffr.setUpdateTime(new Date()); | ffr.setUpdateTime(new Date()); | ||||
| ffr.setStatus(record.getStatus()); | |||||
| ffr.setStatus(EnumFinanceFinishStatus.UN_AUDIT.getCode()); | |||||
| ffr.setFinishId(record.getId()); | ffr.setFinishId(record.getId()); | ||||
| ffr.setReceiveId(receiveId); | ffr.setReceiveId(receiveId); | ||||
| wxFinanceFinishReceiveMapper.insert(ffr); | wxFinanceFinishReceiveMapper.insert(ffr); | ||||
| @@ -1889,5 +1889,39 @@ public class WxFinanceServiceImpl implements WxFinanceService { | |||||
| }; | }; | ||||
| return wxFinanceFinishReceiveMapper.findList(ffrq); | return wxFinanceFinishReceiveMapper.findList(ffrq); | ||||
| } | } | ||||
| @Override | |||||
| public List<WxFinanceReceive> findAuditedFinishReceiveList(WxFinanceFinish record) { | |||||
| WxFinanceFinishReceive ffrq = new WxFinanceFinishReceive(); | |||||
| ffrq.updateTenantInfo(record); | |||||
| ffrq.setFinishId(record.getId()); | |||||
| List<Long> receiveIds = wxFinanceFinishReceiveMapper.findReceiveIdList(ffrq); | |||||
| if (null != receiveIds && receiveIds.size() > 0 ) { | |||||
| WxFinanceReceive frq = new WxFinanceReceive(); | |||||
| frq.updateTenantInfo(record); | |||||
| frq.setIds(receiveIds); | |||||
| frq.setIsFinish(EnumYesOrNo.YES.getCode()); | |||||
| List<Integer> statusList = new ArrayList<Integer>(); | |||||
| statusList.add(EnumFinanceReceiveStatus.NORMAL.getCode()); | |||||
| statusList.add(EnumFinanceReceiveStatus.RED_SETOFF.getCode()); | |||||
| frq.setStatusList(statusList); | |||||
| return wxFinanceReceiveMapper.findList(frq); | |||||
| } | |||||
| return null; | |||||
| } | |||||
| @Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class}) | |||||
| @Override | |||||
| public void deleteFinish(WxFinanceFinish record) { | |||||
| //删除之前的单据关联 | |||||
| WxFinanceFinishReceive frdel = new WxFinanceFinishReceive(); | |||||
| frdel.updateTenantInfo(record); | |||||
| frdel.setFinishId(record.getId());; | |||||
| wxFinanceFinishReceiveMapper.deleteByCondition(frdel); | |||||
| wxFinanceFinishMapper.deleteByConditon(record); | |||||
| } | |||||
| } | } | ||||
| @@ -74,5 +74,10 @@ | |||||
| from wx_finance_finish where id = #{id} and `tenant_id` = #{tenantId} | from wx_finance_finish where id = #{id} and `tenant_id` = #{tenantId} | ||||
| </select> | </select> | ||||
| <delete id="deleteByConditon" parameterType="com.iformall.domain.po.WxFinanceFinish"> | |||||
| delete from wx_finance_finish | |||||
| <include refid="dynamicWhereConditions"/> | |||||
| </delete> | |||||
| </mapper> | </mapper> | ||||