From feffc7d9e34bdb1518ac32263aaa3d41d52bf06b Mon Sep 17 00:00:00 2001 From: youjie <272855983@qq.com> Date: Thu, 13 Jul 2023 17:39:11 +0800 Subject: [PATCH] 增加用户库区 --- ant-design-vue-jeecg/src/views/system/UserList.vue | 31 ++++++++++++++++++++++++++++++- ant-design-vue-jeecg/src/views/system/modules/UserModal.vue | 26 ++++++++++++++++++++++++-- huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysUserController.java | 6 ++++-- huaheng-wms-core/src/main/java/org/jeecg/modules/system/entity/SysUser.java | 20 ++++++++++++++++++-- huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/ISysUserService.java | 5 +++-- huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java | 33 ++++++++++++++++++++++++++++++--- huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java | 60 +++++++++++++++++++++++++++++++++++------------------------- huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java | 8 ++++++-- huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java | 11 +++++++++-- huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java | 35 +++++++++++++++++++++++++---------- 10 files changed, 184 insertions(+), 51 deletions(-) diff --git a/ant-design-vue-jeecg/src/views/system/UserList.vue b/ant-design-vue-jeecg/src/views/system/UserList.vue index 6f6c0f8..b5d26a3 100644 --- a/ant-design-vue-jeecg/src/views/system/UserList.vue +++ b/ant-design-vue-jeecg/src/views/system/UserList.vue @@ -119,6 +119,12 @@ </a-tag> </span> + <span slot="zoneCodes" slot-scope="zoneCodes" > + <a-tag v-for="zoneCode in zoneCodes" :key="zoneCode" color=pink> + {{ solutionZoneCode(zoneCode) }} + </a-tag> + </span> + <template slot="avatarslot" slot-scope="text, record"> <div class="anty-img-wrap"> <a-avatar shape="square" :src="getAvatarView(record.avatar)" icon="user"/> @@ -190,7 +196,7 @@ import UserModal from './modules/UserModal' import PasswordModal from './modules/PasswordModal' import {putAction, getFileAccessHttpUrl} from '@/api/manage'; -import {frozenBatch, getAllWarehouseList, queryall} from '@/api/api' +import {frozenBatch, getAllWarehouseList, queryall, getZoneList} from '@/api/api' import {JeecgListMixin} from '@/mixins/JeecgListMixin' import SysUserAgentModal from "./modules/SysUserAgentModal"; import JInput from '@/components/jeecg/JInput' @@ -216,6 +222,7 @@ export default { queryParam: {}, recycleBinVisible: false, allWarehouseList: [], + zoneList: [], rolesOptions: [], columns: [ /*{ @@ -287,6 +294,13 @@ export default { key: 'selectedWarehouses', scopedSlots: {customRender: 'selectedWarehouses'} }, + { + title: '所属库区', + align: "center", + dataIndex: 'zoneCodes', + key: 'zoneCodes', + scopedSlots: {customRender: 'zoneCodes'} + }, // { // title: '部门', // align: "center", @@ -338,6 +352,11 @@ export default { }, methods: { loadFrom() { + getZoneList().then((res) => { + if (res.success) { + this.zoneList = res.result + } + }); getAllWarehouseList().then((res) => { if (res.success) { this.allWarehouseList = res.result @@ -363,6 +382,16 @@ export default { }) return actions.join('') }, + solutionZoneCode(value) { + var actions = [] + Object.keys(this.zoneList).some((key) => { + if (this.zoneList[key].code == ('' + value)) { + actions.push(this.zoneList[key].name) + return true + } + }) + return actions.join('') + }, solutionRole(value) { var actions = [] Object.keys(this.rolesOptions).some((key) => { diff --git a/ant-design-vue-jeecg/src/views/system/modules/UserModal.vue b/ant-design-vue-jeecg/src/views/system/modules/UserModal.vue index b92cbd4..9cd210c 100644 --- a/ant-design-vue-jeecg/src/views/system/modules/UserModal.vue +++ b/ant-design-vue-jeecg/src/views/system/modules/UserModal.vue @@ -70,6 +70,15 @@ </j-multi-select-tag> </a-form-model-item> + <a-form-model-item label="库区分配" :labelCol="labelCol" :wrapperCol="wrapperCol" v-show="!warehouseDisable" prop="selectedZoneCode"> + <j-multi-select-tag + :disabled="disableSubmit" + v-model="model.selectedZoneCode" + :options="zoneOptions" + placeholder="请选择仓库"> + </j-multi-select-tag> + </a-form-model-item> + <!--部门分配--> <!-- <a-form-model-item label="部门分配" :labelCol="labelCol" :wrapperCol="wrapperCol" v-show="!departDisabled"> <j-select-depart v-model="model.selecteddeparts" :multi="true" @back="backDepartInfo" :backDepart="true" :treeOpera="true"> @@ -153,7 +162,7 @@ import moment from 'moment' import Vue from 'vue' import {ACCESS_TOKEN} from "@/store/mutation-types" import {getAction} from '@/api/manage' -import {addUser, editUser, queryUserRole, queryall, queryWarehouse, getAllWarehouseList} from '@/api/api' +import {addUser, editUser, queryUserRole, queryall, queryWarehouse, getAllWarehouseList, getAllZoneList} from '@/api/api' import {disabledAuthFilter} from "@/utils/authFilter" import {duplicateCheck} from '@/api/api' @@ -216,6 +225,7 @@ export default { queryTenantList: '/sys/tenant/queryList' }, tenantsOptions: [], + zoneOptions:[], warehouseOptions: [], rolesOptions: [], nextDepartOptions: [], @@ -227,6 +237,7 @@ export default { this.initRoleList() this.initWarehouseList() this.initTenantList() + this.initZoneList() }, computed: { uploadAction: function () { @@ -244,7 +255,7 @@ export default { //根据屏幕宽度自适应抽屉宽度 this.resetScreenSize(); that.userId = record.id; - that.model = Object.assign({}, {selectedRoles: '', selectedWarehouse: '',selecteddeparts: ''}, record); + that.model = Object.assign({}, {selectedRoles: '', selectedWarehouse: '',selecteddeparts: '', selectedZoneCode: ''}, record); //身份为上级显示负责部门,否则不显示 if (this.model.userIdentity == 2) { this.departIdShow = true; @@ -315,6 +326,17 @@ export default { } }); }, + initZoneList() { + getAllZoneList().then((res) => { + if (res.success) { + this.zoneOptions = res.result.map((item, index, arr) => { + let c = {label: item.name, value: item.code} + return c; + }) + console.log('this.zoneOptions: ', this.zoneOptions) + } + }); + }, getWarehouse(userid) { queryWarehouse({userid: userid}).then((res) => { if (res.success) { diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysUserController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysUserController.java index aaeb663..2317dec 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysUserController.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/controller/SysUserController.java @@ -172,6 +172,7 @@ public class SysUserController { Result<SysUser> result = new Result<SysUser>(); String selectedRoles = jsonObject.getString("selectedRoles"); String selectedWarehouse = jsonObject.getString("selectedWarehouse"); + String selectedZoneCode = jsonObject.getString("selectedZoneCode"); String selectedDeparts = jsonObject.getString("selecteddeparts"); try { SysUser user = JSON.parseObject(jsonObject.toJSONString(), SysUser.class); @@ -186,7 +187,7 @@ public class SysUserController { throw new ServiceException("仓库不能为空"); } // 保存用户走一个service 保证事务 - sysUserService.saveUser(user, selectedRoles, selectedDeparts, selectedWarehouse); + sysUserService.saveUser(user, selectedRoles, selectedDeparts, selectedWarehouse, selectedZoneCode); result.success("添加成功!"); } catch (Exception e) { log.error(e.getMessage(), e); @@ -213,6 +214,7 @@ public class SysUserController { user.setPassword(sysUser.getPassword()); String roles = jsonObject.getString("selectedRoles"); String selectedWarehouse = jsonObject.getString("selectedWarehouse"); + String selectedZoneCode = jsonObject.getString("selectedZoneCode"); String departs = jsonObject.getString("selecteddeparts"); if (oConvertUtils.isEmpty(departs)) { // vue3.0前端只传递了departIds @@ -222,7 +224,7 @@ public class SysUserController { throw new ServiceException("仓库不能为空"); } // 修改用户走一个service 保证事务 - sysUserService.editUser(user, roles, departs, selectedWarehouse); + sysUserService.editUser(user, roles, departs, selectedWarehouse, selectedZoneCode); result.success("修改成功!"); } } catch (Exception e) { diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/entity/SysUser.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/entity/SysUser.java index de78f2e..4673056 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/entity/SysUser.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/entity/SysUser.java @@ -193,14 +193,30 @@ public class SysUser implements Serializable { /** 设备id uniapp推送用 */ private String clientId; - + + /** 所属库区 **/ + private String zoneCode; + @TableField(exist = false) private List<String> selectedWarehouses; - + public void setSelectedWarehouse(String selectedWarehouse) { if (!StringUtils.isEmpty(selectedWarehouse)) { this.selectedWarehouse = selectedWarehouse; this.selectedWarehouses = Arrays.asList(selectedWarehouse.split(",")); } } + + @TableField(exist = false) + private List<String> zoneCodes; + + public void setZoneCode(String zoneCode) { + if (!StringUtils.isEmpty(zoneCode)) { + this.zoneCode = zoneCode; + this.zoneCodes = Arrays.asList(zoneCode.split(",")); + } else { + this.zoneCode = zoneCode; + } + } + } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/ISysUserService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/ISysUserService.java index 093b8a0..390e9db 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/ISysUserService.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/ISysUserService.java @@ -231,7 +231,7 @@ public interface ISysUserService extends IService<SysUser> { * @param selectedRoles 选择的角色id,多个以逗号隔开 * @param selectedDeparts 选择的部门id,多个以逗号隔开 */ - void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedWarehouse); + void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedWarehouse, String selectedZoneCode); /** * 编辑用户 @@ -239,7 +239,7 @@ public interface ISysUserService extends IService<SysUser> { * @param roles 选择的角色id,多个以逗号隔开 * @param departs 选择的部门id,多个以逗号隔开 */ - void editUser(SysUser user, String roles, String departs, String selectedWarehouse); + void editUser(SysUser user, String roles, String departs, String selectedWarehouse, String selectedZoneCode); /** userId转为username */ List<String> userIdToUsername(Collection<String> userIdList); @@ -251,4 +251,5 @@ public interface ISysUserService extends IService<SysUser> { */ public List<Map<String, Object>> getWarehouseByUserCode(String userCode); + public SysUser getUserByRealName(String realName); } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java index 49bf95c..4f9124d 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/system/service/impl/SysUserServiceImpl.java @@ -23,10 +23,10 @@ import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.system.vo.SysUserDepVo; import org.jeecg.modules.wms.config.sysUserWarehouse.entity.SysUserWarehouse; import org.jeecg.modules.wms.config.sysUserWarehouse.service.ISysUserWarehouseService; -import org.jeecg.modules.wms.config.warehouse.entity.Warehouse; import org.jeecg.modules.wms.config.warehouse.service.IWarehouseService; import org.jeecg.utils.HuahengJwtUtil; import org.jeecg.utils.StringUtils; +import org.jeecg.utils.constant.QuantityConstant; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.CacheEvict; import org.springframework.stereotype.Service; @@ -489,7 +489,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl @Override @Transactional(rollbackFor = Exception.class) - public void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedWarehouse) { + public void saveUser(SysUser user, String selectedRoles, String selectedDeparts, String selectedWarehouse, String selectedZoneCode) { // step.1 保存用户 this.save(user); // step.2 保存角色 @@ -520,12 +520,20 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl } } } + + SysUser sysUser = new SysUser(); + sysUser.setId(user.getId()); + sysUser.setZoneCode(selectedZoneCode); + if (!sysUserService.updateById(sysUser)) { + throw new JeecgBootException("更新用户库区失败"); + } + } @Override @Transactional(rollbackFor = Exception.class) @CacheEvict(value = {CacheConstant.SYS_USERS_CACHE}, allEntries = true) - public void editUser(SysUser user, String roles, String departs, String selectedWarehouse) { + public void editUser(SysUser user, String roles, String departs, String selectedWarehouse, String selectedZoneCode) { // step.1 修改用户基础信息 this.updateById(user); // step.2 修改角色 @@ -593,6 +601,17 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl } } } + + SysUser sysUser = new SysUser(); + sysUser.setId(user.getId()); + if (StringUtils.isEmpty(selectedZoneCode)) { + sysUser.setZoneCode(QuantityConstant.EMPTY_STRING); + } else { + sysUser.setZoneCode(selectedZoneCode); + } + if (!sysUserService.updateById(sysUser)) { + throw new JeecgBootException("更新用户库区失败"); + } } @Override @@ -617,4 +636,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl return userMapper.getWarehouseByUserName(username); } + @Override + public SysUser getUserByRealName(String realName) { + LambdaQueryWrapper<SysUser> sysUserLambdaQueryWrapper = Wrappers.lambdaQuery(); + sysUserLambdaQueryWrapper.eq(SysUser::getRealname, realName); + SysUser sysUser = getOne(sysUserLambdaQueryWrapper); + return sysUser; + } + } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java index f503e32..456bc59 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java @@ -2,45 +2,36 @@ package org.jeecg.modules.wms.config.zone.controller; import java.util.Arrays; import java.util.List; -import java.util.Map; -import java.util.stream.Collectors; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; + +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.jeecg.common.api.vo.Result; +import org.jeecg.common.aspect.annotation.AutoLog; +import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; -import org.jeecg.utils.HuahengJwtUtil; -import org.jeecg.common.util.oConvertUtils; - -import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import com.baomidou.mybatisplus.core.metadata.IPage; -import com.baomidou.mybatisplus.extension.plugins.pagination.Page; -import lombok.extern.slf4j.Slf4j; - +import org.jeecg.modules.system.entity.SysUser; +import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.wms.config.zone.entity.Zone; import org.jeecg.modules.wms.config.zone.service.IZoneService; +import org.jeecg.utils.HuahengJwtUtil; import org.jeecg.utils.StringUtils; -import org.jeecgframework.poi.excel.ExcelImportUtil; -import org.jeecgframework.poi.excel.def.NormalExcelConstants; -import org.jeecgframework.poi.excel.entity.ExportParams; -import org.jeecgframework.poi.excel.entity.ImportParams; -import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; -import org.jeecg.common.system.base.controller.JeecgController; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; -import org.springframework.web.multipart.MultipartFile; -import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; -import com.alibaba.fastjson.JSON; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; + +import cn.hutool.core.util.StrUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; -import org.jeecg.common.aspect.annotation.AutoLog; +import lombok.extern.slf4j.Slf4j; /** * @Description: 库区管理 @@ -56,6 +47,9 @@ public class ZoneController extends JeecgController<Zone, IZoneService> { @Autowired private IZoneService zoneService; + @Resource + private ISysUserService sysUserService; + /** * 分页列表查询 * @param zone @@ -180,7 +174,23 @@ public class ZoneController extends JeecgController<Zone, IZoneService> { public Result<?> getZoneList(HttpServletRequest req) { LambdaQueryWrapper<Zone> zoneLambdaQueryWrapper = Wrappers.lambdaQuery(); HuahengJwtUtil.setWarehouseCode(zoneLambdaQueryWrapper, Zone.class, req); + String realName = HuahengJwtUtil.getCurrentOperator(); + if (StringUtils.isNotEmpty(realName)) { + SysUser sysUser = sysUserService.getUserByRealName(realName); + if (StringUtils.isNotEmpty(sysUser.getZoneCode())) { + zoneLambdaQueryWrapper.in(Zone::getCode, Arrays.asList(sysUser.getZoneCode().split(StrUtil.COMMA))); + } + } List<Zone> zoneList = zoneService.list(zoneLambdaQueryWrapper); return Result.OK(zoneList); } + + @RequestMapping(value = "/getAllZoneList", method = RequestMethod.GET) + public Result<List<Zone>> getAllZoneList() { + Result<List<Zone>> result = new Result<>(); + List<Zone> list = zoneService.getAllZoneList(); + result.setResult(list); + result.setSuccess(true); + return result; + } } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java index 39fd657..5961946 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java @@ -1,9 +1,11 @@ package org.jeecg.modules.wms.config.zone.service; -import com.baomidou.mybatisplus.extension.service.IService; -import org.jeecg.modules.wms.config.location.entity.Location; +import java.util.List; + import org.jeecg.modules.wms.config.zone.entity.Zone; +import com.baomidou.mybatisplus.extension.service.IService; + /** * @Description: 库区管理 * @Author: jeecg-boot @@ -13,4 +15,6 @@ import org.jeecg.modules.wms.config.zone.entity.Zone; public interface IZoneService extends IService<Zone> { Zone getZoneByCode(String zoneCode, String wareohuseCode); + + public List<Zone> getAllZoneList(); } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java index 73af468..bb31fd3 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java @@ -1,12 +1,14 @@ package org.jeecg.modules.wms.config.zone.service.impl; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.baomidou.mybatisplus.core.toolkit.Wrappers; +import java.util.List; + import org.jeecg.modules.wms.config.zone.entity.Zone; import org.jeecg.modules.wms.config.zone.mapper.ZoneMapper; import org.jeecg.modules.wms.config.zone.service.IZoneService; import org.springframework.stereotype.Service; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; /** @@ -25,4 +27,9 @@ public class ZoneServiceImpl extends ServiceImpl<ZoneMapper, Zone> implements IZ Zone zone = getOne(zoneLambdaQueryWrapper); return zone; } + + @Override + public List<Zone> getAllZoneList() { + return list(); + } } diff --git a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java index 67d228f..00be7a0 100644 --- a/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java +++ b/huaheng-wms-core/src/main/java/org/jeecg/modules/wms/inventory/inventoryHeader/controller/InventoryHeaderController.java @@ -6,6 +6,7 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -17,11 +18,14 @@ import org.jeecg.common.system.base.controller.JeecgController; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.util.oConvertUtils; +import org.jeecg.modules.system.entity.SysUser; +import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryDetail; import org.jeecg.modules.wms.inventory.inventoryHeader.entity.InventoryHeader; import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryDetailService; import org.jeecg.modules.wms.inventory.inventoryHeader.service.IInventoryHeaderService; import org.jeecg.utils.HuahengJwtUtil; +import org.jeecg.utils.StringUtils; import org.jeecg.utils.constant.QuantityConstant; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; @@ -29,21 +33,15 @@ import org.jeecgframework.poi.excel.entity.ExportParams; import org.jeecgframework.poi.excel.entity.ImportParams; import org.jeecgframework.poi.excel.view.JeecgEntityExcelView; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestMethod; -import org.springframework.web.bind.annotation.RequestParam; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartHttpServletRequest; import org.springframework.web.servlet.ModelAndView; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import io.swagger.annotations.Api; @@ -68,6 +66,8 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, @Autowired private IInventoryDetailService inventoryDetailService; + @Resource + private ISysUserService sysUserService; /*---------------------------------主表处理-begin-------------------------------------*/ /** @@ -84,9 +84,24 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, public Result<IPage<InventoryHeader>> queryPageList(InventoryHeader inventoryHeader, @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, HttpServletRequest req) { HuahengJwtUtil.setWarehouseCode(req, inventoryHeader); + String realName = HuahengJwtUtil.getCurrentOperator(); + String inventoryHeaderZoneCode = inventoryHeader.getZoneCode(); + LambdaQueryWrapper<InventoryHeader> inventoryHeaderLambdaQueryWrapper = Wrappers.lambdaQuery(); QueryWrapper<InventoryHeader> queryWrapper = QueryGenerator.initQueryWrapper(inventoryHeader, req.getParameterMap()); Page<InventoryHeader> page = new Page<InventoryHeader>(pageNo, pageSize); IPage<InventoryHeader> pageList = inventoryHeaderService.page(page, queryWrapper); + if (StringUtils.isEmpty(inventoryHeaderZoneCode)) { + if (StringUtils.isNotEmpty(realName)) { + SysUser sysUser = sysUserService.getUserByRealName(realName); + if (sysUser != null) { + String zoneCode = sysUser.getZoneCode(); + if (StringUtils.isNotEmpty(zoneCode)) { + String[] zoneCodes = zoneCode.split(","); + inventoryHeaderLambdaQueryWrapper.in(InventoryHeader::getZoneCode, Arrays.asList(zoneCodes)); + } + } + } + } return Result.OK(pageList); } @@ -235,7 +250,7 @@ public class InventoryHeaderController extends JeecgController<InventoryHeader, this.inventoryDetailService.removeByIds(Arrays.asList(ids.split(","))); return Result.OK("批量删除成功!"); } - + /** * 导出 * @return -- libgit2 0.22.2