Browse Source

[feat] 生产管理

按照万材要求,生产管理成品SOP新增导出功能,支持部分行和全部行导出,导出更多数据
新增导出所有和选择导出后端接口
新增 导出生产管理成品SOP单明细方法
新增 根据成品SOP号查询成品SOP集合方法
dev
liuxiaoxu 5 days ago
parent
commit
5d2fee3665
  1. 19
      ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSopController.java
  2. 5
      ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSop.java
  3. 6
      ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSopMapper.java
  4. 5
      ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSopService.java
  5. 10
      ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSopServiceImpl.java
  6. 11
      ruoyi-admin/src/main/resources/mapper/system/SysSopMapper.xml
  7. 67
      ruoyi-admin/src/main/resources/templates/system/sop/sop.html

19
ruoyi-admin/src/main/java/com/ruoyi/system/controller/SysSopController.java

@ -71,15 +71,30 @@ public class SysSopController extends BaseController
*/ */
@RequiresPermissions("system:sop:export") @RequiresPermissions("system:sop:export")
@Log(title = "SOP", businessType = BusinessType.EXPORT) @Log(title = "SOP", businessType = BusinessType.EXPORT)
@PostMapping("/export") @PostMapping("/exportAll")
@ResponseBody @ResponseBody
public AjaxResult export(SysSop sysSop) public AjaxResult exportAll(SysSop sysSop)
{ {
List<SysSop> list = sysSopService.selectSysSopList(sysSop); List<SysSop> list = sysSopService.selectSysSopList(sysSop);
ExcelUtil<SysSop> util = new ExcelUtil<SysSop>(SysSop.class); ExcelUtil<SysSop> util = new ExcelUtil<SysSop>(SysSop.class);
return util.exportExcel(list, "SOP数据"); return util.exportExcel(list, "SOP数据");
} }
/**
* 导出SOP列表
*/
@RequiresPermissions("system:sop:export")
@Log(title = "SOP", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(@RequestBody String[] sopIds)
{
List<SysSop> list = sysSopService.selectSysSopListByIds(sopIds);
ExcelUtil<SysSop> util = new ExcelUtil<SysSop>(SysSop.class);
return util.exportExcel(list, "SOP数据");
}
/** /**
* 新增SOP * 新增SOP
*/ */

5
ruoyi-admin/src/main/java/com/ruoyi/system/domain/SysSop.java

@ -22,15 +22,20 @@ public class SysSop extends BaseEntity
private String delFlag; private String delFlag;
/** sopid */ /** sopid */
@Excel(name = "sopid")
private String sopId; private String sopId;
/** sop编号 */ /** sop编号 */
@Excel(name = "sop编号")
private String sopNum; private String sopNum;
/** 品名 */ /** 品名 */
@Excel(name = "品名")
private String productName; private String productName;
/** 设备型号 */ /** 设备型号 */
@Excel(name = "设备型号")
private String equipModel; private String equipModel;
/** 描述 */ /** 描述 */
@Excel(name = "描述")
private String describe; private String describe;
/** 成品代码 */ /** 成品代码 */

6
ruoyi-admin/src/main/java/com/ruoyi/system/mapper/SysSopMapper.java

@ -59,4 +59,10 @@ public interface SysSopMapper
* @return 结果 * @return 结果
*/ */
public int deleteSysSopByIds(String[] ids); public int deleteSysSopByIds(String[] ids);
/**
* 根据 sopIds 查询 sop集合
* */
List<SysSop> selectSysSopListByIds(String[] sopIds);
} }

5
ruoyi-admin/src/main/java/com/ruoyi/system/service/ISysSopService.java

@ -59,4 +59,9 @@ public interface ISysSopService
* @return 结果 * @return 结果
*/ */
public int deleteSysSopById(Long sopId); public int deleteSysSopById(Long sopId);
/**
* 根据 sopIds 查询 sop集合
* */
List<SysSop> selectSysSopListByIds(String[] sopIds);
} }

10
ruoyi-admin/src/main/java/com/ruoyi/system/service/impl/SysSopServiceImpl.java

@ -51,6 +51,16 @@ public class SysSopServiceImpl implements ISysSopService
return sysSopMapper.selectSysSopList(sysSop); return sysSopMapper.selectSysSopList(sysSop);
} }
/**
* 根据 sopIds 查询 sop集合
* */
@Override
public List<SysSop> selectSysSopListByIds(String[] sopIds) {
List<SysSop> list = sysSopMapper.selectSysSopListByIds(sopIds);
return list;
}
/** /**
* 新增SOP * 新增SOP
* *

11
ruoyi-admin/src/main/resources/mapper/system/SysSopMapper.xml

@ -58,7 +58,16 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectSysSopVo"/> <include refid="selectSysSopVo"/>
where id = #{id} where id = #{id}
</select> </select>
<select id="selectSysSopListByIds" parameterType="String" resultMap="SysSopResult">
<include refid="selectSysSopVo"/>
where sop_id in
<foreach item="sopId" collection="array" open="(" separator="," close=")">
#{sopId}
</foreach>
</select>
<insert id="insertSysSop" parameterType="SysSop" useGeneratedKeys="true" keyProperty="sopId"> <insert id="insertSysSop" parameterType="SysSop" useGeneratedKeys="true" keyProperty="sopId">
insert into sys_sop insert into sys_sop
<trim prefix="(" suffix=")" suffixOverrides=","> <trim prefix="(" suffix=")" suffixOverrides=",">

67
ruoyi-admin/src/main/resources/templates/system/sop/sop.html

@ -56,15 +56,9 @@
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:sop:add"> <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="system:sop:add">
<i class="fa fa-plus"></i> 添加 <i class="fa fa-plus"></i> 添加
</a> </a>
<!-- <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="system:sop:edit">--> <a class="btn btn-success" onclick="exportExcel()" shiro:hasPermission="system:sop:export">
<!-- <i class="fa fa-edit"></i> 修改--> <i class="fa fa-download"></i> 导出
<!-- </a>--> </a>
<!-- <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="system:sop:remove">-->
<!-- <i class="fa fa-remove"></i> 删除-->
<!-- </a>-->
<!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="system:sop:export">-->
<!-- <i class="fa fa-download"></i> 导出-->
<!-- </a>-->
</div> </div>
<div class="col-sm-12 select-table table-striped"> <div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table" style="white-space:nowrap"></table> <table id="bootstrap-table" style="white-space:nowrap"></table>
@ -253,6 +247,61 @@
window.location.href =prefix + "/downloadFile?filepath="+ filepath; window.location.href =prefix + "/downloadFile?filepath="+ filepath;
} }
// 导出
function exportExcel(formId) {
// $.table.set();
var sopIdData = [];
var selections = $("#bootstrap-table").bootstrapTable("getSelections");
if(selections.length === 0){
$.modal.confirm("确定导出所有成品Sop吗?", function() {
var currentId = $.common.isEmpty(formId) ? $('form').attr('id') : formId;
var params = $("#bootstrap-table").bootstrapTable('getOptions');
var dataParam = $("#" + currentId).serializeArray();
dataParam.push({ "name": "orderByColumn", "value": params.sortName });
dataParam.push({ "name": "isAsc", "value": params.sortOrder });
$.modal.loading("正在导出数据,请稍后...");
$.post(prefix + '/exportAll', dataParam, function(result) {
if (result.code == web_status.SUCCESS) {
window.location.href = ctx + "common/download?fileName=" + encodeURI(result.msg) + "&delete=" + true;
} else if (result.code == web_status.WARNING) {
$.modal.alertWarning(result.msg)
} else {
$.modal.alertError(result.msg);
}
$.modal.closeLoading();
});
});
}else {
$.modal.confirm("确定导出选中的所有成品Sop吗?", function () {
//·拼接单号
for(let i=0;i<selections.length;i++){
sopIdData.push(selections[i].sopId);
}
var sopIds = JSON.stringify(sopIdData);
// console.log(bomNos);
$.modal.loading("正在导出数据,请稍后...");
var config = {
url: prefix + '/export',
type: "post",
dataType: "json",
contentType: "application/json;charset=utf-8",
data: sopIds,
success: function(result) {
window.location.href = ctx + "common/download?fileName=" + encodeURI(result.msg) + "&delete=" + true;
$.modal.alertSuccess("导出成功!")
$.modal.closeLoading();
},
error: function (result){
$.modal.alertError(result.msg);
}
};
$.ajax(config)
});
}
};
</script> </script>
</body> </body>
</html> </html>
Loading…
Cancel
Save