package com.yuanchu.mom.service.impl; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.mom.dto.FactoryDto; import com.yuanchu.mom.dto.SampleTypeDto; import com.yuanchu.mom.mapper.StandardMethodListMapper; import com.yuanchu.mom.mapper.StandardProductListMapper; import com.yuanchu.mom.mapper.StandardTreeMapper; import com.yuanchu.mom.pojo.StandardProductList; import com.yuanchu.mom.pojo.StandardTree; import com.yuanchu.mom.service.StandardMethodListService; import com.yuanchu.mom.service.StandardProductListService; import com.yuanchu.mom.service.StandardTreeService; import lombok.AllArgsConstructor; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; import java.util.Map; /** * @author Administrator * @description 针对表【standard_tree(标准树)】的数据库操作Service实现 * @createDate 2024-03-01 15:06:44 */ @Service @AllArgsConstructor public class StandardTreeServiceImpl extends ServiceImpl implements StandardTreeService { private StandardTreeMapper standardTreeMapper; private StandardMethodListMapper standardMethodListMapper; private StandardMethodListService standardMethodListService; private StandardProductListMapper standardProductListMapper; private StandardProductListService standardProductListService; @Override public List selectStandardTreeList() { return standardTreeMapper.selectStandardTreeList(); } @Override @Transactional(rollbackFor = Exception.class) public int addStandardTree(StandardTree standardTree) { return standardTreeMapper.insert(standardTree); } @Override @Transactional(rollbackFor = Exception.class) public int delStandardTree(String tree) { String[] trees = tree.split(" - "); switch (trees.length) { case 5: standardTreeMapper.delete(Wrappers.lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3]).eq(StandardTree::getModel, trees[4])); break; /*case 4: standardTreeMapper.delete(Wrappers.lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2]).eq(StandardTree::getSample, trees[3])); break; case 3: standardTreeMapper.delete(Wrappers.lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1]).eq(StandardTree::getSampleType, trees[2])); break; case 2: standardTreeMapper.delete(Wrappers.lambdaUpdate().eq(StandardTree::getFactory, trees[0]).eq(StandardTree::getLaboratory, trees[1])); break; case 1: standardTreeMapper.delete(Wrappers.lambdaUpdate().eq(StandardTree::getFactory, trees[0])); break;*/ } return 1; } @Override @Transactional(rollbackFor = Exception.class) public int addStandardProduct(String ids, String tree) { String[] trees = tree.split(" - "); JSONArray jsonArray = JSON.parseArray(ids); for (Object o : jsonArray) { StandardProductList standardProductList = standardTreeMapper.selectStandardProductById(Integer.parseInt("" + o)); standardProductList.setFactory(trees[0]); try { standardProductList.setLaboratory(trees[1]); } catch (Exception e) { } try { standardProductList.setSampleType(trees[2]); } catch (Exception e) { } try { standardProductList.setSample(trees[3]); } catch (Exception e) { } try { standardProductList.setModel(trees[4]); } catch (Exception e) { } standardProductListMapper.insert(standardProductList); } return 1; } @Override public List getStandardTree2() { return standardTreeMapper.getStandardTree2(); } @Override @Transactional(rollbackFor = Exception.class) public int upStandardProducts(Map product) { List ids = JSON.parseArray(JSON.toJSONString(product.get("ids"))); StandardProductList productList = JSON.parseObject(JSON.toJSONString(product.get("standardProductList")), StandardProductList.class); standardProductListMapper.update(productList, Wrappers.lambdaUpdate().in(StandardProductList::getId, ids)); return 1; } }