whycxzp
2021-07-26 8c189b243bfbbacb2ab1ce79f4e1ff22708f125a
src/main/java/com/whyc/service/WindingExperimentService.java
@@ -13,9 +13,11 @@
import org.springframework.transaction.TransactionStatus;
import javax.annotation.Resource;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.UUID;
@Service
public class WindingExperimentService {
@@ -69,6 +71,7 @@
        Boolean flag = true;
        if (list != null) {
            Experiment experiment = null;
            String realName;
            try {
                ExperimentWindingStep1 step1 = list.get(0);
                QueryWrapper<Experiment> wrapper = new QueryWrapper<>();
@@ -76,41 +79,48 @@
                experiment = mapper.selectOne(wrapper);
                if (experiment == null) {
                    return new Response().setMsg(0, "添加失败,试验编号不存在");
                }else {
                    System.out.println("wrapper = " + wrapper);
                } else {
//                    System.out.println("wrapper = " + wrapper);
                }
                realName = mapper1.getRealName(step1.getExperimentId());
                if (realName == null) {
                    return new Response().setMsg(0, "添加失败,uid未查询到对应试验人");
                }
//                System.out.println("realName = " + realName);
            } catch (Exception e) {
                e.printStackTrace();
                return new Response().setMsg(0, "添加失败");
            }
            for (int i = 0; i < list.size(); i++) {
                ExperimentWindingStep1 experimentWindingStep1 = list.get(i);
                experimentWindingStep1.setSaveTime(new Date());
                experimentWindingStep1.setDeviceId(experiment.getDeviceId());//存设备类型
                list.set(i, experimentWindingStep1);
            }
        }
        TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
        try {
            for (int i = 0; i < list.size(); i++) {
                ExperimentWindingStep1 windingStep1 = list.get(i);
                if (mapper1.insert(windingStep1) > 0) {
                    flag = true;
                } else {
                    flag = false;
            TransactionStatus transactionStatus = dataSourceTransactionManager.getTransaction(transactionDefinition);
            try {
                for (int i = 0; i < list.size(); i++) {
                    ExperimentWindingStep1 windingStep1 = list.get(i);
                    windingStep1.setUuid("rz"+new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()));
                    windingStep1.setSaveTime(new Date());
                    windingStep1.setDeviceId(experiment.getDeviceId());//存设备类型
                    windingStep1.setRealName(realName);       //测试人
                    windingStep1.setStatus(1);                //状态:0-未开始,1-进行中,2-已完成
                    windingStep1.setRzLink(experiment.getRzLink());   //各相绕组连接情况 0 引出; 1 内部连接
                    if (mapper1.insert(windingStep1) > 0) {
                        flag = true;
                    } else {
                        flag = false;
                    }
                }
            } catch (Exception e) {
                e.printStackTrace();
                dataSourceTransactionManager.rollback(transactionStatus);       //事务回滚
                return new Response().setMsg(0, "添加失败");
            }
        } catch (Exception e) {
            e.printStackTrace();
            dataSourceTransactionManager.rollback(transactionStatus);       //事务回滚
            return new Response().setMsg(0, "添加失败");
        }
        if (flag) {
            dataSourceTransactionManager.commit(transactionStatus);
            return new Response().setMsg(1, "添加成功");
        } else {
            dataSourceTransactionManager.rollback(transactionStatus);
            if (flag) {
                dataSourceTransactionManager.commit(transactionStatus);
                return new Response().setMsg(1, "添加成功");
            } else {
                dataSourceTransactionManager.rollback(transactionStatus);
                return new Response().setMsg(0, "添加失败");
            }
        }else {
            return new Response().setMsg(0, "添加失败");
        }
@@ -168,11 +178,20 @@
    }
    public Response delExperimentWindingbyId(String experimentId) {
    public Response delExperimentWindingbyId(String experimentId,String uuid) {
        QueryWrapper<ExperimentWindingStep1> wrapper = new QueryWrapper<>();
        wrapper.eq("experiment_id",experimentId);
        wrapper.eq("uuid",uuid);
        List<ExperimentWindingStep1> list = mapper1.selectList(wrapper);
        if (list == null) {
//            System.out.println(" null ");
            return new Response().setMsg(0, "删除失败,请查检参数是否正确");
        }else {
//            System.out.println("list = " + list.size());
        }
        try {
            mapper.deleteById(experimentId);
            mapper1.delExperimentWindingbyId(experimentId);
            mapper1.delExperimentWindingbyUuid(experimentId,uuid);
        } catch (Exception e) {
            e.printStackTrace();
            return new Response().setMsg(0, "删除失败");
@@ -197,7 +216,7 @@
                try {
                    ExperimentWindingStep1 windingStep1 = windingStep1s.get(i);
                    windingStep1.setSaveTime(saveTime);
                    if (mapper1.updateByIdandIndex(windingStep1) > 0) {
                    if (mapper1.updateByUuidAndIndex(windingStep1) > 0) {
                        bl = true;
                    } else {
                        bl = false;
@@ -315,17 +334,19 @@
    /**
     * 实验数据 step参数 1 2 对应实验步骤1、2
     *
     *
     *
     * @param experimentId
     * @param rzLink
     * @param step
     * @param pageNum
     * @param pageSize
     * @return
     */
    public Response getExperimentWindingStep1(int step, int pageNum, int pageSize) {
    public Response getExperimentWindingStep1(String experimentId, int rzLink, int step, int pageNum, int pageSize) {
        PageHelper.startPage(pageNum, pageSize);
        QueryWrapper<ExperimentWindingStep1> wrapper = new QueryWrapper<>();
        wrapper.eq("step",step);
        List<ExperimentWindingStep1> list = mapper1.selectList(wrapper);
        List<ExperimentWindingStep1> list = mapper1.selectlistByCondition(experimentId,rzLink,step);
        PageInfo<ExperimentWindingStep1> pageInfo = new PageInfo<>(list);
        return new Response<PageInfo<ExperimentWindingStep1>>().set(1, pageInfo);
    }
@@ -385,6 +406,7 @@
            experiment.setId(id);
            experiment.setEndTime(new Date());
            mapper.updateFlag(experiment);
            mapper1.updateRzFlag(id);
        } catch (Exception e) {
            e.printStackTrace();
            response.setMsg(0,"更新失败");