Browse Source

fix:核销状态异常

fix: 商品类目支持名称重复,导入导出流程调整
checkBack
Yen 1 year ago
parent
commit
d7c68c128a
  1. 12
      src/main/java/com/qs/serve/modules/goods/controller/GoodsSkuController.java
  2. 20
      src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java
  3. 4
      src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java
  4. 2
      src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsSpuImportBo.java
  5. 2
      src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java
  6. 10
      src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java
  7. 4
      src/main/resources/mapper/goods/GoodsSkuMapper.xml
  8. 3
      src/main/resources/mapper/goods/GoodsSpuMapper.xml

12
src/main/java/com/qs/serve/modules/goods/controller/GoodsSkuController.java

@ -222,6 +222,9 @@ public class GoodsSkuController {
*/
@GetMapping("/export")
public R<List<GoodsSkuExportVo>> export(GoodsSku param){
if(DevEnvironmentConfig.OPEN_TENANT_BOOK){
param.setBookCodeList(BookAccountUtil.getCurrentUserAccount());
}
List<GoodSkuVo> list = goodsSkuService.selectSkuVo(param);
List<GoodsSkuExportVo> result = list.stream().map(a->{
GoodsSkuExportVo skuExportVo = CopierUtil.copy(a,new GoodsSkuExportVo());
@ -301,8 +304,6 @@ public class GoodsSkuController {
}
}
//处理更新和新增
List<String> skuCodes = param.getSkuList().stream().map(GoodsSkuImportBo.SkuItem::getSkuCode).distinct().collect(Collectors.toList());
List<String> spuCodes = param.getSkuList().stream().map(GoodsSkuImportBo.SkuItem::getSpuCode).distinct().collect(Collectors.toList());
@ -323,8 +324,11 @@ public class GoodsSkuController {
}
GoodsSku goodsSku = buildByImportItem(skuItem);
goodsSku.setId(sku.getId());
if(spu!=null){
goodsSku.setSpuId(spu.getId());
goodsSku.setBookName(spu.getBookName());
goodsSku.setBookBelong(spu.getBookBelong());
}
goodsSkuService.updateById(goodsSku);
}else if (SAVE.equals(opt)){
@ -339,13 +343,15 @@ public class GoodsSkuController {
}
GoodsSku addSku = buildByImportItem(skuItem);
addSku.setSpuId(spu.getId());
addSku.setBookName(spu.getBookName());
addSku.setBookBelong(spu.getBookBelong());
goodsSkuService.save(addSku);
}
}
for (GoodsSpu spu : spuList) {
goodsSpuService.updateOnlineOfflineFlat(spu.getId());
}
return R.ok(param.getSkuList());
return R.ok();
}
private GoodsSku buildByImportItem(GoodsSkuImportBo.SkuItem skuItem){

20
src/main/java/com/qs/serve/modules/goods/controller/GoodsSpuController.java

@ -524,6 +524,9 @@ public class GoodsSpuController {
*/
@GetMapping("/export")
public R<List<GoodsSpuExportVo>> export(GoodsSpu param){
if(DevEnvironmentConfig.OPEN_TENANT_BOOK){
param.setBookCodeList(BookAccountUtil.getCurrentUserAccount());
}
List<GoodsSpu> list = goodsSpuService.selectSpuList(param);
List<GoodsSpuExportVo> exportVoList = list.stream().map(a->{
GoodsSpuExportVo vo = new GoodsSpuExportVo();
@ -534,7 +537,8 @@ public class GoodsSpuController {
vo.setOrderFlag(a.getOrderFlag());
vo.setCostFlag(a.getCostFlag());
vo.setGoodsSaleType(a.getGoodsSaleType());
vo.setCateCode(a.getCategoryThird());
vo.setSpuCunhuoFlag(a.getSpuCunhuoFlag());
vo.setCateCode(a.getCateThirdCode());
vo.setCateName(a.getCateThirdLabel());
return vo;
}).collect(Collectors.toList());
@ -556,12 +560,12 @@ public class GoodsSpuController {
//导入
List<String> spuCodes = new ArrayList<>();
List<String> cateNames = new ArrayList<>();
List<String> cateCodes = new ArrayList<>();
for (GoodsSpuImportBo.SpuItem item : param.getSpuList()) {
spuCodes.add(item.getSpuCode());
//删除只需要spu编码
if(StringUtils.hasText(item.getCategoryCode())&&!item.getOpt().equals(DELETE)){
cateNames.add(item.getCategoryCode());
cateCodes.add(item.getCategoryCode());
}
}
if(spuCodes.size()<1){
@ -572,9 +576,9 @@ public class GoodsSpuController {
List<GoodsSpu> spuList = goodsSpuService.list(spuLqw);
List<GoodsCategory> cateList = null;
if(cateNames.size()>0){
if(cateCodes.size()>0){
LambdaQueryWrapper<GoodsCategory> cateLqw = new LambdaQueryWrapper<>();
cateLqw.in(GoodsCategory::getName,cateNames);
cateLqw.in(GoodsCategory::getCode,cateCodes);
cateLqw.eq(GoodsCategory::getLevel,3);
cateList = goodsCategoryService.list(cateLqw);
}
@ -592,7 +596,7 @@ public class GoodsSpuController {
item.setErrMsg("["+item.getCategoryCode()+"]类目不存在");
}else {
String cateName = item.getCategoryCode();
boolean existCate = cateList.stream().anyMatch(a->a.getName().equals(cateName));
boolean existCate = cateList.stream().anyMatch(a->a.getCode().equals(cateName));
if(!existCate){
isError = true;
item.setErrMsg("["+item.getCategoryCode()+"]类目不存在");
@ -615,7 +619,7 @@ public class GoodsSpuController {
}
if(isError){
return R.ok(param);
return R.ok(param,"数据错误");
}
List<Long> rmIds = new ArrayList<>();
@ -688,6 +692,8 @@ public class GoodsSpuController {
if(cateList !=null){
for (GoodsCategory category : cateList) {
if(category.getCode().equals(spuItem.getCategoryCode())){
spu.setBookName(category.getBookName());
spu.setBookBelong(category.getBookBelong());
String[] cateIds = category.getLevelPath().split("_");
if(cateIds.length==3){
spu.setCategoryFirst(cateIds[0]);

4
src/main/java/com/qs/serve/modules/goods/entity/GoodsSpu.java

@ -160,6 +160,10 @@ public class GoodsSpu implements Serializable {
@TableField(exist = false)
private String cateThirdLabel;
/** 三级类目:系列名称 */
@TableField(exist = false)
private String cateThirdCode;
/** 账套编码列表 */
@TableField(exist = false)
private List<String> bookCodeList;

2
src/main/java/com/qs/serve/modules/goods/entity/bo/GoodsSpuImportBo.java

@ -48,7 +48,7 @@ public class GoodsSpuImportBo {
private String categoryCode;
/** 分类名称 */
//private String categoryName;
private String categoryName;
private String errMsg;
}

2
src/main/java/com/qs/serve/modules/vtb/controller/VtbVerificationController.java

File diff suppressed because one or more lines are too long

10
src/main/java/com/qs/serve/modules/vtb/service/VtbVerificationApplication.java

@ -101,7 +101,7 @@ public class VtbVerificationApplication {
}
if(result.getStatus()==200){
//提交审批
log.debug("提交审批到致远,{}",JsonUtil.objectToJson(result));
log.warn("提交审批到致远,{}",JsonUtil.objectToJson(result));
// 判断是否含有下个节点
try {
Thread.sleep(500);
@ -118,7 +118,7 @@ public class VtbVerificationApplication {
summeryResult = "refuse";
}
//提交审批
log.debug("提交审批到致远,检查单据[{}]状态:{}",verification.getVerificationCode(),affairState);
log.warn("提交审批到致远,检查单据[{}]状态:{}",verification.getVerificationCode(),affairState);
R r = commitAffairSuccess(affairCommit, verification, isBackCommit, summeryResult);
@ -205,7 +205,7 @@ public class VtbVerificationApplication {
@NotNull
@Transactional(rollbackFor = Exception.class)
public R commitAffairSuccess(TbsAffairCommitBo affairCommit, VtbVerification verification, boolean isBackCommit, String flag) {
log.debug("单据[{}]状态:{},",verification.getVerificationCode(),flag);
log.warn("单据[{}]状态:{},",verification.getVerificationCode(),flag);
String userId = AuthContextUtils.getSysUserId();
SysUser sysUser = sysUserService.getById(userId);
@ -251,10 +251,10 @@ public class VtbVerificationApplication {
//释放费用
boolean isRelease = affairCommit.getReleaseFlag()!=null&&affairCommit.getReleaseFlag().equals(1);
if (isStop){
log.debug("单据[{}]状态:{},中止审批",verification.getVerificationCode(),flag);
log.warn("单据[{}]状态:{},中止审批",verification.getVerificationCode(),flag);
backCommitAndStop(verification, isBackCommit);
if(isRelease){
log.debug("单据[{}]状态:{},中止审批并释放费用",verification.getVerificationCode(),flag);
log.warn("单据[{}]状态:{},中止审批并释放费用",verification.getVerificationCode(),flag);
vtbVerificationService.release(verification.getActivityId(),sysUser.getCode(),false);
}
}else if (!isFinish && !isNext){

4
src/main/resources/mapper/goods/GoodsSkuMapper.xml

@ -69,7 +69,9 @@
goods_sku.`update_by`,
goods_sku.`special_flag`,
goods_sku.`order_flag`,
goods_sku.`belong`
goods_sku.`belong`,
goods_sku.`book_belong`,
goods_sku.`book_name`
</sql>
<update id="updateBookInfo">

3
src/main/resources/mapper/goods/GoodsSpuMapper.xml

@ -62,8 +62,10 @@
goods_spu.`cost_flag`,
goods_spu.`order_flag`,
goods_spu.`book_belong`,
goods_spu.`book_name`,
goods_spu.`del_flag`,
goods_spu.`special_sku_id`,
goods_spu.`spu_cunhuo_flag`,
goods_spu.`sku_num_val`
</sql>
@ -243,6 +245,7 @@
`cate1`.`name` AS `cate_first_label`,
`cate2`.`name` AS `cate_second_label`,
`cate3`.`name` AS `cate_third_label`,
`cate3`.`code` AS `cate_third_code`,
<include refid="goodsSpuSql"/>
FROM `goods_spu` `goods_spu`
LEFT JOIN `goods_category` `cate1` ON `cate1`.`id` = `goods_spu`.`category_first`

Loading…
Cancel
Save