Browse Source

完成组合创建的页面修改

lwx_dev
erdanergou 3 years ago
parent
commit
5ce04bdce9
  1. 2
      src/main/java/com/dreamchaser/depository_manage/controller/GroupController.java
  2. 4
      src/main/java/com/dreamchaser/depository_manage/controller/PageController.java
  3. 5
      src/main/java/com/dreamchaser/depository_manage/entity/Group.java
  4. 9
      src/main/java/com/dreamchaser/depository_manage/mapper/GroupMapper.xml
  5. 63
      src/main/java/com/dreamchaser/depository_manage/service/impl/GroupServiceImpl.java
  6. 119
      src/main/resources/templates/pages/group/group-add_back.html
  7. 20
      src/main/resources/templates/pages/group/group_material_edit.html
  8. 9
      target/classes/com/dreamchaser/depository_manage/mapper/GroupMapper.xml

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

@ -190,7 +190,7 @@ public class GroupController {
* @param map
* @return
*/
@GetMapping("findGroupInfo")
@GetMapping("/findGroupInfo")
public RestResponse findGroupInfo(@RequestParam Map<String, Object> map) {
if (map.containsKey("gid")) {
List<GroupInfo> groupByCondition = groupService.findGroupByCondition(map);

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

@ -819,6 +819,8 @@ public class PageController {
ModelAndView mv = new ModelAndView();
if (gid != null) {
mv.addObject("gid", gid);
Group groupOnlyById = groupService.findGroupOnlyById(gid);
mv.addObject("group",groupOnlyById);
} else {
mv.addObject("gid", -1);
}
@ -863,6 +865,8 @@ public class PageController {
GroupInfo groupInfoByMidAndGid = groupService.findGroupInfoByMidAndGid(mid, gid);
if (groupInfoByMidAndGid != null) {
mv.addObject("record", groupInfoByMidAndGid);
List<SplitInfo> splitInfoByMid = splitUnitService.findSplitInfoByMid(groupInfoByMidAndGid.getMid());
mv.addObject("splitList",splitInfoByMid);
} else {
throw new MyException("缺少必要参数!");
}

5
src/main/java/com/dreamchaser/depository_manage/entity/Group.java

@ -26,4 +26,9 @@ public class Group {
* 组合名称
*/
private String gname;
/**
* 组合备注
*/
private String remark;
}

9
src/main/java/com/dreamchaser/depository_manage/mapper/GroupMapper.xml

@ -32,6 +32,7 @@
<id column="id" property="id" jdbcType="INTEGER" />
<result column="code" property="code" jdbcType="VARCHAR"/>
<result column="gname" property="gname" jdbcType="VARCHAR"/>
<result column="remark" property="remark" jdbcType="VARCHAR"/>
<result column="createTime" property="createTime" jdbcType="INTEGER"/>
<result column="state" property="state" jdbcType="INTEGER"/>
</resultMap>
@ -53,7 +54,7 @@
<!-- 用于组合-->
<sql id="allColumnsForGroup">
id,code,createTime,state,gname
id,code,createTime,state,gname,remark
</sql>
<!-- 用于物料对于组合的映射-->
@ -141,12 +142,14 @@
<insert id="addGroup" useGeneratedKeys="true" keyProperty="id">
INSERT INTO `group` (
id, code, createTime, state
id, code, createTime, state,gname,remark
) VALUES (
#{id},
#{code},
#{createTime},
#{state}
#{state},
#{gname},
#{remark}
)
</insert>

63
src/main/java/com/dreamchaser/depository_manage/service/impl/GroupServiceImpl.java

@ -104,6 +104,12 @@ public class GroupServiceImpl implements GroupService {
@Override
public List<GroupInfo> findGroupByCondition(Map<String, Object> map) {
List<GroupInfo> groupByCondition = groupMapper.findGroupByCondition(map);
for (GroupInfo groupInfo : groupByCondition) {
if ("-1".equals(groupInfo.getUnit())) {
Material material = materialMapper.findMaterialById(groupInfo.getMid());
groupInfo.setUnit(material.getUnit());
}
}
return groupByCondition;
}
@ -189,49 +195,62 @@ public class GroupServiceImpl implements GroupService {
// 设置当前时间
insertForGroup.put("createTime", System.currentTimeMillis());
//获取要使用的gid
Integer gid = null;
if(map.containsKey("gid")){
// 如果是重新添加对应物料
gid = ObjectFormatUtil.toInteger(map.get("gid"));
}
// 获取当前组合数量
Integer groupCount = groupMapper.findAllGroupOnlyCount(new HashMap<>());
if (groupCount == null) {
groupCount = 0;
}
if(gid == null) {
// 构造组合编码
String code = createCode(groupCount);
insertForGroup.put("code", code);
insertForGroup.put("state", 1);
insertForGroup.put("remark",map.get("applyRemark"));
insertForGroup.put("gname",map.get("gname"));
insertForGroup.put("remark", map.get("applyRemark"));
insertForGroup.put("gname", map.get("gname"));
// 插入到数据库
groupMapper.addGroup(insertForGroup);
gid = ObjectFormatUtil.toInteger(insertForGroup.get("id"));
}else{
Group groupOnlyById = groupMapper.findGroupOnlyById(gid);
groupOnlyById.setGname(map.get("gname").toString());
groupOnlyById.setRemark(map.get("applyRemark").toString());
groupMapper.updateGroupOnly(groupOnlyById);
}
//获取插入的组合id
Integer gid = ObjectFormatUtil.toInteger(insertForGroup.get("id"));
// 获取组合中的物料id
List<Object> mids = (List<Object>) map.get("mids");
// 获取组合中物料的数量
List<Object> quantitys = (List<Object>) map.get("quantitys");
// 获取创建的数量
Integer len = ObjectFormatUtil.toInteger(map.get("len"));
// 用于添加组合中的物料信息
Map<String, Object> materialForGroupMap = new HashMap<>();
// 设置组合id
materialForGroupMap.put("gid", gid);
Integer result = 0;
for (int i = 0; i < mids.size(); i++) {
// 获取物料id
Object mid = mids.get(i);
// 获取组合中当前物料对应的数量
Object quantity = quantitys.get(i);
materialForGroupMap.put("mid", mid);
materialForGroupMap.put("quantity", quantity);
// 添加
if(len > 1){
List<Integer> params = (List<Integer>) map.get("params");
for (Integer temp : params) {
materialForGroupMap.put("mid", map.get("mid" + temp));
materialForGroupMap.put("quantity", map.get("quantity" + temp));
materialForGroupMap.put("unit",map.get("unit"+temp));
result += groupMapper.addGroupForMaterial(materialForGroupMap);
}
materialForGroupMap.put("mid",map.get("mid"));
materialForGroupMap.put("quantity",map.get("quantity"));
materialForGroupMap.put("unit",map.get("unit"));
result += groupMapper.addGroupForMaterial(materialForGroupMap);
}else{
// 添加
map.put("gid",gid);
result += groupMapper.addGroupForMaterial(map);
}
return result;
}
@ -345,6 +364,7 @@ public class GroupServiceImpl implements GroupService {
Integer id = ObjectFormatUtil.toInteger(map.get("id"));
// 获取当前要修改的物料明细数量
Integer quantity = ObjectFormatUtil.toInteger(map.get("quantity"));
String unit = (String) map.get("unit");
if (Integer.compare(0, quantity) == 0) {
// 如果要修改的数量为0则删除该明细
return groupMapper.delMaterialForGroupById(id);
@ -352,6 +372,7 @@ public class GroupServiceImpl implements GroupService {
// 根据id获取当前组合明细
GroupInfo groupById = groupMapper.findGroupById(id);
groupById.setQuantity(quantity);
groupById.setUnit(unit);
return groupMapper.updateMaterialForGroup(groupById);
}
}

119
src/main/resources/templates/pages/group/group-add_back.html

@ -48,19 +48,23 @@
<div class="layuimini-main">
<input style="display: none" id="gid" th:value="${gid}">
<div style="margin: 10px 10px 10px 10px">
<form class="layui-form layui-form-pane" id="stepForm" style="margin: 0 auto;max-width: 460px;">
<div class="layui-carousel" id="stepForm" lay-filter="stepForm" style="margin: 0 auto; ">
<div carousel-item style="overflow: inherit">
<div>
<form class="layui-form layui-form-pane" style="margin: 0 auto;max-width: 460px;">
<div class="layui-card-body" id="takingHeader" style="padding-right: 0px">
<div class="layui-form-item">
<label class="layui-form-label">组合名称:</label>
<div class="layui-input-block">
<div class="inputdiv">
<input type="text" placeholder="请输入组合名称" class="layui-input" id="gname" name="gname" lay-verify="required">
<input type="text" placeholder="请输入组合名称" class="layui-input" id="gname" th:value="${gid == -1?'':group?.getGname()}"
name="gname" lay-verify="required">
</div>
</div>
</div>
<label class="layui-form-label">备注说明:</label>
<div class="layui-input-block">
<input name="applyRemark" placeholder="请填写相关原因及申请原因" value=""
<input name="applyRemark" placeholder="请填写相关原因及申请原因" th:value="${gid == -1?'':group?.getRemark()}"
class="layui-input"/>
</div>
</div>
@ -140,9 +144,9 @@
</div>
</fieldset>
<!-- 提交按钮-->
<div class="layui-form-item" id="btn_sub" style="margin-top: 10px" >
<div class="layui-form-item" id="btn_sub" style="margin-top: 10px">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formStep"
<button class="layui-btn" lay-submit lay-filter="formStep" type="button"
style="margin-bottom: 30px;margin-left: 15%">
&emsp;提交&emsp;
</button>
@ -151,37 +155,62 @@
</div>
</form>
</div>
<div>
<form class="layui-form" style="margin: 0 auto;max-width: 460px;padding-top: 40px;">
<div style="text-align: center;margin-top: 90px;">
<i class="layui-icon layui-circle"
style="color: white;font-size:30px;font-weight:bold;background: #52C41A;padding: 20px;line-height: 80px;">&#xe605;</i>
<div style="font-size: 24px;color: #333;font-weight: 500;margin-top: 30px;">
创建成功
</div>
<div style="text-align: center;margin-top: 50px;">
<button class="layui-btn next" >再创建一次</button>
</div>
</div>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="/static/lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script src="/static/js/lay-config.js?v=1.0.4" charset="utf-8"></script>
<script>
// 实现卡片添加
function addItem(){
function addItem() {
}
// 实现卡片删除
function deleteItem(){
function deleteItem() {
}
// 扫描物料条码
function scanBarCode(){
function scanBarCode() {
}
// 用于扫码功能
function scanCodeForMaterial(){
function scanCodeForMaterial() {
}
// 用于实现点击搜索按钮
function selectMaterial(){
function selectMaterial() {
}
// 用于实现通过编码查询物料
function selectCode(){
function selectCode() {
}
// 用于实现物料名称搜索
function selectMaterialByName(){
function selectMaterialByName() {
}
@ -190,19 +219,38 @@
// 用于卡片编号
var NewIdNumber = 1;
layui.use(['form', 'layer', 'dropdown', 'tree', 'laydate'], function () {
layui.use(['form', 'layer', 'tree', 'step'], function () {
var $ = layui.jquery,
form = layui.form;
form = layui.form,
step = layui.step;
let gid = $("#gid").val();
step.render({
elem: '#stepForm',
filter: 'stepForm',
width: '100%', //设置容器宽度
height: '600px',
stepItems: [{
title: '填写信息'
}, {
title: '创建成功'
}]
});
// 提交(组合出库)
form.on('submit(formStep)', function (data) {
data = data.field;
data.len = NewIdNumber;
data.params = params;
if("-1" !== gid){
data.gid = gid;
}
$.ajax({
url:"/group/addGroup",
data:JSON.stringify(data),
dataType:"json",
type:"post",
url: "/group/addGroup",
data: JSON.stringify(data),
dataType: "json",
type: "post",
contentType: "application/json;charset=utf-8",
beforeSend: function () {
this.layerIndex = layer.load(0, {shade: [0.5, '#393D49']});
@ -215,7 +263,9 @@
} else {
layer.msg("创建成功", {
icon: 6,//成功的表情
time: 500 //1秒关闭(如果不配置,默认是3秒)
time: 1000 //1秒关闭(如果不配置,默认是3秒)
}, function () {
step.next('#stepForm');
});
}
},
@ -225,6 +275,14 @@
})
});
$('.pre').click(function () {
step.pre('#stepForm');
});
$('.next').click(function () {
step.next('#stepForm');
});
// 实现卡片添加
addItem = function (obj) {
// 获取父元素id
@ -243,7 +301,7 @@
id="openSonByMaterial" lay-verify="required" onblur="selectMaterialByName(this)"/>
<i class="layui-icon layui-icon-search" style="display: inline" id="selectMaterial" onclick="selectMaterial(this)"></i>
</div>
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id="mid"
<input type="text" name=` + "mid" + NewIdNumber + ` class="layui-input" id=`+"mid"+NewIdNumber+`
style="display: none" lay-verify="required" />
</div>
</div>
@ -284,7 +342,7 @@
<div class="layui-form-item">
<label class="layui-form-label">计量单位:</label>
<div class="layui-input-block">
<select id=`+"unit"+NewIdNumber+` name=`+"unit"+NewIdNumber+`>
<select id=` + "unit" + NewIdNumber + ` name=` + "unit" + NewIdNumber + `>
</select>
</div>
@ -364,7 +422,7 @@
var data = d.data;
if (data !== null) {
materialName.value = data.mname;
materialId.value = data.iid;
materialId.value = data.mid;
materialCode.value = data.mcode;
var barCodeInput = barCodeItem.childNodes[1].childNodes[1];
barCodeInput.value = result;
@ -462,14 +520,14 @@
$.each(data.placePList, function (index, item) {
$('#place' + idNumber).append(new Option(item.depositoryName + "-" + item.code, item.id));//往下拉菜单里添加元素
});
$("#unit"+idNumber).empty();
$("#unit"+idNumber).append(new Option(data.unit,"-1"));
$.each(data.splitInfoList,function (index,item) {
$("#unit"+idNumber).append(new Option(item.newUnit,item.newUnit));
$("#unit" + idNumber).empty();
$("#unit" + idNumber).append(new Option(data.unit, "-1"));
$.each(data.splitInfoList, function (index, item) {
$("#unit" + idNumber).append(new Option(item.newUnit, item.newUnit));
});
form.render();
materialName.value = data.mname;
materialId.value = data.id;
materialId.value = data.mid;
materialCode.value = data.code;
}
})
@ -514,7 +572,7 @@
},
end: function () {
var mid = materialId.value;
if(mid !== '') {
if (mid !== '') {
$.ajax({
url: "/material/findMatrialById?mid=" + mid,
type: "get",
@ -607,7 +665,7 @@
} else {
materialName.value = d.mname;
materialId.value = d.id;
materialId.value = d.mid;
var idNumber = materialId.name.split("mid")[1];
// 获取物料与条形码的对应关系
var materialAndBarCodeList = d["materialAndBarCodeList"];
@ -693,7 +751,7 @@
unit.empty();
$("#unit" + idNumber).append(new Option(material.unit, "-1"));
var unitList = material["splitInfoList"];
if(unitList !== null && unitList != undefined){
if (unitList !== null && unitList != undefined) {
for (let i = 0; i < unitList.length; i++) {
$("#unit" + idNumber).append(new Option(unitList[i].newUnit, unitList[i].newUnit));
}
@ -736,7 +794,6 @@
};
})
</script>

20
src/main/resources/templates/pages/group/group_material_edit.html

@ -77,21 +77,15 @@
<div class="layui-form-item">
<label class="layui-form-label">计量单位</label>
<div class="layui-input-inline">
<input type="text" th:value="${record.getUnit()}" name="unit" required autocomplete="off" readonly
class="layui-input">
<select id="unit" name="unit">
<option value="-1" th:text="${record.getMunit()}" th:selected="${record.getUnit() == '-1'}"></option>
<option th:each="splitInfo,iterStar:${splitList}" th:selected="${splitInfo.getNewUnit() == record.getUnit()}"
th:value="${splitInfo?.getNewUnit()}"
th:text="${splitInfo?.getNewUnit()}">
</option>
</select>
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label">备注:</label>
<div class="layui-input-inline">
<input type="text" placeholder="请填写备注" class="layui-input" th:value="${record.getRemark()}"
name="remark" />
</div>
</div>
<div class="layui-form-item">
<div class="layui-input-block">
<button class="layui-btn" lay-submit lay-filter="formDemo">立即提交</button>

9
target/classes/com/dreamchaser/depository_manage/mapper/GroupMapper.xml

@ -32,6 +32,7 @@
<id column="id" property="id" jdbcType="INTEGER" />
<result column="code" property="code" jdbcType="VARCHAR"/>
<result column="gname" property="gname" jdbcType="VARCHAR"/>
<result column="remark" property="remark" jdbcType="VARCHAR"/>
<result column="createTime" property="createTime" jdbcType="INTEGER"/>
<result column="state" property="state" jdbcType="INTEGER"/>
</resultMap>
@ -53,7 +54,7 @@
<!-- 用于组合-->
<sql id="allColumnsForGroup">
id,code,createTime,state,gname
id,code,createTime,state,gname,remark
</sql>
<!-- 用于物料对于组合的映射-->
@ -141,12 +142,14 @@
<insert id="addGroup" useGeneratedKeys="true" keyProperty="id">
INSERT INTO `group` (
id, code, createTime, state
id, code, createTime, state,gname,remark
) VALUES (
#{id},
#{code},
#{createTime},
#{state}
#{state},
#{gname},
#{remark}
)
</insert>

Loading…
Cancel
Save