diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsCostCenterController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsCostCenterController.java index c49cd023..a6101e4f 100644 --- a/src/main/java/com/qs/serve/modules/bms/controller/BmsCostCenterController.java +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsCostCenterController.java @@ -24,9 +24,9 @@ import java.util.List; * @since 2022-10-13 */ @Slf4j -@AllArgsConstructor -@RestController -@RequestMapping("bms/costCenter") +//@AllArgsConstructor +//@RestController +//@RequestMapping("bms/costCenter") public class BmsCostCenterController { private BmsCostCenterService bmsCostCenterService; diff --git a/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierUserController.java b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierUserController.java new file mode 100644 index 00000000..d6166b20 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/BmsSupplierUserController.java @@ -0,0 +1,103 @@ +package com.qs.serve.modules.bms.controller; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import com.qs.serve.modules.bms.entity.BmsSupplierUser; +import com.qs.serve.modules.bms.service.BmsSupplierUserService; + +import javax.validation.Valid; +import java.util.List; + +/** + * 基础档案 客户分配 + * @author YenHex + * @since 2022-10-13 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("bms/supplierUser") +public class BmsSupplierUserController { + + private BmsSupplierUserService bmsSupplierUserService; + + /** + * 翻页查询 + * @param param + * @return + */ + @GetMapping("/page") + @PreAuthorize("hasRole('bms:supplierUser:query')") + public R> getPage(BmsSupplierUser param){ + PageUtil.startPage(); + LambdaQueryWrapper supplierUserWrapper = new LambdaQueryWrapper<>(param); + List list = bmsSupplierUserService.list(supplierUserWrapper); + return R.byPageHelperList(list); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商分配", biz = BizType.QUERY) + @PreAuthorize("hasRole('bms:supplierUser:query')") + public R getById(@PathVariable("id") String id){ + BmsSupplierUser bmsSupplierUser = bmsSupplierUserService.getById(id); + return R.ok(bmsSupplierUser); + } + + + + /** + * 根据ID更新 + * @param param + * @return + */ + @PostMapping("/updateById") + @SysLog(module = SystemModule.BASE, title = "供应商分配", biz = BizType.UPDATE) + @PreAuthorize("hasRole('bms:supplierUser:update')") + public R updateById(@RequestBody @Valid BmsSupplierUser param){ + boolean result = bmsSupplierUserService.updateById(param); + return R.isTrue(result); + } + + /** + * 新增供应商分配 + * @param param + * @return + */ + @PostMapping("/save") + @SysLog(module = SystemModule.BASE, title = "供应商分配", biz = BizType.INSERT) + @PreAuthorize("hasRole('bms:supplierUser:insert')") + public R save(@RequestBody @Valid BmsSupplierUser param){ + boolean result = bmsSupplierUserService.save(param); + return R.isTrue(result); + } + + /** + * 删除供应商分配 + * @param id + * @return + */ + @DeleteMapping("/deleteById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商分配", biz = BizType.DELETE) + @PreAuthorize("hasRole('bms:supplierUser:delete')") + public R deleteById(@PathVariable("id") String id){ + boolean result = bmsSupplierUserService.removeById(id); + return R.isTrue(result); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsRegionApi.java b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsRegionApi.java new file mode 100644 index 00000000..555a91c9 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsRegionApi.java @@ -0,0 +1,60 @@ +package com.qs.serve.modules.bms.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.CopierUtil; +import com.qs.serve.common.util.IdUtil; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.common.util.ValidateTools; +import com.qs.serve.modules.bms.entity.BmsRegion; +import com.qs.serve.modules.bms.entity.vo.BmsRegionBatchBo; +import com.qs.serve.modules.bms.entity.vo.BmsRegionTreeVo; +import com.qs.serve.modules.bms.service.BmsRegionService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * API基础档案 区域档案 + * @author YenHex + * @since 2022-10-10 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/region") +public class BmsRegionApi { + + private BmsRegionService bmsRegionService; + + /** + * 树查询 + * @param param + * @return + */ + @GetMapping("/tree") + public R> getTree(BmsRegion param){ + return R.ok(bmsRegionService.getTree(param)); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + public R getById(@PathVariable("id") String id){ + BmsRegion bmsRegion = bmsRegionService.getById(id); + return R.ok(bmsRegion); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java new file mode 100644 index 00000000..d22f14fd --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierAddressApi.java @@ -0,0 +1,140 @@ +package com.qs.serve.modules.bms.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.bms.entity.BmsSupplierAddress; +import com.qs.serve.modules.bms.service.BmsSupplierAddressService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * API基础档案 客户收货地址 + * @author YenHex + * @since 2022-10-12 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("api/supplierAddress") +public class BmsSupplierAddressApi { + + private BmsSupplierAddressService bmsSupplierAddressService; + + /** + * 翻页查询 + * @param param + * @return + */ + @GetMapping("/page") + @PreAuthorize("hasRole('bms:supplierAddress:query')") + public R> getPage(BmsSupplierAddress param){ + PageUtil.startPage(); + LambdaQueryWrapper supplierAddressWrapper = new LambdaQueryWrapper<>(param); + List list = bmsSupplierAddressService.list(supplierAddressWrapper); + return R.byPageHelperList(list); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.QUERY) + @PreAuthorize("hasRole('bms:supplierAddress:query')") + public R getById(@PathVariable("id") String id){ + BmsSupplierAddress bmsSupplierAddress = bmsSupplierAddressService.getById(id); + return R.ok(bmsSupplierAddress); + } + + + + /** + * 根据ID更新 + * @param param + * @return + */ + @PostMapping("/updateById") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.UPDATE) + @PreAuthorize("hasRole('bms:supplierAddress:update')") + public R updateById(@RequestBody @Valid BmsSupplierAddress param){ + BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getDefault(param.getSupplierId()); + if(supplierAddress==null){ + param.setDefaultFlag(1); + }else { + param.setDefaultFlag(0); + } + boolean result = bmsSupplierAddressService.updateById(param); + return R.isTrue(result); + } + + /** + * 新增 + * @param param + * @return + */ + @PostMapping("/save") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.INSERT) + @PreAuthorize("hasRole('bms:supplierAddress:insert')") + public R save(@RequestBody @Valid BmsSupplierAddress param){ + BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getDefault(param.getSupplierId()); + if(supplierAddress==null){ + param.setDefaultFlag(1); + }else { + param.setDefaultFlag(0); + } + boolean result = bmsSupplierAddressService.save(param); + return R.isTrue(result); + } + + /** + * 设置默认的地址 + * @param id 地址ID + * @return + */ + @PostMapping("/setDefault") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.INSERT) + @PreAuthorize("hasRole('bms:supplierAddress:insert')") + @Transactional(rollbackFor = Exception.class) + public R setDefault(@RequestBody @Valid Long id){ + BmsSupplierAddress supplierAddress = bmsSupplierAddressService.getById(id); + List list = bmsSupplierAddressService.listBySupplierId(supplierAddress.getSupplierId()); + //设置其它 + for (BmsSupplierAddress address : list) { + if(!address.getId().equals(id)){ + address.setDefaultFlag(0); + bmsSupplierAddressService.updateById(address); + } + } + //设置默认 + supplierAddress.setDefaultFlag(1); + bmsSupplierAddressService.updateById(supplierAddress); + return R.ok(); + } + + /** + * 删除 + * @param id + * @return + */ + @DeleteMapping("/deleteById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.DELETE) + @PreAuthorize("hasRole('bms:supplierAddress:delete')") + public R deleteById(@PathVariable("id") String id){ + boolean result = bmsSupplierAddressService.removeById(id); + return R.isTrue(result); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierApi.java b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierApi.java new file mode 100644 index 00000000..c8681641 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierApi.java @@ -0,0 +1,100 @@ +package com.qs.serve.modules.bms.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.CopierUtil; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.common.util.TreeUtil; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.entity.vo.BmsSupplierBatchBo; +import com.qs.serve.modules.bms.entity.vo.BmsSupplierBo; +import com.qs.serve.modules.bms.entity.vo.BmsSupplierTreeVo; +import com.qs.serve.modules.bms.service.BmsSupplierService; +import com.qs.serve.modules.wx.entity.WxUser; +import com.qs.serve.modules.wx.service.WxUserService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.ArrayList; +import java.util.List; +import java.util.stream.Collectors; + +/** + * API基础档案 客户 + * @author YenHex + * @since 2022-10-10 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/supplier") +public class BmsSupplierApi { + + private final BmsSupplierService bmsSupplierService; + private final WxUserService wxUserService; + + /** + * 翻页查询 + * @param param + * @return + */ + @GetMapping("/page") + @PreAuthorize("hasRole('bms:supplier:query')") + public R> getPage(BmsSupplier param){ + WxUser wxUser = wxUserService.getCurrentWxUser(); + if(wxUser.getSysUserId()==null||wxUser.getSysUserId().equals("0")){ + return R.byEmptyList(); + } + param.setCurrUserId(wxUser.getSysUserId()); + PageUtil.startPage(); + List list = bmsSupplierService.selectSupplierList(param); + return R.byPageHelperList(list); + } + + /** + * 树查询 + * @param param + * @return + */ + @GetMapping("/tree") + @PreAuthorize("hasRole('bms:supplier:query')") + public R> getTree(BmsSupplier param){ + WxUser wxUser = wxUserService.getCurrentWxUser(); + if(wxUser.getSysUserId()==null||wxUser.getSysUserId().equals("0")){ + return R.ok(new ArrayList<>()); + } + param.setCurrUserId(wxUser.getSysUserId()); + List list = bmsSupplierService.selectSupplierList(param); + List list2 = list.stream().map(supplier->{ + BmsSupplierTreeVo treeNode = CopierUtil.copy(supplier,new BmsSupplierTreeVo()); + treeNode.setId(supplier.getId()); + treeNode.setParentId(supplier.getPid()); + treeNode.setSort(0); + return treeNode; + }).collect(Collectors.toList()); + list2 = TreeUtil.buildByRecursive(list2,TreeUtil.DEFAULT_PID_STRING); + return R.ok(list2); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商", biz = BizType.QUERY) + @PreAuthorize("hasRole('bms:supplier:query')") + public R getById(@PathVariable("id") String id){ + BmsSupplier bmsSupplier = bmsSupplierService.getById(id); + return R.ok(bmsSupplier); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierBandApi.java b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierBandApi.java new file mode 100644 index 00000000..c9166bdf --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/controller/api/BmsSupplierBandApi.java @@ -0,0 +1,102 @@ +package com.qs.serve.modules.bms.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.bms.entity.BmsSupplierBand; +import com.qs.serve.modules.bms.service.BmsSupplierBandService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * API基础档案 客户银行信息 + * @author YenHex + * @since 2022-10-12 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/supplierBand") +public class BmsSupplierBandApi { + + private BmsSupplierBandService bmsSupplierBandService; + + /** + * 翻页查询 + * @param param + * @return + */ + @GetMapping("/page") + @PreAuthorize("hasRole('bms:supplierBand:query')") + public R> getPage(BmsSupplierBand param){ + PageUtil.startPage(); + LambdaQueryWrapper supplierBandWrapper = new LambdaQueryWrapper<>(param); + List list = bmsSupplierBandService.list(supplierBandWrapper); + return R.byPageHelperList(list); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.QUERY) + @PreAuthorize("hasRole('bms:supplierBand:query')") + public R getById(@PathVariable("id") String id){ + BmsSupplierBand bmsSupplierBand = bmsSupplierBandService.getById(id); + return R.ok(bmsSupplierBand); + } + + + + /** + * 根据ID更新 + * @param param + * @return + */ + @PostMapping("/updateById") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.UPDATE) + @PreAuthorize("hasRole('bms:supplierBand:update')") + public R updateById(@RequestBody @Valid BmsSupplierBand param){ + boolean result = bmsSupplierBandService.updateById(param); + return R.isTrue(result); + } + + /** + * 新增 + * @param param + * @return + */ + @PostMapping("/save") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.INSERT) + @PreAuthorize("hasRole('bms:supplierBand:insert')") + public R save(@RequestBody @Valid BmsSupplierBand param){ + boolean result = bmsSupplierBandService.save(param); + return R.isTrue(result); + } + + /** + * 删除 + * @param id + * @return + */ + @DeleteMapping("/deleteById/{id}") + @SysLog(module = SystemModule.BASE, title = "供应商地址", biz = BizType.DELETE) + @PreAuthorize("hasRole('bms:supplierBand:delete')") + public R deleteById(@PathVariable("id") String id){ + boolean result = bmsSupplierBandService.removeById(id); + return R.isTrue(result); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java index 6110497d..58c5a07c 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplier.java @@ -90,5 +90,9 @@ public class BmsSupplier implements Serializable { @JsonProperty private Boolean delFlag; + /** 当前用户ID */ + @TableField(exist = false) + private String currUserId; + } diff --git a/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierUser.java b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierUser.java new file mode 100644 index 00000000..1efe9327 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/entity/BmsSupplierUser.java @@ -0,0 +1,76 @@ +package com.qs.serve.modules.bms.entity; + +import java.time.LocalDateTime; +import java.io.Serializable; + +import com.baomidou.mybatisplus.annotation.*; +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; +import org.hibernate.validator.constraints.Length; +import org.springframework.format.annotation.DateTimeFormat; + +import javax.validation.constraints.NotNull; +import javax.validation.constraints.NotBlank; + +/** + * 供应商分配 实体类 + * @author YenHex + * @since 2022-10-13 + */ +@Data +@TableName("bms_supplier_user") +public class BmsSupplierUser implements Serializable { + + private static final long serialVersionUID = 1L; + + /** id */ + @TableId(type = IdType.AUTO) + private Long id; + + /** 供应商id */ + @NotNull(message = "供应商id不能为空") + private Long supplierId; + + /** 用户id */ + @NotBlank(message = "用户id不能为空") + @Length(max = 32,message = "用户id长度不能超过32字") + private String userId; + + /** 备注 */ + @Length(max = 255,message = "备注长度不能超过255字") + private String remark; + + /** 创建时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.INSERT) + private LocalDateTime createTime; + + /** 最后更新时间 */ + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") + @TableField(fill = FieldFill.UPDATE) + private LocalDateTime updateTime; + + /** 所属租户 */ + @JsonIgnore + @JsonProperty + private String tenantId; + + /** 逻辑删除标记(0:显示;1:隐藏) */ + @JsonIgnore + @JsonProperty + private String delFlag; + + /** 创建人 */ + @TableField(fill = FieldFill.INSERT) + private String createBy; + + /** 更新人 */ + @TableField(fill = FieldFill.UPDATE) + private String updateBy; + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBatchBo.java b/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBatchBo.java index 2493edb6..af16863c 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBatchBo.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBatchBo.java @@ -20,8 +20,14 @@ public class BmsSupplierBatchBo { @Data public static class BmsSupplierDto{ - /** id */ - private Long id; + + /** 客户编码 */ + @NotBlank(message = "客户编码不能为空") + @Length(max = 20,message = "客户编码长度不能超过20字") + private String code; + + /** 父级编码,空表无父级 */ + private String parentCode; /** 区域ID */ private Long regionId; @@ -31,16 +37,11 @@ public class BmsSupplierBatchBo { /** 名称 */ @NotBlank(message = "名称不能为空") - @Length(max = 20,message = "名称长度不能超过20字") private String name; - /** 客户编码 */ - @NotBlank(message = "客户编码不能为空") - @Length(max = 20,message = "客户编码长度不能超过20字") - private String code; - - /** 父级编码,空表无父级 */ - private String parentCode; + /** 归属ERP编码,如JSL、JSB、KL 对应ERP信息表作显示 */ + @NotBlank(message = "名称不能为空") + private String belong; } diff --git a/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBo.java b/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBo.java index f684c953..e459b63a 100644 --- a/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBo.java +++ b/src/main/java/com/qs/serve/modules/bms/entity/vo/BmsSupplierBo.java @@ -36,4 +36,6 @@ public class BmsSupplierBo { /** 父级id,0表总公司无上级 */ private Long pid; + private String belong; + } diff --git a/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierMapper.java b/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierMapper.java index d3af0e7e..c6f64b77 100644 --- a/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierMapper.java +++ b/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierMapper.java @@ -1,7 +1,10 @@ package com.qs.serve.modules.bms.mapper; +import com.baomidou.mybatisplus.annotation.InterceptorIgnore; import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.qs.serve.modules.bms.entity.BmsSupplier; +import org.apache.ibatis.annotations.Param; +import java.util.List; /** * 供应商 Mapper @@ -10,5 +13,8 @@ import com.qs.serve.modules.bms.entity.BmsSupplier; */ public interface BmsSupplierMapper extends BaseMapper { + @InterceptorIgnore(tenantLine = "1") + List selectSupplierList(@Param("query") BmsSupplier bmsSupplier); + } diff --git a/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierUserMapper.java b/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierUserMapper.java new file mode 100644 index 00000000..080d12d5 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/mapper/BmsSupplierUserMapper.java @@ -0,0 +1,14 @@ +package com.qs.serve.modules.bms.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.qs.serve.modules.bms.entity.BmsSupplierUser; + +/** + * 供应商分配 Mapper + * @author YenHex + * @date 2022-10-13 + */ +public interface BmsSupplierUserMapper extends BaseMapper { + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierService.java b/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierService.java index befd18ae..0b992714 100644 --- a/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierService.java +++ b/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierService.java @@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService; import com.qs.serve.modules.bms.entity.BmsSupplier; import com.qs.serve.modules.bms.entity.vo.BmsSupplierBatchBo; import com.qs.serve.modules.bms.entity.vo.BmsSupplierBo; +import org.apache.ibatis.annotations.Param; import org.springframework.web.bind.annotation.RequestBody; import javax.validation.Valid; @@ -16,6 +17,8 @@ import java.util.List; */ public interface BmsSupplierService extends IService { + List selectSupplierList(BmsSupplier bmsSupplier); + void edit(BmsSupplierBo param); BmsSupplier getByCode(String code); diff --git a/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierUserService.java b/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierUserService.java new file mode 100644 index 00000000..46aa3d1b --- /dev/null +++ b/src/main/java/com/qs/serve/modules/bms/service/BmsSupplierUserService.java @@ -0,0 +1,19 @@ +package com.qs.serve.modules.bms.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.qs.serve.modules.bms.entity.BmsSupplier; +import com.qs.serve.modules.bms.entity.BmsSupplierUser; + +import java.util.List; + +/** + * 供应商分配 服务接口 + * @author YenHex + * @date 2022-10-13 + */ +public interface BmsSupplierUserService extends IService { + + //BmsSupplier list + +} + diff --git a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java index 8ef2eab4..22332ef7 100644 --- a/src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/bms/service/impl/BmsSupplierServiceImpl.java @@ -28,6 +28,11 @@ public class BmsSupplierServiceImpl extends ServiceImpl selectSupplierList(BmsSupplier bmsSupplier) { + return baseMapper.selectSupplierList(bmsSupplier); + } + @Override public void edit(BmsSupplierBo param) { BmsSupplier supplier = CopierUtil.copy(param,new BmsSupplier()); @@ -60,8 +65,9 @@ public class BmsSupplierServiceImpl extends ServiceImpl implements BmsSupplierUserService { + +} + diff --git a/src/main/java/com/qs/serve/modules/goods/controller/GoodsUnitController.java b/src/main/java/com/qs/serve/modules/goods/controller/GoodsUnitController.java index 290ec4dd..a476b7bb 100644 --- a/src/main/java/com/qs/serve/modules/goods/controller/GoodsUnitController.java +++ b/src/main/java/com/qs/serve/modules/goods/controller/GoodsUnitController.java @@ -19,7 +19,7 @@ import javax.validation.Valid; import java.util.List; /** - * 商品 单位 后台接口 + * 商品 单位 * @author YenHex * @since 2022-10-13 */ diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsBrandApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsBrandApi.java new file mode 100644 index 00000000..98943678 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsBrandApi.java @@ -0,0 +1,58 @@ +package com.qs.serve.modules.goods.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.goods.entity.GoodsBrand; +import com.qs.serve.modules.goods.service.GoodsBrandService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.PathVariable; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.util.List; + +/** + * API商品品牌 + * @author YenHex + * @since 2022/10/13 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("api/brand") +public class GoodsBrandApi { + + private GoodsBrandService goodsBrandService; + + /** + * 列表 + * @param param + * @return + */ + @GetMapping("/list") + public R> getPage(GoodsBrand param){ + LambdaQueryWrapper brandWrapper = new LambdaQueryWrapper<>(param); + List list = goodsBrandService.list(brandWrapper); + return R.ok(list); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + public R getById(@PathVariable("id") String id){ + GoodsBrand goodsBrand = goodsBrandService.getById(id); + return R.ok(goodsBrand); + } + +} diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsCategoryApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsCategoryApi.java new file mode 100644 index 00000000..1ca414f3 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsCategoryApi.java @@ -0,0 +1,69 @@ +package com.qs.serve.modules.goods.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.CopierUtil; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.common.util.TreeUtil; +import com.qs.serve.modules.goods.entity.GoodsCategory; +import com.qs.serve.modules.goods.entity.bo.GoodsCategoryTreeVo; +import com.qs.serve.modules.goods.service.GoodsCategoryService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; +import java.util.stream.Collectors; + +/** + * API商品分类 + * @author YenHex + * @since 2022-10-09 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/category") +public class GoodsCategoryApi { + + private GoodsCategoryService goodsCategoryService; + + /** + * 树查询 + * @param param + * @return + */ + @GetMapping("/tree") + public R> getTree(GoodsCategory param){ + LambdaQueryWrapper lqw = new LambdaQueryWrapper<>(param); + List list = goodsCategoryService.list(lqw); + List treeVoList = list.stream().map(cate->{ + GoodsCategoryTreeVo treeNode = CopierUtil.copy(cate,new GoodsCategoryTreeVo()); + treeNode.setId(cate.getId()+""); + treeNode.setParentId(cate.getParentId()); + treeNode.setSort(0); + return treeNode; + }).collect(Collectors.toList()); + treeVoList = TreeUtil.buildByRecursive(treeVoList,TreeUtil.DEFAULT_PID_STRING); + return R.ok(treeVoList); + } + + /** + * 根据ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + public R getById(@PathVariable("id") String id){ + GoodsCategory goodsCategory = goodsCategoryService.getById(id); + return R.ok(goodsCategory); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSeriesApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSeriesApi.java new file mode 100644 index 00000000..546159e9 --- /dev/null +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSeriesApi.java @@ -0,0 +1,57 @@ +package com.qs.serve.modules.goods.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.goods.entity.GoodsSeries; +import com.qs.serve.modules.goods.service.GoodsSeriesService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * API商品系列 + * @author YenHex + * @since 2022-10-11 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/series") +public class GoodsSeriesApi { + + private GoodsSeriesService goodsSeriesService; + + /** + * 列表 + * @param param + * @return + */ + @GetMapping("/list") + public R> getPage(GoodsSeries param){ + LambdaQueryWrapper seriesWrapper = new LambdaQueryWrapper<>(param); + List list = goodsSeriesService.list(seriesWrapper); + return R.ok(list); + } + + /** + * ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + public R getById(@PathVariable("id") String id){ + GoodsSeries goodsSeries = goodsSeriesService.getById(id); + return R.ok(goodsSeries); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java new file mode 100644 index 00000000..b9a3ddae --- /dev/null +++ b/src/main/java/com/qs/serve/modules/goods/controller/api/GoodsSpuApi.java @@ -0,0 +1,60 @@ +package com.qs.serve.modules.goods.controller.api; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.qs.serve.common.model.annotation.SysLog; +import com.qs.serve.common.model.dto.PageVo; +import com.qs.serve.common.model.dto.R; +import com.qs.serve.common.model.enums.BizType; +import com.qs.serve.common.model.enums.SystemModule; +import com.qs.serve.common.util.PageUtil; +import com.qs.serve.modules.goods.entity.GoodsSpu; +import com.qs.serve.modules.goods.entity.bo.GoodsSpuBatchTasteBo; +import com.qs.serve.modules.goods.entity.vo.GoodsSpuVo; +import com.qs.serve.modules.goods.service.GoodsSpuService; +import lombok.AllArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; + +/** + * API商品spu + * @author YenHex + * @since 2022-10-09 + */ +@Slf4j +@AllArgsConstructor +@RestController +@RequestMapping("/api/spu") +public class GoodsSpuApi { + + private GoodsSpuService goodsSpuService; + + /** + * 翻页搜索 + * @param param + * @return + */ + @GetMapping("/page") + public R> getPage(GoodsSpu param){ + PageUtil.startPage(); + LambdaQueryWrapper spuWrapper = new LambdaQueryWrapper<>(param); + List list = goodsSpuService.list(spuWrapper); + return R.byPageHelperList(list); + } + + /** + * ID查询 + * @param id + * @return + */ + @GetMapping("/getById/{id}") + public R getById(@PathVariable("id") Long id){ + GoodsSpuVo goodsSpu = goodsSpuService.getVoById(id); + return R.ok(goodsSpu); + } + +} + diff --git a/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java b/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java index 19b41a4b..4d0c1c5c 100644 --- a/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java +++ b/src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java @@ -80,6 +80,10 @@ public class GoodsSpu implements Serializable { /** 产品口味(非sku规格值) */ private String tasteValue; + /** 含归属ERP编码的客户不显示该商品。值如JSL、JSB、KL */ + @TableField(typeHandler = SplitStringTypeHandler.class,jdbcType= JdbcType.VARCHAR) + private String[] notBelong; + /** 创建时间 */ @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") diff --git a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java index 4bbe5d19..99260c99 100644 --- a/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java +++ b/src/main/java/com/qs/serve/modules/goods/service/impl/GoodsSpuServiceImpl.java @@ -98,6 +98,7 @@ public class GoodsSpuServiceImpl extends ServiceImpl im spu.setName(tasteProduct.getName()); spu.setSpuCode(tasteProduct.getProductCode()); spu.setPicUrls(tasteProduct.getPicUrls()); + spu.setNotBelong(tasteProduct.getNotBelong()); //设置分类 GoodsCategory category = goodsCategoryService.getByCode(tasteProduct.getCategoryCode()); if(!category.getParentId().equals("0")){ diff --git a/src/main/resources/mapper/bms/BmsSupplierMapper.xml b/src/main/resources/mapper/bms/BmsSupplierMapper.xml new file mode 100644 index 00000000..48a91b19 --- /dev/null +++ b/src/main/resources/mapper/bms/BmsSupplierMapper.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + + + + + + + + + + bms_supplier.`id`, + bms_supplier.`region_first`, + bms_supplier.`region_second`, + bms_supplier.`region_third`, + bms_supplier.`address`, + bms_supplier.`name`, + bms_supplier.`code`, + bms_supplier.`pid`, + bms_supplier.`parent_code`, + bms_supplier.`belong`, + bms_supplier.`create_time`, + bms_supplier.`create_by`, + bms_supplier.`update_time`, + bms_supplier.`update_by`, + bms_supplier.`tenant_id`, + bms_supplier.`del_flag` + + + +