package com.consum.base.controller; import java.lang.reflect.Field; import java.util.ArrayList; import java.util.Map; import javax.annotation.Resource; import org.apache.commons.compress.utils.Lists; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.consum.base.BaseController; import com.consum.base.core.utils.CommonUtil; import com.consum.base.core.utils.MapUtils; import com.consum.base.pojo.LWarehouseFlowParam; import com.consum.base.pojo.response.WarehouseFlowVO; import com.consum.base.service.LWarehouseFlowService; import com.consum.model.po.FinSysTenantUser; import com.iplatform.model.po.S_user_core; import com.walker.db.page.GenericPager; import com.walker.web.ResponseValue; import cn.hutool.core.util.ReflectUtil; import io.swagger.annotations.Api; /** * @ClassName lWarehouseFlowController * @Date 2023/10/27 * @Description * @Version 1.0 **/ @Api(value = "仓库流水", tags = "仓库流水") @RestController @RequestMapping("/pc/warehouse/flow") public class LWarehouseFlowController extends BaseController { @Resource private LWarehouseFlowService lWarehouseFlowServiceImpl; @GetMapping("/list") public ResponseValue queryFormProcureList() { LWarehouseFlowParam param = CommonUtil.getObjFromReq(LWarehouseFlowParam.class); LWarehouseFlowParam param2 = new LWarehouseFlowParam(); CommonUtil.copyProperties(param, param2); param = param2; S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("登录用户信息不存在"); } GenericPager> genericPager = lWarehouseFlowServiceImpl.queryBusinessFlow(param); ArrayList result = Lists.newArrayList(); genericPager.getDatas().forEach(map -> { WarehouseFlowVO warehouseFlowVO = MapUtils.convertMapToObj(MapUtils.toReplaceKeyLow(map), WarehouseFlowVO.class); result.add(warehouseFlowVO); }); try { Field fieldDatas = GenericPager.class.getDeclaredField("datas"); ReflectUtil.setFieldValue(genericPager, fieldDatas, result); } catch (Exception e) { logger.error(e.getMessage(), e); } return ResponseValue.success(genericPager); } @GetMapping("/detail/list") public ResponseValue queryFormProcureList1() { LWarehouseFlowParam param = CommonUtil.getObjFromReq(LWarehouseFlowParam.class); LWarehouseFlowParam param2 = new LWarehouseFlowParam(); CommonUtil.copyProperties(param, param2); param = param2; S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("登录用户信息不存在"); } GenericPager> genericPager = lWarehouseFlowServiceImpl.queryBusinessFlow(param); return ResponseValue.success(genericPager); } @GetMapping("/getTaiZhangList") public ResponseValue getTaiZhangList() { S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("登录用户信息不存在"); } LWarehouseFlowParam param = CommonUtil.getObjFromReq(LWarehouseFlowParam.class); LWarehouseFlowParam param2 = new LWarehouseFlowParam(); CommonUtil.copyProperties(param, param2); param = param2; /*当前登录人只能看到自己机构下的列表*/ FinSysTenantUser sysInfo = this.getSysInfo(); String tenantId = sysInfo.getTenantId(); Long paramAgencyId = param.getAgencyId(); if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) { param.setAgencyId(Long.valueOf(tenantId)); } GenericPager> genericPager = lWarehouseFlowServiceImpl.queryTaiZhangList(param); return ResponseValue.success(genericPager); } /** * 部门台账 * * @return */ @GetMapping("/getDeptTaiZhangList") public ResponseValue getDeptTaiZhangList() { S_user_core currentUser = this.getCurrentUser(); if (currentUser == null) { return ResponseValue.error("登录用户信息不存在"); } LWarehouseFlowParam param = CommonUtil.getObjFromReq(LWarehouseFlowParam.class); LWarehouseFlowParam param2 = new LWarehouseFlowParam(); CommonUtil.copyProperties(param, param2); param = param2; /*当前登录人只能看到自己机构下的列表*/ FinSysTenantUser sysInfo = this.getSysInfo(); String tenantId = sysInfo.getTenantId(); Long paramAgencyId = param.getAgencyId(); if (paramAgencyId == null || !paramAgencyId.toString().startsWith(tenantId)) { param.setAgencyId(Long.valueOf(tenantId)); } GenericPager> genericPager = lWarehouseFlowServiceImpl.queryDeptTaiZhangList(param); return ResponseValue.success(genericPager); } }