|
|
@ -31,6 +31,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackage.AppDiscountpackageQuery; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackage.AppDiscountpackageVo; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackage.BaseDiscountpackagePageListVo; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackageapply.*; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackageapply.flow.GetNodeQuery; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackageapply.flow.GetNodeVo; |
|
|
@ -39,8 +40,15 @@ import com.yxt.anrui.base.api.basediscountpackagelist.AppDiscountpackagelistDeta |
|
|
|
import com.yxt.anrui.base.api.basediscountpackagelist.AppDiscountpackagelistDto; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackagelist.BaseDiscountpackagelist; |
|
|
|
import com.yxt.anrui.base.api.basediscountpackagelist.BaseDiscountpackagelistDto; |
|
|
|
import com.yxt.anrui.base.api.commoncontract.CommonContract; |
|
|
|
import com.yxt.anrui.base.api.commoncontract.CommonContractFeign; |
|
|
|
import com.yxt.anrui.base.api.flow.FlowTaskVo; |
|
|
|
import com.yxt.anrui.base.biz.basediscountpackagelist.BaseDiscountpackagelistService; |
|
|
|
import com.yxt.anrui.base.biz.commoncontract.CommonContractService; |
|
|
|
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandoverDto; |
|
|
|
import com.yxt.anrui.buscenter.api.busdiscountpackagehandover.BusDiscountpackageHandoverFeign; |
|
|
|
import com.yxt.anrui.buscenter.api.busdiscountpackagehandoverlist.BusDiscountpackageHandoverListDto; |
|
|
|
import com.yxt.anrui.buscenter.api.bussalesordervehicle.BusSalesOrderVehicleFeign; |
|
|
|
import com.yxt.anrui.flowable.api.flow.FlowableFeign; |
|
|
|
import com.yxt.anrui.flowable.api.flow.UpdateFlowFieldVo; |
|
|
|
import com.yxt.anrui.flowable.api.flowtask.FlowTaskFeign; |
|
|
@ -48,6 +56,7 @@ import com.yxt.anrui.flowable.api.utils.ProcDefEnum; |
|
|
|
import com.yxt.anrui.flowable.sqloperationsymbol.BusinessVariables; |
|
|
|
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; |
|
|
|
import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; |
|
|
|
import com.yxt.anrui.portal.api.sysuser.SysUser; |
|
|
|
import com.yxt.anrui.portal.api.sysuser.SysUserFeign; |
|
|
|
import com.yxt.anrui.portal.api.sysuser.SysUserVo; |
|
|
|
import org.apache.commons.lang3.StringUtils; |
|
|
@ -60,10 +69,8 @@ import com.yxt.common.core.vo.PagerVo; |
|
|
|
import org.springframework.beans.factory.annotation.Autowired; |
|
|
|
import org.springframework.stereotype.Service; |
|
|
|
|
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.List; |
|
|
|
import java.util.Map; |
|
|
|
import java.util.Optional; |
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.*; |
|
|
|
import java.util.stream.Collectors; |
|
|
|
|
|
|
|
/** |
|
|
@ -82,353 +89,459 @@ import java.util.stream.Collectors; |
|
|
|
@Service |
|
|
|
public class BaseDiscountpackageApplyService extends MybatisBaseService<BaseDiscountpackageApplyMapper, BaseDiscountpackageApply> { |
|
|
|
|
|
|
|
@Autowired |
|
|
|
private SysStaffOrgFeign sysStaffOrgFeign; |
|
|
|
@Autowired |
|
|
|
private BaseDiscountpackagelistService baseDiscountpackagelistService; |
|
|
|
@Autowired |
|
|
|
private FlowableFeign flowableFeign; |
|
|
|
@Autowired |
|
|
|
private SysUserFeign sysUserFeign; |
|
|
|
@Autowired |
|
|
|
private FlowTaskFeign flowTaskFeign; |
|
|
|
@Autowired |
|
|
|
private SysStaffOrgFeign sysStaffOrgFeign; |
|
|
|
@Autowired |
|
|
|
private BaseDiscountpackagelistService baseDiscountpackagelistService; |
|
|
|
@Autowired |
|
|
|
private FlowableFeign flowableFeign; |
|
|
|
@Autowired |
|
|
|
private SysUserFeign sysUserFeign; |
|
|
|
@Autowired |
|
|
|
private FlowTaskFeign flowTaskFeign; |
|
|
|
@Autowired |
|
|
|
private CommonContractService commonContractService; |
|
|
|
@Autowired |
|
|
|
private BusSalesOrderVehicleFeign busSalesOrderVehicleFeign; |
|
|
|
@Autowired |
|
|
|
private SysUserFeign userFeign; |
|
|
|
@Autowired |
|
|
|
private BusDiscountpackageHandoverFeign busDiscountpackageHandoverFeign; |
|
|
|
|
|
|
|
private QueryWrapper<BaseDiscountpackageApply> createQueryWrapper(BaseDiscountpackageApplyQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<BaseDiscountpackageApply> qw = new QueryWrapper<>(); |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
public PagerVo<BaseDiscountpackageApplyVo> listPageVo(PagerQuery<BaseDiscountpackageApplyQuery> pq) { |
|
|
|
BaseDiscountpackageApplyQuery query = pq.getParams(); |
|
|
|
QueryWrapper<BaseDiscountpackageApply> qw = new QueryWrapper<>(); |
|
|
|
private QueryWrapper<BaseDiscountpackageApply> createQueryWrapper(BaseDiscountpackageApplyQuery query) { |
|
|
|
// todo: 这里根据具体业务调整查询条件
|
|
|
|
// 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
|
|
|
|
QueryWrapper<BaseDiscountpackageApply> qw = new QueryWrapper<>(); |
|
|
|
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(query.getUserSid()).getData(); |
|
|
|
qw.eq("createOrgSid", orgSid); |
|
|
|
qw.eq("createBySid",query.getUserSid()); |
|
|
|
if (StringUtils.isNotBlank(query.getContractId())) { |
|
|
|
qw.like("contractId", query.getContractId()); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(query.getCustomerName())) { |
|
|
|
qw.like("customerName", query.getCustomerName()); |
|
|
|
} |
|
|
|
String createStartTime = query.getCreateStartTime(); |
|
|
|
String createEndTime = query.getCreateEndTime(); |
|
|
|
qw.apply(StringUtils.isNotEmpty(createStartTime), "date_format (applyDate,'%Y-%m-%d') >= date_format('" + createStartTime + "','%Y-%m-%d')"). |
|
|
|
apply(StringUtils.isNotEmpty(createEndTime), "date_format (applyDate,'%Y-%m-%d') <= date_format('" + createEndTime + "','%Y-%m-%d')" |
|
|
|
); |
|
|
|
return qw; |
|
|
|
} |
|
|
|
|
|
|
|
IPage<BaseDiscountpackageApply> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<BaseDiscountpackageApplyVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
PagerVo<BaseDiscountpackageApplyVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(BaseDiscountpackageApplyDto dto){ |
|
|
|
public PagerVo<BaseDiscountpackageApplyVo> listPageVo(PagerQuery<BaseDiscountpackageApplyQuery> pq) { |
|
|
|
BaseDiscountpackageApplyQuery query = pq.getParams(); |
|
|
|
QueryWrapper<BaseDiscountpackageApply> qw = createQueryWrapper(query); |
|
|
|
IPage<BaseDiscountpackageApply> page = PagerUtil.queryToPage(pq); |
|
|
|
IPage<BaseDiscountpackageApplyVo> pagging = baseMapper.selectPageVo(page, qw); |
|
|
|
List<BaseDiscountpackageApplyVo> records = pagging.getRecords(); |
|
|
|
if (null != records) { |
|
|
|
for (BaseDiscountpackageApplyVo applyVo : records) { |
|
|
|
applyVo.setShowHandleBtn(true); |
|
|
|
if (StringUtils.isNotBlank(applyVo.getNodeState())) { |
|
|
|
if (!("待提交".equals(applyVo.getNodeState()) || "销售专员申请".equals(applyVo.getNodeState()))) { |
|
|
|
applyVo.setShowHandleBtn(false); |
|
|
|
} |
|
|
|
} |
|
|
|
CommonContract contract = commonContractService.selectByNo(applyVo.getContractId()).getData(); |
|
|
|
if (null != contract) { |
|
|
|
if (StringUtils.isNotBlank(contract.getBusSid())) { |
|
|
|
applyVo.setSaleOrderSid(contract.getBusSid()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
PagerVo<BaseDiscountpackageApplyVo> p = PagerUtil.pageToVo(pagging, null); |
|
|
|
return p; |
|
|
|
} |
|
|
|
|
|
|
|
public void saveOrUpdateDto(BaseDiscountpackageApplyDto dto) { |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
this.insertByDto(dto); |
|
|
|
return; |
|
|
|
} |
|
|
|
this.updateByDto(dto); |
|
|
|
} |
|
|
|
|
|
|
|
public String insertByDto(BaseDiscountpackageApplyDto dto){ |
|
|
|
BaseDiscountpackageApply entity = new BaseDiscountpackageApply(); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
entity.setNodeState("待提交"); |
|
|
|
entity.setShowHandleBtn(true); |
|
|
|
baseMapper.insert(entity); |
|
|
|
return entity.getSid(); |
|
|
|
} |
|
|
|
|
|
|
|
public void updateByDto(BaseDiscountpackageApplyDto dto){ |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
return; |
|
|
|
} |
|
|
|
this.updateByDto(dto); |
|
|
|
} |
|
|
|
|
|
|
|
public String insertByDto(BaseDiscountpackageApplyDto dto) { |
|
|
|
BaseDiscountpackageApply entity = new BaseDiscountpackageApply(); |
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
entity.setNodeState("待提交"); |
|
|
|
entity.setShowHandleBtn(true); |
|
|
|
entity.setApplyDate(sdf.format(new Date())); |
|
|
|
int i = baseMapper.insert(entity); |
|
|
|
return entity.getSid(); |
|
|
|
} |
|
|
|
|
|
|
|
public void updateByDto(BaseDiscountpackageApplyDto dto) { |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
return; |
|
|
|
} |
|
|
|
BaseDiscountpackageApply entity = fetchBySid(dtoSid); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.updateById(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public BaseDiscountpackageApplyDetailsVo fetchDetailsVoBySid(String sid){ |
|
|
|
BaseDiscountpackageApply entity = fetchBySid(sid); |
|
|
|
BaseDiscountpackageApplyDetailsVo vo = new BaseDiscountpackageApplyDetailsVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
} |
|
|
|
BaseDiscountpackageApply entity = fetchBySid(dtoSid); |
|
|
|
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|
|
|
baseMapper.updateById(entity); |
|
|
|
} |
|
|
|
|
|
|
|
public IPage<AppDiscountpackageVo> getDiscountManageApplyList(PagerQuery<AppDiscountpackageQuery> pq) { |
|
|
|
IPage<AppDiscountpackageQuery> page = PagerUtil.queryToPage(pq); |
|
|
|
QueryWrapper<AppDiscountpackageVo> qw = new QueryWrapper<>(); |
|
|
|
AppDiscountpackageQuery params = pq.getParams(); |
|
|
|
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(params.getUserSid()).getData(); |
|
|
|
qw.eq("createOrgSid", orgSid); |
|
|
|
qw.eq("state",params.getType()); |
|
|
|
qw.eq("isDelete",0); |
|
|
|
if (StringUtils.isNotBlank(params.getNames())){ |
|
|
|
qw.and(wrapper -> wrapper.like("contractId", params.getNames()).or().like("customerName", params.getNames())); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(params.getDate())){ |
|
|
|
qw.like("applyDate",params.getDate()); |
|
|
|
} |
|
|
|
IPage<AppDiscountpackageVo> busOrderDiscountPageListVoIPage = baseMapper.getDiscountManageApplyList(page, qw); |
|
|
|
return busOrderDiscountPageListVoIPage; |
|
|
|
} |
|
|
|
public BaseDiscountpackageApplyDetailsVo fetchDetailsVoBySid(String sid) { |
|
|
|
BaseDiscountpackageApply entity = fetchBySid(sid); |
|
|
|
BaseDiscountpackageApplyDetailsVo vo = new BaseDiscountpackageApplyDetailsVo(); |
|
|
|
BeanUtil.copyProperties(entity, vo); |
|
|
|
//根据优惠包申请sid查询对应优惠包列表
|
|
|
|
List<BaseDiscountpackagelistDto> dtoList = baseDiscountpackagelistService.fetchDetailsByDiscountSid(sid); |
|
|
|
vo.setDiscountPackageList(dtoList); |
|
|
|
return vo; |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<String> saveDiscountPackageApplyInfo(AppDiscountpackageApplyDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
//根据用户sid获取staffSid
|
|
|
|
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); |
|
|
|
if (!userVoResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(userVoResultBean.getMsg()); |
|
|
|
} |
|
|
|
//根据staffSid获取用户的组织全路径
|
|
|
|
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); |
|
|
|
if (!staffOrgResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(staffOrgResultBean.getMsg()); |
|
|
|
} |
|
|
|
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
List<AppDiscountpackagelistDto> appDiscountpackagelists = dto.getDiscountPackageList(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
BaseDiscountpackageApplyDto baseDiscountpackageApplyDto = new BaseDiscountpackageApplyDto(); |
|
|
|
BeanUtil.copyProperties(dto,baseDiscountpackageApplyDto); |
|
|
|
baseDiscountpackageApplyDto.setOrgSidPath(orgSidPath); |
|
|
|
String sid = this.insertByDto(baseDiscountpackageApplyDto); |
|
|
|
for (AppDiscountpackagelistDto appDiscountpackagelist : appDiscountpackagelists) { |
|
|
|
BaseDiscountpackagelistDto baseDiscountpackagelist = new BaseDiscountpackagelistDto(); |
|
|
|
BeanUtil.copyProperties(appDiscountpackagelist, baseDiscountpackagelist); |
|
|
|
baseDiscountpackagelist.setDiscountSid(sid); |
|
|
|
baseDiscountpackagelistService.saveOrUpdateDto(baseDiscountpackagelist); |
|
|
|
} |
|
|
|
return rb.success().setMsg("添加成功").setData(sid); |
|
|
|
} |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(dtoSid); |
|
|
|
if (baseDiscountpackageApply == null){ |
|
|
|
return rb.setMsg("该优惠包申请不存在"); |
|
|
|
} |
|
|
|
baseDiscountpackagelistService.delByDiscountSid(dtoSid); |
|
|
|
BaseDiscountpackageApplyDto baseDiscountpackageApplyDto = new BaseDiscountpackageApplyDto(); |
|
|
|
BeanUtil.copyProperties(dto,baseDiscountpackageApplyDto); |
|
|
|
baseDiscountpackageApplyDto.setOrgSidPath(orgSidPath); |
|
|
|
this.updateByDto(baseDiscountpackageApplyDto); |
|
|
|
for (AppDiscountpackagelistDto appDiscountpackagelist : appDiscountpackagelists) { |
|
|
|
BaseDiscountpackagelistDto baseDiscountpackagelist = new BaseDiscountpackagelistDto(); |
|
|
|
BeanUtil.copyProperties(appDiscountpackagelist, baseDiscountpackagelist); |
|
|
|
baseDiscountpackagelist.setDiscountSid(dtoSid); |
|
|
|
baseDiscountpackagelistService.saveOrUpdateDto(baseDiscountpackagelist); |
|
|
|
} |
|
|
|
return rb.success().setMsg("修改成功").setData(dtoSid); |
|
|
|
} |
|
|
|
public IPage<AppDiscountpackageVo> getDiscountManageApplyList(PagerQuery<AppDiscountpackageQuery> pq) { |
|
|
|
IPage<AppDiscountpackageQuery> page = PagerUtil.queryToPage(pq); |
|
|
|
QueryWrapper<AppDiscountpackageVo> qw = new QueryWrapper<>(); |
|
|
|
AppDiscountpackageQuery params = pq.getParams(); |
|
|
|
String orgSid = sysStaffOrgFeign.getPathSidByUserSid(params.getUserSid()).getData(); |
|
|
|
qw.eq("createBySid",params.getUserSid()); |
|
|
|
qw.eq("createOrgSid", orgSid); |
|
|
|
// qw.eq("state", params.getType());
|
|
|
|
qw.eq("isDelete", 0); |
|
|
|
if (StringUtils.isNotBlank(params.getNames())) { |
|
|
|
qw.and(wrapper -> wrapper.like("contractId", params.getNames()).or().like("customerName", params.getNames())); |
|
|
|
} |
|
|
|
if (StringUtils.isNotBlank(params.getDate())) { |
|
|
|
qw.like("applyDate", params.getDate()); |
|
|
|
} |
|
|
|
IPage<AppDiscountpackageVo> busOrderDiscountPageListVoIPage = baseMapper.getDiscountManageApplyList(page, qw); |
|
|
|
return busOrderDiscountPageListVoIPage; |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<AppDiscountpackageApplyDetailsVo> getDiscountPackageApplyInfo(String sid) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
AppDiscountpackageApplyDetailsVo appDiscountpackageApplyDetailsVo = new AppDiscountpackageApplyDetailsVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(sid); |
|
|
|
BeanUtil.copyProperties(baseDiscountpackageApply,appDiscountpackageApplyDetailsVo); |
|
|
|
List<AppDiscountpackagelistDetailsVo> appDiscountpackagelistDetailsVos = baseDiscountpackagelistService.fetchByDiscountSid(sid); |
|
|
|
appDiscountpackageApplyDetailsVo.setAppDiscountpackagelists(appDiscountpackagelistDetailsVos); |
|
|
|
return rb.success().setData(appDiscountpackageApplyDetailsVo); |
|
|
|
} |
|
|
|
public ResultBean<String> saveDiscountPackageApplyInfo(AppDiscountpackageApplyDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
//根据用户sid获取staffSid
|
|
|
|
ResultBean<SysUserVo> userVoResultBean = sysUserFeign.fetchBySid(dto.getUserSid()); |
|
|
|
if (!userVoResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(userVoResultBean.getMsg()); |
|
|
|
} |
|
|
|
//根据staffSid获取用户的组织全路径
|
|
|
|
ResultBean<SysStaffOrg> staffOrgResultBean = sysStaffOrgFeign.getOrgByStaffSid(userVoResultBean.getData().getStaffSid()); |
|
|
|
if (!staffOrgResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(staffOrgResultBean.getMsg()); |
|
|
|
} |
|
|
|
String orgSidPath = staffOrgResultBean.getData().getOrgSidPath(); |
|
|
|
String dtoSid = dto.getSid(); |
|
|
|
List<AppDiscountpackagelistDto> appDiscountpackagelists = dto.getDiscountPackageList(); |
|
|
|
if (StringUtils.isBlank(dtoSid)) { |
|
|
|
BaseDiscountpackageApplyDto baseDiscountpackageApplyDto = new BaseDiscountpackageApplyDto(); |
|
|
|
BeanUtil.copyProperties(dto, baseDiscountpackageApplyDto); |
|
|
|
baseDiscountpackageApplyDto.setOrgSidPath(orgSidPath); |
|
|
|
baseDiscountpackageApplyDto.setCreateBySid(dto.getUserSid()); |
|
|
|
String sid = this.insertByDto(baseDiscountpackageApplyDto); |
|
|
|
for (AppDiscountpackagelistDto appDiscountpackagelist : appDiscountpackagelists) { |
|
|
|
BaseDiscountpackagelistDto baseDiscountpackagelist = new BaseDiscountpackagelistDto(); |
|
|
|
BeanUtil.copyProperties(appDiscountpackagelist, baseDiscountpackagelist); |
|
|
|
baseDiscountpackagelist.setDiscountSid(sid); |
|
|
|
baseDiscountpackagelistService.saveOrUpdateDto(baseDiscountpackagelist); |
|
|
|
} |
|
|
|
return rb.success().setMsg("添加成功").setData(sid); |
|
|
|
} |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(dtoSid); |
|
|
|
if (baseDiscountpackageApply == null) { |
|
|
|
return rb.setMsg("该优惠包申请不存在"); |
|
|
|
} |
|
|
|
baseDiscountpackagelistService.delByDiscountSid(dtoSid); |
|
|
|
BaseDiscountpackageApplyDto baseDiscountpackageApplyDto = new BaseDiscountpackageApplyDto(); |
|
|
|
BeanUtil.copyProperties(dto, baseDiscountpackageApplyDto); |
|
|
|
baseDiscountpackageApplyDto.setOrgSidPath(orgSidPath); |
|
|
|
this.updateByDto(baseDiscountpackageApplyDto); |
|
|
|
for (AppDiscountpackagelistDto appDiscountpackagelist : appDiscountpackagelists) { |
|
|
|
BaseDiscountpackagelistDto baseDiscountpackagelist = new BaseDiscountpackagelistDto(); |
|
|
|
BeanUtil.copyProperties(appDiscountpackagelist, baseDiscountpackagelist); |
|
|
|
baseDiscountpackagelist.setDiscountSid(dtoSid); |
|
|
|
baseDiscountpackagelistService.saveOrUpdateDto(baseDiscountpackagelist); |
|
|
|
} |
|
|
|
return rb.success().setMsg("修改成功").setData(dtoSid); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean submitRecordApplication(SubmitBaseDiscountpackageApplyDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(dto.getSid()); |
|
|
|
int r = submitBusinessData(dto, baseDiscountpackageApply); |
|
|
|
if (r == 3) { |
|
|
|
return rb.setMsg("该申请不存在"); |
|
|
|
} |
|
|
|
if (r == 0) { |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致"); |
|
|
|
} |
|
|
|
//新增修改保存
|
|
|
|
ResultBean<String> resultBean = saveDiscountPackageApplyInfo(dto); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
String businessSid = resultBean.getData(); |
|
|
|
//创建BusinessVariables实体对象
|
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
//流程中的参数赋值
|
|
|
|
Map<String, Object> variables = BeanUtil.beanToMap(dto); |
|
|
|
//若有网关,则赋值网关中判断的字段。
|
|
|
|
variables.put("businessSid", businessSid); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply1 = fetchBySid(businessSid); |
|
|
|
//用户的部门全路径sid
|
|
|
|
bv.setOrgSidPath(baseDiscountpackageApply1.getOrgSidPath()); |
|
|
|
//业务sid
|
|
|
|
bv.setBusinessSid(businessSid); |
|
|
|
//用户sid
|
|
|
|
bv.setUserSid(dto.getUserSid()); |
|
|
|
bv.setFormVariables(variables); |
|
|
|
//流程定义id
|
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
if (r == 1) { |
|
|
|
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); |
|
|
|
if (!voResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(voResultBean.getMsg()); |
|
|
|
} |
|
|
|
UpdateFlowFieldVo ufVo = voResultBean.getData(); |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(ufVo)); |
|
|
|
return voResultBean; |
|
|
|
} |
|
|
|
if (r == 2) { |
|
|
|
// ToDo:驳回到发起人后再次提交
|
|
|
|
if (StringUtils.isBlank(dto.getInstanceId())) { |
|
|
|
return rb.setMsg("参数错误:instanceId"); |
|
|
|
} |
|
|
|
bv.setTaskId(baseDiscountpackageApply.getTaskId()); |
|
|
|
bv.setTaskDefKey(baseDiscountpackageApply.getNodeSid()); |
|
|
|
bv.setComment("重新提交"); |
|
|
|
bv.setInstanceId(dto.getInstanceId()); |
|
|
|
return complete(bv); |
|
|
|
} |
|
|
|
return rb; |
|
|
|
} |
|
|
|
public ResultBean<AppDiscountpackageApplyDetailsVo> getDiscountPackageApplyInfo(String sid) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
AppDiscountpackageApplyDetailsVo appDiscountpackageApplyDetailsVo = new AppDiscountpackageApplyDetailsVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(sid); |
|
|
|
BeanUtil.copyProperties(baseDiscountpackageApply, appDiscountpackageApplyDetailsVo); |
|
|
|
List<AppDiscountpackagelistDetailsVo> appDiscountpackagelistDetailsVos = baseDiscountpackagelistService.fetchByDiscountSid(sid); |
|
|
|
appDiscountpackageApplyDetailsVo.setAppDiscountpackagelists(appDiscountpackagelistDetailsVos); |
|
|
|
return rb.success().setData(appDiscountpackageApplyDetailsVo); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 判断提交的流程是否被允许 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private synchronized int submitBusinessData(SubmitBaseDiscountpackageApplyDto dto, BaseDiscountpackageApply baseDiscountpackageApply) { |
|
|
|
int r = 0; |
|
|
|
if (StringUtils.isBlank(dto.getSid())) { |
|
|
|
r = 1; |
|
|
|
} else { |
|
|
|
if (baseDiscountpackageApply != null) { |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { |
|
|
|
//新提交
|
|
|
|
r = 1; |
|
|
|
} else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { |
|
|
|
//二次提交//只有数据一致的时候才能进行下一步
|
|
|
|
r = 2; |
|
|
|
} |
|
|
|
} else { |
|
|
|
r = 3; |
|
|
|
} |
|
|
|
/** |
|
|
|
* 优惠包提交申请 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
public ResultBean submitRecordApplication(SubmitBaseDiscountpackageApplyDto dto) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(dto.getSid()); |
|
|
|
int r = submitBusinessData(dto, baseDiscountpackageApply); |
|
|
|
if (r == 3) { |
|
|
|
return rb.setMsg("该申请不存在"); |
|
|
|
} |
|
|
|
if (r == 0) { |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致"); |
|
|
|
} |
|
|
|
//新增修改保存
|
|
|
|
ResultBean<String> resultBean = saveDiscountPackageApplyInfo(dto); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
String businessSid = resultBean.getData(); |
|
|
|
//创建BusinessVariables实体对象
|
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
//流程中的参数赋值
|
|
|
|
Map<String, Object> variables = BeanUtil.beanToMap(dto); |
|
|
|
Map<String, Object> appMap = new HashMap<>(); |
|
|
|
//若有网关,则赋值网关中判断的字段。
|
|
|
|
variables.put("businessSid", businessSid); |
|
|
|
appMap.put("businessSid", businessSid); |
|
|
|
variables.put("appMap", appMap); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply1 = fetchBySid(businessSid); |
|
|
|
//用户的部门全路径sid
|
|
|
|
bv.setOrgSidPath(baseDiscountpackageApply1.getOrgSidPath()); |
|
|
|
//业务sid
|
|
|
|
bv.setBusinessSid(businessSid); |
|
|
|
//用户sid
|
|
|
|
bv.setUserSid(dto.getUserSid()); |
|
|
|
bv.setFormVariables(variables); |
|
|
|
//流程定义id
|
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
if (r == 1) { |
|
|
|
ResultBean<UpdateFlowFieldVo> voResultBean = flowableFeign.startProcess(bv); |
|
|
|
if (!voResultBean.getSuccess()) { |
|
|
|
return rb.setMsg(voResultBean.getMsg()); |
|
|
|
} |
|
|
|
UpdateFlowFieldVo ufVo = voResultBean.getData(); |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(ufVo)); |
|
|
|
return voResultBean; |
|
|
|
} |
|
|
|
if (r == 2) { |
|
|
|
// ToDo:驳回到发起人后再次提交
|
|
|
|
if (StringUtils.isBlank(dto.getInstanceId())) { |
|
|
|
return rb.setMsg("参数错误:instanceId"); |
|
|
|
} |
|
|
|
bv.setTaskId(baseDiscountpackageApply.getTaskId()); |
|
|
|
bv.setTaskDefKey(baseDiscountpackageApply.getNodeSid()); |
|
|
|
bv.setComment("重新提交"); |
|
|
|
bv.setInstanceId(dto.getInstanceId()); |
|
|
|
return complete(bv); |
|
|
|
} |
|
|
|
return rb; |
|
|
|
} |
|
|
|
|
|
|
|
} |
|
|
|
return r; |
|
|
|
} |
|
|
|
/** |
|
|
|
* 判断提交的流程是否被允许 |
|
|
|
* |
|
|
|
* @param dto |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private synchronized int submitBusinessData(SubmitBaseDiscountpackageApplyDto dto, BaseDiscountpackageApply baseDiscountpackageApply) { |
|
|
|
int r = 0; |
|
|
|
if (StringUtils.isBlank(dto.getSid())) { |
|
|
|
r = 1; |
|
|
|
} else { |
|
|
|
if (baseDiscountpackageApply != null) { |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isBlank(businessTaskId) && StringUtils.isBlank(dto.getTaskId())) { |
|
|
|
//新提交
|
|
|
|
r = 1; |
|
|
|
} else if (StringUtils.isNotBlank(businessTaskId) && businessTaskId.equals(dto.getTaskId())) { |
|
|
|
//二次提交//只有数据一致的时候才能进行下一步
|
|
|
|
r = 2; |
|
|
|
} |
|
|
|
} else { |
|
|
|
r = 3; |
|
|
|
} |
|
|
|
} |
|
|
|
return r; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 更新流程相关的状态 |
|
|
|
* |
|
|
|
* @param map |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private int updateFlowFiled(Map<String, Object> map) { |
|
|
|
return baseMapper.updateFlowFiled(map); |
|
|
|
} |
|
|
|
/** |
|
|
|
* 更新流程相关的状态 |
|
|
|
* |
|
|
|
* @param map |
|
|
|
* @return |
|
|
|
*/ |
|
|
|
private int updateFlowFiled(Map<String, Object> map) { |
|
|
|
return baseMapper.updateFlowFiled(map); |
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public ResultBean complete(BusinessVariables bv) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
String businessSid = bv.getBusinessSid(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = this.fetchBySid(businessSid); |
|
|
|
if (bv.getTaskId().equals(baseDiscountpackageApply.getTaskId())) { |
|
|
|
bv.setOrgSidPath(baseDiscountpackageApply.getOrgSidPath()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { |
|
|
|
} |
|
|
|
return rb.success().setData(resultBean.getData()); |
|
|
|
} else { |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致"); |
|
|
|
} |
|
|
|
} |
|
|
|
public ResultBean complete(BusinessVariables bv) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
String businessSid = bv.getBusinessSid(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = this.fetchBySid(businessSid); |
|
|
|
if (bv.getTaskId().equals(baseDiscountpackageApply.getTaskId())) { |
|
|
|
bv.setOrgSidPath(baseDiscountpackageApply.getOrgSidPath()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.handleProsess(bv); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
if ("Event_end".equals(resultBean.getData().getTaskDefKey())) { |
|
|
|
//推送优惠包交接
|
|
|
|
BusDiscountpackageHandoverDto handoverDto = new BusDiscountpackageHandoverDto(); |
|
|
|
handoverDto.setBusSid(businessSid); |
|
|
|
//获取合同编号
|
|
|
|
String contractId = baseDiscountpackageApply.getContractId(); |
|
|
|
//根据合同编号获取销售订单sid
|
|
|
|
CommonContract contract = commonContractService.selectByNo(contractId).getData(); |
|
|
|
if (null != contract) { |
|
|
|
if (StringUtils.isNotBlank(contract.getBusSid())) { |
|
|
|
//销售订单sid
|
|
|
|
String busSid = contract.getBusSid(); |
|
|
|
//根据销售订单sid查询车架号
|
|
|
|
List<String> vinNos = busSalesOrderVehicleFeign.selectList(busSid).getData(); |
|
|
|
StringBuffer sb = new StringBuffer(); |
|
|
|
if (null != vinNos && vinNos.size() > 0) { |
|
|
|
for (String vinNo : vinNos) { |
|
|
|
sb.append(vinNo).append(","); |
|
|
|
} |
|
|
|
sb.delete(sb.length() - 1, sb.length()); |
|
|
|
handoverDto.setVinNo(sb.toString()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
handoverDto.setRecName(baseDiscountpackageApply.getApplyName()); |
|
|
|
handoverDto.setContractNo(contractId); |
|
|
|
handoverDto.setCustomerName(baseDiscountpackageApply.getCustomerName()); |
|
|
|
handoverDto.setCreateBySid(baseDiscountpackageApply.getCreateBySid()); |
|
|
|
handoverDto.setCreateOrgSid(baseDiscountpackageApply.getCreateOrgSid()); |
|
|
|
handoverDto.setRecUserSid(baseDiscountpackageApply.getCreateBySid()); |
|
|
|
handoverDto.setUseOrgSid(baseDiscountpackageApply.getUseOrgSid()); |
|
|
|
handoverDto.setCreateOrgName(baseDiscountpackageApply.getCreateOrgName()); |
|
|
|
handoverDto.setUseOrgName(baseDiscountpackageApply.getUseOrgName()); |
|
|
|
SysUser sysUser = userFeign.selectBySid(baseDiscountpackageApply.getCreateBySid()).getData(); |
|
|
|
if (null != sysUser) { |
|
|
|
if (StringUtils.isNotBlank(sysUser.getMobile())) { |
|
|
|
handoverDto.setRecPhone(sysUser.getMobile()); |
|
|
|
} |
|
|
|
} |
|
|
|
handoverDto.setVehCount(baseDiscountpackageApply.getNumber()); |
|
|
|
handoverDto.setVehModel(baseDiscountpackageApply.getModel()); |
|
|
|
//根据优惠包申请sid获取优惠包列表
|
|
|
|
List<BaseDiscountpackagelistDto> dtos = baseDiscountpackagelistService.fetchDetailsByDiscountSid(businessSid); |
|
|
|
List<BusDiscountpackageHandoverListDto> listDtos = new ArrayList<>(); |
|
|
|
if (null != dtos) { |
|
|
|
for (BaseDiscountpackagelistDto dto : dtos) { |
|
|
|
BusDiscountpackageHandoverListDto listDto = new BusDiscountpackageHandoverListDto(); |
|
|
|
BeanUtil.copyProperties(dto, listDto, "id", "sid"); |
|
|
|
listDto.setMainSid(handoverDto.getSid()); |
|
|
|
listDtos.add(listDto); |
|
|
|
} |
|
|
|
} |
|
|
|
handoverDto.setBusDiscountpackageHandoverLists(listDtos); |
|
|
|
busDiscountpackageHandoverFeign.save(handoverDto); |
|
|
|
} |
|
|
|
return rb.success().setData(resultBean.getData()); |
|
|
|
} else { |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean revokeProcess(FlowTaskVo flowTaskVo) { |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = this.fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
String businessTaskid = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (businessTaskid.equals(flowTaskVo.getTaskId())) { //只有数据一致的时候才能进行下一步
|
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return resultBean; |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
return resultBean; |
|
|
|
} else { |
|
|
|
return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!"); |
|
|
|
} |
|
|
|
} |
|
|
|
public ResultBean revokeProcess(FlowTaskVo flowTaskVo) { |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = this.fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
String businessTaskid = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (businessTaskid.equals(flowTaskVo.getTaskId())) { //只有数据一致的时候才能进行下一步
|
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.revokeProcess(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return resultBean; |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
return resultBean; |
|
|
|
} else { |
|
|
|
return ResultBean.fireFail().setMsg("操作失败,提交的数据不一致!"); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean taskReject(FlowTaskVo flowTaskVo) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
if (baseDiscountpackageApply == null) { |
|
|
|
return rb.setMsg("该申请不存在"); |
|
|
|
} |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isNotBlank(businessTaskId)) { |
|
|
|
if (businessTaskId.equals(flowTaskVo.getTaskId())) { |
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); |
|
|
|
//更新业务中的流程相关的参数
|
|
|
|
updateFlowFiled(map); |
|
|
|
return rb.success(); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致!"); |
|
|
|
} |
|
|
|
public ResultBean taskReject(FlowTaskVo flowTaskVo) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
if (baseDiscountpackageApply == null) { |
|
|
|
return rb.setMsg("该申请不存在"); |
|
|
|
} |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isNotBlank(businessTaskId)) { |
|
|
|
if (businessTaskId.equals(flowTaskVo.getTaskId())) { |
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.taskReject(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
Map<String, Object> map = BeanUtil.beanToMap(resultBean.getData()); |
|
|
|
//更新业务中的流程相关的参数
|
|
|
|
updateFlowFiled(map); |
|
|
|
return rb.success(); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致!"); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean breakProcess(FlowTaskVo flowTaskVo) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
if (StringUtils.isBlank(flowTaskVo.getInstanceId())) { |
|
|
|
return rb.setMsg("参数错误:instanceId"); |
|
|
|
} |
|
|
|
if (StringUtils.isBlank(flowTaskVo.getUserSid())) { |
|
|
|
return rb.setMsg("参数错误:userSid"); |
|
|
|
} |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isNotBlank(businessTaskId)) { |
|
|
|
if (businessTaskId.equals(flowTaskVo.getTaskId())) { |
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
return rb.success().setData(resultBean.getData()); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致!"); |
|
|
|
} |
|
|
|
public ResultBean breakProcess(FlowTaskVo flowTaskVo) { |
|
|
|
ResultBean rb = ResultBean.fireFail(); |
|
|
|
com.yxt.anrui.flowable.api.flowtask.FlowTaskVo fl = new com.yxt.anrui.flowable.api.flowtask.FlowTaskVo(); |
|
|
|
if (StringUtils.isBlank(flowTaskVo.getInstanceId())) { |
|
|
|
return rb.setMsg("参数错误:instanceId"); |
|
|
|
} |
|
|
|
if (StringUtils.isBlank(flowTaskVo.getUserSid())) { |
|
|
|
return rb.setMsg("参数错误:userSid"); |
|
|
|
} |
|
|
|
BaseDiscountpackageApply baseDiscountpackageApply = fetchBySid(flowTaskVo.getBusinessSid()); |
|
|
|
String businessTaskId = baseDiscountpackageApply.getTaskId(); |
|
|
|
if (StringUtils.isNotBlank(businessTaskId)) { |
|
|
|
if (businessTaskId.equals(flowTaskVo.getTaskId())) { |
|
|
|
BeanUtil.copyProperties(flowTaskVo, fl); |
|
|
|
fl.setBusinessSid(flowTaskVo.getBusinessSid()); |
|
|
|
fl.setUserSid(flowTaskVo.getUserSid()); |
|
|
|
ResultBean<UpdateFlowFieldVo> resultBean = flowableFeign.breakProcess(fl); |
|
|
|
if (!resultBean.getSuccess()) { |
|
|
|
return rb.setMsg(resultBean.getMsg()); |
|
|
|
} |
|
|
|
updateFlowFiled(BeanUtil.beanToMap(resultBean.getData())); |
|
|
|
return rb.success().setData(resultBean.getData()); |
|
|
|
} |
|
|
|
} |
|
|
|
return rb.setMsg("操作失败!提交的数据不一致!"); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean flowRecord(String procInsId) { |
|
|
|
return flowTaskFeign.businessFlowRecord(procInsId); |
|
|
|
} |
|
|
|
public ResultBean flowRecord(String procInsId) { |
|
|
|
return flowTaskFeign.businessFlowRecord(procInsId); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) { |
|
|
|
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail(); |
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
BeanUtil.copyProperties(query, bv); |
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); |
|
|
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|
|
|
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); |
|
|
|
public ResultBean<List<GetNodeVo>> getNextNodesForSubmit(GetNodeQuery query) { |
|
|
|
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail(); |
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
BeanUtil.copyProperties(query, bv); |
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getNextNodesForSubmit(bv); |
|
|
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|
|
|
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); |
|
|
|
// List<GetNodeVo> voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
|
|
|
|
return rb.success().setData(voList); |
|
|
|
} |
|
|
|
return rb.success().setData(voList); |
|
|
|
} |
|
|
|
|
|
|
|
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNodeQuery query) { |
|
|
|
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail(); |
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
BeanUtil.copyProperties(query, bv); |
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); |
|
|
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|
|
|
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); |
|
|
|
public ResultBean<List<GetNodeVo>> getPreviousNodesForReject(GetNodeQuery query) { |
|
|
|
ResultBean<List<GetNodeVo>> rb = ResultBean.fireFail(); |
|
|
|
BusinessVariables bv = new BusinessVariables(); |
|
|
|
BeanUtil.copyProperties(query, bv); |
|
|
|
bv.setModelId(ProcDefEnum.BASEDISPACKAGEAPPLY.getProDefId()); |
|
|
|
ResultBean<List<Map<String, Object>>> resultBean = flowTaskFeign.getPreviousNodesForReject(bv); |
|
|
|
//判断数组是否为空,若为空则赋值,若不为空,则遍历循环将map中的数据赋值给getNodeVo
|
|
|
|
List<GetNodeVo> voList = Optional.ofNullable(resultBean.getData()).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList()); |
|
|
|
// List<GetNodeVo> voList = resultBean.getData().stream().map(m -> JSON.parseObject(JSON.toJSONString(m), GetNodeVo.class)).collect(Collectors.toList());
|
|
|
|
return rb.success().setData(voList); |
|
|
|
} |
|
|
|
return rb.success().setData(voList); |
|
|
|
} |
|
|
|
} |