产品新增
parent
0d9dc19ae3
commit
7e755b008c
|
|
@ -92,17 +92,17 @@ public class ExpenseItemEntity extends BaseEntity {
|
|||
private Integer everyQuantity;
|
||||
|
||||
/**
|
||||
* 适用用户;结构类型:{strategy: None | All | Specify,ids:long[]}
|
||||
* 适用用户;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||
*/
|
||||
private String userScope;
|
||||
|
||||
/**
|
||||
* 适用站点;结构类型:{strategy: None | All | Specify,ids:long[]}
|
||||
* 适用站点;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||
*/
|
||||
private String stationScope;
|
||||
|
||||
/**
|
||||
* 适用产品;结构类型:{strategy: None | All | Specify,ids:long[]}
|
||||
* 适用产品;结构类型:{strategy: Wu | ZhiDing | SuoYou,ids:long[]}
|
||||
*/
|
||||
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.PageResult;
|
||||
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
||||
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||
|
||||
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;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njzscloud.common.mp.support.PageParam;
|
||||
import com.njzscloud.common.mp.support.PageResult;
|
||||
import com.njzscloud.dispose.finance.mapper.ExpenseItemMapper;
|
||||
import com.njzscloud.dispose.finance.pojo.entity.ExpenseItemEntity;
|
||||
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -28,8 +30,8 @@ public class ExpenseItemServiceImpl extends ServiceImpl<ExpenseItemMapper, Expen
|
|||
* 新增
|
||||
*/
|
||||
@Override
|
||||
public void add(ExpenseItemEntity expenseItemEntity) {
|
||||
this.save(expenseItemEntity);
|
||||
public void add(AddExpenseItemParam addExpenseItemParam) {
|
||||
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.PageResult;
|
||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||
import com.njzscloud.dispose.goods.service.GoodsService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -27,8 +28,8 @@ public class GoodsController {
|
|||
* 新增
|
||||
*/
|
||||
@PostMapping("/add")
|
||||
public R<?> add(@RequestBody GoodsEntity goodsEntity) {
|
||||
goodsService.add(goodsEntity);
|
||||
public R<?> add(@RequestBody AddGoodsParam addGoodsParam) {
|
||||
goodsService.add(addGoodsParam);
|
||||
return R.success();
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -80,7 +80,6 @@ public class GoodsEntity extends BaseEntity {
|
|||
* 备注
|
||||
*/
|
||||
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.PageResult;
|
||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
|
|
@ -13,7 +14,7 @@ import java.util.List;
|
|||
*/
|
||||
public interface GoodsService extends IService<GoodsEntity> {
|
||||
|
||||
void add(GoodsEntity goodsEntity);
|
||||
void add(AddGoodsParam addGoodsParam);
|
||||
|
||||
void modify(GoodsEntity goodsEntity);
|
||||
|
||||
|
|
|
|||
|
|
@ -1,15 +1,19 @@
|
|||
package com.njzscloud.dispose.goods.service.impl;
|
||||
|
||||
import cn.hutool.core.bean.BeanUtil;
|
||||
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
|
||||
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import com.njzscloud.common.mp.support.PageParam;
|
||||
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.pojo.entity.ExpenseItemEntity;
|
||||
import com.njzscloud.dispose.finance.pojo.param.AddExpenseItemParam;
|
||||
import com.njzscloud.dispose.finance.service.ExpenseItemService;
|
||||
import com.njzscloud.dispose.goods.mapper.GoodsMapper;
|
||||
import com.njzscloud.dispose.goods.pojo.entity.GoodsEntity;
|
||||
import com.njzscloud.dispose.goods.pojo.param.AddGoodsParam;
|
||||
import com.njzscloud.dispose.goods.service.GoodsService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
|
|
@ -32,13 +36,21 @@ public class GoodsServiceImpl extends ServiceImpl<GoodsMapper, GoodsEntity> impl
|
|||
|
||||
@Override
|
||||
@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);
|
||||
ExpenseItemEntity expenseItem = goodsEntity.getExpenseItem();
|
||||
expenseItem.setGoodsId(goodsEntity.getId());
|
||||
expenseItem.setExpenseItemCategory(ExpenseItemCategory.ChanPin.getVal());
|
||||
expenseItem.setExpenseItemName(goodsEntity.getGoodsName());
|
||||
expenseItemService.save(expenseItem);
|
||||
// 付费项新增
|
||||
AddGoodsParam.ExpenseItem expenseItem = addGoodsParam.getExpenseItem();
|
||||
|
||||
String goodsName = addGoodsParam.getGoodsName();
|
||||
AddExpenseItemParam addExpenseItemParam = BeanUtil.copyProperties(expenseItem, AddExpenseItemParam.class)
|
||||
.setGoodsId(goodsEntity.getId())
|
||||
.setExpenseItemName(goodsName)
|
||||
.setExpenseItemCategory(ExpenseItemCategory.ChanPin)
|
||||
.setMemo(goodsName + "费用配置");
|
||||
expenseItemService.add(addExpenseItemParam);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue