产品新增
parent
0d9dc19ae3
commit
7e755b008c
|
|
@ -92,17 +92,17 @@ public class ExpenseItemEntity extends BaseEntity {
|
||||||
private Integer everyQuantity;
|
private Integer everyQuantity;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 适用用户;结构类型:{strategy: None | All | Specify,ids:long[]}
|
* 适用用户;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
*/
|
*/
|
||||||
private String userScope;
|
private String userScope;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 适用站点;结构类型:{strategy: None | All | Specify,ids:long[]}
|
* 适用站点;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
*/
|
*/
|
||||||
private String stationScope;
|
private String stationScope;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 适用产品;结构类型:{strategy: None | All | Specify,ids:long[]}
|
* 适用产品;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
*/
|
*/
|
||||||
private String goodsScope;
|
private String goodsScope;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,25 @@
|
||||||
|
package com.njzscloud.dispose.finance.pojo.entity;
|
||||||
|
|
||||||
|
import com.njzscloud.dispose.finance.constant.ScopeStrategy;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import lombok.ToString;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@ToString
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class ScopeStrategyConfig {
|
||||||
|
/**
|
||||||
|
* 策略
|
||||||
|
*/
|
||||||
|
private ScopeStrategy strategy;
|
||||||
|
/**
|
||||||
|
* id 列表
|
||||||
|
*/
|
||||||
|
private List<Long> ids;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
@ -0,0 +1,94 @@
|
||||||
|
package com.njzscloud.dispose.finance.pojo.param;
|
||||||
|
|
||||||
|
import com.njzscloud.dispose.finance.constant.ExpenseItemCategory;
|
||||||
|
import com.njzscloud.dispose.finance.constant.ExpenseStrategy;
|
||||||
|
import com.njzscloud.dispose.finance.constant.Payer;
|
||||||
|
import com.njzscloud.dispose.finance.pojo.entity.ScopeStrategyConfig;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import lombok.ToString;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@ToString
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class AddExpenseItemParam {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收费项目类型,QiTa-->其他、ChanPin-->产品、YunFei-->运费
|
||||||
|
*/
|
||||||
|
private ExpenseItemCategory expenseItemCategory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付费项名称
|
||||||
|
*/
|
||||||
|
private String expenseItemName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计费策略;字典代码:expense_strategy
|
||||||
|
*/
|
||||||
|
private ExpenseStrategy expenseStrategy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计量单位;字典代码:unit
|
||||||
|
*/
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 税率
|
||||||
|
*/
|
||||||
|
private BigDecimal taxRate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付费方;字典代码:payer
|
||||||
|
*/
|
||||||
|
private Payer payer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单价;单位:元,弹性模式-->每档价格
|
||||||
|
*/
|
||||||
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起步价;单位:元,<= 起步量 固定费用
|
||||||
|
*/
|
||||||
|
private BigDecimal initialPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起步量
|
||||||
|
*/
|
||||||
|
private Integer initialQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 每档的量
|
||||||
|
*/
|
||||||
|
private Integer everyQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用用户;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig userScope;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用站点;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig stationScope;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用产品;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig goodsScope;
|
||||||
|
/**
|
||||||
|
* 产品 Id
|
||||||
|
*/
|
||||||
|
private Long goodsId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String memo;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.njzscloud.common.mp.support.PageParam;
|
import com.njzscloud.common.mp.support.PageParam;
|
||||||
import com.njzscloud.common.mp.support.PageResult;
|
import com.njzscloud.common.mp.support.PageResult;
|
||||||
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
||||||
|
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -16,7 +17,7 @@ public interface ExpenseItemService extends IService<ExpenseItemEntity> {
|
||||||
/**
|
/**
|
||||||
* 新增
|
* 新增
|
||||||
*/
|
*/
|
||||||
void add(ExpenseItemEntity expenseItemEntity);
|
void add(AddExpenseItemParam addExpenseItemParam);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 修改
|
* 修改
|
||||||
|
|
|
||||||
|
|
@ -1,11 +1,13 @@
|
||||||
package com.njzscloud.dispose.finance.service.impl;
|
package com.njzscloud.dispose.finance.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.njzscloud.common.mp.support.PageParam;
|
import com.njzscloud.common.mp.support.PageParam;
|
||||||
import com.njzscloud.common.mp.support.PageResult;
|
import com.njzscloud.common.mp.support.PageResult;
|
||||||
import com.njzscloud.dispose.finance.mapper.ExpenseItemMapper;
|
import com.njzscloud.dispose.finance.mapper.ExpenseItemMapper;
|
||||||
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
||||||
|
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||||
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
@ -28,8 +30,8 @@ public class ExpenseItemServiceImpl extends ServiceImpl<ExpenseItemMapper, Expen
|
||||||
* 新增
|
* 新增
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
public void add(ExpenseItemEntity expenseItemEntity) {
|
public void add(AddExpenseItemParam addExpenseItemParam) {
|
||||||
this.save(expenseItemEntity);
|
this.save(BeanUtil.copyProperties(addExpenseItemParam, ExpenseItemEntity.class));
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,7 @@ import com.njzscloud.common.core.utils.R;
|
||||||
import com.njzscloud.common.mp.support.PageParam;
|
import com.njzscloud.common.mp.support.PageParam;
|
||||||
import com.njzscloud.common.mp.support.PageResult;
|
import com.njzscloud.common.mp.support.PageResult;
|
||||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||||
|
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||||
import com.njzscloud.dispose.goods.service.GoodsService;
|
import com.njzscloud.dispose.goods.service.GoodsService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
@ -27,8 +28,8 @@ public class GoodsController {
|
||||||
* 新增
|
* 新增
|
||||||
*/
|
*/
|
||||||
@PostMapping("/add")
|
@PostMapping("/add")
|
||||||
public R<?> add(@RequestBody GoodsEntity goodsEntity) {
|
public R<?> add(@RequestBody AddGoodsParam addGoodsParam) {
|
||||||
goodsService.add(goodsEntity);
|
goodsService.add(addGoodsParam);
|
||||||
return R.success();
|
return R.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -80,7 +80,6 @@ public class GoodsEntity extends BaseEntity {
|
||||||
* 备注
|
* 备注
|
||||||
*/
|
*/
|
||||||
private String memo;
|
private String memo;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 关联收费项目信息(返回用)
|
* 关联收费项目信息(返回用)
|
||||||
*/
|
*/
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,167 @@
|
||||||
|
package com.njzscloud.dispose.goods.pojo.param;
|
||||||
|
|
||||||
|
import com.njzscloud.dispose.finance.constant.ExpenseItemCategory;
|
||||||
|
import com.njzscloud.dispose.finance.constant.ExpenseStrategy;
|
||||||
|
import com.njzscloud.dispose.finance.constant.Payer;
|
||||||
|
import com.njzscloud.dispose.finance.pojo.entity.ScopeStrategyConfig;
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import lombok.ToString;
|
||||||
|
import lombok.experimental.Accessors;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 产品
|
||||||
|
*
|
||||||
|
* @author ljw
|
||||||
|
*/
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@ToString
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public class AddGoodsParam {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 产品类型 Id
|
||||||
|
*/
|
||||||
|
private Long goodsCategoryId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品编码
|
||||||
|
*/
|
||||||
|
private String sn;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 产品名称
|
||||||
|
*/
|
||||||
|
private String goodsName;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 规格
|
||||||
|
*/
|
||||||
|
private String specParams;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 图片
|
||||||
|
*/
|
||||||
|
private String picture;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计量单位;字典代码:unit
|
||||||
|
*/
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为成品;0-->否、1-->是
|
||||||
|
*/
|
||||||
|
private Boolean fg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为半成品;0-->否、1-->是
|
||||||
|
*/
|
||||||
|
private Boolean sfg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否为原料;0-->否、1-->是
|
||||||
|
*/
|
||||||
|
private Boolean rg;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 排序
|
||||||
|
*/
|
||||||
|
private Integer sort;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 是否可用;0-->否、1-->是
|
||||||
|
*/
|
||||||
|
private Boolean canuse;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String memo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付费配置
|
||||||
|
*/
|
||||||
|
private ExpenseItem expenseItem;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@ToString
|
||||||
|
@Accessors(chain = true)
|
||||||
|
public static class ExpenseItem {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收费项目类型,QiTa-->其他、ChanPin-->产品、YunFei-->运费
|
||||||
|
*/
|
||||||
|
private ExpenseItemCategory expenseItemCategory;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计费策略;字典代码:expense_strategy
|
||||||
|
*/
|
||||||
|
private ExpenseStrategy expenseStrategy;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 计量单位;字典代码:unit
|
||||||
|
*/
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 税率
|
||||||
|
*/
|
||||||
|
private BigDecimal taxRate;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 付费方;字典代码:payer
|
||||||
|
*/
|
||||||
|
private Payer payer;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单价;单位:元,弹性模式-->每档价格
|
||||||
|
*/
|
||||||
|
private BigDecimal unitPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起步价;单位:元,<= 起步量 固定费用
|
||||||
|
*/
|
||||||
|
private BigDecimal initialPrice;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 起步量
|
||||||
|
*/
|
||||||
|
private Integer initialQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 每档的量
|
||||||
|
*/
|
||||||
|
private Integer everyQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用用户;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig userScope;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用站点;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig stationScope;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 适用产品;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||||
|
*/
|
||||||
|
private ScopeStrategyConfig goodsScope;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 备注
|
||||||
|
*/
|
||||||
|
private String memo;
|
||||||
|
/**
|
||||||
|
* 产品 Id
|
||||||
|
*/
|
||||||
|
private Long goodsId;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.njzscloud.common.mp.support.PageParam;
|
import com.njzscloud.common.mp.support.PageParam;
|
||||||
import com.njzscloud.common.mp.support.PageResult;
|
import com.njzscloud.common.mp.support.PageResult;
|
||||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||||
|
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
@ -13,7 +14,7 @@ import java.util.List;
|
||||||
*/
|
*/
|
||||||
public interface GoodsService extends IService<GoodsEntity> {
|
public interface GoodsService extends IService<GoodsEntity> {
|
||||||
|
|
||||||
void add(GoodsEntity goodsEntity);
|
void add(AddGoodsParam addGoodsParam);
|
||||||
|
|
||||||
void modify(GoodsEntity goodsEntity);
|
void modify(GoodsEntity goodsEntity);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,15 +1,19 @@
|
||||||
package com.njzscloud.dispose.goods.service.impl;
|
package com.njzscloud.dispose.goods.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.njzscloud.common.mp.support.PageParam;
|
import com.njzscloud.common.mp.support.PageParam;
|
||||||
import com.njzscloud.common.mp.support.PageResult;
|
import com.njzscloud.common.mp.support.PageResult;
|
||||||
|
import com.njzscloud.common.sn.support.SnUtil;
|
||||||
import com.njzscloud.dispose.finance.constant.ExpenseItemCategory;
|
import com.njzscloud.dispose.finance.constant.ExpenseItemCategory;
|
||||||
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
||||||
|
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||||
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
||||||
import com.njzscloud.dispose.goods.mapper.GoodsMapper;
|
import com.njzscloud.dispose.goods.mapper.GoodsMapper;
|
||||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||||
|
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||||
import com.njzscloud.dispose.goods.service.GoodsService;
|
import com.njzscloud.dispose.goods.service.GoodsService;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
|
@ -32,13 +36,21 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, GoodsEntity> impl
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public void add(GoodsEntity goodsEntity) {
|
public void add(AddGoodsParam addGoodsParam) {
|
||||||
|
String sn = SnUtil.next("Goods-SN");
|
||||||
|
addGoodsParam.setSn(sn);
|
||||||
|
GoodsEntity goodsEntity = BeanUtil.copyProperties(addGoodsParam, GoodsEntity.class);
|
||||||
this.save(goodsEntity);
|
this.save(goodsEntity);
|
||||||
ExpenseItemEntity expenseItem = goodsEntity.getExpenseItem();
|
// 付费项新增
|
||||||
expenseItem.setGoodsId(goodsEntity.getId());
|
AddGoodsParam.ExpenseItem expenseItem = addGoodsParam.getExpenseItem();
|
||||||
expenseItem.setExpenseItemCategory(ExpenseItemCategory.ChanPin.getVal());
|
|
||||||
expenseItem.setExpenseItemName(goodsEntity.getGoodsName());
|
String goodsName = addGoodsParam.getGoodsName();
|
||||||
expenseItemService.save(expenseItem);
|
AddExpenseItemParam addExpenseItemParam = BeanUtil.copyProperties(expenseItem, AddExpenseItemParam.class)
|
||||||
|
.setGoodsId(goodsEntity.getId())
|
||||||
|
.setExpenseItemName(goodsName)
|
||||||
|
.setExpenseItemCategory(ExpenseItemCategory.ChanPin)
|
||||||
|
.setMemo(goodsName + "费用配置");
|
||||||
|
expenseItemService.add(addExpenseItemParam);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue