| package com.matrix.system.app.action; | 
|   | 
| import com.matrix.core.constance.MatrixConstance; | 
| import com.matrix.core.pojo.AjaxResult; | 
| import com.matrix.core.pojo.PaginationVO; | 
| import com.matrix.core.tools.WebUtil; | 
| import com.matrix.system.app.dto.StoreInOutListDto; | 
| import com.matrix.system.app.dto.StoreListDto; | 
| import com.matrix.system.app.mapper.SysStoreInfoMapper; | 
| import com.matrix.system.app.vo.StoreInOutListVo; | 
| import com.matrix.system.app.vo.StoreListVo; | 
| import com.matrix.system.common.bean.SysUsers; | 
| import com.matrix.system.common.tools.DataAuthUtil; | 
| import com.matrix.system.hive.bean.SysStoreInfo; | 
| import com.matrix.system.hive.dao.SysStoreInfoDao; | 
| import com.matrix.system.hive.pojo.StoreInOutRecordVO; | 
| import io.swagger.annotations.Api; | 
| import io.swagger.annotations.ApiOperation; | 
| import io.swagger.annotations.ApiResponse; | 
| import io.swagger.annotations.ApiResponses; | 
| import org.springframework.beans.factory.annotation.Autowired; | 
| import org.springframework.validation.annotation.Validated; | 
| import org.springframework.web.bind.annotation.*; | 
|   | 
| import java.util.List; | 
|   | 
| /** | 
|  * @author wzy | 
|  * @date 2020-12-27 | 
|  **/ | 
| @Api(value = "ApiStoreAction", tags = "库存管理接口类") | 
| @RestController | 
| @RequestMapping(value = "/api/store") | 
| public class ApiStoreAction { | 
|   | 
|     @Autowired | 
|     private SysStoreInfoDao sysStoreInfoDao; | 
|   | 
|     @ApiOperation(value = "获取库存列表", notes = "获取库存列表") | 
|     @ApiResponses({ | 
|             @ApiResponse(code = 200, message = "ok", response = StoreListVo.class) | 
|     }) | 
|     @PostMapping(value = "/findStoreList") | 
|     public AjaxResult findStoreList(@RequestBody @Validated StoreListDto storeListDto) { | 
|         SysStoreInfo sysStoreInfo = new SysStoreInfo(); | 
|   | 
|         SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); | 
|         sysStoreInfo.setShopId(users.getShopId()); | 
|         sysStoreInfo.setCompanyId(users.getCompanyId()); | 
|         sysStoreInfo.setQueryKey(storeListDto.getQueryKey()); | 
|         PaginationVO pageVo = new PaginationVO(); | 
|         pageVo.setOffset((storeListDto.getPageNum() - 1) * storeListDto.getPageSize()); | 
|         pageVo.setLimit(storeListDto.getPageSize()); | 
|         pageVo.setSort("c.goods_no"); | 
|         pageVo.setOrder("asc"); | 
|   | 
|         List<SysStoreInfo> dataList = sysStoreInfoDao.selectCountInPage(sysStoreInfo, pageVo); | 
|         List<StoreListVo> resultList = SysStoreInfoMapper.INSTANCE.entitiesToStoreVos(dataList); | 
|   | 
|         return new AjaxResult(AjaxResult.STATUS_SUCCESS,  resultList, sysStoreInfoDao.selectCountTotalRecord(sysStoreInfo)); | 
|     } | 
|   | 
|     @ApiOperation(value = "获取商品出入库列表", notes = "获取商品出入库列表") | 
|     @ApiResponses({ | 
|             @ApiResponse(code = 200, message = "ok", response = StoreInOutListVo.class) | 
|     }) | 
|     @PostMapping(value = "/findGoodsInOutInfo") | 
|     public AjaxResult findGoodsInOutInfo(@RequestBody @Validated StoreInOutListDto storeInOutListDto) { | 
|         StoreInOutRecordVO inOutRecordVO = new StoreInOutRecordVO(); | 
|         inOutRecordVO.setBeginTime(storeInOutListDto.getStartTime()); | 
|         inOutRecordVO.setEndTime(storeInOutListDto.getEndTime()); | 
|         inOutRecordVO.setName(storeInOutListDto.getCode()); | 
|   | 
|         PaginationVO pageVo = new PaginationVO(); | 
|         pageVo.setOffset((storeInOutListDto.getPageNum() - 1) * storeInOutListDto.getPageSize()); | 
|         pageVo.setLimit(storeInOutListDto.getPageSize()); | 
|         List<StoreInOutRecordVO> dataList =sysStoreInfoDao.findStoreInOutRecord(inOutRecordVO,pageVo); | 
|         List<StoreInOutListVo> list = SysStoreInfoMapper.INSTANCE.recordVosToInOutListVos(dataList); | 
|         return AjaxResult.buildSuccessInstance(list,sysStoreInfoDao.findStoreInOutTotal(inOutRecordVO)); | 
|     } | 
|   | 
| } |