qushaowei
2023-10-08 ad4306e56798dc68d7c07faacbdfcd2be47a402b
lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/PrecisionParametersTemplateController.java
@@ -15,18 +15,14 @@
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.common.system.query.QueryGenerator;
//import org.jeecg.modules.base.service.IUnitService;
import org.jeecg.modules.eam.entity.PrecisionParameters;
import org.jeecg.modules.eam.entity.PrecisionParametersTemplate;
import org.jeecg.modules.eam.entity.PrecisionParametersTemplateDetail;
import org.jeecg.modules.eam.service.IPrecisionParametersCategoryService;
import org.jeecg.modules.eam.service.IPrecisionParametersService;
import org.jeecg.modules.eam.service.IPrecisionParametersTemplateDetailService;
import org.jeecg.modules.eam.service.IPrecisionParametersTemplateService;
import org.jeecg.modules.eam.entity.*;
import org.jeecg.modules.eam.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @Description: 精度参数模板
@@ -48,8 +44,9 @@
    @Autowired
    private IPrecisionParametersCategoryService precisionParametersCategoryService;
    //   @Autowired
//   private IUnitService unitService;
    @Autowired
    private IEamEquipmentService equipmentService;
    @Autowired
    private IPrecisionParametersService precisionParametersService;
@@ -77,12 +74,29 @@
            List<PrecisionParametersTemplateDetail> precisionParametersTemplateDetailList = precisionParametersTemplateDetailService.lambdaQuery().eq(PrecisionParametersTemplateDetail::getPrecisionParametersTemplateId, record.getId()).eq(PrecisionParametersTemplateDetail::getDelFlag, CommonConstant.DEL_FLAG_0).list();
            for (PrecisionParametersTemplateDetail precisionParametersTemplateDetail : precisionParametersTemplateDetailList) {
                PrecisionParameters precisionParameters = precisionParametersService.getById(precisionParametersTemplateDetail.getPrecisionParametersId());
                precisionParametersTemplateDetail.setPrecisionParametersNum(precisionParameters.getNum());
                precisionParametersTemplateDetail.setPrecisionParametersName(precisionParameters.getName());
                precisionParametersTemplateDetail.setPrecisionParametersCategory(precisionParametersCategoryService.getById(precisionParameters.getPrecisionParametersCategoryId()).getName());
//            precisionParametersTemplateDetail.setUnit(unitService.getById(precisionParameters.getUnitId()).getName());
                String unitName = sysBaseApi.getUnitNameById(precisionParameters.getUnitId());
                precisionParametersTemplateDetail.setUnit(unitName);
                    if(precisionParameters != null){
                        String num = precisionParameters.getNum();
                        String name =precisionParameters.getName();
                        if (num!=null){
                            precisionParametersTemplateDetail.setPrecisionParametersNum(num);
                        }
                       if (name!=null){
                           precisionParametersTemplateDetail.setPrecisionParametersName(name);
                       }
                        String id = precisionParameters.getPrecisionParametersCategoryId();
                        if (id!=null){
                            PrecisionParametersCategory precisionParametersCategory = precisionParametersCategoryService.getById(id);
                            precisionParametersTemplateDetail.setPrecisionParametersCategory(precisionParametersCategory.getName());
                        }
                    }else{
                        precisionParametersTemplateDetail.setPrecisionParametersCategory("/");
                    }
                    if (precisionParameters!=null){
                        String unitName = sysBaseApi.getUnitNameById(precisionParameters.getUnitId());
                        precisionParametersTemplateDetail.setUnit(unitName);
                    }
            }
            record.setPrecisionParametersTemplateDetailList(precisionParametersTemplateDetailList);
@@ -157,5 +171,50 @@
        }
        return Result.OK("删除成功!");
    }
    /**
     * 添加
     *
     * @param precisionParametersTemplate
     * @return
     */
    @ApiOperation(value = "精度参数模板-添加", notes = "精度参数模板-添加")
    @PostMapping(value = "/addNew")
    public Result<?> addNew(@RequestBody PrecisionParametersTemplate precisionParametersTemplate) {
        precisionParametersTemplateService.save(precisionParametersTemplate);
        String id= precisionParametersTemplate.getId();
        List<PrecisionParametersTemplateDetail> details = precisionParametersTemplate.getPrecisionParametersTemplateDetailList();
        for(PrecisionParametersTemplateDetail precisionParametersTemplateDetail:details){
            precisionParametersTemplateDetail.setPrecisionParametersTemplateId(id);
        }
        precisionParametersTemplateDetailService.saveBatch(details);
        return Result.OK("添加成功");
    }
    /**
     * 添加
     *
     * @param precisionParametersTemplate
     * @return
     */
    @ApiOperation(value = "精度参数模板-添加", notes = "精度参数模板-添加")
    @PutMapping(value = "/editNew")
    public Result<?> editNew(@RequestBody PrecisionParametersTemplate precisionParametersTemplate) {
        precisionParametersTemplateService.saveOrUpdate(precisionParametersTemplate);
        String id= precisionParametersTemplate.getId();
        precisionParametersTemplateDetailService.remove(new QueryWrapper<PrecisionParametersTemplateDetail>().eq("precision_parameters_template_id",id));
        List<PrecisionParametersTemplateDetail> details = precisionParametersTemplate.getPrecisionParametersTemplateDetailList();
        precisionParametersTemplateDetailService.saveBatch(details);
        return Result.OK("操作 成功");
    }
    @GetMapping("/getNums")
    public Result<?> getNums(@RequestParam(name = "searchText", defaultValue = "") String  searchText){
        List<String> nums = equipmentService
                .list(new QueryWrapper<Equipment>()
                        .like("num",searchText)
                )
                .stream()
                .map(Equipment::getNum)
                .collect(Collectors.toList());
        return Result.OK(nums);
    }
}