Browse Source

修改移动端库存查询跳转到入库申请页面

lwx_dev
erdanergou 3 years ago
parent
commit
55f0574649
  1. 3
      src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java
  2. 41
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  3. 24
      src/main/java/com/dreamchaser/depository_manage/service/impl/DepositoryRecordServiceImpl.java
  4. 15
      src/main/java/com/dreamchaser/depository_manage/service/impl/SplitUnitServiceImpl.java
  5. 721
      src/main/resources/templates/pages/application/application-in_temporaryValue.html
  6. 5
      src/main/resources/templates/pages/application/application-out_temporaryValue.html
  7. 5
      src/main/resources/templates/pages/applicationForStorageCenter/application-out_temporaryValue.html
  8. 38
      src/main/resources/templates/pages/depository/Inventory-view.html
  9. 4
      src/main/resources/templates/pages/material/selectDepositoryByCard.html
  10. 1127
      target/classes/templates/pages/application/application-in_scanQrCode.html

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

@ -674,7 +674,8 @@ public class MaterialController {
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
if (map.containsKey("id")) {
String s = map.get("id").toString();
redisTemplate.opsForList().remove("WMS_temporaryValue" + userByPort.getNumber(), 0, s);
String type = map.get("type").toString();
redisTemplate.opsForList().remove("WMS_temporaryValue_"+type + userByPort.getNumber(), 0, s);
}
}

41
src/main/java/com/dreamchaser/depository_manage/controller/PageController.java

@ -1,5 +1,6 @@
package com.dreamchaser.depository_manage.controller;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.dreamchaser.depository_manage.config.PortConfig;
@ -2734,7 +2735,7 @@ public class PageController {
// 获取扫描结果并跳转到入库
@GetMapping("/application_in_scanQrCode")
@GetMapping("/application_In_temporaryValue")
public ModelAndView applicationInScanQrCode(HttpServletRequest request) {
ModelAndView mv = new ModelAndView();
String token = request.getHeader("user-token");
@ -2742,23 +2743,25 @@ public class PageController {
token = (String) request.getSession().getAttribute("userToken");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String scanQrCodeValue = redisTemplate.opsForValue().get("scanQrCodeValue" + userByPort.getNumber()).toString();
redisTemplate.delete("scanQrCodeValue" + userByPort.getNumber());
JSONObject jsonObject = JSONObject.parseObject(scanQrCodeValue);
JSONObject depository = (JSONObject) jsonObject.get("depository");
JSONObject place = (JSONObject) jsonObject.get("place");
JSONArray materialList = (JSONArray) jsonObject.get("materialList");
if (depository == null && place == null) {
// 如果库位与仓库都未选中
} else if (depository != null && place == null) {
// 如果选中仓库未选中库位
mv.addObject("depository", depository);
} else if (place != null && depository == null) {
// 如果选中库位未选中仓库
mv.addObject("place", place);
// 获取当前key值存储在redis中的值
List<String> range = redisTemplateForHash.opsForList().range("WMS_temporaryValue_In" + userByPort.getNumber(), 0, -1);
if( range != null && range.size() > 0){
List<Inventory> result = new ArrayList<>();
for (String value:
range ) {
if("".equals(value)){
continue;
}
Inventory inventoryById = materialService.findInventoryById(ObjectFormatUtil.toInteger(value));
List<SplitInfo> splitInfoByMid = splitUnitService.findSplitInfoByMid(inventoryById.getMid());
inventoryById.setSplitInfoList(splitInfoByMid);
result.add(inventoryById);
}
mv.addObject("inventoryList", JSONObject.toJSONString(result));
mv.setViewName("pages/application/application-in_temporaryValue");
}else{
mv.setViewName("pages/application/application-in");
}
mv.addObject("materialList", materialList);
mv.setViewName("pages/application/application-in_scanQrCode");
return mv;
}
@ -2800,7 +2803,7 @@ public class PageController {
}
// 获取扫描结果并跳转到出库
@GetMapping("/application_Out_scanQrCode")
@GetMapping("/application_Out_temporaryValue")
public ModelAndView applicationOutScanQrCode(HttpServletRequest request) {
ModelAndView mv = new ModelAndView();
String token = request.getHeader("user-token");
@ -2809,7 +2812,7 @@ public class PageController {
}
UserByPort userToken = AuthenticationTokenPool.getUserToken(token);
List<String> range = redisTemplateForHash.boundListOps("WMS_temporaryValue_Out" + userToken.getNumber()).range(0, -1);
if (range.size() > 0) {
if (range != null && range.size() > 0) {
List<Inventory> result = new ArrayList<>();
for (String value : range
) {

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

@ -157,13 +157,7 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
map.put("state", "已入库");
} else {
// 如果需要审批
List<RoleAndMaterialType> roleAndMaterials = roleService.findRoleAndMaterialTypeByMtId(material.getMaterialTypeId());
map.put("approverPass", 3);
StringBuilder approverId = new StringBuilder();
for (RoleAndMaterialType roleAndMaterialType : roleAndMaterials) {
approverId.append(roleAndMaterialType.getUid()).append(",");
}
map.put("approverId", approverId.toString());
map.put("state", "待审核");
}
@ -728,14 +722,20 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
// 设置审批权限
map.put("inType", "d");
// 获取当前类别物料是否需要审批
List<RoleAndDepository> roleAndMaterials = roleService.findRoleAndDepositoryByDid(depositoryId);
if (roleAndMaterials.size() > 0) {
List<RoleAndDepository> roleAndDepositoryByDid = roleService.findRoleAndDepositoryByDid(depositoryId);
if (roleAndDepositoryByDid.size() > 0) {
flagForApproval = true;
StringBuilder approverId = new StringBuilder();
for (RoleAndDepository roleAndDepository : roleAndDepositoryByDid) {
approverId.append(roleAndDepository.getUserId()).append(",");
}
map.put("approverId", approverId.toString());
}
if (isApprovalPass) {
if (flagForApproval) {
flagForApproval = false;
map.remove("approverId");
}
}
if (map.containsKey("isGroup")) {
@ -750,10 +750,16 @@ public class DepositoryRecordServiceImpl implements DepositoryRecordService {
if (roleAndMaterials.size() > 0) {
flagForApproval = true;
StringBuilder approverId = new StringBuilder();
for (RoleAndMaterialType roleAndMaterialType : roleAndMaterials) {
approverId.append(roleAndMaterialType.getUid()).append(",");
}
map.put("approverId", approverId.toString());
}
if (isApprovalPass) {
if (flagForApproval) {
flagForApproval = false;
map.remove("approverId");
}
}
if (map.containsKey("isGroup")) {

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

@ -115,10 +115,15 @@ public class SplitUnitServiceImpl implements SplitUnitService {
if(!map.containsKey("flagForApproval")){
paramForMtRole.put("depositoryId",depositoryId);
List<RoleAndDepository> roleAndMaterials = roleMapper.findRoleAndDepositoryByCondition(paramForMtRole);
List<RoleAndDepository> roleAndDepositoryByDid = roleMapper.findRoleAndDepositoryByCondition(paramForMtRole);
// 用于标志该仓库是否需要进行审批
if (roleAndMaterials.size() > 0) {
if (roleAndDepositoryByDid.size() > 0) {
flagForApproval = true;
StringBuilder approverId = new StringBuilder();
for (RoleAndDepository roleAndDepository : roleAndDepositoryByDid) {
approverId.append(roleAndDepository.getUserId()).append(",");
}
map.put("approverId", approverId.toString());
}
map.put("flagForApproval", flagForApproval);
}else{
@ -133,6 +138,11 @@ public class SplitUnitServiceImpl implements SplitUnitService {
// 用于标志该仓库是否需要进行审批
if (roleAndMaterials.size() > 0) {
flagForApproval = true;
StringBuilder approverId = new StringBuilder();
for (RoleAndMaterialType roleAndMaterialType : roleAndMaterials) {
approverId.append(roleAndMaterialType.getUid()).append(",");
}
map.put("approverId", approverId.toString());
}
map.put("flagForApproval", flagForApproval);
}else{
@ -208,6 +218,7 @@ public class SplitUnitServiceImpl implements SplitUnitService {
Double quantity = ObjectFormatUtil.toDouble(map.get("quantity"));
if ("in".equals(type) && !flagForApproval) {
// 如果是入库并且不需要审批
map.remove("approverId");
result = realInInventoryToDepository(quantity, splitInventory, map, splitInfoForUnit, placeAndMaterialByMidAndPid, false);
map.put("applicationInIdForOut",map.get("applicationInId"));
map.remove("applicationInId");

721
src/main/resources/templates/pages/application/application-in_scanQrCode.html → src/main/resources/templates/pages/application/application-in_temporaryValue.html

File diff suppressed because it is too large

5
src/main/resources/templates/pages/application/application-out_temporaryValue.html

@ -316,6 +316,9 @@
addItem = function (obj) {
// 获取父元素id
var parentId = obj.parentNode.id;
if(NewIdNumber === ""){
NewIdNumber = 0;
}
NewIdNumber = NewIdNumber + 1;
// 物料名称栏目
var materialItem = `
@ -409,7 +412,7 @@
$.ajax({
url: "/material/delTemporaryValue",
type: 'post',
data:JSON.stringify({"id":value}),
data:JSON.stringify({"id":value,"type":"Out"}),
dataType: 'json',
contentType: "application/json;charset=utf-8"
})

5
src/main/resources/templates/pages/applicationForStorageCenter/application-out_temporaryValue.html

@ -364,6 +364,9 @@
addItem = function (obj) {
// 获取父元素id
var parentId = obj.parentNode.id;
if(NewIdNumber === ""){
NewIdNumber = 0;
}
NewIdNumber = NewIdNumber + 1;
// 物料名称栏目
var materialItem = `
@ -457,7 +460,7 @@
$.ajax({
url: "/material/delTemporaryValue",
type: 'post',
data:JSON.stringify({"id":value}),
data:JSON.stringify({"id":value,"type":"Out"}),
dataType: 'json',
contentType: "application/json;charset=utf-8"
})

38
src/main/resources/templates/pages/depository/Inventory-view.html

@ -198,7 +198,7 @@
contentType: "application/json;charset=utf-8",
success: function (d) {
miniTab.openNewTabByIframeNew({
href: "/application_Out_scanQrCode",
href: "/application_Out_temporaryValue",
title: "出库申请"
});
@ -208,17 +208,31 @@
};
applicationIn = function () {
var index = layer.open({
title: '入库申请',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['100%', '100%'],
content: '/application_in_back?mid=' + $("#id").val() + "&depositoryId=" + $("#depositoryId").val()
});
$(window).on("resize", function () {
layer.full(index);
// var index = layer.open({
// title: '入库申请',
// type: 2,
// shade: 0.2,
// maxmin: true,
// shadeClose: true,
// area: ['100%', '100%'],
// content: '/application_in_back?mid=' + $("#id").val() + "&depositoryId=" + $("#depositoryId").val()
// });
// $(window).on("resize", function () {
// layer.full(index);
// });
$.ajax({
url: "/material/temporaryValue",
type: "post",
dataType: 'json',
data: JSON.stringify({"id": $("#id").val(),"type":"In"}),
contentType: "application/json;charset=utf-8",
success: function (d) {
miniTab.openNewTabByIframeNew({
href: "/application_In_temporaryValue",
title: "入库申请"
});
}
});
return false;
}

4
src/main/resources/templates/pages/material/selectDepositoryByCard.html

@ -53,10 +53,13 @@
// 物料查询跳转入库
depositoryChildren = windowParent.childNodes[15];
}
console.log(windowParent.childNodes)
console.log(depositoryChildren)
}else{
depositoryChildren = windowParent.childNodes[11];
}
var depositoryItem = depositoryChildren.childNodes[3].childNodes[1].childNodes;
var depositoryName = depositoryItem[1];
var depositoryId = depositoryItem[3];
@ -77,7 +80,6 @@
depositoryName.value = d.data.dname +"-"+ obj.data.title;
}
});
depositoryId.value = did[0];
placeId.value = did[1];
}

1127
target/classes/templates/pages/application/application-in_scanQrCode.html

File diff suppressed because it is too large
Loading…
Cancel
Save