Explorar el Código

fix B端完成账单

release_toaliyun_real
winter hace 3 años
padre
commit
018f93c5b3
Se han modificado 4 ficheros con 70 adiciones y 2 borrados
  1. +64
    -1
      mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java
  2. +3
    -0
      mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java
  3. +1
    -0
      mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java
  4. +2
    -1
      mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java

+ 64
- 1
mallinkBApi/src/main/java/com/iformall/controller/WxBillController.java Ver fichero

@@ -4,12 +4,20 @@ import com.alibaba.fastjson.JSON;
import com.iformall.common.ErrorCode; import com.iformall.common.ErrorCode;
import com.iformall.common.Result; import com.iformall.common.Result;
import com.iformall.common.ResultData; import com.iformall.common.ResultData;
import com.iformall.domain.po.WxFlowModel;
import com.iformall.domain.po.WxMerchant; import com.iformall.domain.po.WxMerchant;
import com.iformall.domain.po.WxMerchantBUser;
import com.iformall.domain.po.WxRentContract;
import com.iformall.domain.vo.WxBillAll; import com.iformall.domain.vo.WxBillAll;
import com.iformall.enums.EnumBillUpdateType;
import com.iformall.enums.EnumContractOperationType;
import com.iformall.enums.EnumFilterSettle; import com.iformall.enums.EnumFilterSettle;
import com.iformall.enums.EnumFlowKey;
import com.iformall.enums.EnumMerchantStatus; import com.iformall.enums.EnumMerchantStatus;
import com.iformall.enums.EnumRentShopType;
import com.iformall.service.WxBillAllService; import com.iformall.service.WxBillAllService;
import com.iformall.service.WxBillSettleService; import com.iformall.service.WxBillSettleService;
import com.iformall.service.WxFlowService;
import com.iformall.service.WxMerchantService; import com.iformall.service.WxMerchantService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
@@ -19,6 +27,9 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;


@@ -38,6 +49,8 @@ public class WxBillController extends BaseController {
WxMerchantService wxMerchantService; WxMerchantService wxMerchantService;
@Autowired @Autowired
WxBillSettleService wxBillSettleService; WxBillSettleService wxBillSettleService;
@Autowired
private WxFlowService wxFlowService;


// @ApiOperation("所有欠缴和待缴的数据") // @ApiOperation("所有欠缴和待缴的数据")
// @PostMapping("listBillOweAndWaitPay") // @PostMapping("listBillOweAndWaitPay")
@@ -63,7 +76,6 @@ public class WxBillController extends BaseController {
@ApiOperation("账单") @ApiOperation("账单")
@PostMapping("listBill") @PostMapping("listBill")
public ResultData listBill(@RequestBody WxBillAll wxBillAll) { public ResultData listBill(@RequestBody WxBillAll wxBillAll) {
logger.info(">>>>>>>listBill>>>>"+JSON.toJSONString(wxBillAll));
if(StringUtils.isEmpty(wxBillAll.getTenantId())){ if(StringUtils.isEmpty(wxBillAll.getTenantId())){
return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"tenantId不能为空"); return new ResultData(ErrorCode.SYS_PARAMETER_NOT_NULL.getCode(),"tenantId不能为空");
} }
@@ -98,5 +110,56 @@ public class WxBillController extends BaseController {
public ResultData findById(Long id) { public ResultData findById(Long id) {
return new ResultData(Result.SUCCESS, "查询成功", wxBillSettleService.getById(id, EnumFilterSettle.NO.getCode())); return new ResultData(Result.SUCCESS, "查询成功", wxBillSettleService.getById(id, EnumFilterSettle.NO.getCode()));
} }
@ApiOperation("完结账单")
@PostMapping("finishBill")
public ResultData finishBill(@RequestBody WxBillAll wxBillAll) {
if(!billFinishHasWorkFlow(wxBillAll)) {
return new ResultData(ErrorCode.FLOW_FAIL.getCode(),"商户账单完结审批不存在工作流,不能提交审批。");
}
WxMerchantBUser buser = this.getLoginBUser();
Map<String,Object> map = new HashMap<String,Object>();
map.put("businessType", EnumFlowKey.BILL_FINISH.getCode());
//map.put("payMoney", wxBillAll.getNewPrice());
map.put("businessId", wxBillAll.getId());
map.put("payImg", wxBillAll.getPayImg());
List<Map> variablesList = new ArrayList<Map>();
Map billTypeMap = new HashMap<String,Object>();
billTypeMap.put("key","billType");
billTypeMap.put("value",wxBillAll.getBillTypeValue());
variablesList.add(billTypeMap);
Map billUpdateTypeMap = new HashMap<String,Object>();
billUpdateTypeMap.put("key","billUpdateType");
billUpdateTypeMap.put("value",EnumBillUpdateType.OTHER.getCode());
variablesList.add(billUpdateTypeMap);
Map oldPriceMap = new HashMap<String,Object>();
oldPriceMap.put("key","oldPrice");
oldPriceMap.put("value",wxBillAll.getOldPrice());
variablesList.add(oldPriceMap);
Map newPriceMap = new HashMap<String,Object>();
newPriceMap.put("key","newPrice");
newPriceMap.put("value",wxBillAll.getNewPrice());
variablesList.add(newPriceMap);
map.put("variables", variablesList);
map.put("phone", buser.getPhone());
wxFlowService.start(map, buser.getId(), buser.getName(), this.getTenantInfo());
return new ResultData();
}
private boolean billFinishHasWorkFlow(WxBillAll wxBillAll) {
WxFlowModel wxFlowModel = new WxFlowModel();
wxFlowModel.setFlowType(EnumFlowKey.BILL_FINISH.getCode());
wxFlowModel.updateTenantInfo(this.getTenantInfo());
List<WxFlowModel> flows = wxFlowService.getModelBybusiness(wxFlowModel);
if (null != flows && flows.size() > 0) {
return true;
}
return false;
}


} }

+ 3
- 0
mallinkService/src/main/java/com/iformall/domain/vo/WxBillAll.java Ver fichero

@@ -127,6 +127,9 @@ public class WxBillAll extends TenantEntity {
private Long oldPrice; private Long oldPrice;
@io.swagger.annotations.ApiModelProperty(value = "金额新值", name = "newPrice") @io.swagger.annotations.ApiModelProperty(value = "金额新值", name = "newPrice")
private Long newPrice; private Long newPrice;
@TableField(exist = false)
@io.swagger.annotations.ApiModelProperty(value = "B端上传的小票图片", name = "payImg")
private String payImg;


//滞纳金 //滞纳金
@TableField(exist = false) @TableField(exist = false)


+ 1
- 0
mallinkService/src/main/java/com/iformall/enums/EnumFlowKey.java Ver fichero

@@ -37,6 +37,7 @@ public enum EnumFlowKey {
NEW_RENT_POINT_CONTRACT_END(20, "多经点位商铺租金+物业合同终止"), NEW_RENT_POINT_CONTRACT_END(20, "多经点位商铺租金+物业合同终止"),


SETTLE(21,"结算单审批"), SETTLE(21,"结算单审批"),
BILL_FINISH(30,"商户账单完结审批"),
CASH_OUT(23,"商户提现审批") CASH_OUT(23,"商户提现审批")
; ;


+ 2
- 1
mallinkService/src/main/java/com/iformall/service/impl/WxFlowServiceImpl.java Ver fichero

@@ -320,7 +320,8 @@ public class WxFlowServiceImpl implements WxFlowService {
} }
wxPropertyContractMapper.updateApplyStatus(wxPropertyContract); wxPropertyContractMapper.updateApplyStatus(wxPropertyContract);
} }
} else if (EnumFlowKey.BILL.getCode().equals(flowType) || EnumFlowKey.NEW_BILL_CHANGE.getCode().equals(flowType)) {
} else if (EnumFlowKey.BILL.getCode().equals(flowType) || EnumFlowKey.NEW_BILL_CHANGE.getCode().equals(flowType)
|| EnumFlowKey.BILL_FINISH.getCode().equals(flowType)) {
Integer billType = getIngeter(getVariableByKey(variables, "billType")); Integer billType = getIngeter(getVariableByKey(variables, "billType"));
if(EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) { if(EnumRentContractAppStatus.FINISH.getCode().intValue() == applyStatus.intValue()) {
//账单审批 //账单审批


Cargando…
Cancelar
Guardar