产品新增

master
lzq 2025-12-22 15:25:04 +08:00
parent 0d9dc19ae3
commit 7e755b008c
11 changed files with 3706 additions and 7796 deletions

View File

@ -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;

View File

@ -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;
}

View File

@ -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;
}

View File

@ -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);
/** /**
* *

View File

@ -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));
} }
/** /**

View File

@ -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();
} }

View File

@ -80,7 +80,6 @@ public class GoodsEntity extends BaseEntity {
* *
*/ */
private String memo; private String memo;
/** /**
* *
*/ */

View File

@ -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;
}
}

View File

@ -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);

View File

@ -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