|
|
@@ -16,6 +16,9 @@
|
|
|
*/
|
|
|
package org.springblade.stock.controller;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
@@ -25,13 +28,20 @@ import lombok.AllArgsConstructor;
|
|
|
import javax.servlet.http.HttpServletResponse;
|
|
|
import javax.validation.Valid;
|
|
|
|
|
|
+import org.springblade.client.entity.CorpsDesc;
|
|
|
+import org.springblade.client.feign.ICorpsDescClient;
|
|
|
+import org.springblade.client.feign.IGoodsDescClient;
|
|
|
+import org.springblade.client.vo.GoodsDescVO;
|
|
|
import org.springblade.core.excel.util.ExcelUtil;
|
|
|
import org.springblade.core.mp.support.Condition;
|
|
|
import org.springblade.core.mp.support.Query;
|
|
|
+import org.springblade.core.secure.utils.SecureUtil;
|
|
|
import org.springblade.core.tool.api.R;
|
|
|
import org.springblade.core.tool.utils.Func;
|
|
|
import org.springblade.stock.excel.StockGoodsExcel;
|
|
|
import org.springblade.stock.excel.StockGoodsImport;
|
|
|
+import org.springblade.system.user.entity.User;
|
|
|
+import org.springblade.system.user.feign.IUserClient;
|
|
|
import org.springframework.web.bind.annotation.*;
|
|
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
|
|
import org.springblade.stock.entity.StockGoods;
|
|
|
@@ -56,6 +66,9 @@ import java.util.List;
|
|
|
public class StockGoodsController extends BladeController {
|
|
|
|
|
|
private final IStockGoodsService stockGoodsService;
|
|
|
+ private ICorpsDescClient corpsDescClient;//获取客户信息
|
|
|
+ private IGoodsDescClient goodsDescClient;//商品信息
|
|
|
+ private IUserClient userClient;//用户信息
|
|
|
|
|
|
/**
|
|
|
* 详情
|
|
|
@@ -74,8 +87,64 @@ public class StockGoodsController extends BladeController {
|
|
|
@GetMapping("/list")
|
|
|
@ApiOperationSupport(order = 2)
|
|
|
@ApiOperation(value = "分页", notes = "传入stockGoods")
|
|
|
- public R<IPage<StockGoods>> list(StockGoods stockGoods, Query query) {
|
|
|
- IPage<StockGoods> pages = stockGoodsService.listMessage(Condition.getPage(query), Condition.getQueryWrapper(stockGoods));
|
|
|
+ public R<IPage<StockGoods>> list(StockGoodsVO stockGoods, Query query) {
|
|
|
+ List<Long> list = new ArrayList<>();
|
|
|
+ if (stockGoods != null){
|
|
|
+ list = goodsDescClient.getGoodId(stockGoods.getCode(),stockGoods.getCname(),stockGoods.getBrand(),stockGoods.getBrandItem(),
|
|
|
+ stockGoods.getPlaceProduction(),stockGoods.getTypeno(),stockGoods.getTypenoOne());
|
|
|
+ }
|
|
|
+ LambdaQueryWrapper<StockGoods> lambdaQueryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ lambdaQueryWrapper.eq(StockGoods::getTenantId, SecureUtil.getTenantId());
|
|
|
+ lambdaQueryWrapper.eq(StockGoods::getIsDeleted,0);
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getCode()),StockGoods::getCode,stockGoods.getCode());//编码
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getCname()),StockGoods::getCname,stockGoods.getCname());//名称
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrandItem()),StockGoods::getBrandItem,stockGoods.getBrandItem());//花纹
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getPlaceProduction()),StockGoods::getPlaceProduction,stockGoods.getPlaceProduction());//产地
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getBrand()),StockGoods::getBrand,stockGoods.getBrand());//品牌
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypeno()),StockGoods::getTypeno,stockGoods.getTypeno());//规格
|
|
|
+ lambdaQueryWrapper.like(Func.isNotEmpty(stockGoods.getTypenoOne()),StockGoods::getTypenoOne,stockGoods.getTypenoOne());//规格1
|
|
|
+ lambdaQueryWrapper.ge(Func.isNotEmpty(stockGoods.getCreateStartTime()),StockGoods::getCreateTime,stockGoods.getCreateStartTime());//制单日期开始
|
|
|
+ lambdaQueryWrapper.le(Func.isNotEmpty(stockGoods.getCreateEndTime()),StockGoods::getCreateTime,stockGoods.getCreateEndTime());//制单日期结束
|
|
|
+ lambdaQueryWrapper.or();
|
|
|
+ lambdaQueryWrapper.in(Func.isNotEmpty(list),StockGoods::getGoodsId,list);
|
|
|
+ IPage<StockGoods> pages = stockGoodsService.page(Condition.getPage(query), lambdaQueryWrapper);
|
|
|
+ if (CollectionUtils.isNotEmpty(pages.getRecords())){
|
|
|
+ pages.getRecords().stream().forEach(item ->{
|
|
|
+ //获取商品信息
|
|
|
+ R<GoodsDescVO> goodsMessage = goodsDescClient.selectGoodsMessage(item.getGoodsId());
|
|
|
+ if (goodsMessage.isSuccess() && goodsMessage.getData() != null){
|
|
|
+ if (StringUtils.isNotBlank(goodsMessage.getData().getBrand())){
|
|
|
+ item.setBrand(goodsMessage.getData().getBrand());
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(goodsMessage.getData().getBrandItem())){
|
|
|
+ item.setBrandItem(goodsMessage.getData().getBrandItem());
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(goodsMessage.getData().getTypeno())){
|
|
|
+ item.setTypeno(goodsMessage.getData().getTypeno());
|
|
|
+ }
|
|
|
+ item.setCname(goodsMessage.getData().getCname());
|
|
|
+ item.setCode(goodsMessage.getData().getCode());
|
|
|
+ }
|
|
|
+ //获取客户信息
|
|
|
+ R<CorpsDesc> corpMessage = corpsDescClient.getCorpMessage(item.getCorpId());
|
|
|
+ if (corpMessage.isSuccess() && corpMessage.getData() != null){
|
|
|
+ item.setCorpName(corpMessage.getData().getCname());
|
|
|
+ }
|
|
|
+ //获取用户信息
|
|
|
+ if (item.getCreateUser() != null){
|
|
|
+ R<User> createUser = userClient.userInfoById(item.getCreateUser());
|
|
|
+ if (createUser.isSuccess() && createUser.getData() != null){
|
|
|
+ item.setCreateUserName(createUser.getData().getName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (item.getUpdateUser() != null){
|
|
|
+ R<User> updateUser = userClient.userInfoById(item.getUpdateUser());
|
|
|
+ if (updateUser.isSuccess() && updateUser.getData() != null){
|
|
|
+ item.setUpdateUserName(updateUser.getData().getName());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
return R.data(pages);
|
|
|
}
|
|
|
|