winter 1 год назад
Родитель
Сommit
2d8fec599d
9 измененных файлов: 87 добавлений и 46 удалений
  1. +14
    -19
      mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java
  2. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceFinish.java
  3. +4
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceFinishReceive.java
  4. +2
    -0
      mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java
  5. +1
    -1
      mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java
  6. +4
    -3
      mallinkService/src/main/java/com/iformall/service/WxFinanceService.java
  7. +44
    -21
      mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java
  8. +7
    -0
      mallinkService/src/main/resources/mapper/WxFinanceFinishReceiveMapper.xml
  9. +8
    -2
      mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml

+ 14
- 19
mallinkAdmin/src/main/java/com/iformall/controller/market/WxFinanceController.java Просмотреть файл

@@ -12,6 +12,7 @@ import com.iformall.domain.po.WxAllBill;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxEnergyFees;
import com.iformall.domain.po.WxFinanceFinish;
import com.iformall.domain.po.WxFinanceFinishReceive;
import com.iformall.domain.po.WxFinanceReceive;
import com.iformall.domain.po.WxFinanceReceiveBill;
import com.iformall.domain.po.WxFinanceReceivePayway;
@@ -695,48 +696,42 @@ public class WxFinanceController extends BaseController {
return new ResultData(list);
}
@ApiOperation("新增交款")
@ApiOperation("新增/修改交款")
@PostMapping("saveFinish")
public ResultData saveFinish(@RequestBody WxFinanceFinish record) {
record.updateTenantInfo(getTenantInfo());
if (null == record.getReceiveIds() || record.getReceiveIds().size() <= 0 ) {
return new ResultData(Result.ERROR,"无关联的单据");
}
//如果单据已经存在了,则不允许提交。
List<WxFinanceFinishReceive> list = wxFinanceService.findFinishReceiveList(record);
if (null != list && list.size() > 0 ) {
return new ResultData(Result.ERROR,"单据已经存在交款批次");
}
wxFinanceService.saveOrUpdateFinish(record, getUser());
return new ResultData();
}
@ApiOperation("结账")
@PostMapping("receiveFinish")
public ResultData receiveFinish(@RequestBody WxFinanceFinish record) {
@ApiOperation("审核/反审核交款")
@PostMapping("auditFinish")
public ResultData auditFinish(@RequestBody WxFinanceFinish record) {
if (null == record.getId()) {
return new ResultData(Result.ERROR,"finishId参数不能为空");
}
record.updateTenantInfo(getTenantInfo());
wxFinanceService.finishReceive(record, getUser());
wxFinanceService.auditReceive(record, getUser());
return new ResultData();
}
@ApiOperation("批次结账")
@ApiOperation("批次审核/反审核单据结账")
@PostMapping("batchReceiveFinish")
public ResultData batchReceiveFinish(@RequestBody WxFinanceFinish record) {
if (null == record.getId() || null == record.getReceiveIds() || record.getReceiveIds().size() <= 0 ) {
return new ResultData(Result.ERROR,"请选择");
}
record.updateTenantInfo(getTenantInfo());
WxFinanceFinish finish = wxFinanceService.getFinishById(record, record.getId());
WxFinanceReceive rq = new WxFinanceReceive();
rq.setCreateTimeBegin(finish.getStartDate());
rq.setCreateTimeEnd(finish.getEndDate());
rq.setIsFinish(EnumYesOrNo.NO.getCode());
rq.updateTenantInfo(record);
Integer count = wxFinanceService.getReceiveUnFinisedCount(rq);
boolean isAll = false;
if (null != count && count > record.getReceiveIds().size()) {
}else {
isAll = true;
}
wxFinanceService.batchFinishReceive(record, getUser(),isAll);
wxFinanceService.batchAuditFinishReceive(record, getUser());
return new ResultData();
}


+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceFinish.java Просмотреть файл

@@ -167,4 +167,7 @@ public class WxFinanceFinish extends TenantEntity {
@TableField(exist = false)
private Integer isReceive;
@TableField(exist = false)
private List<Long> deleteReceiveIds;
}

+ 4
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceFinishReceive.java Просмотреть файл

@@ -54,4 +54,8 @@ public class WxFinanceFinishReceive extends TenantEntity {
@TableField(exist = false)
private String receiveIdLike;
@TableField(exist = false)
private List<Long> receiveIds;
@TableField(exist = false)
private Long ownFinishId;
}

+ 2
- 0
mallinkService/src/main/java/com/iformall/domain/po/WxFinanceReceive.java Просмотреть файл

@@ -195,5 +195,7 @@ public class WxFinanceReceive extends TenantEntity {
private Map<String, Object> flowParams;
@TableField(exist = false)
private String rentName;
@TableField(exist = false)
private List<Long> notInIds;

}

+ 1
- 1
mallinkService/src/main/java/com/iformall/mapper/WxFinanceReceiveMapper.java Просмотреть файл

@@ -22,7 +22,7 @@ public interface WxFinanceReceiveMapper extends CommonMapper<WxFinanceReceive, L
void setIsDel(@Param("id")Long id,@Param("tenantId")String tenantId,@Param("isDel")Integer isDel);
void finish(WxFinanceReceive wxBillRent);
void updateFinish(WxFinanceReceive wxBillRent);
WxFinanceReceiveSumVo getReceiveSum(WxFinanceReceive record);


+ 4
- 3
mallinkService/src/main/java/com/iformall/service/WxFinanceService.java Просмотреть файл

@@ -17,6 +17,7 @@ import com.iformall.domain.po.WxAllBill;
import com.iformall.domain.po.WxBillPayWay;
import com.iformall.domain.po.WxEnergyFeesShop;
import com.iformall.domain.po.WxFinanceFinish;
import com.iformall.domain.po.WxFinanceFinishReceive;
import com.iformall.domain.po.WxFinanceReceive;
import com.iformall.domain.po.WxFinanceReceiveBill;
import com.iformall.domain.po.WxFinanceReceivePayway;
@@ -72,6 +73,7 @@ public interface WxFinanceService {
PageInfo<WxFinanceFinish> finishListAsPage(WxFinanceFinish record, Integer pageIndex, Integer pageSize);
WxFinanceFinish getFinishById(TenantEntity tenantEntity,Long id);
void saveOrUpdateFinish(WxFinanceFinish record,MallUserInfo user);
List<WxFinanceFinishReceive> findFinishReceiveList(WxFinanceFinish record);
WxFinanceReceiveSumVo getReceiveSum(WxFinanceReceive record);
List<WxFinanceReceiveCountVo> getReceiveFinishCount(WxFinanceFinish record);
List<WxFinanceReceiveCountVo> getReceiveCount(WxFinanceFinish record);
@@ -79,9 +81,8 @@ public interface WxFinanceService {
List<WxFinanceReceiveBill> getReceiveFeesSum(WxFinanceFinish record);
WxFinanceReceiveSumVo getReceiveSumByFinish(WxFinanceFinish record);
List<WxFinanceReceiveVo> getReceiveVoListByFinish(WxFinanceFinish record);
void finishReceive(WxFinanceFinish record,MallUserInfo user);
void auditReceive(WxFinanceFinish record,MallUserInfo user);
Integer getReceiveUnFinisedCount(WxFinanceReceive record);
void batchFinishReceive(WxFinanceFinish record,MallUserInfo user,boolean isAll);
void batchAuditFinishReceive(WxFinanceFinish record,MallUserInfo user);
SysConfig getFinishEndTime(TenantEntity tenantEntity);
}

+ 44
- 21
mallinkService/src/main/java/com/iformall/service/impl/WxFinanceServiceImpl.java Просмотреть файл

@@ -1617,24 +1617,36 @@ public class WxFinanceServiceImpl implements WxFinanceService {
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
@Override
public void finishReceive(WxFinanceFinish record, MallUserInfo user) {
public void auditReceive(WxFinanceFinish record, MallUserInfo user) {
WxFinanceFinish finish = this.getFinishById(record, record.getId());
//更新批次,
WxFinanceFinish ff = new WxFinanceFinish();
ff.updateTenantInfo(record);
ff.setId(finish.getId());
ff.setStatus(EnumFinanceFinishStatus.AUDITED.getCode());
//ff.setStatus(EnumFinanceFinishStatus.AUDITED.getCode());
ff.setStatus(record.getStatus());
ff.setUpdateTime(new Date());
ff.setUpdateBy(user.getId());
ff.setUpdateByName(user.getName());
wxFinanceFinishMapper.updateById(ff);
//更新收付款记录
WxFinanceReceive fr = new WxFinanceReceive();
fr.updateTenantInfo(record);
fr.setReceiveDateBegin(finish.getStartDate());
fr.setReceiveDateEnd(finish.getEndDate());
fr.setIsFinish(EnumYesOrNo.NO.getCode());
wxFinanceReceiveMapper.finish(fr);
WxFinanceFinishReceive ffr = new WxFinanceFinishReceive();
ffr.updateTenantInfo(record);
ffr.setFinishId(finish.getId());
Integer isFinish = EnumYesOrNo.YES.getCode();
if (record.getStatus() == EnumFinanceFinishStatus.UN_AUDIT.getCode()) {
isFinish = EnumYesOrNo.NO.getCode();
}
List<Long> receiveIds = wxFinanceFinishReceiveMapper.findReceiveIdList(ffr);
if (null != receiveIds && receiveIds.size() > 0 ) {
WxFinanceReceive fr = new WxFinanceReceive();
fr.updateTenantInfo(record);
fr.setIds(receiveIds);
fr.setIsFinish(isFinish);
wxFinanceReceiveMapper.updateFinish(fr);
}
}

@Override
@@ -1644,23 +1656,18 @@ public class WxFinanceServiceImpl implements WxFinanceService {
@Transactional(propagation = Propagation.REQUIRED, readOnly = false, rollbackFor = {Exception.class})
@Override
public void batchFinishReceive(WxFinanceFinish record, MallUserInfo user,boolean isAll) {
public void batchAuditFinishReceive(WxFinanceFinish record, MallUserInfo user) {
Integer isFinish = EnumYesOrNo.YES.getCode();
if (record.getStatus() == EnumFinanceFinishStatus.UN_AUDIT.getCode()) {
isFinish = EnumYesOrNo.NO.getCode();
}
//更新收付款记录
WxFinanceReceive fr = new WxFinanceReceive();
fr.updateTenantInfo(record);
fr.setIds(record.getReceiveIds());
wxFinanceReceiveMapper.finish(fr);
//如果主
if (isAll) {
WxFinanceFinish ff = new WxFinanceFinish();
ff.updateTenantInfo(record);
ff.setId(record.getId());
ff.setStatus(EnumFinanceFinishStatus.AUDITED.getCode());
ff.setUpdateTime(new Date());
ff.setUpdateBy(user.getId());
ff.setUpdateByName(user.getName());
wxFinanceFinishMapper.updateById(ff);
}
fr.setIsFinish(isFinish);;
wxFinanceReceiveMapper.updateFinish(fr);
}

@Override
@@ -1678,6 +1685,11 @@ public class WxFinanceServiceImpl implements WxFinanceService {
WxFinanceReceive fr = new WxFinanceReceive();
fr.updateTenantInfo(record);
if (null != record.getId()) {
if (null != record.getDeleteReceiveIds() && record.getDeleteReceiveIds().size() > 0 ) {
fr.setNotInIds(record.getDeleteReceiveIds());
}
WxFinanceFinishReceive ffr = new WxFinanceFinishReceive();
ffr.updateTenantInfo(record);
ffr.setFinishId(record.getId());
@@ -1867,4 +1879,15 @@ public class WxFinanceServiceImpl implements WxFinanceService {
}

@Override
public List<WxFinanceFinishReceive> findFinishReceiveList(WxFinanceFinish record) {
WxFinanceFinishReceive ffrq = new WxFinanceFinishReceive();
ffrq.updateTenantInfo(record);
ffrq.setReceiveIds(record.getReceiveIds());
if (null != record.getId()) {
ffrq.setOwnFinishId(record.getId());
};
return wxFinanceFinishReceiveMapper.findList(ffrq);
}

}

+ 7
- 0
mallinkService/src/main/resources/mapper/WxFinanceFinishReceiveMapper.xml Просмотреть файл

@@ -31,6 +31,13 @@
<if test=" null != receiveIdLike and '' != receiveIdLike">
and receive_id like concat('%', #{receiveIdLike},'%')
</if>
<if test=" null != ownFinishId ">and `finish_id` != #{ownFinishId}</if>
<if test=" null != receiveIds ">
and receive_id in
<foreach collection="receiveIds" index="index" item="ridItem" open="(" separator="," close=")">
#{ridItem}
</foreach>
</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">


+ 8
- 2
mallinkService/src/main/resources/mapper/WxFinanceReceiveMapper.xml Просмотреть файл

@@ -73,6 +73,12 @@
#{fidItem}
</foreach>
</if>
<if test=" null != notInIds ">
and id not in
<foreach collection="notInIds" index="index" item="nidItem" open="(" separator="," close=")">
#{nidItem}
</foreach>
</if>
<if test=" null != ids ">
and id in
<foreach collection="ids" index="index" item="idItem" open="(" separator="," close=")">
@@ -163,8 +169,8 @@
group by fees_id
</select>
<update id="finish" parameterType="com.iformall.domain.po.WxFinanceReceive">
update wx_finance_receive set is_finish = 1
<update id="updateFinish" parameterType="com.iformall.domain.po.WxFinanceReceive">
update wx_finance_receive set is_finish = #{isFinish}
<include refid="dynamicWhereConditions"/>
and status not in (2,3,4)
</update>


Загрузка…
Отмена
Сохранить