Browse Source

将本地与线上功能进行同步

lwx_dev
erdanergou 3 years ago
parent
commit
f60b8df649
  1. 3
      src/main/java/com/dreamchaser/depository_manage/config/PortConfig.java
  2. 60
      src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java
  3. 9
      src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryMapper.java
  4. 15
      src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryMapper.xml
  5. 40
      src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml
  6. 6
      src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java
  7. 13
      src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java
  8. 9
      src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java
  9. 2
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java
  10. 88
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java
  11. 16
      src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java
  12. 40
      src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java
  13. 21
      src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java
  14. 15
      src/main/java/com/dreamchaser/depository_manage/service/impl/RoleServiceImpl.java
  15. 1
      src/main/java/com/dreamchaser/depository_manage/utils/LinkInterfaceUtil.java
  16. 30
      src/main/resources/templates/pages/application/application-transfer.html

3
src/main/java/com/dreamchaser/depository_manage/config/PortConfig.java

@ -28,8 +28,7 @@ public class PortConfig {
// 接口地址
public static String external_url = "http://172.20.2.87:39168";
// public static String external_url = "http://127.0.0.1:39168";
public static String external_url_6666 = "http://172.20.2.87:6666";
// public static String external_url_6666 = "http://127.0.0.1:6666";
public static String external_url_6666 = "http://kpi.hxgk.group/kpiapi";
/**

60
src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java

@ -6,6 +6,7 @@ import com.alibaba.fastjson.JSONObject;
import com.dreamchaser.depository_manage.config.JM_3DES;
import com.dreamchaser.depository_manage.entity.*;
import com.dreamchaser.depository_manage.exception.MyException;
import com.dreamchaser.depository_manage.mapper.MaterialTypeMapper;
import com.dreamchaser.depository_manage.pojo.*;
import com.dreamchaser.depository_manage.security.pool.AuthenticationTokenPool;
import com.dreamchaser.depository_manage.service.*;
@ -52,6 +53,9 @@ public class MaterialController {
@Autowired
SplitUnitService splitUnitService;
@Autowired
MaterialTypeService materialTypeService;
/**
* 根据物料进行查询
@ -61,6 +65,12 @@ public class MaterialController {
*/
@GetMapping("/material")
public RestResponse findMaterial(@RequestParam Map<String, Object> map) {
if(map.containsKey("materialTypeId")){
Long materialTypeId = ObjectFormatUtil.toLong(map.get("materialTypeId"));
List<Long> childForMaterialTypeByParent = materialTypeService.findChildForMaterialTypeByParent(materialTypeId);
map.put("materialTypeIds",childForMaterialTypeByParent);
map.remove("materialTypeId");
}
List<Material> materialPByCondition = materialService.findMaterialPByConditionForTable(map);
return new RestResponse(materialPByCondition, materialService.findCountByCondition(map), 200);
}
@ -159,16 +169,28 @@ public class MaterialController {
if (isadmin == null) {
isadmin = 1;
}
if (isadmin != 4 && Integer.compare(userToken.getMaindeparment(), 361) != 0) {
List<Integer> didList = roleService.findDepositoryIdForUserHas(userToken);
map.put("depositoryIds", didList);
list = materialService.findInventoryByDids(map);
total = materialService.findInventoryCountByDids(map);
} else {
list = materialService.findInventory(map);
total = materialService.findInventoryCount(map);
}
if(map.containsKey("depositoryId")){
// 如果包含仓库id
Integer depositoryId = ObjectFormatUtil.toInteger(map.get("depositoryId"));
// 获取当前仓库下所有可见的仓库
List<Integer> allChildDepositoryById = depositoryService.findAllChildDepositoryById(depositoryId, userToken);
map.put("depositoryIds", allChildDepositoryById);
map.remove("depositoryId");
}
if(map.containsKey("materialTypeId")){
Long materialTypeId = ObjectFormatUtil.toLong(map.get("materialTypeId"));
List<Long> childForMaterialTypeByParent = materialTypeService.findChildForMaterialTypeByParent(materialTypeId);
map.put("materialTypeIds", childForMaterialTypeByParent);
map.remove("materialTypeId");
}
list = materialService.findInventory(map);
total = materialService.findInventoryCount(map);
return new RestResponse(list, total, 200);
}
@ -314,11 +336,11 @@ public class MaterialController {
if (inventoryPS.size() > 0) {
List<Integer> depositoryIdList = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userToken);
List<Integer> tempDepositoryID = new ArrayList<>();
for (InventoryP inventory:inventoryPS
) {
for (InventoryP inventory : inventoryPS
) {
tempDepositoryID.add(inventory.getDepositoryId());
}
tempDepositoryID = (List<Integer>) CollectionUtils.union(depositoryIdList,tempDepositoryID);
tempDepositoryID = (List<Integer>) CollectionUtils.union(depositoryIdList, tempDepositoryID);
List<Depository> depositoryByIds = depositoryService.findDepositoryByIds(tempDepositoryID);
InventoryP materialP = inventoryPS.get(0);
materialP.setMaterialAndBarCodeList(materialByBarCodeByCondition);
@ -427,14 +449,14 @@ public class MaterialController {
List<Integer> depositoryIdList = roleService.findDepositoryIdForUserHas(userToken);
// 获取该用户额外可见的仓库
List<Integer> tempDepositoryIdlist = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userToken);
depositoryIdList= (List<Integer>) CollectionUtils.union(tempDepositoryIdlist,depositoryIdList);
depositoryIdList = (List<Integer>) CollectionUtils.union(tempDepositoryIdlist, depositoryIdList);
// 用于存储存在库存的仓库id
List<Integer> showDepository = new ArrayList<>();
for (Integer depositoryId : depositoryIdList
) {
param.put("depositoryId", depositoryId);
List<InventoryP> inventoryPS = materialService.findInventory(param);
if(inventoryPS.size() > 0){
if (inventoryPS.size() > 0) {
showDepository.add(depositoryId);
}
inventoryPByCondition.addAll(inventoryPS);
@ -464,8 +486,7 @@ public class MaterialController {
List<Depository> depositoryByIds = depositoryService.findDepositoryByIds(showDepository);
ip.setDepositoryList(depositoryByIds);
return new RestResponse(ip, 1, 200);
}
else if ("in".equals(type)) {
} else if ("in".equals(type)) {
param.put("code", code);
materialPByCondition = materialService.findMaterialPByCondition(param);
if (materialPByCondition.size() > 0) {
@ -514,7 +535,7 @@ public class MaterialController {
List<Integer> depositoryIdList = roleService.findDepositoryIdForUserHas(userToken);
List<Integer> tempDepositoryIDList = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userToken);
depositoryIdList = (List<Integer>) CollectionUtils.union(tempDepositoryIDList,depositoryIdList);
depositoryIdList = (List<Integer>) CollectionUtils.union(tempDepositoryIDList, depositoryIdList);
for (Integer depositoryId : depositoryIdList
) {
map.put("depositoryId", depositoryId);
@ -705,7 +726,7 @@ public class MaterialController {
if (Integer.compare(placeId, -1) == 0) {
// 如果是查询所有库存
List<Depository> depositoryByAdminorg = depositoryService.findDepositoryByAdminorg(userByPort.getMaindeparment().toString());
if(map.containsKey("depositoryId")){
if (map.containsKey("depositoryId")) {
Depository depositoryById = depositoryService.findDepositoryById(ObjectFormatUtil.toInteger(map.get("depositoryId")));
depositoryByAdminorg = new ArrayList<>();
depositoryByAdminorg.add(depositoryById);
@ -756,8 +777,7 @@ public class MaterialController {
}
}
}
}
else {
} else {
// 获取当前要转移的库位
Place place = placeService.findPlaceById(placeId);
if (Integer.compare(place.getId(), 0) != 0) {
@ -771,7 +791,7 @@ public class MaterialController {
MaterialAndPlace placeAndMaterialByMidAndPid = placeService.findPlaceAndMaterialByMidAndPid(placeId, inventoryP.getId());
if ("-1".equals(unit)) {
// 如果是基础单位
if (quantity <= placeAndMaterialByMidAndPid.getQuantity()) { // 如果当前数量合适则跳出循环
if (quantity <= (placeAndMaterialByMidAndPid.getQuantity() / 100)) { // 如果当前数量合适则跳出循环
flag = true;
break;
}
@ -901,7 +921,7 @@ public class MaterialController {
boolean flag = false;
List<Integer> depositoryIdList = roleService.findDepositoryIdForUserHas(userByPort);
List<Integer> tempDepositoryIdList = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userByPort);
depositoryIdList = (List<Integer>) CollectionUtils.union(depositoryIdList,tempDepositoryIdList);
depositoryIdList = (List<Integer>) CollectionUtils.union(depositoryIdList, tempDepositoryIdList);
for (Integer depositoryId : depositoryIdList) {
@ -1063,7 +1083,7 @@ public class MaterialController {
if (materialByBarCode != null) {
List<Integer> depositoryIdList = roleService.findDepositoryIdForUserHas(userByPort);
List<Integer> tempDepositoryIdList = roleService.findDepositoryIdForWareHouseVisiblePermissionByUser(userByPort);
depositoryIdList = (List<Integer>) CollectionUtils.union(depositoryIdList,tempDepositoryIdList);
depositoryIdList = (List<Integer>) CollectionUtils.union(depositoryIdList, tempDepositoryIdList);
List<PlaceP> placePList = new ArrayList<>();
for (Integer depositoryId : depositoryIdList) {
boolean isExist = false;

9
src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryMapper.java

@ -154,6 +154,15 @@ public interface DepositoryMapper {
*/
InventoryByMTAndDepository getTodayInventoryByDidAndMt(Map<String,Object> map);
/**
* 获取当前仓库下的库存数量
* @param map 待查询数据
* @return
*/
List<InventoryByMTAndDepository> getTodayInventoryByDid(Map<String,Object> map);
/**
* 根据条件修改状态

15
src/main/java/com/dreamchaser/depository_manage/mapper/DepositoryMapper.xml

@ -400,6 +400,21 @@
</if>
</select>
<select id="getTodayInventoryByDid" resultMap="inventoryByDidAndMt" parameterType="map">
select mtId,depository_id,ifnull(sum(quantity),0.0) as inventory
from depositoryandinventory
where 1 = 1
<if test="depositoryId != null and depositoryId != ''">
and depository_id = #{depositoryId}
</if>
<if test="mtIdList != null">
and mtId in
<foreach collection="mtIdList" index="index" item="mtId" open="(" separator="," close=")">
#{mtId}
</foreach>
</if>
</select>
<select id="findUserNameByDepositoryId" resultType="string" parameterType="int">

40
src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml

@ -246,6 +246,12 @@
<if test="materialTypeId != null">
AND type_id = #{materialTypeId}
</if>
<if test="materialTypeIds != null and materialTypeIds != ''">
and type_id in
<foreach collection="materialTypeIds" index="index" item="mtId" open="(" separator="," close=")">
#{mtId}
</foreach>
</if>
<if test="state != null and state != ''">
And state = #{state}
</if>
@ -311,6 +317,21 @@
<if test="depositoryId != null">
AND depositoryId = #{depositoryId}
</if>
<if test="depositoryIds != null">
and depositoryId in
<foreach collection="depositoryIds" index="index" item="did" open="(" separator="," close=")">
#{did}
</foreach>
</if>
<if test="materialTypeId != null and materialTypeId != ''">
and mtOldId = #{materialTypeId}
</if>
<if test="materialTypeIds != null and materialTypeIds != ''">
and mtOldId in
<foreach collection="materialTypeIds" index="index" item="mtId" open="(" separator="," close=")">
#{mtId}
</foreach>
</if>
<if test="mname != null and mname != ''">
AND mname LIKE CONCAT('%', #{mname}, '%')
</if>
@ -364,7 +385,7 @@
#{did}
</foreach>
</if>
<if test="depositoryId != null and depositoryId != ''">
<if test="depositoryId !=null and depositoryId != ''">
and depositoryId = #{depositoryId}
</if>
<if test="mid != null">
@ -423,7 +444,7 @@
#{did}
</foreach>
</if>
<if test="depositoryId != null and depositoryId != ''">
<if test="depositoryId !=null and depositoryId != ''">
and depositoryId = #{depositoryId}
</if>
<if test="mid != null">
@ -542,6 +563,21 @@
<if test="depositoryId != null">
AND depositoryId = #{depositoryId}
</if>
<if test="depositoryIds != null">
and depositoryId in
<foreach collection="depositoryIds" index="index" item="did" open="(" separator="," close=")">
#{did}
</foreach>
</if>
<if test="materialTypeId != null and materialTypeId != ''">
and mtOldId = #{materialTypeId}
</if>
<if test="materialTypeIds != null and materialTypeIds != ''">
and mtOldId in
<foreach collection="materialTypeIds" index="index" item="mtId" open="(" separator="," close=")">
#{mtId}
</foreach>
</if>
<if test="mname != null and mname != ''">
AND mname LIKE CONCAT('%', #{mname}, '%')
</if>

6
src/main/java/com/dreamchaser/depository_manage/service/DepositoryService.java

@ -141,11 +141,11 @@ public interface DepositoryService {
Integer getToDayInventoryByDName(String dname);
/**
* 根据父级获取子类
* @param id
* 获取当前仓库下的所有可见的子仓库
* @param id 当前仓库id
* @return
*/
List<Depository> getParentByDepository(Integer id);
List<Integer> findAllChildDepositoryById(Integer id,UserByPort userByPort);

13
src/main/java/com/dreamchaser/depository_manage/service/MaterialService.java

@ -74,18 +74,7 @@ public interface MaterialService {
*/
List<InventoryP> findInventory(Map<String,Object> map);
/**
* 根据条件查询符合条件的库存数量
* @param map
* @return
*/
Integer findInventoryCountByDids(Map<String,Object> map);
/**
* 根据条件查询符合条件的库存
* @param map
* @return
*/
List<InventoryP> findInventoryByDids(Map<String,Object> map);
/**

9
src/main/java/com/dreamchaser/depository_manage/service/MaterialTypeService.java

@ -104,9 +104,18 @@ public interface MaterialTypeService {
*/
Integer updateStateByParam(Map<String,Object> map);
/**
* 获取当前类别下的所有类别
* @param mtId 待查询类别Id
* @return
*/
List<Long> findChildForMaterialTypeByParent(Long mtId);
/**
* 构造树形选择框
* @return
*/
List<Object> InitTreeMenus();
}

2
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java

@ -2785,10 +2785,10 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
if (placeId == null || "".equals(placeId.toString()) || "0".equals(placeId.toString())) {
map.put("placeId", 0);
}
Object parentId = map.get("parentId");
if (parentId == null) {
// 插入主表
map.put("flagForOpenDepository",2);
depositoryRecordMapper.insertApplicationOutRecord(map);
Object id = map.get("id");
// 清除主键

88
src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryServiceImpl.java

@ -11,6 +11,7 @@ import com.dreamchaser.depository_manage.pojo.InventoryByDname;
import com.dreamchaser.depository_manage.pojo.InventoryByMTAndDepository;
import com.dreamchaser.depository_manage.pojo.RoleAndDepository;
import com.dreamchaser.depository_manage.service.DepositoryService;
import com.dreamchaser.depository_manage.service.RoleService;
import com.dreamchaser.depository_manage.utils.LinkInterfaceUtil;
import com.dreamchaser.depository_manage.utils.ObjectFormatUtil;
import com.dreamchaser.depository_manage.utils.WordUtil;
@ -35,6 +36,8 @@ public class DepositoryServiceImpl implements DepositoryService {
@Autowired
QrCodeMapper qrCodeMapper;
@Autowired
RoleService roleService;
@Autowired
MaterialTypeMapper materialTypeMapper;
@ -400,14 +403,29 @@ public class DepositoryServiceImpl implements DepositoryService {
/**
* 根据父级获取子类
*
* @param id
* 获取当前仓库下的所有可见的子仓库
* @param id 当前仓库id
* @return
*/
@Override
public List<Depository> getParentByDepository(Integer id) {
return depositoryMapper.getParentByDepository(id);
public List<Integer> findAllChildDepositoryById(Integer id,UserByPort userByPort) {
// 获取所有仓库
List<Depository> depositoryAll = depositoryMapper.findDepositoryAll();
// 定义待返回仓库id
List<Integer> depositoryIdList = new ArrayList<>();
// 添加仓库id
depositoryIdList.add(id);
for (Depository depository:depositoryAll
) {
Integer did = depository.getParentId();
if(depositoryIdList.contains(did)){
depositoryIdList.add(depository.getId());
}
}
//用于查询当前用户所拥有及所管理的仓库
List<Integer> depositoryIdForUserHas = roleService.findDepositoryIdForUserHas(userByPort);
depositoryIdList = (List<Integer>) CollectionUtils.intersection(depositoryIdList,depositoryIdForUserHas);
return depositoryIdList;
}
@Override
@ -763,7 +781,7 @@ public class DepositoryServiceImpl implements DepositoryService {
}
/**
* 获取每个仓库当前对应的库存数量
* 获取每个仓库以及对应
*
* @return
*/
@ -777,58 +795,32 @@ public class DepositoryServiceImpl implements DepositoryService {
return toDayInventoryByDNameTest;
}
/**
* 获取当前仓库该类型下的库存数量
*
* @param did 待查询仓库
* @param mtId 待查询类型
* @return
*/
@Override
public InventoryByMTAndDepository getTodayInventoryByDidAndMt(Integer did, Long mtId) {
Map<String, Object> map = new HashMap<>();
map.put("depositoryId", did);
// 获取所有子类
List<Long> list = findChildForMaterialTypeByParent(mtId);
map.put("mtIdList", list);
Map<String,Object> map = new HashMap<>();
map.put("depositoryId",did);
List<Long> childForMaterialTypeByParent = findChildForMaterialTypeByParent(mtId);
map.put("mtIdList",childForMaterialTypeByParent);
return depositoryMapper.getTodayInventoryByDidAndMt(map);
}
/**
* 获取当前仓库下各类型目前的库存数量
*
* @param did 待查询仓库
* @return
*/
@Override
public List<InventoryByMTAndDepository> getTodayInventoryInfoByDidAndMt(Integer did) {
List<InventoryByMTAndDepository> result = new ArrayList<>();
Map<String, Object> map = new HashMap<>();
map.put("depositoryId", did);
// 获取所有子类
List<MaterialType> materialTypeNoParent = materialTypeMapper.findMaterialTypeNoParent();
for (MaterialType materialType : materialTypeNoParent
) {
Long oldId = materialType.getOldId();
List<Long> list = findChildForMaterialTypeByParent(oldId);
map.put("mtIdList", list);
InventoryByMTAndDepository todayInventoryByDidAndMt = depositoryMapper.getTodayInventoryByDidAndMt(map);
todayInventoryByDidAndMt.setMtId(oldId);
result.add(todayInventoryByDidAndMt);
}
return result;
Map<String,Object> map = new HashMap<>();
map.put("depositoryId",did);
return depositoryMapper.getTodayInventoryByDid(map);
}
// 根据id获取子类
public List<Long> findChildForMaterialTypeByParent(Long mtId) {
List<Long> result = new ArrayList<>();
result.add(mtId);
List<Long> parentId = new ArrayList<>();
parentId.add(mtId);
List<Long> parentIdList = new ArrayList<>();
parentIdList.add(mtId);
List<MaterialType> materialTypeAll = materialTypeMapper.findMaterialTypeAll();
for (MaterialType materialType : materialTypeAll) {
if (parentId.contains(materialType.getParentId())) {
parentId.add(materialType.getOldId());
if (parentIdList.contains(materialType.getParentId())) {
parentIdList.add(materialType.getOldId());
result.add(materialType.getOldId());
}
}
@ -837,13 +829,12 @@ public class DepositoryServiceImpl implements DepositoryService {
/**
* 用于获取当前仓库所属部门领导的企业微信id
*
* @param depositoryId 待查询仓库id
* @param userAgent userAgent
* @param userAgent userAgent
* @return
*/
@Override
public List<String> getDepositoryAdminorgLeaders(String depositoryId, String userAgent) {
public List<String> getDepositoryAdminorgLeaders(String depositoryId,String userAgent) {
// 获取当前选中的仓库
Depository depositoryById = depositoryMapper.findDepositoryById(Integer.parseInt(depositoryId));
@ -967,7 +958,6 @@ public class DepositoryServiceImpl implements DepositoryService {
// 获取当前用户管理的仓库
List<RoleAndDepository> depositoryAndRole = roleMapper.findDepositoryAndRole(userByPort.getId());
// 获取当前用户被额外设置的仓库
Map<String,Object> paramForFindDepositoryId = new HashMap<>();
paramForFindDepositoryId.put("type",1);
paramForFindDepositoryId.put("uid",userByPort.getId());
@ -979,6 +969,7 @@ public class DepositoryServiceImpl implements DepositoryService {
List<Integer> depositoryIdListForPost = roleMapper.findDepositoryIdForWarehouseVisiblePermissionByCondition(paramForFindDepositoryId);
// 取并集
List<Integer> integerList = (List<Integer>) CollectionUtils.union(depositoryIdListForPerson, depositoryIdListForPost);
for (RoleAndDepository role:depositoryAndRole
) {
Integer depositoryId = role.getDepositoryId();
@ -986,6 +977,7 @@ public class DepositoryServiceImpl implements DepositoryService {
integerList.add(depositoryId);
}
}
// 定义树结构结果集
List<Object> list = new ArrayList<>();
// 定义线程池

16
src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java

@ -885,14 +885,26 @@ public class ExcelServiceImpl implements ExcelService {
placeToQuantity.put(place.getId(), pQuantity);
}
} else {
}
else {
String s = dataIndex.get(i);
String msg = s + "出现异常:" + excelInfoByInventory.getDepositoryCode() + " 该仓库没有该库位";
errMsg.add(msg);
}
} else { // 否则直接加入
}
else { // 否则直接加入
excelInfoByInventory.setDepositoryCode("0"); // 设置默认库位
ExcelFileInfoPool.getUserExcelInventoryInfo(userByPort.getNumber()).add(excelInfoByInventory);
// 获取当前库位的剩余存储量
Place place = placeService.findPlaceById(0);
Integer pQuantity = placeToQuantity.get(0);
// 获取当前库位的剩余存储量
if (pQuantity == null) {
pQuantity = place.getMax() - place.getQuantity();
}
int quantity = (int) (ObjectFormatUtil.toDouble(excelInfoByInventory.getQuantity()) * 100);
pQuantity -= quantity;
placeToQuantity.put(place.getId(), pQuantity);
}
}
return errMsg;

40
src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java

@ -301,41 +301,6 @@ public class MaterialServiceImpl implements MaterialService {
return pack(list);
}
/**
* 根据条件查询符合条件的库存数量
* @param map
* @return
*/
@Override
public Integer findInventoryCountByDids(Map<String, Object> map) {
return materialMapper.findInventoryCountByDids(map);
}
/**
* 根据条件查询符合条件的库存
*
* @param map
* @return
*/
@Override
public List<InventoryP> findInventoryByDids(Map<String, Object> map) {
Integer size = 10, page = 1;
if (map.containsKey("size")) {
size = ObjectFormatUtil.toInteger(map.get("size"));
map.put("size", size);
}
if (map.containsKey("page")) {
page = ObjectFormatUtil.toInteger(map.get("page"));
map.put("begin", (page - 1) * size);
}
Object state = 1;
if (map.containsKey("state")) {
state = map.get("state");
}
map.put("state", state);
List<Inventory> list = materialMapper.findInventoryByDids(map);
return pack(list);
}
/**
* 根据物料编码及所处仓库查询库存
@ -1012,7 +977,7 @@ public class MaterialServiceImpl implements MaterialService {
params.put("depositoryId", map.get("depositoryId"));
List<Inventory> inventory = materialMapper.findInventoryForImport(params);
if (inventory.size() >= 1) {
// 用于标志是新插入的物料
// 用于标志是新插入的物料
map.put("isNew", false);
// 如果该物料存在
@ -1128,7 +1093,8 @@ public class MaterialServiceImpl implements MaterialService {
}
}
return materialMapper.updateInventory(material);
} else {
}
else {
// 用于标志是新插入的物料
map.put("isNew", true);
Double quantity = ObjectFormatUtil.toDouble(map.get("quantity"));

21
src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialTypeServiceImpl.java

@ -204,6 +204,27 @@ public class MaterialTypeServiceImpl implements MaterialTypeService {
return materialTypeMapper.updateStateByParam(map);
}
/**
* 获取当前类别下的所有类别
* @param mtId 待查询类别Id
* @return
*/
public List<Long> findChildForMaterialTypeByParent(Long mtId) {
List<Long> result = new ArrayList<>();
result.add(mtId);
List<Long> parentIdList = new ArrayList<>();
parentIdList.add(mtId);
List<MaterialType> materialTypeAll = materialTypeMapper.findMaterialTypeAll();
for (MaterialType materialType : materialTypeAll) {
if (parentIdList.contains(materialType.getParentId())) {
parentIdList.add(materialType.getOldId());
result.add(materialType.getOldId());
}
}
return result;
}
/**
* 构造树形选择框
* @return

15
src/main/java/com/dreamchaser/depository_manage/service/impl/RoleServiceImpl.java

@ -424,12 +424,23 @@ public class RoleServiceImpl implements RoleService {
public List<Integer> findDepositoryIdForUserHas(UserByPort userToken) {
// 获取当前用户所在部门拥有的仓库
List<Depository> depositoryByAdminorg = depositoryMapper.findDepositoryByAdminorg(userToken.getMaindeparment().toString());
// 查询当前用户管理的仓库
List<RoleAndDepository> depositoryAndRole = roleMapper.findDepositoryAndRole(userToken.getId());
List<Integer> depositoryIdList = new ArrayList<>();
for (Depository depository : depositoryByAdminorg) {
depositoryIdList.add(depository.getId());
}
// 获取当前所有的仓库
List<Depository> depositoryAll = depositoryMapper.findDepositoryAll();
for (Depository depository:depositoryAll
) {
Integer parentId = depository.getParentId();
Integer id = depository.getId();
if(depositoryIdList.contains(parentId) && !depositoryIdList.contains(id)){
depositoryIdList.add(id);
}
}
// 查询当前用户管理的仓库
List<RoleAndDepository> depositoryAndRole = roleMapper.findDepositoryAndRole(userToken.getId());
for (RoleAndDepository depository : depositoryAndRole) {
if (!depositoryIdList.contains(depository.getDepositoryId())) {
depositoryIdList.add(depository.getDepositoryId());

1
src/main/java/com/dreamchaser/depository_manage/utils/LinkInterfaceUtil.java

@ -337,6 +337,7 @@ public class LinkInterfaceUtil {
public static List<String> getUserAccessToAddresses(UserByPort userToken) {
//定义链接地址
String url = PortConfig.external_url_6666 + "/system_authorizing/obtain_authorization";
System.out.println(url);
Map<String, Object> param = new HashMap<>();
param.put("system", "cangchu");
String jsonString = JSONObject.toJSONString(param);

30
src/main/resources/templates/pages/application/application-transfer.html

@ -919,8 +919,7 @@
$("#barCode" + idNumber).append(new Option(item.bmcode, item.id));//往下拉菜单里添加元素
});
form.render();
}
else {
} else {
var barCode = $("#barCode" + idNumber);
if (barCode.length > 0) {
barCode.empty();
@ -977,7 +976,7 @@
var result = res.resultStr;//当needResult为1时返回处理结果
var req = {};
req.qrCode = result;
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0});
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0});
$.ajax({
url: "/place/qywxApplicationInScanQrCode",
type: "post",
@ -993,7 +992,7 @@
var placeId = parent.childNodes[5];
if (flag === 0) {
// 如果没有获取到位置
layer.msg("当前二维码错误,请重新扫描",{icon:5,time:500},function () {
layer.msg("当前二维码错误,请重新扫描", {icon: 5, time: 500}, function () {
layer.close(loading2);
});
} else if (flag === 1) {
@ -1034,8 +1033,8 @@
req.mcode = mcode;
req.quantity = val;
req.unit = unit;
req.placeId = $("#place" + id).val();
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0});
req.placeId = $("#place"+id).val();
let loading2 = layer.open({type: 3, shade: [0.25, '#000'], icon: 2, speed: 0});
$.ajax({
url: "/material/MaterialQuantityIsTrue",
type: "post",
@ -1045,24 +1044,21 @@
success: function (res) {
var flag = res.data;
if (!flag) { // 如果当前数目不合适
layer.msg("当前物料数量不足", {icon: 0, time: 500}, function () {
$("#quantity" + id).val("");
layer.close(loading2);
});
}else{
layer.close(loading2);
layer.msg("当前单个仓库中物料数量不足", {icon: 0, time: 500}, function () {
layer.close(loading2);
$("#quantity" + id).val("");
},
);
} else {
layer.close(loading2)
}
}
});
}
}
};
$('body').on('click', '[data-refresh]', function () {
location.reload();
})
})
</script>

Loading…
Cancel
Save