|
|
@ -26,9 +26,11 @@ |
|
|
|
package com.yxt.anrui.scm.biz.scmspecialrebatedistribute; |
|
|
|
|
|
|
|
import cn.hutool.core.bean.BeanUtil; |
|
|
|
import cn.hutool.core.date.DateUtil; |
|
|
|
import com.alibaba.fastjson.JSON; |
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.yxt.anrui.base.common.utils.Rule; |
|
|
|
import com.yxt.anrui.flowable.api.flow.FlowableFeign; |
|
|
|
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; |
|
|
|
import com.yxt.anrui.flowable.api.flow2.FlowDelegateQuery; |
|
|
@ -36,6 +38,8 @@ import com.yxt.anrui.flowable.api.flow2.FlowFeign; |
|
|
|
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; |
|
|
|
import com.yxt.anrui.flowable.api.utils.ProcDefEnum; |
|
|
|
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; |
|
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationFeign; |
|
|
|
import com.yxt.anrui.portal.api.sysorganization.SysOrganizationVo; |
|
|
|
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; |
|
|
|
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; |
|
|
|
import com.yxt.anrui.portal.api.sysuser.PrivilegeQuery; |
|
|
@ -103,6 +107,8 @@ public class ScmSpecialrebatedistributeService extends MybatisBaseService<ScmSpe |
|
|
|
private FlowFeign flowFeign; |
|
|
|
@Autowired |
|
|
|
private ScmSpecialRebateService scmSpecialRebateService; |
|
|
|
@Autowired |
|
|
|
private SysOrganizationFeign sysOrganizationFeign; |
|
|
|
|
|
|
|
public PagerVo<ScmSpecialrebatedistributeVo> listPageVo(PagerQuery<ScmSpecialrebatedistributeQuery> pq) { |
|
|
|
ScmSpecialrebatedistributeQuery query = pq.getParams(); |
|
|
@ -147,20 +153,31 @@ public class ScmSpecialrebatedistributeService extends MybatisBaseService<ScmSpe |
|
|
|
return p; |
|
|
|
} |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getTitle())) { |
|
|
|
qw.like("sp.title", query.getTitle()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getCreateOrgName())) { |
|
|
|
qw.like("sp.createOrgName", query.getCreateOrgName()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getPurchaseSystemName())) { |
|
|
|
qw.like("sp.purchaseSystemName", query.getPurchaseSystemName()); |
|
|
|
if (StringUtils.isNotBlank(query.getDeptName())) { |
|
|
|
qw.like("sp.deptName", query.getDeptName()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getCreateByName())) { |
|
|
|
qw.like("sp.createByName", query.getCreateByName()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getBillNo())) { |
|
|
|
qw.like("sp.billNo", query.getBillNo()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getTitle())) { |
|
|
|
qw.like("sp.title", query.getTitle()); |
|
|
|
} |
|
|
|
String createStartTime = query.getCreateStartTime(); |
|
|
|
String createEndTime = query.getCreateEndTime(); |
|
|
|
qw.apply(StringUtils.isNotBlank(createStartTime), "date_format (sp.createTime,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). |
|
|
|
apply(StringUtils.isNotBlank(createEndTime), "date_format (sp.createTime,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" |
|
|
|
); |
|
|
|
String finishTimeStart = query.getFinishTimeStart(); |
|
|
|
String finishTimeEnd = query.getFinishTimeEnd(); |
|
|
|
qw.apply(StringUtils.isNotEmpty(finishTimeStart), "date_format (sp.finishTime,'%Y-%m-%d') >= date_format('" + finishTimeStart + "','%Y-%m-%d')"). |
|
|
|
apply(StringUtils.isNotEmpty(finishTimeEnd), "date_format (sp.finishTime,'%Y-%m-%d') <= date_format('" + finishTimeEnd + "','%Y-%m-%d')" |
|
|
|
); |
|
|
|
qw.groupBy("sp.sid"); |
|
|
|
IPage<ScmSpecialrebatedistribute> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<ScmSpecialrebatedistributeVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
@ -173,6 +190,18 @@ public class ScmSpecialrebatedistributeService extends MybatisBaseService<ScmSpe |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
List<ScmSpecialrebatedistributedetailDto> scmSpecialrebatedistributedetails = dto.getScmSpecialrebatedistributedetails(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
//生成单据编号
|
|
|
|
String billNo = ""; |
|
|
|
String date = DateUtil.format(DateUtil.date(), "yyyyMM"); |
|
|
|
SysOrganizationVo sysOrganizationVo = sysOrganizationFeign.fetchBySid(dto.getUseOrgSid()).getData(); |
|
|
|
billNo = "ZXFLFP" + sysOrganizationVo.getOrgCode() + date; |
|
|
|
String i = baseMapper.selectNum(billNo); |
|
|
|
if (StringUtils.isNotBlank(i)) { |
|
|
|
billNo = Rule.getBillNo(billNo, Integer.valueOf(i).intValue()); |
|
|
|
} else { |
|
|
|
billNo = Rule.getBillNo(billNo, 0); |
|
|
|
} |
|
|
|
dto.setBillNo(billNo); |
|
|
|
String sid = this.insertByDto(dto).getData(); |
|
|
|
for (ScmSpecialrebatedistributedetailDto scmSpecialrebatedistributedetail : scmSpecialrebatedistributedetails) { |
|
|
|
ScmSpecialrebatedistributedetail scmSpecialrebatedistributedetail1 = new ScmSpecialrebatedistributedetail(); |
|
|
|