增加 入库 台账

master
wangh 8 months ago
parent 506145742b
commit 7c6699418e

@ -1,5 +1,7 @@
package com.ruoyi.api.controller;
import com.ruoyi.api.domain.InStoreDto;
import com.ruoyi.api.service.impl.ApiService;
import com.ruoyi.common.core.domain.AjaxResult;
import static com.ruoyi.common.core.domain.AjaxResult.*;
@ -10,6 +12,7 @@ import com.ruoyi.manage.service.IBaseLocationService;
import com.ruoyi.manage.service.IBaseManufacturerService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@ -29,6 +32,8 @@ public class ApiController {
private IBaseLocationService baseLocationService;
@Autowired
private IBaseManufacturerService baseManufacturerService;
@Autowired
private ApiService apiService;
//入库
// 查询库位 和 品牌
@ -46,8 +51,11 @@ public class ApiController {
map.put("baseManufacturerList", baseManufacturerList);
return success(map);
}
@PostMapping("/instore/submit")
public AjaxResult instoreSubmit(){
@PostMapping("/instore/submit")
public AjaxResult instoreSubmit(@RequestBody InStoreDto inStore) {
apiService.submintInsertRecordIn(inStore);
apiService.submintInsertLedger(inStore);
return success();
}
}

@ -0,0 +1,66 @@
package com.ruoyi.api.domain;
import java.util.ArrayList;
import java.util.List;
/**
* @author wanghao
* @date 2024/1/11 16:21
*/
public class InStoreDto {
private String binchCode;
private String selectManuText;
private String selectLocationText;
private List<String> epcList;
private String submitUser;
private Long manufacturerId;
public String getBinchCode() {
return binchCode;
}
public void setBinchCode(String binchCode) {
this.binchCode = binchCode;
}
public String getSelectManuText() {
return selectManuText;
}
public void setSelectManuText(String selectManuText) {
this.selectManuText = selectManuText;
}
public String getSelectLocationText() {
return selectLocationText;
}
public void setSelectLocationText(String selectLocationText) {
this.selectLocationText = selectLocationText;
}
public List<String> getEpcList() {
return epcList;
}
public void setEpcList(List<String> epcList) {
this.epcList = epcList;
}
public String getSubmitUser() {
return submitUser;
}
public void setSubmitUser(String submitUser) {
this.submitUser = submitUser;
}
public Long getManufacturerId() {
return manufacturerId;
}
public void setManufacturerId(Long manufacturerId) {
this.manufacturerId = manufacturerId;
}
}

@ -0,0 +1,17 @@
package com.ruoyi.api.mapper;
import com.ruoyi.api.domain.InStoreDto;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
/**
* @author wanghao
* @date 2024/1/17 14:28
*/
@Repository
public interface ApiMapper {
int submintInsertRecordIn(@Param("inStore") InStoreDto inStore);
int submintInsertLedger(@Param("inStore") InStoreDto inStore);
}

@ -0,0 +1,24 @@
package com.ruoyi.api.service.impl;
import com.ruoyi.api.domain.InStoreDto;
import com.ruoyi.api.mapper.ApiMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* @author wanghao
* @date 2024/1/17 14:26
*/
@Service
public class ApiService {
@Autowired
private ApiMapper mapper;
public int submintInsertRecordIn(InStoreDto inStore) {
return mapper.submintInsertRecordIn(inStore);
}
public int submintInsertLedger(InStoreDto inStore) {
return mapper.submintInsertLedger(inStore);
}
}

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.api.mapper.ApiMapper">
<insert id="submintInsertRecordIn">
INSERT INTO bg_wheel_chocks.record_in (epc_code, batch_code, location_code,manufacturer_id, manufacturer_Name,
create_by,create_time)
VALUES
<foreach collection="inStore.epclist" item="item" separator=",">
(#{item},#{inStore.binchCode},#{inStore.selectLocationText},#{inStore.manufacturerId},#{inStore.selectManuText},#{inStore.submitUser},now())
</foreach>
</insert>
<insert id="submintInsertLedger">
INSERT INTO bg_wheel_chocks.ledger_rfid (manufacturer_id, rifd_code, batch_code, location_code)
VALUES
<foreach collection="inStore.epclist" item="item" separator=",">
(#{inStore.manufacturerId},#{item},#{inStore.binchCode},#{inStore.selectLocationText})
</foreach>
</insert>
<!-- -->
</mapper>

@ -1,125 +0,0 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('新增手持版本升级')" />
<th:block th:include="include :: bootstrap-fileinput-css"/>
<th:block th:include="include :: summernote-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-pda_version-add">
<div class="form-group">
<label class="col-sm-3 control-label">版本号:</label>
<div class="col-sm-8">
<input name="versionCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">版本名:</label>
<div class="col-sm-8">
<input name="versionName" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" name="modifyContent">
<div class="summernote" id="modifyContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">位置:</label>
<div class="col-sm-8">
<!-- <input type="hidden" name="downloadUrl">-->
<!-- <div class="file-loading">-->
<!-- <input class="form-control file-upload" id="downloadUrl" name="file" type="file">-->
<input id="filePath" name="filePath" class="form-control" type="file">
<!-- </div>-->
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: bootstrap-fileinput-js"/>
<th:block th:include="include :: summernote-js" />
<script th:inline="javascript">
var prefix = ctx + "pda/pda_version"
$("#form-pda_version-add").validate({
focusCleanup: true
});
function submitHandler() {
// if ($.validate.form()) {
// $.operate.save(prefix + "/add", $('#form-pda_version-add').serialize());
// }
var formData = new FormData();
if ($('#filePath')[0].files[0] == null) {
$.modal.alertWarning("请先选择文件路径");
return false;
}
formData.append('versionCode', $("input[name='versionCode']").val());
formData.append('versionName', $("input[name='versionName']").val());
formData.append('modifyContent', $("input[name='modifyContent']").val());
formData.append('file', $('#filePath')[0].files[0]);
$.ajax({
url: prefix + "/add",
type: 'post',
cache: false,
data: formData,
processData: false,
contentType: false,
dataType: "json",
success: function(result) {
$.operate.successCallback(result);
}
});
}
// $(".file-upload").fileinput({
// uploadUrl: ctx + 'common/upload',
// maxFileCount: 1,
// autoReplace: true
// }).on('fileuploaded', function (event, data, previewId, index) {
// $("input[name='" + event.currentTarget.id + "']").val(data.response.url)
// }).on('fileremoved', function (event, id, index) {
// $("input[name='" + event.currentTarget.id + "']").val('')
// })
$(function() {
$('.summernote').summernote({
lang: 'zh-CN',
dialogsInBody: true,
callbacks: {
onChange: function(contents, $edittable) {
$("input[name='" + this.id + "']").val(contents);
},
onImageUpload: function(files) {
var obj = this;
var data = new FormData();
data.append("file", files[0]);
$.ajax({
type: "post",
url: ctx + "common/upload",
data: data,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function(result) {
if (result.code == web_status.SUCCESS) {
$('#' + obj.id).summernote('insertImage', result.url);
} else {
$.modal.alertError(result.msg);
}
},
error: function(error) {
$.modal.alertWarning("图片上传失败。");
}
});
}
}
});
});
</script>
</body>
</html>

@ -1,114 +0,0 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改手持版本升级')" />
<th:block th:include="include :: bootstrap-fileinput-css"/>
<th:block th:include="include :: summernote-css" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-pda_version-edit" th:object="${pdaApkVersion}">
<input name="objid" th:field="*{objid}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">版本号:</label>
<div class="col-sm-8">
<input name="versionCode" th:field="*{versionCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">版本名:</label>
<div class="col-sm-8">
<input name="versionName" th:field="*{versionName}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">信息:</label>
<div class="col-sm-8">
<input type="hidden" class="form-control" th:field="*{modifyContent}">
<div class="summernote" id="modifyContent"></div>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">位置:</label>
<div class="col-sm-8">
<input type="hidden" name="downloadUrl" th:field="*{downloadUrl}">
<div class="file-loading">
<input class="form-control file-upload" id="downloadUrl" name="file" type="file">
</div>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<th:block th:include="include :: bootstrap-fileinput-js"/>
<th:block th:include="include :: summernote-js" />
<script th:inline="javascript">
var prefix = ctx + "pda/pda_version";
$("#form-pda_version-edit").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-pda_version-edit').serialize());
}
}
$(".file-upload").each(function (i) {
var val = $("input[name='" + this.id + "']").val()
$(this).fileinput({
'uploadUrl': ctx + 'common/upload',
initialPreviewAsData: true,
initialPreview: [val],
maxFileCount: 1,
autoReplace: true
}).on('fileuploaded', function (event, data, previewId, index) {
$("input[name='" + event.currentTarget.id + "']").val(data.response.url)
}).on('fileremoved', function (event, id, index) {
$("input[name='" + event.currentTarget.id + "']").val('')
})
$(this).fileinput('_initFileActions');
});
$(function() {
$('.summernote').each(function(i) {
$('#' + this.id).summernote({
lang: 'zh-CN',
dialogsInBody: true,
callbacks: {
onChange: function(contents, $edittable) {
$("input[name='" + this.id + "']").val(contents);
},
onImageUpload: function(files) {
var obj = this;
var data = new FormData();
data.append("file", files[0]);
$.ajax({
type: "post",
url: ctx + "common/upload",
data: data,
cache: false,
contentType: false,
processData: false,
dataType: 'json',
success: function(result) {
if (result.code == web_status.SUCCESS) {
$('#' + obj.id).summernote('insertImage', result.url);
} else {
$.modal.alertError(result.msg);
}
},
error: function(error) {
$.modal.alertWarning("图片上传失败。");
}
});
}
}
});
var content = $("input[name='" + this.id + "']").val();
$('#' + this.id).summernote('code', content);
})
});
</script>
</body>
</html>

@ -0,0 +1,127 @@
package com.ruoyi.manage.controller;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.manage.domain.LedgerRfid;
import com.ruoyi.manage.service.ILedgerRfidService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* Controller
*
* @author wangh
* @date 2024-01-17
*/
@Controller
@RequestMapping("/manage/ledger_rfid")
public class LedgerRfidController extends BaseController
{
private String prefix = "manage/ledger_rfid";
@Autowired
private ILedgerRfidService ledgerRfidService;
@RequiresPermissions("manage:ledger_rfid:view")
@GetMapping()
public String ledger_rfid()
{
return prefix + "/ledger_rfid";
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(LedgerRfid ledgerRfid)
{
startPage();
List<LedgerRfid> list = ledgerRfidService.selectLedgerRfidList(ledgerRfid);
return getDataTable(list);
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:export")
@Log(title = "轮挡台账", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(LedgerRfid ledgerRfid)
{
List<LedgerRfid> list = ledgerRfidService.selectLedgerRfidList(ledgerRfid);
ExcelUtil<LedgerRfid> util = new ExcelUtil<LedgerRfid>(LedgerRfid.class);
return util.exportExcel(list, "轮挡台账数据");
}
/**
*
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:add")
@Log(title = "轮挡台账", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(LedgerRfid ledgerRfid)
{
return toAjax(ledgerRfidService.insertLedgerRfid(ledgerRfid));
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:edit")
@GetMapping("/edit/{objid}")
public String edit(@PathVariable("objid") Long objid, ModelMap mmap)
{
LedgerRfid ledgerRfid = ledgerRfidService.selectLedgerRfidByObjid(objid);
mmap.put("ledgerRfid", ledgerRfid);
return prefix + "/edit";
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:edit")
@Log(title = "轮挡台账", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(LedgerRfid ledgerRfid)
{
return toAjax(ledgerRfidService.updateLedgerRfid(ledgerRfid));
}
/**
*
*/
@RequiresPermissions("manage:ledger_rfid:remove")
@Log(title = "轮挡台账", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(ledgerRfidService.deleteLedgerRfidByObjids(ids));
}
}

@ -0,0 +1,127 @@
package com.ruoyi.manage.controller;
import java.util.List;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.manage.domain.RecordIn;
import com.ruoyi.manage.service.IRecordInService;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.utils.poi.ExcelUtil;
import com.ruoyi.common.core.page.TableDataInfo;
/**
* Controller
*
* @author wangh
* @date 2024-01-17
*/
@Controller
@RequestMapping("/manage/record_in")
public class RecordInController extends BaseController
{
private String prefix = "manage/record_in";
@Autowired
private IRecordInService recordInService;
@RequiresPermissions("manage:record_in:view")
@GetMapping()
public String record_in()
{
return prefix + "/record_in";
}
/**
*
*/
@RequiresPermissions("manage:record_in:list")
@PostMapping("/list")
@ResponseBody
public TableDataInfo list(RecordIn recordIn)
{
startPage();
List<RecordIn> list = recordInService.selectRecordInList(recordIn);
return getDataTable(list);
}
/**
*
*/
@RequiresPermissions("manage:record_in:export")
@Log(title = "轮挡入库记录", businessType = BusinessType.EXPORT)
@PostMapping("/export")
@ResponseBody
public AjaxResult export(RecordIn recordIn)
{
List<RecordIn> list = recordInService.selectRecordInList(recordIn);
ExcelUtil<RecordIn> util = new ExcelUtil<RecordIn>(RecordIn.class);
return util.exportExcel(list, "轮挡入库记录数据");
}
/**
*
*/
@GetMapping("/add")
public String add()
{
return prefix + "/add";
}
/**
*
*/
@RequiresPermissions("manage:record_in:add")
@Log(title = "轮挡入库记录", businessType = BusinessType.INSERT)
@PostMapping("/add")
@ResponseBody
public AjaxResult addSave(RecordIn recordIn)
{
return toAjax(recordInService.insertRecordIn(recordIn));
}
/**
*
*/
@RequiresPermissions("manage:record_in:edit")
@GetMapping("/edit/{objid}")
public String edit(@PathVariable("objid") Long objid, ModelMap mmap)
{
RecordIn recordIn = recordInService.selectRecordInByObjid(objid);
mmap.put("recordIn", recordIn);
return prefix + "/edit";
}
/**
*
*/
@RequiresPermissions("manage:record_in:edit")
@Log(title = "轮挡入库记录", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
@ResponseBody
public AjaxResult editSave(RecordIn recordIn)
{
return toAjax(recordInService.updateRecordIn(recordIn));
}
/**
*
*/
@RequiresPermissions("manage:record_in:remove")
@Log(title = "轮挡入库记录", businessType = BusinessType.DELETE)
@PostMapping( "/remove")
@ResponseBody
public AjaxResult remove(String ids)
{
return toAjax(recordInService.deleteRecordInByObjids(ids));
}
}

@ -0,0 +1,130 @@
package com.ruoyi.manage.domain;
import com.ruoyi.common.annotation.Excels;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* ledger_rfid
*
* @author wangh
* @date 2024-01-17
*/
public class LedgerRfid extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
*
*/
private Long objid;
/**
* id
*/
// @Excel(name = "厂家id")
private Long manufacturerId;
@Excels({@Excel(name = "厂家代码", targetAttr = "manufacturerCode", type = Excel.Type.EXPORT),
@Excel(name = "厂家名称", targetAttr = "manufacturerName", type = Excel.Type.EXPORT)})
private BaseManufacturer baseManufacturer;
/**
* RFID
*/
@Excel(name = "RFID编码")
private String rifdCode;
/**
*
*/
@Excel(name = "生产批次")
private String batchCode;
/**
*
*/
@Excel(name = "所在位置")
private String locationType;
/**
*
*/
@Excel(name = "位置编码")
private String locationCode;
/**
*
*/
@Excel(name = "轮挡状态", readConverterExp = "1=正常,2=报废,3=报废处理")
private String isScrap;
public void setObjid(Long objid) {
this.objid = objid;
}
public Long getObjid() {
return objid;
}
public void setManufacturerId(Long manufacturerId) {
this.manufacturerId = manufacturerId;
}
public Long getManufacturerId() {
return manufacturerId;
}
public void setRifdCode(String rifdCode) {
this.rifdCode = rifdCode;
}
public String getRifdCode() {
return rifdCode;
}
public void setBatchCode(String batchCode) {
this.batchCode = batchCode;
}
public String getBatchCode() {
return batchCode;
}
public void setLocationType(String locationType) {
this.locationType = locationType;
}
public String getLocationType() {
return locationType;
}
public void setLocationCode(String locationCode) {
this.locationCode = locationCode;
}
public String getLocationCode() {
return locationCode;
}
public void setIsScrap(String isScrap) {
this.isScrap = isScrap;
}
public String getIsScrap() {
return isScrap;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE).append("objid", getObjid()).append("manufacturerId", getManufacturerId()).append("rifdCode", getRifdCode()).append("batchCode", getBatchCode()).append("locationType", getLocationType()).append("locationCode", getLocationCode()).append("isScrap", getIsScrap()).append("updateTime", getUpdateTime()).toString();
}
public BaseManufacturer getBaseManufacturer() {
return baseManufacturer;
}
public void setBaseManufacturer(BaseManufacturer baseManufacturer) {
this.baseManufacturer = baseManufacturer;
}
}

@ -0,0 +1,96 @@
package com.ruoyi.manage.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
/**
* record_in
*
* @author wangh
* @date 2024-01-17
*/
public class RecordIn extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键 */
private Long objid;
/** RFID编码 */
@Excel(name = "RFID编码")
private String epcCode;
/** 批次码 */
@Excel(name = "批次码")
private String batchCode;
/** 库位码 */
@Excel(name = "库位码")
private String locationCode;
/** 厂家 */
@Excel(name = "厂家")
private String manufacturerName;
public void setObjid(Long objid)
{
this.objid = objid;
}
public Long getObjid()
{
return objid;
}
public void setEpcCode(String epcCode)
{
this.epcCode = epcCode;
}
public String getEpcCode()
{
return epcCode;
}
public void setBatchCode(String batchCode)
{
this.batchCode = batchCode;
}
public String getBatchCode()
{
return batchCode;
}
public void setLocationCode(String locationCode)
{
this.locationCode = locationCode;
}
public String getLocationCode()
{
return locationCode;
}
public void setManufacturerName(String manufacturerName)
{
this.manufacturerName = manufacturerName;
}
public String getManufacturerName()
{
return manufacturerName;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("objid", getObjid())
.append("epcCode", getEpcCode())
.append("batchCode", getBatchCode())
.append("locationCode", getLocationCode())
.append("manufacturerName", getManufacturerName())
.append("remark", getRemark())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.toString();
}
}

@ -0,0 +1,62 @@
package com.ruoyi.manage.mapper;
import java.util.List;
import com.ruoyi.manage.domain.LedgerRfid;
import org.springframework.stereotype.Repository;
/**
* Mapper
*
* @author wangh
* @date 2024-01-17
*/
@Repository
public interface LedgerRfidMapper
{
/**
*
*
* @param objid
* @return
*/
public LedgerRfid selectLedgerRfidByObjid(Long objid);
/**
*
*
* @param ledgerRfid
* @return
*/
public List<LedgerRfid> selectLedgerRfidList(LedgerRfid ledgerRfid);
/**
*
*
* @param ledgerRfid
* @return
*/
public int insertLedgerRfid(LedgerRfid ledgerRfid);
/**
*
*
* @param ledgerRfid
* @return
*/
public int updateLedgerRfid(LedgerRfid ledgerRfid);
/**
*
*
* @param objid
* @return
*/
public int deleteLedgerRfidByObjid(Long objid);
/**
*
*
* @param objids
* @return
*/
public int deleteLedgerRfidByObjids(String[] objids);
}

@ -0,0 +1,62 @@
package com.ruoyi.manage.mapper;
import java.util.List;
import com.ruoyi.manage.domain.RecordIn;
import org.springframework.stereotype.Repository;
/**
* Mapper
*
* @author wangh
* @date 2024-01-17
*/
@Repository
public interface RecordInMapper
{
/**
*
*
* @param objid
* @return
*/
public RecordIn selectRecordInByObjid(Long objid);
/**
*
*
* @param recordIn
* @return
*/
public List<RecordIn> selectRecordInList(RecordIn recordIn);
/**
*
*
* @param recordIn
* @return
*/
public int insertRecordIn(RecordIn recordIn);
/**
*
*
* @param recordIn
* @return
*/
public int updateRecordIn(RecordIn recordIn);
/**
*
*
* @param objid
* @return
*/
public int deleteRecordInByObjid(Long objid);
/**
*
*
* @param objids
* @return
*/
public int deleteRecordInByObjids(String[] objids);
}

@ -0,0 +1,61 @@
package com.ruoyi.manage.service;
import java.util.List;
import com.ruoyi.manage.domain.LedgerRfid;
/**
* Service
*
* @author wangh
* @date 2024-01-17
*/
public interface ILedgerRfidService
{
/**
*
*
* @param objid
* @return
*/
public LedgerRfid selectLedgerRfidByObjid(Long objid);
/**
*
*
* @param ledgerRfid
* @return
*/
public List<LedgerRfid> selectLedgerRfidList(LedgerRfid ledgerRfid);
/**
*
*
* @param ledgerRfid
* @return
*/
public int insertLedgerRfid(LedgerRfid ledgerRfid);
/**
*
*
* @param ledgerRfid
* @return
*/
public int updateLedgerRfid(LedgerRfid ledgerRfid);
/**
*
*
* @param objids
* @return
*/
public int deleteLedgerRfidByObjids(String objids);
/**
*
*
* @param objid
* @return
*/
public int deleteLedgerRfidByObjid(Long objid);
}

@ -0,0 +1,61 @@
package com.ruoyi.manage.service;
import java.util.List;
import com.ruoyi.manage.domain.RecordIn;
/**
* Service
*
* @author wangh
* @date 2024-01-17
*/
public interface IRecordInService
{
/**
*
*
* @param objid
* @return
*/
public RecordIn selectRecordInByObjid(Long objid);
/**
*
*
* @param recordIn
* @return
*/
public List<RecordIn> selectRecordInList(RecordIn recordIn);
/**
*
*
* @param recordIn
* @return
*/
public int insertRecordIn(RecordIn recordIn);
/**
*
*
* @param recordIn
* @return
*/
public int updateRecordIn(RecordIn recordIn);
/**
*
*
* @param objids
* @return
*/
public int deleteRecordInByObjids(String objids);
/**
*
*
* @param objid
* @return
*/
public int deleteRecordInByObjid(Long objid);
}

@ -18,7 +18,7 @@ import com.ruoyi.common.core.text.Convert;
* @author wangh
* @date 2023-12-18
*/
@Service
@Service("baseManufacturerService")
public class BaseManufacturerServiceImpl implements IBaseManufacturerService {
@Autowired
private BaseManufacturerMapper baseManufacturerMapper;

@ -0,0 +1,91 @@
package com.ruoyi.manage.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.manage.mapper.LedgerRfidMapper;
import com.ruoyi.manage.domain.LedgerRfid;
import com.ruoyi.manage.service.ILedgerRfidService;
import com.ruoyi.common.core.text.Convert;
/**
* Service
*
* @author wangh
* @date 2024-01-17
*/
@Service
public class LedgerRfidServiceImpl implements ILedgerRfidService {
@Autowired
private LedgerRfidMapper ledgerRfidMapper;
/**
*
*
* @param objid
* @return
*/
@Override
public LedgerRfid selectLedgerRfidByObjid(Long objid) {
return ledgerRfidMapper.selectLedgerRfidByObjid(objid);
}
/**
*
*
* @param ledgerRfid
* @return
*/
@Override
public List<LedgerRfid> selectLedgerRfidList(LedgerRfid ledgerRfid) {
return ledgerRfidMapper.selectLedgerRfidList(ledgerRfid);
}
/**
*
*
* @param ledgerRfid
* @return
*/
@Override
public int insertLedgerRfid(LedgerRfid ledgerRfid) {
return ledgerRfidMapper.insertLedgerRfid(ledgerRfid);
}
/**
*
*
* @param ledgerRfid
* @return
*/
@Override
public int updateLedgerRfid(LedgerRfid ledgerRfid) {
ledgerRfid.setUpdateTime(DateUtils.getNowDate());
return ledgerRfidMapper.updateLedgerRfid(ledgerRfid);
}
/**
*
*
* @param objids
* @return
*/
@Override
public int deleteLedgerRfidByObjids(String objids) {
return ledgerRfidMapper.deleteLedgerRfidByObjids(Convert.toStrArray(objids));
}
/**
*
*
* @param objid
* @return
*/
@Override
public int deleteLedgerRfidByObjid(Long objid) {
return ledgerRfidMapper.deleteLedgerRfidByObjid(objid);
}
}

@ -0,0 +1,93 @@
package com.ruoyi.manage.service.impl;
import java.util.List;
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.ShiroUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ruoyi.manage.mapper.RecordInMapper;
import com.ruoyi.manage.domain.RecordIn;
import com.ruoyi.manage.service.IRecordInService;
import com.ruoyi.common.core.text.Convert;
/**
* Service
*
* @author wangh
* @date 2024-01-17
*/
@Service
public class RecordInServiceImpl implements IRecordInService {
@Autowired
private RecordInMapper recordInMapper;
/**
*
*
* @param objid
* @return
*/
@Override
public RecordIn selectRecordInByObjid(Long objid) {
return recordInMapper.selectRecordInByObjid(objid);
}
/**
*
*
* @param recordIn
* @return
*/
@Override
public List<RecordIn> selectRecordInList(RecordIn recordIn) {
return recordInMapper.selectRecordInList(recordIn);
}
/**
*
*
* @param recordIn
* @return
*/
@Override
public int insertRecordIn(RecordIn recordIn) {
recordIn.setCreateBy(ShiroUtils.getLoginName());
recordIn.setCreateTime(DateUtils.getNowDate());
return recordInMapper.insertRecordIn(recordIn);
}
/**
*
*
* @param recordIn
* @return
*/
@Override
public int updateRecordIn(RecordIn recordIn) {
return recordInMapper.updateRecordIn(recordIn);
}
/**
*
*
* @param objids
* @return
*/
@Override
public int deleteRecordInByObjids(String objids) {
return recordInMapper.deleteRecordInByObjids(Convert.toStrArray(objids));
}
/**
*
*
* @param objid
* @return
*/
@Override
public int deleteRecordInByObjid(Long objid) {
return recordInMapper.deleteRecordInByObjid(objid);
}
}

@ -0,0 +1,22 @@
-- 菜单 SQL
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账', '2026', '1', '/manage/ledger_rfid', 'C', '0', 'manage:ledger_rfid:view', '#', 'admin', sysdate(), '', null, '轮挡台账菜单');
-- 按钮父菜单ID
SELECT @parentId := LAST_INSERT_ID();
-- 按钮 SQL
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账查询', @parentId, '1', '#', 'F', '0', 'manage:ledger_rfid:list', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账新增', @parentId, '2', '#', 'F', '0', 'manage:ledger_rfid:add', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账修改', @parentId, '3', '#', 'F', '0', 'manage:ledger_rfid:edit', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账删除', @parentId, '4', '#', 'F', '0', 'manage:ledger_rfid:remove', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡台账导出', @parentId, '5', '#', 'F', '0', 'manage:ledger_rfid:export', '#', 'admin', sysdate(), '', null, '');

@ -0,0 +1,22 @@
-- 菜单 SQL
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录', '2026', '1', '/manage/record_in', 'C', '0', 'manage:record_in:view', '#', 'admin', sysdate(), '', null, '轮挡入库记录菜单');
-- 按钮父菜单ID
SELECT @parentId := LAST_INSERT_ID();
-- 按钮 SQL
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录查询', @parentId, '1', '#', 'F', '0', 'manage:record_in:list', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录新增', @parentId, '2', '#', 'F', '0', 'manage:record_in:add', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录修改', @parentId, '3', '#', 'F', '0', 'manage:record_in:edit', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录删除', @parentId, '4', '#', 'F', '0', 'manage:record_in:remove', '#', 'admin', sysdate(), '', null, '');
insert into sys_menu (menu_name, parent_id, order_num, url, menu_type, visible, perms, icon, create_by, create_time, update_by, update_time, remark)
values('轮挡入库记录导出', @parentId, '5', '#', 'F', '0', 'manage:record_in:export', '#', 'admin', sysdate(), '', null, '');

@ -0,0 +1,98 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.manage.mapper.LedgerRfidMapper">
<resultMap type="LedgerRfid" id="LedgerRfidResult">
<result property="objid" column="objid" />
<result property="manufacturerId" column="manufacturer_id" />
<result property="rifdCode" column="rifd_code" />
<result property="batchCode" column="batch_code" />
<result property="locationType" column="location_type" />
<result property="locationCode" column="location_code" />
<result property="isScrap" column="is_scrap" />
<result property="updateTime" column="update_time" />
<association property="baseManufacturer" javaType="BaseManufacturer" resultMap="com.ruoyi.manage.mapper.BaseManufacturerMapper.BaseManufacturerResult"/>
</resultMap>
<sql id="selectLedgerRfidVo">
select objid,
lr.manufacturer_id,
rifd_code,
batch_code,
location_type,
location_code,
is_scrap,
lr.update_time,
bm.manufacturer_code,
bm.manufacturer_name
from ledger_rfid lr
left join base_manufacturer bm on lr.manufacturer_id = bm.manufacturer_id
</sql>
<select id="selectLedgerRfidList" parameterType="LedgerRfid" resultMap="LedgerRfidResult">
<include refid="selectLedgerRfidVo"/>
<where>
<if test="manufacturerId != null "> and lr.manufacturer_id = #{manufacturerId}</if>
<if test="rifdCode != null and rifdCode != ''"> and rifd_code = #{rifdCode}</if>
<if test="batchCode != null and batchCode != ''"> and batch_code = #{batchCode}</if>
<if test="locationType != null and locationType != ''"> and location_type = #{locationType}</if>
<if test="locationCode != null and locationCode != ''"> and location_code = #{locationCode}</if>
<if test="isScrap != null and isScrap != ''"> and is_scrap = #{isScrap}</if>
</where>
</select>
<select id="selectLedgerRfidByObjid" parameterType="Long" resultMap="LedgerRfidResult">
<include refid="selectLedgerRfidVo"/>
where objid = #{objid}
</select>
<insert id="insertLedgerRfid" parameterType="LedgerRfid" useGeneratedKeys="true" keyProperty="objid">
insert into ledger_rfid
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="manufacturerId != null">manufacturer_id,</if>
<if test="rifdCode != null">rifd_code,</if>
<if test="batchCode != null">batch_code,</if>
<if test="locationType != null">location_type,</if>
<if test="locationCode != null">location_code,</if>
<if test="isScrap != null">is_scrap,</if>
<if test="updateTime != null">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="manufacturerId != null">#{manufacturerId},</if>
<if test="rifdCode != null">#{rifdCode},</if>
<if test="batchCode != null">#{batchCode},</if>
<if test="locationType != null">#{locationType},</if>
<if test="locationCode != null">#{locationCode},</if>
<if test="isScrap != null">#{isScrap},</if>
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<update id="updateLedgerRfid" parameterType="LedgerRfid">
update ledger_rfid
<trim prefix="SET" suffixOverrides=",">
<if test="manufacturerId != null">manufacturer_id = #{manufacturerId},</if>
<if test="rifdCode != null">rifd_code = #{rifdCode},</if>
<if test="batchCode != null">batch_code = #{batchCode},</if>
<if test="locationType != null">location_type = #{locationType},</if>
<if test="locationCode != null">location_code = #{locationCode},</if>
<if test="isScrap != null">is_scrap = #{isScrap},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where objid = #{objid}
</update>
<delete id="deleteLedgerRfidByObjid" parameterType="Long">
delete from ledger_rfid where objid = #{objid}
</delete>
<delete id="deleteLedgerRfidByObjids" parameterType="String">
delete from ledger_rfid where objid in
<foreach item="objid" collection="array" open="(" separator="," close=")">
#{objid}
</foreach>
</delete>
</mapper>

@ -0,0 +1,84 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.manage.mapper.RecordInMapper">
<resultMap type="RecordIn" id="RecordInResult">
<result property="objid" column="objid" />
<result property="epcCode" column="epc_code" />
<result property="batchCode" column="batch_code" />
<result property="locationCode" column="location_code" />
<result property="manufacturerName" column="manufacturer_Name" />
<result property="remark" column="remark" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
</resultMap>
<sql id="selectRecordInVo">
select objid, epc_code, batch_code, location_code, manufacturer_Name, remark, create_by, create_time from record_in
</sql>
<select id="selectRecordInList" parameterType="RecordIn" resultMap="RecordInResult">
<include refid="selectRecordInVo"/>
<where>
<if test="epcCode != null and epcCode != ''"> and epc_code = #{epcCode}</if>
<if test="batchCode != null and batchCode != ''"> and batch_code like concat('%', #{batchCode}, '%')</if>
<if test="locationCode != null and locationCode != ''"> and location_code = #{locationCode}</if>
<if test="manufacturerName != null and manufacturerName != ''"> and manufacturer_Name = #{manufacturerName}</if>
</where>
</select>
<select id="selectRecordInByObjid" parameterType="Long" resultMap="RecordInResult">
<include refid="selectRecordInVo"/>
where objid = #{objid}
</select>
<insert id="insertRecordIn" parameterType="RecordIn" useGeneratedKeys="true" keyProperty="objid">
insert into record_in
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="epcCode != null">epc_code,</if>
<if test="batchCode != null">batch_code,</if>
<if test="locationCode != null">location_code,</if>
<if test="manufacturerName != null">manufacturer_Name,</if>
<if test="remark != null">remark,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="epcCode != null">#{epcCode},</if>
<if test="batchCode != null">#{batchCode},</if>
<if test="locationCode != null">#{locationCode},</if>
<if test="manufacturerName != null">#{manufacturerName},</if>
<if test="remark != null">#{remark},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
</trim>
</insert>
<update id="updateRecordIn" parameterType="RecordIn">
update record_in
<trim prefix="SET" suffixOverrides=",">
<if test="epcCode != null">epc_code = #{epcCode},</if>
<if test="batchCode != null">batch_code = #{batchCode},</if>
<if test="locationCode != null">location_code = #{locationCode},</if>
<if test="manufacturerName != null">manufacturer_Name = #{manufacturerName},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
</trim>
where objid = #{objid}
</update>
<delete id="deleteRecordInByObjid" parameterType="Long">
delete from record_in where objid = #{objid}
</delete>
<delete id="deleteRecordInByObjids" parameterType="String">
delete from record_in where objid in
<foreach item="objid" collection="array" open="(" separator="," close=")">
#{objid}
</foreach>
</delete>
</mapper>

@ -0,0 +1,59 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('新增轮挡台账')" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-ledger_rfid-add">
<div class="form-group">
<label class="col-sm-3 control-label">RFID编码</label>
<div class="col-sm-8">
<input name="rifdCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">生产批次:</label>
<div class="col-sm-8">
<input name="batchCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">所在位置:</label>
<div class="col-sm-8">
<select name="locationType" class="form-control m-b" th:with="type=${@dict.getType('store_tag')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">位置编码:</label>
<div class="col-sm-8">
<input name="locationCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">是否报废:</label>
<div class="col-sm-8">
<select name="isScrap" class="form-control m-b" th:with="type=${@dict.getType('sys_yes_no')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option>
</select>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var prefix = ctx + "manage/ledger_rfid"
$("#form-ledger_rfid-add").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-ledger_rfid-add').serialize());
}
}
</script>
</body>
</html>

@ -0,0 +1,60 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改轮挡台账')" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-ledger_rfid-edit" th:object="${ledgerRfid}">
<input name="objid" th:field="*{objid}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">RFID编码</label>
<div class="col-sm-8">
<input name="rifdCode" th:field="*{rifdCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">生产批次:</label>
<div class="col-sm-8">
<input name="batchCode" th:field="*{batchCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">所在位置:</label>
<div class="col-sm-8">
<select name="locationType" class="form-control m-b" th:with="type=${@dict.getType('store_tag')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{locationType}"></option>
</select>
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">位置编码:</label>
<div class="col-sm-8">
<input name="locationCode" th:field="*{locationCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">是否报废:</label>
<div class="col-sm-8">
<select name="isScrap" class="form-control m-b" th:with="type=${@dict.getType('sys_yes_no')}">
<option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{isScrap}"></option>
</select>
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var prefix = ctx + "manage/ledger_rfid";
$("#form-ledger_rfid-edit").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-ledger_rfid-edit').serialize());
}
}
</script>
</body>
</html>

@ -0,0 +1,158 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('轮挡台账列表')"/>
</head>
<body class="gray-bg">
<div class="container-div">
<div class="row">
<div class="col-sm-12 search-collapse">
<form id="formId">
<div class="select-list">
<ul>
<li>
<label>RFID</label>
<input type="text" name="rifdCode"/>
</li>
<li>
<label>生产批次:</label>
<input type="text" name="batchCode"/>
</li>
<li>
<label>所在位置:</label>
<select name="locationType" th:with="type=${@dict.getType('store_tag')}">
<option value="">所有</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
th:value="${dict.dictValue}"></option>
</select>
</li>
<li>
<label>位置编码:</label>
<input type="text" name="locationCode"/>
</li>
<li>
<label>是否报废:</label>
<select name="isScrap" th:with="type=${@dict.getType('bf_y_n')}">
<option value="">所有</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
th:value="${dict.dictValue}"></option>
</select>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i
class="fa fa-search"></i>&nbsp;搜索</a>
<a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i
class="fa fa-refresh"></i>&nbsp;重置</a>
</li>
</ul>
</div>
</form>
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manage:ledger_rfid:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary single disabled" onclick="$.operate.edit()"
shiro:hasPermission="manage:ledger_rfid:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()"
shiro:hasPermission="manage:ledger_rfid:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="manage:ledger_rfid:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<th:block th:include="include :: footer"/>
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('manage:ledger_rfid:edit')}]];
var removeFlag = [[${@permission.hasPermi('manage:ledger_rfid:remove')}]];
var locationTypeDatas = [[${@dict.getType('store_tag')}]];
var isScrapDatas = [[${@dict.getType('bf_y_n')}]];
var prefix = ctx + "manage/ledger_rfid";
$(function () {
var options = {
url: prefix + "/list",
createUrl: prefix + "/add",
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "轮挡台账",
columns: [{
checkbox: true
},
{
field: 'objid',
title: '主键',
visible: false
},
{
field: 'manufacturerId',
title: '厂家id',
visible: false
},
{
field: 'baseManufacturer.manufacturerCode',
title: '厂家编码'
},
{
field: 'baseManufacturer.manufacturerName',
title: '厂家名称'
},
{
field: 'rifdCode',
title: 'RFID编码'
},
{
field: 'batchCode',
title: '生产批次'
},
{
field: 'locationType',
title: '所在位置',
formatter: function (value, row, index) {
return $.table.selectDictLabel(locationTypeDatas, value);
}
},
{
field: 'locationCode',
title: '位置编码'
},
{
field: 'isScrap',
title: '轮挡状态',
formatter: function (value, row, index) {
return $.table.selectDictLabel(isScrapDatas, value);
}
},
{
field: 'updateTime',
title: '更新时间'
}/*,
{
title: '操作',
align: 'center',
formatter: function(value, row, index) {
var actions = [];
actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.objid + '\')"><i class="fa fa-edit"></i>编辑</a> ');
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.objid + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}*/]
};
$.table.init(options);
});
</script>
</body>
</html>

@ -0,0 +1,43 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('新增轮挡入库记录')" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-record_in-add">
<div class="form-group">
<label class="col-sm-3 control-label">RFID编码</label>
<div class="col-sm-8">
<input name="epcCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">批次码:</label>
<div class="col-sm-8">
<input name="batchCode" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注:</label>
<div class="col-sm-8">
<input name="remark" class="form-control" type="text">
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var prefix = ctx + "manage/record_in"
$("#form-record_in-add").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/add", $('#form-record_in-add').serialize());
}
}
</script>
</body>
</html>

@ -0,0 +1,44 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" >
<head>
<th:block th:include="include :: header('修改轮挡入库记录')" />
</head>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
<form class="form-horizontal m" id="form-record_in-edit" th:object="${recordIn}">
<input name="objid" th:field="*{objid}" type="hidden">
<div class="form-group">
<label class="col-sm-3 control-label">RFID编码</label>
<div class="col-sm-8">
<input name="epcCode" th:field="*{epcCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">批次码:</label>
<div class="col-sm-8">
<input name="batchCode" th:field="*{batchCode}" class="form-control" type="text">
</div>
</div>
<div class="form-group">
<label class="col-sm-3 control-label">备注:</label>
<div class="col-sm-8">
<input name="remark" th:field="*{remark}" class="form-control" type="text">
</div>
</div>
</form>
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var prefix = ctx + "manage/record_in";
$("#form-record_in-edit").validate({
focusCleanup: true
});
function submitHandler() {
if ($.validate.form()) {
$.operate.save(prefix + "/edit", $('#form-record_in-edit').serialize());
}
}
</script>
</body>
</html>

@ -1,7 +1,7 @@
<!DOCTYPE html>
<html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro">
<head>
<th:block th:include="include :: header('手持版本升级列表')" />
<th:block th:include="include :: header('轮挡入库记录列表')" />
</head>
<body class="gray-bg">
<div class="container-div">
@ -11,8 +11,12 @@
<div class="select-list">
<ul>
<li>
<label>版本号:</label>
<input type="text" name="versionCode"/>
<label>RFID</label>
<input type="text" name="epcCode"/>
</li>
<li>
<label>批次码:</label>
<input type="text" name="batchCode"/>
</li>
<li>
<a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i>&nbsp;搜索</a>
@ -24,16 +28,16 @@
</div>
<div class="btn-group-sm" id="toolbar" role="group">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="pda:pda_version:add">
<a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="manage:record_in:add">
<i class="fa fa-plus"></i> 添加
</a>
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="pda:pda_version:edit">
<a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="manage:record_in:edit">
<i class="fa fa-edit"></i> 修改
</a>
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="pda:pda_version:remove">
<a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="manage:record_in:remove">
<i class="fa fa-remove"></i> 删除
</a>
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="pda:pda_version:export">
<a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="manage:record_in:export">
<i class="fa fa-download"></i> 导出
</a>
</div>
@ -44,9 +48,9 @@
</div>
<th:block th:include="include :: footer" />
<script th:inline="javascript">
var editFlag = [[${@permission.hasPermi('pda:pda_version:edit')}]];
var removeFlag = [[${@permission.hasPermi('pda:pda_version:remove')}]];
var prefix = ctx + "pda/pda_version";
var editFlag = [[${@permission.hasPermi('manage:record_in:edit')}]];
var removeFlag = [[${@permission.hasPermi('manage:record_in:remove')}]];
var prefix = ctx + "manage/record_in";
$(function() {
var options = {
@ -55,46 +59,40 @@
updateUrl: prefix + "/edit/{id}",
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "手持版本升级",
sortName: "versionCode",
sortOrder: "desc",
modalName: "轮挡入库记录",
columns: [{
checkbox: true
},
{
field: 'objid',
title: '主键标识',
title: '主键',
visible: false
},
{
field: 'versionCode',
title: '版本号'
field: 'epcCode',
title: 'RFID编码'
},
{
field: 'versionName',
title: '版本名'
field: 'batchCode',
title: '批次码'
},
{
field: 'modifyContent',
title: '信息'
field: 'locationCode',
title: '库位码'
},
{
field: 'downloadUrl',
title: '位置'
field: 'manufacturerName',
title: '厂家'
},
{
field: 'apkSize',
title: '文件大小'
},
{
field: 'apkMd5',
title: '文件标识'
field: 'createBy',
title: '入库人'
},
{
field: 'createTime',
title: '创建时间'
title: '入库时间'
},
{
/* {
title: '操作',
align: 'center',
formatter: function(value, row, index) {
@ -103,7 +101,7 @@
actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.objid + '\')"><i class="fa fa-remove"></i>删除</a>');
return actions.join('');
}
}]
}*/]
};
$.table.init(options);
});
Loading…
Cancel
Save