库存日志
This commit is contained in:
parent
9fbf60d747
commit
7602bce361
|
|
@ -160,4 +160,9 @@ public class LeaseOutDetails implements Serializable {
|
||||||
@ApiModelProperty(value = "0工程1长期")
|
@ApiModelProperty(value = "0工程1长期")
|
||||||
private String leaseType;
|
private String leaseType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "数量出库 -> 操作前库存量")
|
||||||
|
private Integer num;
|
||||||
|
|
||||||
|
/** 操作后库存 */
|
||||||
|
private int postStoreNum;
|
||||||
}
|
}
|
||||||
|
|
@ -283,31 +283,31 @@ public class LogAspect
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
// 领料出库
|
// 领料出库
|
||||||
// if (joinPoint.getArgs()[0] instanceof List &&
|
if (joinPoint.getArgs()[0] instanceof List &&
|
||||||
// ((List) joinPoint.getArgs()[0]).stream().noneMatch((o -> !(o instanceof LeaseOutDetails)))) {
|
((List) joinPoint.getArgs()[0]).stream().noneMatch((o -> !(o instanceof LeaseOutDetails)))) {
|
||||||
// List<LeaseOutDetails> leaseOutDetails = (List<LeaseOutDetails>)joinPoint.getArgs()[0];
|
List<LeaseOutDetails> leaseOutDetails = (List<LeaseOutDetails>)joinPoint.getArgs()[0];
|
||||||
// for (LeaseOutDetails lod : leaseOutDetails) {
|
for (LeaseOutDetails lod : leaseOutDetails) {
|
||||||
// BmStorageLog bmStorageLog = new BmStorageLog();
|
BmStorageLog bmStorageLog = new BmStorageLog();
|
||||||
// bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
|
bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
|
||||||
// bmStorageLog.setTypeId(lod.getTypeId());
|
bmStorageLog.setTypeId(lod.getTypeId());
|
||||||
// bmStorageLog.setTypeName(lod.getMaCode());
|
bmStorageLog.setTypeName(lod.getMaCode());
|
||||||
// bmStorageLog.setPreStoreNum(lod.getNum());
|
bmStorageLog.setPreStoreNum(lod.getNum());
|
||||||
// bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
|
bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
|
||||||
// bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
|
bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
|
||||||
// bmStorageLogList.add(bmStorageLog);
|
bmStorageLogList.add(bmStorageLog);
|
||||||
// }
|
}
|
||||||
// }
|
}
|
||||||
// if (joinPoint.getArgs()[0] instanceof LeaseOutDetails) {
|
if (joinPoint.getArgs()[0] instanceof LeaseOutDetails) {
|
||||||
// LeaseOutDetails lod = (LeaseOutDetails)joinPoint.getArgs()[0];
|
LeaseOutDetails lod = (LeaseOutDetails)joinPoint.getArgs()[0];
|
||||||
// BmStorageLog bmStorageLog = new BmStorageLog();
|
BmStorageLog bmStorageLog = new BmStorageLog();
|
||||||
// bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
|
bmStorageLog.setTaskId(String.valueOf(lod.getTaskId()));
|
||||||
// bmStorageLog.setTypeId(lod.getTypeId());
|
bmStorageLog.setTypeId(lod.getTypeId());
|
||||||
// bmStorageLog.setTypeName(lod.getMaCode());
|
bmStorageLog.setTypeName(lod.getMaCode());
|
||||||
// bmStorageLog.setPreStoreNum(lod.getNum());
|
bmStorageLog.setPreStoreNum(lod.getNum());
|
||||||
// bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
|
bmStorageLog.setOutNum(Objects.isNull(lod.getInputNum()) ? 0 : lod.getInputNum().intValue());
|
||||||
// bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
|
bmStorageLog.setPostStoreNum(lod.getPostStoreNum());
|
||||||
// bmStorageLogList.add(bmStorageLog);
|
bmStorageLogList.add(bmStorageLog);
|
||||||
// }
|
}
|
||||||
// 退料接收-完成退料
|
// 退料接收-完成退料
|
||||||
// if (joinPoint.getArgs()[0] instanceof BackApplyInfo) {
|
// if (joinPoint.getArgs()[0] instanceof BackApplyInfo) {
|
||||||
// BackApplyInfo bai = (BackApplyInfo)joinPoint.getArgs()[0];
|
// BackApplyInfo bai = (BackApplyInfo)joinPoint.getArgs()[0];
|
||||||
|
|
|
||||||
|
|
@ -181,6 +181,7 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService {
|
||||||
if (res == 0) {
|
if (res == 0) {
|
||||||
throw new RuntimeException("出库失败,插入结算记录失败");
|
throw new RuntimeException("出库失败,插入结算记录失败");
|
||||||
}
|
}
|
||||||
|
record.setPostStoreNum(getStorageNum(record));
|
||||||
} else {
|
} else {
|
||||||
return AjaxResult.error("领料出库失败,机具库存不足");
|
return AjaxResult.error("领料出库失败,机具库存不足");
|
||||||
}
|
}
|
||||||
|
|
@ -194,6 +195,18 @@ public class LeaseOutDetailsServiceImpl implements LeaseOutDetailsService {
|
||||||
return AjaxResult.success("出库成功");
|
return AjaxResult.success("出库成功");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private int getStorageNum(LeaseOutDetails record) {
|
||||||
|
if (StringUtils.isNull(record)) {
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
//判断(ma_type 设备规格表)中的库存够不够出库的
|
||||||
|
MaType maType = leaseOutDetailsMapper.selectByTypeId(record);
|
||||||
|
if (maType != null) {
|
||||||
|
return maType.getNum().intValue();
|
||||||
|
}
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
private int insertRecords(LeaseOutDetails record) {
|
private int insertRecords(LeaseOutDetails record) {
|
||||||
int res = 0;
|
int res = 0;
|
||||||
// 首先更新领料任务详情表的领料数及状态(lease_apply_details)
|
// 首先更新领料任务详情表的领料数及状态(lease_apply_details)
|
||||||
|
|
|
||||||
|
|
@ -1,169 +0,0 @@
|
||||||
<template>
|
|
||||||
<!-- 库存日志 -->
|
|
||||||
<div class="app-container">
|
|
||||||
<el-row>
|
|
||||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true">
|
|
||||||
<el-form-item label="模块名称" prop="modelTitle">
|
|
||||||
<el-input
|
|
||||||
v-model="queryParams.modelTitle"
|
|
||||||
placeholder="请输入模块名称"
|
|
||||||
clearable
|
|
||||||
style="width: 200px"
|
|
||||||
@keyup.enter.native="handleQuery"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item label="机具类型" prop="typeName">
|
|
||||||
<el-cascader
|
|
||||||
placeholder="请选择机具类型"
|
|
||||||
:options="deviceTypeTree"
|
|
||||||
:props="{ checkStrictly: true, value: 'label' }"
|
|
||||||
@change="handleBaseValue"
|
|
||||||
clearable
|
|
||||||
filterable
|
|
||||||
:show-all-levels="false"
|
|
||||||
/>
|
|
||||||
</el-form-item>
|
|
||||||
<el-form-item>
|
|
||||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
|
||||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
|
||||||
</el-form-item>
|
|
||||||
</el-form>
|
|
||||||
</el-row>
|
|
||||||
|
|
||||||
<el-table :data="tableList" border>
|
|
||||||
<el-table-column align="center" label="序号" type="index" width="60" />
|
|
||||||
<el-table-column align="center" prop="modelTitle" label="模块名称" show-overflow-tooltip />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="method" label="请求方式" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="requestMethod" label="请求地址" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="task" label="实例" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="typeParentName" label="机具类型" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="typeName" label="机具规格" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="description" label="描述" />
|
|
||||||
<el-table-column show-overflow-tooltip align="center" prop="time" label="日期" />
|
|
||||||
<el-table-column align="center" label="状态">
|
|
||||||
<template slot-scope="{ row }">
|
|
||||||
<el-tag size="mini" type="success" v-if="row.status == 0">正常</el-tag>
|
|
||||||
<el-tag size="mini" type="warning" v-else>异常</el-tag>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column align="center" prop="creator" label="创建人" />
|
|
||||||
<el-table-column align="center" prop="remark" label="备注" />
|
|
||||||
<el-table-column align="center" label="操作">
|
|
||||||
<template slot-scope="{ row }">
|
|
||||||
<el-button size="mini" type="text" @click="previewLogsDetails(row)">详情</el-button>
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
</el-table>
|
|
||||||
|
|
||||||
<pagination
|
|
||||||
v-show="total > 0"
|
|
||||||
:total="total"
|
|
||||||
:page.sync="queryParams.pageNum"
|
|
||||||
:limit.sync="queryParams.pageSize"
|
|
||||||
@pagination="getList"
|
|
||||||
/>
|
|
||||||
|
|
||||||
<!-- 详情弹框 -->
|
|
||||||
<el-dialog title="日志详情" :visible.sync="logsDetailsDialogVisible" width="60%">
|
|
||||||
<el-descriptions
|
|
||||||
class="margin-top"
|
|
||||||
:column="3"
|
|
||||||
size="medium"
|
|
||||||
border
|
|
||||||
:labelStyle="commonStyle"
|
|
||||||
:contentStyle="commonStyle"
|
|
||||||
>
|
|
||||||
<el-descriptions-item v-for="(item, v) in detailsLabelList" :key="v">
|
|
||||||
<template slot="label">{{ item.label }}</template>
|
|
||||||
{{ logsDetailsInfo[item.content] || '' }}
|
|
||||||
</el-descriptions-item>
|
|
||||||
</el-descriptions>
|
|
||||||
</el-dialog>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script>
|
|
||||||
import { getLogsListApi, getLogsDetailsApi } from '@/api/inventoryLogs'
|
|
||||||
import { getDeviceTypeTree } from '@/api/claimAndRefund/receive'
|
|
||||||
export default {
|
|
||||||
name: 'myInventoryLogs',
|
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
queryParams: {
|
|
||||||
pageNum: 1,
|
|
||||||
pageSize: 10,
|
|
||||||
modelTitle: '', // 模块名称
|
|
||||||
typeName: '', // 机具名称
|
|
||||||
},
|
|
||||||
tableList: [],
|
|
||||||
total: 5,
|
|
||||||
logsDetailsInfo: null /* 日志详情 */,
|
|
||||||
logsDetailsDialogVisible: false,
|
|
||||||
commonStyle: {
|
|
||||||
'text-align': 'center',
|
|
||||||
},
|
|
||||||
/* 日志详情label以及内容 */
|
|
||||||
detailsLabelList: [
|
|
||||||
{ label: '创建人', content: 'creator' },
|
|
||||||
{ label: '请求方式', content: 'method' },
|
|
||||||
{ label: '模块名称', content: 'modelTitle' },
|
|
||||||
{ label: '请求地址', content: 'requestMethod' },
|
|
||||||
{ label: '机具名称', content: 'typeParentName' },
|
|
||||||
{ label: '机具规格', content: 'typeName' },
|
|
||||||
{ label: '日期', content: 'time' },
|
|
||||||
{ label: '实例', content: 'task' },
|
|
||||||
],
|
|
||||||
logsDetailsInfo: {},
|
|
||||||
deviceTypeTree: [], // 设备 树结构数据
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
|
||||||
/* 查询列表 */
|
|
||||||
async getList() {
|
|
||||||
const res = await getLogsListApi(this.queryParams)
|
|
||||||
this.tableList = res.rows
|
|
||||||
this.total = res.total
|
|
||||||
},
|
|
||||||
/* 搜索按钮 */
|
|
||||||
handleQuery() {
|
|
||||||
this.getList()
|
|
||||||
},
|
|
||||||
/* 重置按钮 */
|
|
||||||
resetQuery() {
|
|
||||||
this.resetForm('queryForm')
|
|
||||||
this.queryParams.pageNum = 1
|
|
||||||
this.queryParams.pageSize = 10
|
|
||||||
this.queryParams.typeName = ''
|
|
||||||
this.getList()
|
|
||||||
},
|
|
||||||
/* 查看详情 */
|
|
||||||
async previewLogsDetails(row) {
|
|
||||||
console.log(row, '列表id')
|
|
||||||
const res = await getLogsDetailsApi(row.id)
|
|
||||||
this.logsDetailsInfo = res
|
|
||||||
this.logsDetailsDialogVisible = true
|
|
||||||
},
|
|
||||||
async GetDeviceTypeTree() {
|
|
||||||
const params = {
|
|
||||||
level: 4,
|
|
||||||
}
|
|
||||||
const res = await getDeviceTypeTree(params)
|
|
||||||
this.deviceTypeTree = res.data
|
|
||||||
},
|
|
||||||
/* 获取最后一级 */
|
|
||||||
handleBaseValue(val) {
|
|
||||||
this.queryParams.typeName = val[val.length - 1]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
created() {
|
|
||||||
this.getList()
|
|
||||||
this.GetDeviceTypeTree()
|
|
||||||
},
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
|
|
||||||
<style scoped>
|
|
||||||
.margin-top {
|
|
||||||
margin-top: -15px;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
Loading…
Reference in New Issue