Browse Source

修改bug

lwx_dev
erdanergou 3 years ago
parent
commit
3f9d31f6b6
  1. 55
      src/main/java/com/dreamchaser/depository_manage/controller/MaterialController.java
  2. 27
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  3. 2
      src/main/java/com/dreamchaser/depository_manage/controller/UserController.java
  4. 6
      src/main/java/com/dreamchaser/depository_manage/mapper/MaterialMapper.xml
  5. 33
      src/main/java/com/dreamchaser/depository_manage/service/impl/ExcelServiceImpl.java
  6. 6
      src/main/java/com/dreamchaser/depository_manage/service/impl/MaterialServiceImpl.java
  7. 4
      src/main/resources/redisson-config.yml
  8. BIN
      src/main/resources/static/images/materialTypeCreate.ico
  9. 76
      src/main/resources/static/js/JcPrinter/layer/mobile/layer.js
  10. 1107
      src/main/resources/templates/pages/application/application-in_temporaryValueForMaterial.html
  11. 42
      src/main/resources/templates/pages/depository/Inventory-view_mobile.html
  12. 10
      src/main/resources/templates/pages/depository/table-out_mobile.html
  13. 16
      src/main/resources/templates/pages/depository/table-stock.html
  14. 22
      src/main/resources/templates/pages/material/material-out.html
  15. 9
      src/main/resources/templates/pages/materialtype/materialType_view.html
  16. 2
      src/main/resources/templates/pages/split/split_edit.html

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

@ -618,7 +618,8 @@ public class MaterialController {
} }
} }
return new RestResponse(); return new RestResponse();
} else { }
else {
return CrudUtil.insertHandle(-1, 0); return CrudUtil.insertHandle(-1, 0);
} }
} }
@ -660,6 +661,41 @@ public class MaterialController {
return CrudUtil.insertHandle(-1, 0); return CrudUtil.insertHandle(-1, 0);
} }
} }
@PostMapping("/getTemporaryValueForMaterial")
public RestResponse getTemporaryValueForMaterial(@RequestBody Map<String, Object> map, HttpServletRequest request) {
String token = request.getHeader("user-token");
if (token == null) {
token = (String) request.getSession().getAttribute("userToken");
}
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
if (map.containsKey("type")) {
String type = map.get("type").toString();
String key = "WMS_temporaryValue_" + type + userByPort.getNumber();
List<String> range = redisTemplate.opsForList().range(key, 0, -1);
List<Material> result = new ArrayList<>();
if (range != null && range.size() > 0) {
for (String value :
range) {
if ("".equals(value)) {
continue;
}
// 获取当前用户可见的仓库
List<Depository> depositoryList = new ArrayList<>();
Material materialById = materialService.findMaterialById(ObjectFormatUtil.toInteger(value));
Depository depository = new Depository();
depositoryList.add(depository);
List<SplitInfo> splitInfoByMid = splitUnitService.findSplitInfoByMid(materialById.getId());
materialById.setSplitInfoList(splitInfoByMid);
materialById.setDepositoryList(depositoryList);
result.add(materialById);
}
}
return new RestResponse(result);
} else {
return CrudUtil.insertHandle(-1, 0);
}
}
@PostMapping("/delTemporaryValue") @PostMapping("/delTemporaryValue")
@ -685,8 +721,23 @@ public class MaterialController {
token = (String) request.getSession().getAttribute("userToken"); token = (String) request.getSession().getAttribute("userToken");
} }
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token); UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
if (map.containsKey("mids")) {
String[] mids = map.get("mids").toString().split(",");
String type = map.get("type").toString();
String key = "WMS_temporaryValue_" + type + userByPort.getNumber();
List<String> range = redisTemplate.opsForList().range(key, 0, -1);
if (range != null) {
for (String s : mids) {
if (!range.contains(s)) {
redisTemplate.opsForList().rightPush(key, s);
redisTemplate.expire(key, DateUtil.getSecondsNextEarlyMorning(), TimeUnit.SECONDS);
}
}
}
return new RestResponse();
}
// 存入mids // 存入mids
redisTemplate.opsForValue().set("temporaryValueForMaterial" + userByPort.getNumber(), JSONObject.toJSONString(map));
return new RestResponse(200); return new RestResponse(200);
} }

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

@ -2783,32 +2783,7 @@ public class PageController {
token = (String) request.getSession().getAttribute("userToken"); token = (String) request.getSession().getAttribute("userToken");
} }
UserByPort userByPort = AuthenticationTokenPool.getUserToken(token); UserByPort userByPort = AuthenticationTokenPool.getUserToken(token);
String scanQrCodeValue = redisTemplate.opsForValue().get("temporaryValueForMaterial" + userByPort.getNumber()).toString(); mv.setViewName("pages/application/application-in_temporaryValueForMaterial");
redisTemplate.delete("temporaryValueForMaterial" + userByPort.getNumber());
JSONObject jsonObject = JSONObject.parseObject(scanQrCodeValue);
JSONArray mids = (JSONArray) jsonObject.get("mids");
List<Object> materialList = new ArrayList<>();
for (Object mid : mids) {
Map<String, Object> param = new HashMap<>();
Integer o = ObjectFormatUtil.toInteger(mid);
MaterialP mp = new MaterialP(materialService.findMaterialById(o));
List<SplitInfo> splitInfoByMid = splitUnitService.findSplitInfoByMid(mp.getId());
param.put("mid", mp.getId());
param.put("mname", mp.getMname());
param.put("code", mp.getCode());
param.put("price", mp.getPrice() != null ? mp.getPrice() : 0);
param.put("version", mp.getVersion());
param.put("codeFlag", 1);
List<MaterialAndBarCode> materialByBarCodeByCondition = materialService.findMaterialByBarCodeByCondition(param);
param.put("materialAndBarCodeList", materialByBarCodeByCondition);
param.put("splitList", splitInfoByMid);
param.put("unit", mp.getUnit());
String context = JSONObject.toJSONString(param);
materialList.add(context);
}
mv.addObject("materialList", materialList);
mv.setViewName("pages/application/application-in_scanQrCode");
return mv; return mv;
} }

2
src/main/java/com/dreamchaser/depository_manage/controller/UserController.java

@ -164,7 +164,7 @@ public class UserController {
String userToken = (String) data.get("token"); String userToken = (String) data.get("token");
String keyAndToken = userkey + "&" + userToken; String keyAndToken = userkey + "&" + userToken;
UserByPort userinfo = JSONObject.toJavaObject((JSONObject) data.get("userinfo"), UserByPort.class); UserByPort userinfo = JSONObject.toJavaObject((JSONObject) data.get("usercont"), UserByPort.class);
// 将key与token暂存至池中保存 // 将key与token暂存至池中保存
UserKeyAndTokenPool.addKeyAndToken(userinfo.getNumber(), keyAndToken); UserKeyAndTokenPool.addKeyAndToken(userinfo.getNumber(), keyAndToken);

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

@ -212,9 +212,6 @@
<if test="mname != null and mname != ''"> <if test="mname != null and mname != ''">
and mname = #{mname} and mname = #{mname}
</if> </if>
<if test="version == null or version == ''">
and version is null
</if>
<if test="version != null and version != ''"> <if test="version != null and version != ''">
and version = #{version} and version = #{version}
</if> </if>
@ -503,9 +500,6 @@
<if test="version != null and version != ''"> <if test="version != null and version != ''">
and version = #{version} and version = #{version}
</if> </if>
<if test="version == null or version == ''">
and version is null
</if>
</select> </select>
<select id="findMaterialCount" parameterType="map" resultType="int"> <select id="findMaterialCount" parameterType="map" resultType="int">

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

@ -587,19 +587,23 @@ public class ExcelServiceImpl implements ExcelService {
List<ExcelInfoByInventory> excelVosForInventory = ExcelFileInfoPool.getUserExcelInventoryInfo(number); List<ExcelInfoByInventory> excelVosForInventory = ExcelFileInfoPool.getUserExcelInventoryInfo(number);
for (int i = 0; i < excelVosForInventory.size(); i++) { for (int i = 0; i < excelVosForInventory.size(); i++) {
ExcelInfoByInventory excelInfoByInventory = excelVosForInventory.get(i); ExcelInfoByInventory excelInfoByInventory = excelVosForInventory.get(i);
Map<String, Object> insert = new HashMap<>(); Map<String, Object> insert = new HashMap<>();
insert.put("mname", excelInfoByInventory.getMname()); insert.put("mname", excelInfoByInventory.getMname());
insert.put("version", excelInfoByInventory.getVersion()); insert.put("version", excelInfoByInventory.getVersion());
Material material = materialService.findMaterialByMnameAndVersion(insert);
if (material == null) {
String code = excelInfoByInventory.getCode(); String code = excelInfoByInventory.getCode();
Material material = null;
if (code != null && !"".equals(code)) { if (code != null && !"".equals(code)) {
material = materialService.findMaterialByCode(code); material = materialService.findMaterialByCode(code);
} else {
material = materialMapper.findMaterialByCondition(insert).get(0);
} }
if (material == null) {
List<Material> materialByCondition = materialMapper.findMaterialByCondition(insert);
if (materialByCondition.size() > 0) {
material = materialByCondition.get(0);
}
}
if (material == null) {
continue;
} }
// 添加库存记录 // 添加库存记录
@ -837,16 +841,17 @@ public class ExcelServiceImpl implements ExcelService {
// 获取当前库存明细规格 // 获取当前库存明细规格
String version = excelInfoByInventory.getVersion(); String version = excelInfoByInventory.getVersion();
// 用于查询当前物料中是否存在该记录 // 用于查询当前物料中是否存在该记录
Map<String, Object> map = new HashMap<>();
map.put("mname", mname);
map.put("version", version);
List<Material> materialPByCondition = materialService.findMaterialPByConditionForTable(map);
if (materialPByCondition.size() == 0) {
Material materialByCode = null; Material materialByCode = null;
if (excelInfoByInventory.getCode() != null && !"".equals(excelInfoByInventory.getCode())) { if (excelInfoByInventory.getCode() != null && !"".equals(excelInfoByInventory.getCode())) {
materialByCode = materialService.findMaterialByCode(excelInfoByInventory.getCode()); materialByCode = materialService.findMaterialByCode(excelInfoByInventory.getCode());
} }
if (materialByCode == null) { if (materialByCode == null) {
Map<String, Object> map = new HashMap<>();
map.put("mname", mname);
map.put("version", version);
List<Material> materialPByCondition = materialService.findMaterialPByConditionForTable(map);
if (materialPByCondition.size() == 0) {
// 如果没有当前物料 // 如果没有当前物料
String s = dataIndex.get(i); String s = dataIndex.get(i);
String msg = s + "出现异常:" + excelInfoByInventory.getMname() + " 系统中并未存在该物料"; String msg = s + "出现异常:" + excelInfoByInventory.getMname() + " 系统中并未存在该物料";
@ -885,14 +890,12 @@ public class ExcelServiceImpl implements ExcelService {
placeToQuantity.put(place.getId(), pQuantity); placeToQuantity.put(place.getId(), pQuantity);
} }
} } else {
else {
String s = dataIndex.get(i); String s = dataIndex.get(i);
String msg = s + "出现异常:" + excelInfoByInventory.getDepositoryCode() + " 该仓库没有该库位"; String msg = s + "出现异常:" + excelInfoByInventory.getDepositoryCode() + " 该仓库没有该库位";
errMsg.add(msg); errMsg.add(msg);
} }
} } else { // 否则直接加入
else { // 否则直接加入
excelInfoByInventory.setDepositoryCode("0"); // 设置默认库位 excelInfoByInventory.setDepositoryCode("0"); // 设置默认库位
ExcelFileInfoPool.getUserExcelInventoryInfo(userByPort.getNumber()).add(excelInfoByInventory); ExcelFileInfoPool.getUserExcelInventoryInfo(userByPort.getNumber()).add(excelInfoByInventory);
// 获取当前库位的剩余存储量 // 获取当前库位的剩余存储量

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

@ -381,7 +381,11 @@ public class MaterialServiceImpl implements MaterialService {
public Material findMaterialByCode(String code) { public Material findMaterialByCode(String code) {
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
map.put("code", code); map.put("code", code);
Material material = materialMapper.findMaterialByCondition(map).get(0); Material material = null;
List<Material> materialByCondition = materialMapper.findMaterialByCondition(map);
if(materialByCondition.size() > 0){
material = materialByCondition.get(0);
}
return material; return material;
} }

4
src/main/resources/redisson-config.yml

@ -19,8 +19,8 @@ singleServerConfig:
dnsMonitoringInterval: 5000 dnsMonitoringInterval: 5000
#dnsMonitoring: false #dnsMonitoring: false
threads: 0 threads: 16
nettyThreads: 0 nettyThreads: 32
codec: codec:
class: "org.redisson.codec.JsonJacksonCodec" class: "org.redisson.codec.JsonJacksonCodec"
transportMode: "NIO" transportMode: "NIO"

BIN
src/main/resources/static/images/materialTypeCreate.ico

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 5.3 KiB

76
src/main/resources/static/js/JcPrinter/layer/mobile/layer.js

@ -1,2 +1,76 @@
/*! layer mobile-v2.0.0 Web 通用弹出层组件 MIT License */ /*! layer mobile-v2.0.0 Web 通用弹出层组件 MIT License */
;!function(e){"use strict";var t=document,n="querySelectorAll",i="getElementsByClassName",a=function(e){return t[n](e)},s={type:0,shade:!0,shadeClose:!0,fixed:!0,anim:"scale"},l={extend:function(e){var t=JSON.parse(JSON.stringify(s));for(var n in e)t[n]=e[n];return t},timer:{},end:{}};l.touch=function(e,t){e.addEventListener("click",function(e){t.call(this,e)},!1)};var r=0,o=["layui-m-layer"],c=function(e){var t=this;t.config=l.extend(e),t.view()};c.prototype.view=function(){var e=this,n=e.config,s=t.createElement("div");e.id=s.id=o[0]+r,s.setAttribute("class",o[0]+" "+o[0]+(n.type||0)),s.setAttribute("index",r);var l=function(){var e="object"==typeof n.title;return n.title?'<h3 style="'+(e?n.title[1]:"")+'">'+(e?n.title[0]:n.title)+"</h3>":""}(),c=function(){"string"==typeof n.btn&&(n.btn=[n.btn]);var e,t=(n.btn||[]).length;return 0!==t&&n.btn?(e='<span yes type="1">'+n.btn[0]+"</span>",2===t&&(e='<span no type="0">'+n.btn[1]+"</span>"+e),'<div class="layui-m-layerbtn">'+e+"</div>"):""}();if(n.fixed||(n.top=n.hasOwnProperty("top")?n.top:100,n.style=n.style||"",n.style+=" top:"+(t.body.scrollTop+n.top)+"px"),2===n.type&&(n.content='<i></i><i class="layui-m-layerload"></i><i></i><p>'+(n.content||"")+"</p>"),n.skin&&(n.anim="up"),"msg"===n.skin&&(n.shade=!1),s.innerHTML=(n.shade?"<div "+("string"==typeof n.shade?'style="'+n.shade+'"':"")+' class="layui-m-layershade"></div>':"")+'<div class="layui-m-layermain" '+(n.fixed?"":'style="position:static;"')+'><div class="layui-m-layersection"><div class="layui-m-layerchild '+(n.skin?"layui-m-layer-"+n.skin+" ":"")+(n.className?n.className:"")+" "+(n.anim?"layui-m-anim-"+n.anim:"")+'" '+(n.style?'style="'+n.style+'"':"")+">"+l+'<div class="layui-m-layercont">'+n.content+"</div>"+c+"</div></div></div>",!n.type||2===n.type){var d=t[i](o[0]+n.type),y=d.length;y>=1&&layer.close(d[0].getAttribute("index"))}document.body.appendChild(s);var u=e.elem=a("#"+e.id)[0];n.success&&n.success(u),e.index=r++,e.action(n,u)},c.prototype.action=function(e,t){var n=this;e.time&&(l.timer[n.index]=setTimeout(function(){layer.close(n.index)},1e3*e.time));var a=function(){var t=this.getAttribute("type");0==t?(e.no&&e.no(),layer.close(n.index)):e.yes?e.yes(n.index):layer.close(n.index)};if(e.btn)for(var s=t[i]("layui-m-layerbtn")[0].children,r=s.length,o=0;o<r;o++)l.touch(s[o],a);if(e.shade&&e.shadeClose){var c=t[i]("layui-m-layershade")[0];l.touch(c,function(){layer.close(n.index,e.end)})}e.end&&(l.end[n.index]=e.end)},e.layer={v:"2.0",index:r,open:function(e){var t=new c(e||{});return t.index},close:function(e){var n=a("#"+o[0]+e)[0];n&&(n.innerHTML="",t.body.removeChild(n),clearTimeout(l.timer[e]),delete l.timer[e],"function"==typeof l.end[e]&&l.end[e](),delete l.end[e])},closeAll:function(){for(var e=t[i](o[0]),n=0,a=e.length;n<a;n++)layer.close(0|e[0].getAttribute("index"))}},"function"==typeof define?define(function(){return layer}):function(){var e=document.scripts,n=e[e.length-1],i=n.src,a=i.substring(0,i.lastIndexOf("/")+1);n.getAttribute("merge")||document.head.appendChild(function(){var e=t.createElement("link");return e.href=a+"need/layer.css?2.0",e.type="text/css",e.rel="styleSheet",e.id="layermcss",e}())}()}(window); ;!function (e) {
"use strict";
var t = document, n = "querySelectorAll", i = "getElementsByClassName", a = function (e) {
return t[n](e)
}, s = {type: 0, shade: !0, shadeClose: !0, fixed: !0, anim: "scale"}, l = {
extend: function (e) {
var t = JSON.parse(JSON.stringify(s));
for (var n in e) t[n] = e[n];
return t
}, timer: {}, end: {}
};
l.touch = function (e, t) {
e.addEventListener("click", function (e) {
t.call(this, e)
}, !1)
};
var r = 0, o = ["layui-m-layer"], c = function (e) {
var t = this;
t.config = l.extend(e), t.view()
};
c.prototype.view = function () {
var e = this, n = e.config, s = t.createElement("div");
e.id = s.id = o[0] + r, s.setAttribute("class", o[0] + " " + o[0] + (n.type || 0)), s.setAttribute("index", r);
var l = function () {
var e = "object" == typeof n.title;
return n.title ? '<h3 style="' + (e ? n.title[1] : "") + '">' + (e ? n.title[0] : n.title) + "</h3>" : ""
}(), c = function () {
"string" == typeof n.btn && (n.btn = [n.btn]);
var e, t = (n.btn || []).length;
return 0 !== t && n.btn ? (e = '<span yes type="1">' + n.btn[0] + "</span>", 2 === t && (e = '<span no type="0">' + n.btn[1] + "</span>" + e), '<div class="layui-m-layerbtn">' + e + "</div>") : ""
}();
if (n.fixed || (n.top = n.hasOwnProperty("top") ? n.top : 100, n.style = n.style || "", n.style += " top:" + (t.body.scrollTop + n.top) + "px"), 2 === n.type && (n.content = '<i></i><i class="layui-m-layerload"></i><i></i><p>' + (n.content || "") + "</p>"), n.skin && (n.anim = "up"), "msg" === n.skin && (n.shade = !1), s.innerHTML = (n.shade ? "<div " + ("string" == typeof n.shade ? 'style="' + n.shade + '"' : "") + ' class="layui-m-layershade"></div>' : "") + '<div class="layui-m-layermain" ' + (n.fixed ? "" : 'style="position:static;"') + '><div class="layui-m-layersection"><div class="layui-m-layerchild ' + (n.skin ? "layui-m-layer-" + n.skin + " " : "") + (n.className ? n.className : "") + " " + (n.anim ? "layui-m-anim-" + n.anim : "") + '" ' + (n.style ? 'style="' + n.style + '"' : "") + ">" + l + '<div class="layui-m-layercont">' + n.content + "</div>" + c + "</div></div></div>", !n.type || 2 === n.type) {
var d = t[i](o[0] + n.type), y = d.length;
y >= 1 && layer.close(d[0].getAttribute("index"))
}
document.body.appendChild(s);
var u = e.elem = a("#" + e.id)[0];
n.success && n.success(u), e.index = r++, e.action(n, u)
}, c.prototype.action = function (e, t) {
var n = this;
e.time && (l.timer[n.index] = setTimeout(function () {
layer.close(n.index)
}, 1e3 * e.time));
var a = function () {
var t = this.getAttribute("type");
0 == t ? (e.no && e.no(), layer.close(n.index)) : e.yes ? e.yes(n.index) : layer.close(n.index)
};
if (e.btn) for (var s = t[i]("layui-m-layerbtn")[0].children, r = s.length, o = 0; o < r; o++) l.touch(s[o], a);
if (e.shade && e.shadeClose) {
var c = t[i]("layui-m-layershade")[0];
l.touch(c, function () {
layer.close(n.index, e.end)
})
}
e.end && (l.end[n.index] = e.end)
}, e.layer = {
v: "2.0", index: r, open: function (e) {
var t = new c(e || {});
return t.index
}, close: function (e) {
var n = a("#" + o[0] + e)[0];
n && (n.innerHTML = "", t.body.removeChild(n), clearTimeout(l.timer[e]), delete l.timer[e], "function" == typeof l.end[e] && l.end[e](), delete l.end[e])
}, closeAll: function () {
for (var e = t[i](o[0]), n = 0, a = e.length; n < a; n++) layer.close(0 | e[0].getAttribute("index"))
}
}, "function" == typeof define ? define(function () {
return layer
}) : function () {
var e = document.scripts, n = e[e.length - 1], i = n.src, a = i.substring(0, i.lastIndexOf("/") + 1);
n.getAttribute("merge") || document.head.appendChild(function () {
var e = t.createElement("link");
return e.href = a + "need/layer.css?2.0", e.type = "text/css", e.rel = "styleSheet", e.id = "layermcss", e
}())
}()
}(window);

1107
src/main/resources/templates/pages/application/application-in_temporaryValueForMaterial.html

File diff suppressed because it is too large

42
src/main/resources/templates/pages/depository/Inventory-view_mobile.html

@ -110,8 +110,9 @@
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">所处库位</label> <label class="layui-form-label">所处库位</label>
<div class="layui-input-inline"> <div class="layui-input-inline">
<button th:each="placeP,iterStar:${record.getPlacePList()}" <button th:each="placeP,iterStar:${record.getPlacePList()}" type="button"
th:attr="id=${record.getMid()}" class="layui-btn layui-btn-customize" th:attr="code=${placeP.getCode()}"
class="layui-btn layui-btn-customize"
onclick="changePlaceCode(this)" th:value="${record.getDepositoryId()}" onclick="changePlaceCode(this)" th:value="${record.getDepositoryId()}"
th:text="${placeP.getKingdeecode()}"> th:text="${placeP.getKingdeecode()}">
</button> </button>
@ -161,6 +162,9 @@
} }
function changePlaceCode() {
}
// 用于标志是否为第一次提交 // 用于标志是否为第一次提交
let flagForForm = false; let flagForForm = false;
@ -226,9 +230,37 @@
}); });
return false; return false;
}; };
$('body').on('click', '[data-refresh]', function () {
location.reload(); // 用于更改同一仓库下的库位
}) changePlaceCode = function (obj) {
var depositoryId = $("#depositoryId").val();
var placeCode = $(obj).attr("code");
var mid = $("#id").val();
// 当前点击行中的计量单位按钮
let unit = $("#unit").val();
if (unit === -1 || unit === "-1") {
unit = $("#unit").text().trim();
}
layer.open({
title: '选择库位',
type: 2,
shade: 0.2,
maxmin: true,
shadeClose: true,
area: ['70%', '70%'],
content: '/selectPlaceByDepository?depositoryId=' + depositoryId + '&mid=' + mid + '&placeCode=' + placeCode + '&unit=' + unit,
success: function (layero, index) {
var children = layero.children();
var content = $(children[1]);
var iframeChildren = $(content.children());
content.css('height', '100%');
iframeChildren.css('height', '100%');
},
});
};
}); });
</script> </script>

10
src/main/resources/templates/pages/depository/table-out_mobile.html

@ -127,13 +127,13 @@
lis.push("<div class='clearfix'>"); lis.push("<div class='clearfix'>");
for (let i = 0; i < result.length; i++) { for (let i = 0; i < result.length; i++) {
lis.push('<li style="width:100%;margin-top: 10px;float:left;border: 1px solid #9999996e;"><div class="layui-card my-shadow my-card flow1" onclick="showDetail(' lis.push('<li style="width:100%;margin-top: 10px;float:left;border: 1px solid #9999996e;"><div class="layui-card my-shadow my-card flow1" onclick="showDetail('
+ result[i].id + ')"><div class="layui-card-header"><h2>' + result[i].applicantName + "的出库申请" + '</h2></div>'); + result[i].id + ')"><div class="layui-card-header"><h3 style="font-weight: bold">' + result[i].applicantName + "的出库申请" + '</h3></div>');
lis.push('<div class="layui-col-md4 my-info" style="margin-left: 15px; color: #999;font-size: 15px;">' lis.push('<div class="layui-col-md4 my-info" style="margin-left: 15px; color: #999;font-size: 15px;">'
+ '<p style="font-size: large">' + "物料名称:"+ result[i].mname + '</p>' + '<p>' + "物料名称:"+ result[i].mname + '</p>'
+ '<p>' + "物料型号:" +result[i].mversion + '</p>' + '<p>' + "物料型号:" +result[i].mversion + '</p>'
+ '<p>' + "申请总数:" + result[i].quantity + '</p>' + '<p>' + "申请总数:" + result[i].quantity + '</p>'
+ '<p>' + "所处仓库:" + result[i].depositoryName + '</p>' + '<p>' + "所处仓库:" + result[i].depositoryName + '</p>'
+ '<p style="text-align: right">' + "申请时间:"+ result[i].applicantTime + '</p>' + '<p>' + "申请时间:"+ result[i].applicantTime + '</p>'
+ '</div></div></li>'); + '</div></div></li>');
} }
lis.push('</div>'); lis.push('</div>');
@ -258,13 +258,13 @@
for (let i = 0; i < result.length; i++) { for (let i = 0; i < result.length; i++) {
lis.push('<li style="width:100%;margin-top: 10px;float:left;border: 1px solid #9999996e;"><div class="layui-card my-shadow my-card flow1" onclick="showDetail(' lis.push('<li style="width:100%;margin-top: 10px;float:left;border: 1px solid #9999996e;"><div class="layui-card my-shadow my-card flow1" onclick="showDetail('
+ result[i].id + ')"><div class="layui-card-header"><h2>' + result[i].applicantName + "的出库申请" + '</h2></div>'); + result[i].id + ')"><div class="layui-card-header"><h3 style="font-weight: bold;"> ' + result[i].applicantName + "的出库申请" + '</h3></div>');
lis.push('<div class="layui-col-md4 my-info" style="margin-left: 15px; color: #999;font-size: 15px;">' lis.push('<div class="layui-col-md4 my-info" style="margin-left: 15px; color: #999;font-size: 15px;">'
+ '<p style="font-size: large">' + result[i].mname + '</p>' + '<p style="font-size: large">' + result[i].mname + '</p>'
+ '<p>' + result[i].mversion + '</p>' + '<p>' + result[i].mversion + '</p>'
+ '<p>' + result[i].mbrand + '</p>' + '<p>' + result[i].mbrand + '</p>'
+ '<p>' + result[i].depositoryName + '</p>' + '<p>' + result[i].depositoryName + '</p>'
+ '<p style="text-align: right">' + result[i].applicantTime + '</p>' + '<p>' + result[i].applicantTime + '</p>'
+ '</div></div></li>'); + '</div></div></li>');
} }
lis.push('</div>'); lis.push('</div>');

16
src/main/resources/templates/pages/depository/table-stock.html

@ -136,6 +136,9 @@
let newIndexShade; let newIndexShade;
// 用于保证导入时点击只导入一次
let flagForImport = true;
layui.use(['form', 'table', 'upload'], function () { layui.use(['form', 'table', 'upload'], function () {
var $ = layui.jquery, var $ = layui.jquery,
@ -632,7 +635,9 @@
, moveType: 1 //拖拽模式,0或者1 , moveType: 1 //拖拽模式,0或者1
, content: re , content: re
, yes: function (index, layero) { , yes: function (index, layero) {
//按钮【按钮一】的回调 if(flagForImport){
flagForImport = false;
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0,shadeClose:true});
$.ajax({ $.ajax({
url: "/excel/realImportInventory", url: "/excel/realImportInventory",
type: "post", type: "post",
@ -645,10 +650,12 @@
} else { } else {
layer.close(index); layer.close(index);
} }
flagForImport = true;
layer.alert("数据导入完成", { layer.alert("数据导入完成", {
icon: 0 icon: 0
}, function (indexForMsg, layero) { }, function (indexForMsg, layero) {
layer.close(indexForMsg); layer.close(indexForMsg);
layer.close(loading2);
closeShowDataMessage(); closeShowDataMessage();
table.reload('currentTableId', { table.reload('currentTableId', {
url: '/material/findInventory', url: '/material/findInventory',
@ -657,9 +664,16 @@
} }
}, 'data'); }, 'data');
}) })
},
error : function(){
flagForImport = true;
} }
}); });
}
//按钮【按钮一】的回调
} }
, btn2: function (index, layero) { , btn2: function (index, layero) {

22
src/main/resources/templates/pages/material/material-out.html

@ -87,16 +87,16 @@
<script type="text/html" id="toolbarDemo"> <script type="text/html" id="toolbarDemo">
<div class="layui-btn-container"> <div class="layui-btn-container">
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add"> 添加</button> <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="add" th:style="'display:'+${display}"> 添加</button>
<button class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete" <button class="layui-btn layui-btn-sm layui-btn-danger data-delete-btn" lay-event="delete"
th:style="'display:'+${display}"> 删除 th:style="'display:'+${display}"> 删除
</button> </button>
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="applicationIn"> 入库申请 <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" lay-event="applicationIn"> 入库申请
</button> </button>
<button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" id="u_fileUpload" <button class="layui-btn layui-btn-normal layui-btn-sm data-add-btn" id="u_fileUpload" th:style="'display:'+${display}"
lay-event="import">导入数据 lay-event="import">导入数据
</button> </button>
<button class="layui-btn layui-btn-warm layui-btn-sm" lay-event="downloadFile">下载导入模板</button> <button class="layui-btn layui-btn-warm layui-btn-sm" lay-event="downloadFile" th:style="'display:'+${display}">下载导入模板</button>
</div> </div>
</script> </script>
@ -140,6 +140,8 @@
let newIndexShade; let newIndexShade;
let flagForImport = true;
layui.use(['form', 'table', 'upload'], function () { layui.use(['form', 'table', 'upload'], function () {
var $ = layui.jquery, var $ = layui.jquery,
form = layui.form, form = layui.form,
@ -346,6 +348,9 @@
, moveType: 1 //拖拽模式,0或者1 , moveType: 1 //拖拽模式,0或者1
, content: re , content: re
, yes: function (index, layero) { , yes: function (index, layero) {
if(flagForImport){
flagForImport = false;
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0,shadeClose:true});
//按钮【按钮一】的回调 //按钮【按钮一】的回调
$.ajax({ $.ajax({
url: "/excel/realImportMaterial", url: "/excel/realImportMaterial",
@ -359,10 +364,12 @@
}else{ }else{
layer.close(index); layer.close(index);
} }
flagForImport = true;
layer.alert("数据导入完成", { layer.alert("数据导入完成", {
icon: 0 icon: 0
},function (indexForMsg,layero) { },function (indexForMsg,layero) {
layer.close(indexForMsg); layer.close(indexForMsg);
layer.close(loading2);
closeShowDataMessage(); closeShowDataMessage();
table.reload('currentTableId', { table.reload('currentTableId', {
url: '/material/material', url: '/material/material',
@ -373,6 +380,8 @@
}) })
} }
}); });
}
} }
, btn2: function (index, layero) { , btn2: function (index, layero) {
@ -523,11 +532,12 @@
var checkStatus = table.checkStatus('currentTableId') var checkStatus = table.checkStatus('currentTableId')
, data = checkStatus.data; , data = checkStatus.data;
var req = {}; var req = {};
req.mids = []; req.mids = "";
// 获取所有选中的id // 获取所有选中的id
for (i = 0, len = data.length; i < len; i++) { for (let i = 0, len = data.length; i < len; i++) {
req.mids[i] = data[i].id; req.mids += (data[i].id+",");
} }
req.type = "In";
$.ajax({ $.ajax({
url: "/material/temporaryValueForMaterial", url: "/material/temporaryValueForMaterial",
type: 'post', type: 'post',

9
src/main/resources/templates/pages/materialtype/materialType_view.html

@ -114,6 +114,7 @@
let newIndexShade; let newIndexShade;
let flagForImport = true;
layui.use(['form', 'table', 'upload'], function () { layui.use(['form', 'table', 'upload'], function () {
var $ = layui.jquery, var $ = layui.jquery,
@ -346,6 +347,10 @@
, content: re , content: re
, yes: function (index, layero) { , yes: function (index, layero) {
//按钮【按钮一】的回调 //按钮【按钮一】的回调
if(flagForImport){
flagForImport = false;
let loading2 = layer.open({ type: 3, shade: [0.25, '#000'], icon: 2, speed: 0,shadeClose:true});
$.ajax({ $.ajax({
url:"/excel/realImportMaterialType", url:"/excel/realImportMaterialType",
type: "post", type: "post",
@ -358,10 +363,12 @@
}else{ }else{
layer.close(index); layer.close(index);
} }
flagForImport = true;
layer.alert("数据导入完成", { layer.alert("数据导入完成", {
icon: 0 icon: 0
},function (indexForMsg,layero) { },function (indexForMsg,layero) {
layer.close(indexForMsg); layer.close(indexForMsg);
layer.close(loading2);
closeShowDataMessage(); closeShowDataMessage();
table.reload('currentTableId', { table.reload('currentTableId', {
url: '/materialType/materialTypeRecord', url: '/materialType/materialTypeRecord',
@ -374,6 +381,8 @@
}) })
} }
}); });
}
} }
, btn2: function (index, layero) { , btn2: function (index, layero) {

2
src/main/resources/templates/pages/split/split_edit.html

@ -124,7 +124,7 @@
</div> </div>
<div class="layui-form-item"> <div class="layui-form-item">
<label class="layui-form-label">单位:</label> <label class="layui-form-label">单位:</label>
<div class="layui-input-block"> <div class="layui-input-block">
<input type="text" name="newUnit" class="layui-input" id="newUnit" th:value="${record.getNewUnit()}" <input type="text" name="newUnit" class="layui-input" id="newUnit" th:value="${record.getNewUnit()}"
lay-verify="required"/> lay-verify="required"/>

Loading…
Cancel
Save