| | |
| | | import com.vincent.rsf.server.common.domain.BaseParam; |
| | | import com.vincent.rsf.server.common.domain.KeyValVo; |
| | | import com.vincent.rsf.server.common.domain.PageParam; |
| | | import com.vincent.rsf.server.manager.controller.vo.CompanysOptionVo; |
| | | import com.vincent.rsf.server.manager.entity.Companys; |
| | | import com.vincent.rsf.server.manager.entity.Warehouse; |
| | | import com.vincent.rsf.server.manager.service.CompanysService; |
| | | import com.vincent.rsf.server.system.constant.SerialRuleCode; |
| | | import com.vincent.rsf.server.manager.utils.buildPageRowsUtils; |
| | | import com.vincent.rsf.server.system.controller.BaseController; |
| | | import com.vincent.rsf.server.system.utils.SerialRuleUtils; |
| | | import io.swagger.annotations.Api; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.security.access.prepost.PreAuthorize; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import javax.servlet.http.HttpServletResponse; |
| | | import jakarta.servlet.http.HttpServletResponse; |
| | | import java.util.*; |
| | | |
| | | @Api(tags = "往来企业") |
| | |
| | | public R page(@RequestBody Map<String, Object> map) { |
| | | BaseParam baseParam = buildParam(map, BaseParam.class); |
| | | PageParam<Companys, BaseParam> pageParam = new PageParam<>(baseParam, Companys.class); |
| | | return R.ok().add(companysService.page(pageParam, pageParam.buildWrapper(true))); |
| | | PageParam<Companys, BaseParam> page = companysService.page(pageParam, pageParam.buildWrapper(true)); |
| | | return R.ok().add(buildPageRowsUtils.rowsMap(page)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:list')") |
| | | @PostMapping("/companys/list") |
| | | public R list(@RequestBody Map<String, Object> map) { |
| | | return R.ok().add(companysService.list()); |
| | | List<CompanysOptionVo> records = companysService |
| | | .list(new LambdaQueryWrapper<Companys>() |
| | | .select(Companys::getId, Companys::getCode, Companys::getName, Companys::getType)) |
| | | .stream() |
| | | .map(this::buildOptionVo) |
| | | .toList(); |
| | | return R.ok().add(buildPageRowsUtils.rowsMap(records)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:list')") |
| | | @PostMapping({"/companys/many/{ids}", "/companyss/many/{ids}"}) |
| | | public R many(@PathVariable Long[] ids) { |
| | | return R.ok().add(companysService.listByIds(Arrays.asList(ids))); |
| | | return R.ok().add(buildPageRowsUtils.rowsMap(companysService.listByIds(Arrays.asList(ids)))); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:list')") |
| | | @GetMapping("/companys/{id}") |
| | | public R get(@PathVariable("id") Long id) { |
| | | return R.ok().add(companysService.getById(id)); |
| | | return R.ok().add(buildPageRowsUtils.rowsMap(companysService.getById(id))); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:save')") |
| | |
| | | throw new CoolException("企业类型不能为空!!"); |
| | | } |
| | | |
| | | List<Companys> warehouses = companysService.list(new LambdaQueryWrapper<Companys>().eq(Companys::getName, companys.getName())); |
| | | List<Companys> warehouses = companysService.list(new LambdaQueryWrapper<Companys>() |
| | | .eq(Companys::getName, companys.getName()) |
| | | .eq(Companys::getType, companys.getType()) |
| | | .eq(Companys::getBreifCode, companys.getBreifCode())); |
| | | if (!warehouses.isEmpty()) { |
| | | throw new CoolException("企业名称已存在!!"); |
| | | throw new CoolException("企业已存在!!"); |
| | | } |
| | | if (!companysService.list(new LambdaQueryWrapper<Companys>().eq(Companys::getCode, companys.getBreifCode())).isEmpty()) { |
| | | throw new CoolException("编码已存在!!"); |
| | | if (!companysService.list(new LambdaQueryWrapper<Companys>() |
| | | .eq(Companys::getType, companys.getType()) |
| | | .eq(Companys::getName, companys.getName()) |
| | | .eq(Companys::getCode, companys.getBreifCode())).isEmpty()) { |
| | | throw new CoolException("企业编码重复!!"); |
| | | } |
| | | |
| | | companys.setCreateBy(getLoginUserId()); |
| | | companys.setUpdateBy(getLoginUserId()); |
| | | if (StringUtils.isBlank(companys.getCode())) { |
| | | String ruleCode = SerialRuleUtils.generateRuleCode(SerialRuleCode.SYS_COMPANYS_CODE, companys); |
| | | if (StringUtils.isBlank(ruleCode)) { |
| | | throw new CoolException("编码规则错误:请检查「SYS_COMPANYS_CODE」是否设置完成!!"); |
| | | } |
| | | companys.setCode(ruleCode); |
| | | } |
| | | if (!companysService.save(companys)) { |
| | | return R.error("Save Fail"); |
| | | } |
| | | return R.ok("Save Success").add(companys); |
| | | return R.ok("Save Success").add(buildPageRowsUtils.rowsMap(companys)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:update')") |
| | | @OperationLog("Update 字典数据集") |
| | | @PostMapping("/companys/update") |
| | | public R update(@RequestBody Companys companys) { |
| | | companys.setUpdateBy(getLoginUserId()); |
| | | if (Objects.isNull(companys.getName())) { |
| | | throw new CoolException("名称不能为空!!"); |
| | | } |
| | |
| | | if (Objects.isNull(companys.getType())) { |
| | | throw new CoolException("类型不能为空!!"); |
| | | } |
| | | Companys companys1 = companysService.getById(companys.getId()); |
| | | if (!companys.getName().equals(companys1.getName())) { |
| | | List<Companys> areasList = companysService.list(new LambdaQueryWrapper<Companys>().eq(Companys::getName, companys.getName())); |
| | | if (!areasList.isEmpty()) { |
| | | throw new CoolException("企业名已存在!!"); |
| | | } |
| | | } |
| | | if (!companys.getBreifCode().equals(companys1.getBreifCode())) { |
| | | List<Companys> areasList = companysService.list(new LambdaQueryWrapper<Companys>().eq(Companys::getBreifCode, companys.getBreifCode())); |
| | | if (!areasList.isEmpty()) { |
| | | throw new CoolException("编码已存在!!"); |
| | | } |
| | | } |
| | | |
| | | companys.setUpdateTime(null); |
| | | companys.setUpdateBy(getLoginUserId()); |
| | | if (!companysService.updateById(companys)) { |
| | | return R.error("Update Fail"); |
| | | } |
| | | return R.ok("Update Success").add(companys); |
| | | return R.ok("Update Success").add(buildPageRowsUtils.rowsMap(companys)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:remove')") |
| | |
| | | if (!companysService.removeByIds(Arrays.asList(ids))) { |
| | | return R.error("Delete Fail"); |
| | | } |
| | | return R.ok("Delete Success").add(ids); |
| | | return R.ok("Delete Success").add(buildPageRowsUtils.rowsMap(ids)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:list')") |
| | |
| | | companysService.page(new Page<>(1, 30), wrapper).getRecords().forEach( |
| | | item -> vos.add(new KeyValVo(item.getId(), item.getName())) |
| | | ); |
| | | return R.ok().add(vos); |
| | | return R.ok().add(buildPageRowsUtils.rowsMap(vos)); |
| | | } |
| | | |
| | | @PreAuthorize("hasAuthority('manager:companys:list')") |
| | |
| | | } else { |
| | | companies = companysService.list(); |
| | | } |
| | | ExcelUtil.build(ExcelUtil.create(companies, Companys.class), response); |
| | | ExcelUtil.build(ExcelUtil.create(buildPageRowsUtils.rowsMap(companies), Companys.class), response); |
| | | } |
| | | |
| | | private CompanysOptionVo buildOptionVo(Companys companys) { |
| | | CompanysOptionVo optionVo = new CompanysOptionVo(); |
| | | optionVo.setId(companys.getId()); |
| | | optionVo.setCode(companys.getCode()); |
| | | optionVo.setName(companys.getName()); |
| | | optionVo.setType(companys.getType()); |
| | | return optionVo; |
| | | } |
| | | |
| | | } |