|
|
@@ -25,6 +25,7 @@ import org.apache.poi.ss.usermodel.Row;
|
|
|
import org.apache.poi.ss.usermodel.Sheet;
|
|
|
import org.apache.poi.ss.usermodel.Workbook;
|
|
|
import org.apache.poi.ss.util.CellRangeAddress;
|
|
|
+import org.apache.poi.util.StringUtil;
|
|
|
import org.apache.poi.xssf.usermodel.XSSFCell;
|
|
|
import org.apache.poi.xssf.usermodel.XSSFCellStyle;
|
|
|
import org.apache.poi.xssf.usermodel.XSSFRow;
|
|
|
@@ -61,6 +62,7 @@ import com.goafanti.order.bo.OrderReportBo;
|
|
|
import com.goafanti.order.bo.ReceivablesListBo;
|
|
|
import com.goafanti.order.bo.TOrderBonusBo;
|
|
|
import com.goafanti.order.bo.TOrderInvoiceBo;
|
|
|
+import com.goafanti.order.bo.TOrderNewBo;
|
|
|
import com.goafanti.order.bo.TemporaryReceivablesBo;
|
|
|
import com.goafanti.order.enums.ApprovalNewState;
|
|
|
import com.goafanti.order.enums.BonusSubject;
|
|
|
@@ -68,6 +70,7 @@ import com.goafanti.order.enums.LiquidationNewState;
|
|
|
import com.goafanti.order.enums.OrderNewState;
|
|
|
import com.goafanti.order.enums.ProcessStatus;
|
|
|
import com.goafanti.order.enums.ProjectNewStage;
|
|
|
+import com.goafanti.order.enums.ReceivablesStatus;
|
|
|
import com.goafanti.order.enums.TransactionSubject;
|
|
|
import com.goafanti.order.service.FundManageOrderService;
|
|
|
import com.goafanti.order.service.OrderBillService;
|
|
|
@@ -116,6 +119,7 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
@Override
|
|
|
public int updateReceivables(TemporaryReceivablesBo t) {
|
|
|
t.setOrderNo(t.getOrderNo().trim());
|
|
|
+ t.setStatus(ReceivablesStatus.ZC.getCode());
|
|
|
if(t.getReceivablesTimes()!=null) {
|
|
|
try {
|
|
|
t.setReceivablesTime(DateUtils.StringToDate(t.getReceivablesTimes(), AFTConstants.YYYYMMDD));
|
|
|
@@ -148,13 +152,18 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
//获取已收款
|
|
|
BigDecimal bill = tOrderBillNewMapper.getAmountByOid(tr.getOrderNo());
|
|
|
//获取总金额
|
|
|
- TOrderNew t=tOrderNewMapper.selectByPrimaryKey(tr.getOrderNo());
|
|
|
- //如果订单不是自己的则也不允许收款
|
|
|
- if(t==null||t.getOrderNo()==null||!t.getFinanceId().equals(TokenManager.getAdminId())) {
|
|
|
- tr.setStatus(2);
|
|
|
+ TOrderNewBo t=tOrderNewMapper.getOrderNewDetail(tr.getOrderNo());
|
|
|
+ //订单匹配不到
|
|
|
+ if(t==null||t.getOrderNo()==null) {
|
|
|
+ tr.setStatus(ReceivablesStatus.DCYC.getCode());
|
|
|
+ temporaryReceivablesMapper.updateByPrimaryKeySelective(tr);
|
|
|
+ continue;
|
|
|
+ }else if(!tr.getCorporateName().equals(t.getUserName())) {
|
|
|
+ tr.setStatus(ReceivablesStatus.MCYC.getCode());
|
|
|
temporaryReceivablesMapper.updateByPrimaryKeySelective(tr);
|
|
|
continue;
|
|
|
}
|
|
|
+
|
|
|
//计算收款结果
|
|
|
BigDecimal bd = bill.add(tr.getAmount().abs());
|
|
|
|
|
|
@@ -172,7 +181,7 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
bonus.setGrantBy(TokenManager.getAdminId());
|
|
|
int lstaus = 0;//如果订单流水小于首付 lstaus 0
|
|
|
if(count.compareTo(t.getTotalAmount()) == 1){//如果订单流水总额大于总金额 return -1
|
|
|
- tr.setStatus(2);
|
|
|
+ tr.setStatus(ReceivablesStatus.JEYC.getCode());
|
|
|
temporaryReceivablesMapper.updateByPrimaryKeySelective(tr);
|
|
|
continue;
|
|
|
}else if (count.compareTo(t.getTotalAmount()) == 0) {//等于总额
|
|
|
@@ -247,12 +256,6 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
//这里的已收金额是以前收的所有金额加上本次收的金额
|
|
|
orderNew.setSettlementAmount(count);
|
|
|
orderNew.setLiquidationStatus(lstaus);
|
|
|
- if((lstaus == LiquidationNewState.WAIT_PAY_LAST_BALANCE.getCode()
|
|
|
- || lstaus == LiquidationNewState.ALREADY_PAY.getCode())
|
|
|
- && t.getProcessStatus() < ProcessStatus.YPZXSGLY.getCode()){
|
|
|
- //流程状态是3,结算是付款的话
|
|
|
- orderNew.setProcessStatus(ProcessStatus.YPZXSGLY.getCode());//4
|
|
|
- }
|
|
|
tOrderNewMapper.updateByPrimaryKeySelective(orderNew);
|
|
|
//如果达到奖金发放要求新增奖金信息
|
|
|
if(null != bonus.getBonusSubject()){
|
|
|
@@ -271,7 +274,6 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
}else {
|
|
|
return -1;
|
|
|
}
|
|
|
-
|
|
|
LoggerUtils.debug(getClass(), "=========================批量导入结束===================");
|
|
|
return 1;
|
|
|
}
|
|
|
@@ -300,6 +302,22 @@ public class OrderReceivablesServiceImpl extends BaseMybatisDao<TemporaryReceiva
|
|
|
if(null!=status)parameter.put("status", status);
|
|
|
if(StringUtils.isNotBlank(TokenManager.getAdminId()))parameter.put("aid", TokenManager.getAdminId());
|
|
|
Pagination<ReceivablesListBo> p=(Pagination<ReceivablesListBo>) findPage("selectReceivablesList", "selectReceivablesCount", parameter, pageNo, pageSize);
|
|
|
+ List<ReceivablesListBo> list=(List<ReceivablesListBo>) p.getList();
|
|
|
+
|
|
|
+ for (ReceivablesListBo r : list) {
|
|
|
+ //设置导入信息数据是否有问题判断
|
|
|
+ // InptStatus 0 正常 1内容不完整 2订单未能匹配 3名称不匹配
|
|
|
+ if (StringUtils.isBlank(r.getAmount())||StringUtils.isBlank(r.getOrderNo())
|
|
|
+ ||StringUtils.isBlank(r.getCorporateName())||r.getReceivablesTimes()==null) {
|
|
|
+ r.setInptStatus(1);
|
|
|
+ }else if(r.getTotalAmount()==null) {
|
|
|
+ r.setInptStatus(2);
|
|
|
+ }else if(!r.getCorporateName().equals(r.getNickname())) {
|
|
|
+ r.setInptStatus(3);
|
|
|
+ }else {
|
|
|
+ r.setInptStatus(0);
|
|
|
+ }
|
|
|
+ }
|
|
|
return p;
|
|
|
}
|
|
|
|