| | |
| | | package org.jeecg.modules.base.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import io.swagger.annotations.ApiOperation; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.jeecg.common.api.vo.Result; |
| | | import org.jeecg.common.aspect.annotation.AutoLog; |
| | | import org.jeecg.common.system.base.controller.JeecgController; |
| | | import org.jeecg.common.system.query.QueryGenerator; |
| | | import org.jeecg.common.util.oConvertUtils; |
| | | import org.jeecg.modules.base.entity.Unit; |
| | | import org.jeecg.modules.base.entity.UnitConversion; |
| | | import org.jeecg.modules.base.service.IUnitConversionService; |
| | | import org.jeecg.modules.base.service.IUnitService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import org.springframework.web.servlet.ModelAndView; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.servlet.http.HttpServletRequest; |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import java.util.ArrayList; |
| | | import java.util.Arrays; |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | @RestController |
| | | @RequestMapping("/base/unit") |
| | | @Slf4j |
| | | public class UnitController { |
| | | public class UnitController extends JeecgController<Unit, IUnitService> { |
| | | |
| | | @Resource |
| | | private IUnitService momUnitService; |
| | | @Resource |
| | | private IUnitConversionService momUnitConversionService; |
| | | @Autowired |
| | | private IUnitService unitService; |
| | | |
| | | |
| | | /** |
| | | * 查询数据 根据单位分类id查询计量单位列表 |
| | | * @author cj |
| | | * @param unitCategoryId |
| | | * 分页列表查询 |
| | | * |
| | | * @param |
| | | * @param pageNo |
| | | * @param pageSize |
| | | * @param req |
| | | * @return |
| | | */ |
| | | @GetMapping(value="/getListByUnitCategoryId") |
| | | public Result<List<Unit>> getListByUnitCategoryId(String unitCategoryId){ |
| | | Result<List<Unit>> resule = new Result<>(); |
| | | List<Unit> list = momUnitService.getListByUnitCategoryId(unitCategoryId); |
| | | resule.setResult(list); |
| | | return resule; |
| | | } |
| | | /** |
| | | * 增加数据 添加和编辑计量单位信息 |
| | | * @author cj |
| | | * @param momUnit |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "/addMomUnit") |
| | | public Result<Unit> addMomUnit(@RequestBody Unit momUnit){ |
| | | Result<Unit> result = new Result<>(); |
| | | try{ |
| | | momUnit.setDelFlag("0"); |
| | | momUnitService.saveOrUpdate(momUnit); |
| | | result.success("操作成功"); |
| | | }catch (Exception e){ |
| | | result.error500("操作失败"); |
| | | } |
| | | return result; |
| | | |
| | | @ApiOperation(value = "计量单位-分页列表查询", notes = "计量单位-分页列表查询") |
| | | @GetMapping(value = "/list") |
| | | public Result<IPage<Unit>> queryPageList(Unit unit, |
| | | @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, |
| | | @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, |
| | | HttpServletRequest req) { |
| | | QueryWrapper<Unit> queryWrapper = QueryGenerator.initQueryWrapper(unit, req.getParameterMap()); |
| | | Page<Unit> page = new Page<Unit>(pageNo, pageSize); |
| | | IPage<Unit> pageList = unitService.page(page, queryWrapper); |
| | | return Result.OK(pageList); |
| | | } |
| | | |
| | | /** |
| | | * 删除数据 删除选中的计量单位信息 |
| | | * @author cj |
| | | * 添加 |
| | | * |
| | | * @param unit |
| | | * @return |
| | | */ |
| | | @AutoLog(value = "计量单位-添加") |
| | | @ApiOperation(value = "计量单位-添加", notes = "计量单位-添加") |
| | | |
| | | @PostMapping(value = "/add") |
| | | public Result<String> add(@RequestBody Unit unit) { |
| | | unitService.save(unit); |
| | | return Result.OK("添加成功!"); |
| | | } |
| | | |
| | | /** |
| | | * 编辑 |
| | | * |
| | | * @param unit |
| | | * @return |
| | | */ |
| | | @AutoLog(value = "计量单位-编辑") |
| | | @ApiOperation(value = "计量单位-编辑", notes = "计量单位-编辑") |
| | | @RequestMapping(value = "/edit", method = {RequestMethod.PUT, RequestMethod.POST}) |
| | | public Result<String> edit(@RequestBody Unit unit) { |
| | | unitService.updateById(unit); |
| | | return Result.OK("编辑成功!"); |
| | | } |
| | | |
| | | /** |
| | | * 通过id删除 |
| | | * |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @AutoLog(value = "计量单位-通过id删除") |
| | | @ApiOperation(value = "计量单位-通过id删除", notes = "计量单位-通过id删除") |
| | | @DeleteMapping(value = "/delete") |
| | | public Result<String> delete(@RequestParam(name = "id", required = true) String id) { |
| | | unitService.removeById(id); |
| | | return Result.OK("删除成功!"); |
| | | } |
| | | |
| | | /** |
| | | * 批量删除 |
| | | * |
| | | * @param ids |
| | | * @return |
| | | */ |
| | | @DeleteMapping(value = "/deleteMomUnit") |
| | | public Result<Unit> deleteMomUnit(@RequestParam String ids){ |
| | | Result<Unit> result = new Result<>(); |
| | | if(oConvertUtils.isEmpty(ids)) { |
| | | result.error500("未选中计量单位!"); |
| | | }else { |
| | | String[] ls = ids.split(","); |
| | | List<UnitConversion> list = new ArrayList<>(); |
| | | List<Long> idList = new ArrayList<>(); |
| | | List<String> nameList = new ArrayList<>(); |
| | | for (String id : ls) { |
| | | //根据id查询是否有换算信息 |
| | | LambdaQueryWrapper<UnitConversion> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.eq(UnitConversion::getUnitId,id); |
| | | list = momUnitConversionService.list(queryWrapper); |
| | | if(list.size()==0){ |
| | | idList.add(Long.parseLong(id) ); |
| | | }else{ |
| | | LambdaQueryWrapper<Unit> queryWrapper1 = new LambdaQueryWrapper<>(); |
| | | queryWrapper1.eq(Unit::getId,id); |
| | | nameList.add(momUnitService.getOne(queryWrapper1).getName()); |
| | | } |
| | | } |
| | | if (idList.size() > 0) { |
| | | momUnitService.removeByIds(idList); |
| | | if (ls.length == idList.size()) { |
| | | result.success("删除成功!"); |
| | | } else { |
| | | result.error500("部分删除成功!("+nameList+"中含有计量单位换算信息无法删除!)"); |
| | | } |
| | | }else { |
| | | result.error500("选择的计量单位都含有计量单位换算信息,无法删除!"); |
| | | } |
| | | } |
| | | return result; |
| | | @AutoLog(value = "计量单位-批量删除") |
| | | @ApiOperation(value = "计量单位-批量删除", notes = "计量单位-批量删除") |
| | | @DeleteMapping(value = "/deleteBatch") |
| | | public Result<String> deleteBatch(@RequestParam(name = "ids", required = true) String ids) { |
| | | List<String> stringList = Arrays.asList(ids.split(",")); |
| | | unitService.removeBatchByIds(stringList); |
| | | return Result.OK("批量删除成功!"); |
| | | } |
| | | |
| | | /** |
| | | * 查询目标计量单位树结构 |
| | | * @author cj |
| | | * 通过id查询 |
| | | * |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping(value = "/getTreeList") |
| | | public Result<List<Unit>> getTreeList(){ |
| | | Result<List<Unit>> result = new Result<>(); |
| | | List<Unit> list = momUnitService.getTreeList(); |
| | | result.setResult(list); |
| | | return result; |
| | | //@AutoLog(value = "精度参数-通过id查询") |
| | | @ApiOperation(value = "计量单位-通过id查询", notes = "计量单位-通过id查询") |
| | | @GetMapping(value = "/queryById") |
| | | public Result<Unit> queryById(@RequestParam(name = "id", required = true) String id) { |
| | | Unit unit = unitService.getById(id); |
| | | if (unit == null) { |
| | | return Result.error("未找到对应数据"); |
| | | } |
| | | return Result.OK(unit); |
| | | } |
| | | |
| | | /** |
| | | * 导出excel |
| | | * |
| | | * @param request |
| | | * @param unit |
| | | */ |
| | | |
| | | @RequestMapping(value = "/exportXls") |
| | | public ModelAndView exportXls(HttpServletRequest request, Unit unit) { |
| | | return super.exportXls(request, unit, Unit.class, "计量单位"); |
| | | } |
| | | |
| | | /** |
| | | * 通过excel导入数据 |
| | | * |
| | | * @param request |
| | | * @param response |
| | | * @return |
| | | */ |
| | | @RequestMapping(value = "/importExcel", method = RequestMethod.POST) |
| | | public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) { |
| | | return super.importExcel(request, response, Unit.class); |
| | | } |
| | | |
| | | |