Browse Source

1.梦天获取token逻辑修改

2.在库运单生成数据逻辑修改
test
zhenghaoyu 2 years ago
parent
commit
53f0d12768
  1. 4
      blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java
  2. 6
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java
  3. 20
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java
  4. 1
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java
  5. 9
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml
  6. 2
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java
  7. 19
      blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java
  8. 4
      blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/service/impl/MtFactoryDataServiceImpl.java
  9. 10
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java
  10. 17
      blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java

4
blade-service-api/logpm-distribution-api/src/main/java/com/logpm/distribution/feign/IDistributionParcelListClient.java

@ -59,4 +59,8 @@ public interface IDistributionParcelListClient {
@PostMapping(API_PREFIX+"/add")
boolean add(@RequestBody DistributionParcelListEntity entity);
@PostMapping(API_PREFIX+"/submitNumByOrderIdAndName")
boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num);
}

6
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionParcelListClient.java

@ -74,4 +74,10 @@ public class DistributionParcelListClient implements IDistributionParcelListClie
return distributionParcelListService.save(entity);
}
@Override
@PostMapping(API_PREFIX+"/submitNumByOrderIdAndName")
public boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num) {
return distributionParcelListService.submitNumByOrderIdAndName(articleId,productName,num);
}
}

20
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/feign/DistributionStockArticleClient.java

@ -18,7 +18,9 @@ package com.logpm.distribution.feign;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.entity.DistributionParcelListEntity;
import com.logpm.distribution.entity.DistributionStockArticleEntity;
import com.logpm.distribution.service.IDistributionParcelListService;
import com.logpm.distribution.service.IDistributionStockArticleService;
import lombok.AllArgsConstructor;
import org.springblade.core.mp.support.BladePage;
@ -29,6 +31,8 @@ import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
/**
* 配送在库订单 Feign实现类
*
@ -41,6 +45,7 @@ import springfox.documentation.annotations.ApiIgnore;
public class DistributionStockArticleClient implements IDistributionStockArticleClient {
private final IDistributionStockArticleService distributionStockArticleService;
private final IDistributionParcelListService distributionParcelListService;
@Override
@GetMapping(TOP)
@ -93,9 +98,18 @@ public class DistributionStockArticleClient implements IDistributionStockArticle
@Override
public void deleteById(Long orderId) {
DistributionStockArticleEntity entity = distributionStockArticleService.getById(orderId);
entity.setIsDeleted(1);
distributionStockArticleService.saveOrUpdate(entity);
QueryWrapper<DistributionParcelListEntity> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("stock_article_id",orderId);
List<DistributionParcelListEntity> list = distributionParcelListService.list(queryWrapper);
Integer num = new Integer("0");
for (DistributionParcelListEntity distributionParcelListEntity:list){
num = num + distributionParcelListEntity.getQuantity();
}
if(num.compareTo(new Integer("0")) == 0){
DistributionStockArticleEntity entity = distributionStockArticleService.getById(orderId);
entity.setIsDeleted(1);
distributionStockArticleService.saveOrUpdate(entity);
}
}
}

1
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.java

@ -51,4 +51,5 @@ public interface DistributionParcelListMapper extends BaseMapper<DistributionPar
*/
List<DistributionParcelListExcel> exportDistributionParcelList(@Param("ew") Wrapper<DistributionParcelListEntity> queryWrapper);
int submitNumByOrderIdAndName(@Param("articleId") Long articleId,@Param("productName") String productName, @Param("num") Integer num);
}

9
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/mapper/DistributionParcelListMapper.xml

@ -42,4 +42,13 @@
SELECT * FROM logpm_distribution_parcel_list ${ew.customSqlSegment}
</select>
<update id="submitNumByOrderIdAndName">
update logpm_distribution_parcel_list
set quantity = quantity - #{num}
where stock_article_id = #{articleId}
and material_name = #{productName}
and quantity - #{num} >= 0
</update>
</mapper>

2
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/IDistributionParcelListService.java

@ -49,4 +49,6 @@ public interface IDistributionParcelListService extends BaseService<Distribution
*/
List<DistributionParcelListExcel> exportDistributionParcelList(Wrapper<DistributionParcelListEntity> queryWrapper);
boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num);
}

19
blade-service/logpm-distribution/src/main/java/com/logpm/distribution/service/impl/DistributionParcelListServiceImpl.java

@ -16,15 +16,16 @@
*/
package com.logpm.distribution.service.impl;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.entity.DistributionParcelListEntity;
import com.logpm.distribution.vo.DistributionParcelListVO;
import com.logpm.distribution.excel.DistributionParcelListExcel;
import com.logpm.distribution.mapper.DistributionParcelListMapper;
import com.logpm.distribution.service.IDistributionParcelListService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.logpm.distribution.vo.DistributionParcelListVO;
import org.springblade.core.mp.base.BaseServiceImpl;
import org.springframework.stereotype.Service;
import java.util.List;
/**
@ -51,4 +52,14 @@ public class DistributionParcelListServiceImpl extends BaseServiceImpl<Distribut
return distributionParcelListList;
}
@Override
public boolean submitNumByOrderIdAndName(Long articleId, String productName, Integer num) {
int i = baseMapper.submitNumByOrderIdAndName(articleId,productName,num);
if(i == 1){
return true;
}else{
return false;
}
}
}

4
blade-service/logpm-factory/src/main/java/com/logpm/factory/mt/service/impl/MtFactoryDataServiceImpl.java

@ -246,15 +246,15 @@ public class MtFactoryDataServiceImpl implements IMtFactoryDataService {
String pwd = MD5Utils.md5Hex(userpwd.getBytes(StandardCharsets.UTF_8));
JSONObject jsonObject1 =new JSONObject();
jsonObject1.put("APPKEY",appkey);
jsonObject1.put("appkey",sign);
jsonObject1.put("SIGN",sign);
jsonObject1.put("USERID",userid);
jsonObject1.put("USERPWD",pwd);
jsonObject1.put("Timestamp",time);
logger.info("##############getMengtianToken: 获取梦天token请求参数 {}",jsonObject1);
String result = HttpRequest.post(mtFactoryProperties.getUrl()+"/Auth/Validate")
.header("Content-Type","application/json").body(jsonObject1.toJSONString()).timeout(5 * 1000)
.execute()
.body();
logger.info("##############getMengtianToken: 获取梦天token返回参数 {}",result);
//获取的结果转成json对象
JSONObject jsonObject = JSONObject.parseObject(result);
logger.info("##############getMengtianToken: 获取梦天token返回参数 {}",result);

10
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/controller/WarehouseWaybillController.java

@ -172,17 +172,17 @@ public class WarehouseWaybillController extends BladeController {
return R.fail(405,"当前在库订单已进入配送流程");
}
//判断拆单后的数值是否等于总数量
Integer total = new Integer("1");
Integer total = new Integer("0");
for (SplitOrderDTO splitOrderDTO:splitOrderDTOList){
List<ProductDTO> products = splitOrderDTO.getProducts();
for (ProductDTO productDTO:products){
total = total + productDTO.getNum();
}
}
if(!totalCount.equals(total)){
log.warn("################splitOrder: 拆单数量不等于总数量 waybillNo={}",waybillNo);
return R.fail(405,"拆单数量不等于总数量");
}
// if(!totalCount.equals(total)){
// log.warn("################splitOrder: 拆单数量不等于总数量 waybillNo={}",waybillNo);
// return R.fail(405,"拆单数量不等于总数量");
// }
try{
//拆单操作

17
blade-service/logpm-warehouse/src/main/java/com/logpm/warehouse/service/impl/WarehouseWaybillServiceImpl.java

@ -179,6 +179,9 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl<WarehouseWaybil
}
warehouseWayBillDetailService.addList(ls);
//创建在库订单
createStockArticle(warehouseWaybill);
//判断是否需要创建在库订单
if (allNum.compareTo(number) == 0) {
isOrder = true;
@ -331,6 +334,8 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl<WarehouseWaybil
@Transactional
public void splitOrder(List<SplitOrderDTO> splitOrderDTOList, DistributionStockArticleEntity distributionStockArticleEntity) {
log.info("###########splitOrder: 开始拆单 ");
Long articleId = distributionStockArticleEntity.getId();
List<ProductDTO> submitList = new ArrayList<>();
for (int i = 0; i < splitOrderDTOList.size();i++){
SplitOrderDTO splitOrderDTO = splitOrderDTOList.get(i);
DistributionStockArticleEntity entity = new DistributionStockArticleEntity();
@ -354,6 +359,7 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl<WarehouseWaybil
distributionParcelListEntity.setMaterialName(productDTO.getProductName());
distributionParcelListEntity.setQuantity(productDTO.getNum());
list.add(distributionParcelListEntity);
submitList.add(productDTO);
}
entity.setDescriptionGoods(stringBuffer.toString());
entity.setTotalNumber(allNum);
@ -391,7 +397,16 @@ public class WarehouseWaybillServiceImpl extends BaseServiceImpl<WarehouseWaybil
log.warn("###########splitOrder: 保存包件数据失败");
throw new CustomerException(405,"保存包件数据失败");
}
//删除主订单包件对应数据
for (ProductDTO productDTO:submitList){
String productName = productDTO.getProductName();
Integer num = productDTO.getNum();
boolean submitFlag = distributionParcelListClient.submitNumByOrderIdAndName(articleId,productName,num);
if(!submitFlag){
log.warn("###########splitOrder: 减掉包件数量失败 articleId={},productName={},num={}",articleId,productName,num);
throw new CustomerException(405,"减掉包件数量失败");
}
}
}
}

Loading…
Cancel
Save