package com.fjhx.purchase.flow; import cn.hutool.extra.spring.SpringUtil; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.fjhx.flow.core.FlowDelegate; import com.fjhx.purchase.entity.subscribe.po.Subscribe; import com.fjhx.purchase.entity.subscribe.po.SubscribeDetail; import com.fjhx.purchase.service.subscribe.SubscribeDetailService; import com.fjhx.purchase.service.subscribe.SubscribeService; import com.fjhx.purchase.util.code.CodeEnum; import com.ruoyi.common.utils.spring.SpringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.List; /** * @Author:caozj * @DATE:2023/4/3 17:38 */ @Component public class SubscribeFlow extends FlowDelegate { @Override public String getFlowKey() { return "subscribe_flow"; } @Override public Long start(Long flowId, JSONObject submitData) { SubscribeService subscribeService = SpringUtil.getBean(SubscribeService.class); SubscribeDetailService subscribeDetailService = SpringUtil.getBean(SubscribeDetailService.class); Subscribe subscribe = submitData.toJavaObject(Subscribe.class); subscribe.setCode(CodeEnum.SUBSCRIBE.getCode()); subscribeService.save(subscribe); List SubscribeDetails = subscribe.getSubscribeDetailList(); if(CollectionUtils.isNotEmpty(SubscribeDetails)){ for(SubscribeDetail s : SubscribeDetails){ s.setSubscribeId(subscribe.getId()); } subscribeDetailService.saveBatch(subscribe.getSubscribeDetailList()); } return subscribe.getId(); } @Override public void end(Long aLong, Long aLong1, JSONObject jsonObject) { } }