feat: 废箔搬运业务2

This commit is contained in:
2024-08-15 15:29:20 +08:00
parent dea0260141
commit 69f4e2dadf
10 changed files with 388 additions and 0 deletions

View File

@@ -0,0 +1,59 @@
package org.nl.wms.md.wastefoilrecord.controller;
import lombok.extern.slf4j.Slf4j;
import org.nl.common.base.TableDataInfo;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.logging.annotation.Log;
import org.nl.wms.md.wastefoilrecord.service.IWastefoilrecordService;
import org.nl.wms.md.wastefoilrecord.service.dao.Wastefoilrecord;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
import java.util.Set;
/**
* @author lyd
* @date 2024-08-15
**/
@Slf4j
@RestController
@RequestMapping("/api/wastefoilrecord")
public class WastefoilrecordController {
@Autowired
private IWastefoilrecordService wastefoilrecordService;
@GetMapping
@Log("查询废箔记录")
//@SaCheckPermission("wastefoilrecord:list")
public ResponseEntity<Object> query(@RequestParam Map whereJson, PageQuery page){
return new ResponseEntity<>(TableDataInfo.build(wastefoilrecordService.queryAll(whereJson,page)),HttpStatus.OK);
}
@PostMapping
@Log("新增废箔记录")
//@SaCheckPermission("wastefoilrecord:add")
public ResponseEntity<Object> create(@Validated @RequestBody Wastefoilrecord entity){
wastefoilrecordService.create(entity);
return new ResponseEntity<>(HttpStatus.CREATED);
}
@PutMapping
@Log("修改废箔记录")
//@SaCheckPermission("wastefoilrecord:edit")
public ResponseEntity<Object> update(@Validated @RequestBody Wastefoilrecord entity){
wastefoilrecordService.update(entity);
return new ResponseEntity<>(HttpStatus.NO_CONTENT);
}
@Log("删除废箔记录")
//@SaCheckPermission("wastefoilrecord:del")
@DeleteMapping
public ResponseEntity<Object> delete(@RequestBody Set<String> ids) {
wastefoilrecordService.deleteAll(ids);
return new ResponseEntity<>(HttpStatus.OK);
}
}

View File

@@ -0,0 +1,43 @@
package org.nl.wms.md.wastefoilrecord.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.nl.common.domain.query.PageQuery;
import com.baomidou.mybatisplus.extension.service.IService;
import org.nl.wms.md.wastefoilrecord.service.dao.Wastefoilrecord;
import java.util.Map;
import java.util.Set;
/**
* @description 服务接口
* @author lyd
* @date 2024-08-15
**/
public interface IWastefoilrecordService extends IService<Wastefoilrecord> {
/**
* 查询数据分页
* @param whereJson 条件
* @param pageable 分页参数
* @return IPage<Wastefoilrecord>
*/
IPage<Wastefoilrecord> queryAll(Map whereJson, PageQuery pageable);
/**
* 创建
* @param entity /
*/
void create(Wastefoilrecord entity);
/**
* 编辑
* @param entity /
*/
void update(Wastefoilrecord entity);
/**
* 多选删除
* @param ids /
*/
void deleteAll(Set<String> ids);
}

View File

@@ -0,0 +1,42 @@
package org.nl.wms.md.wastefoilrecord.service.dao;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.io.Serializable;
/**
* @description /
* @author lyd
* @date 2024-08-15
**/
@Data
@EqualsAndHashCode(callSuper = false)
@TableName("md_me_wastefoilrecord")
public class Wastefoilrecord implements Serializable {
private static final long serialVersionUID = 1L;
@TableId(value = "record_id", type = IdType.NONE)
/** 记录id */
private String record_id;
/** 站点号 */
private String point_code;
/** 名称 */
private String point_name;
/** 重量 */
private String weight;
/** 记录时间 */
private String create_id;
private String create_name;
private String create_time;
}

View File

@@ -0,0 +1,12 @@
package org.nl.wms.md.wastefoilrecord.service.dao.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.nl.wms.md.wastefoilrecord.service.dao.Wastefoilrecord;
/**
* @author lyd
* @date 2024-08-15
**/
public interface WastefoilrecordMapper extends BaseMapper<Wastefoilrecord> {
}

View File

@@ -0,0 +1,5 @@
<?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="org.nl.wms.md.wastefoilrecord.service.dao.mapper.WastefoilrecordMapper">
</mapper>

View File

@@ -0,0 +1,30 @@
package org.nl.wms.md.wastefoilrecord.service.dto;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.Data;
import java.io.Serializable;
/**
* @description /
* @author lyd
* @date 2024-08-15
**/
@Data
public class WastefoilrecordDto implements Serializable {
/** 记录id */
private String record_id;
/** 站点号 */
private String point_code;
/** 名称 */
private String point_name;
/** 重量 */
private String weight;
/** 记录时间 */
private String record_time;
}

View File

@@ -0,0 +1,12 @@
package org.nl.wms.md.wastefoilrecord.service.dto;
import org.nl.common.domain.query.BaseQuery;
import org.nl.wms.md.wastefoilrecord.service.dao.Wastefoilrecord;
/**
* @author lyd
* @date 2024-08-15
**/
public class WastefoilrecordQuery extends BaseQuery<Wastefoilrecord> {
}

View File

@@ -0,0 +1,65 @@
package org.nl.wms.md.wastefoilrecord.service.impl;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.util.IdUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.nl.config.language.LangProcess;
import org.nl.common.domain.query.PageQuery;
import org.nl.common.exception.BadRequestException;
import org.nl.common.utils.SecurityUtils;
import org.nl.wms.md.wastefoilrecord.service.IWastefoilrecordService;
import org.nl.wms.md.wastefoilrecord.service.dao.mapper.WastefoilrecordMapper;
import org.nl.wms.md.wastefoilrecord.service.dao.Wastefoilrecord;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Map;
import java.util.Set;
/**
* @description 服务实现
* @author lyd
* @date 2024-08-15
**/
@Slf4j
@Service
public class WastefoilrecordServiceImpl extends ServiceImpl<WastefoilrecordMapper, Wastefoilrecord> implements IWastefoilrecordService {
@Autowired
private WastefoilrecordMapper wastefoilrecordMapper;
@Override
public IPage<Wastefoilrecord> queryAll(Map whereJson, PageQuery page){
LambdaQueryWrapper<Wastefoilrecord> lam = new LambdaQueryWrapper<>();
IPage<Wastefoilrecord> pages = new Page<>(page.getPage() + 1, page.getSize());
wastefoilrecordMapper.selectPage(pages, lam);
return pages;
}
@Override
public void create(Wastefoilrecord entity) {
entity.setRecord_id(IdUtil.getSnowflake(1, 1).nextIdStr());
wastefoilrecordMapper.insert(entity);
}
@Override
public void update(Wastefoilrecord entity) {
Wastefoilrecord dto = wastefoilrecordMapper.selectById(entity.getRecord_id());
if (dto == null) {
throw new BadRequestException(LangProcess.msg("error_SystemAuthError"));
}
wastefoilrecordMapper.updateById(entity);
}
@Override
public void deleteAll(Set<String> ids) {
// 真删除
wastefoilrecordMapper.deleteBatchIds(ids);
}
}

View File

@@ -0,0 +1,93 @@
<template>
<div class="app-container">
<!--工具栏-->
<div class="head-container">
<!--如果想在工具栏加入更多按钮可以使用插槽方式 slot = 'left' or 'right'-->
<crudOperation :permission="permission" />
<!--表单组件-->
<el-dialog :close-on-click-modal="false" :before-close="crud.cancelCU" :visible.sync="crud.status.cu > 0" :title="crud.status.title" width="500px">
<el-form ref="form" :model="form" :rules="rules" size="mini" label-width="80px">
<el-form-item label="站点号">
<el-input v-model="form.point_code" style="width: 370px;" />
</el-form-item>
<el-form-item label="名称">
<el-input v-model="form.point_name" style="width: 370px;" />
</el-form-item>
<el-form-item label="重量">
<el-input v-model="form.weight" style="width: 370px;" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="text" @click="crud.cancelCU">取消</el-button>
<el-button :loading="crud.cu === 2" type="primary" @click="crud.submitCU">确认</el-button>
</div>
</el-dialog>
<!--表格渲染-->
<el-table ref="table" v-loading="crud.loading" :data="crud.data" size="mini" style="width: 100%;" @selection-change="crud.selectionChangeHandler">
<el-table-column type="selection" width="55" />
<el-table-column prop="point_code" label="站点号" :min-width="flexWidth('point_code',crud.data,'站点号')" />
<el-table-column prop="point_name" label="名称" :min-width="flexWidth('point_name',crud.data,'名称')" />
<el-table-column prop="weight" label="重量" :min-width="flexWidth('weight',crud.data,'重量')" />
<el-table-column prop="create_time" label="记录时间" :min-width="flexWidth('create_time',crud.data,'记录时间')" />
<el-table-column v-permission="[]" label="操作" width="120px" align="center" fixed="right">
<template slot-scope="scope">
<udOperation
:data="scope.row"
:permission="permission"
/>
</template>
</el-table-column>
</el-table>
<!--分页组件-->
<pagination />
</div>
</div>
</template>
<script>
import crudWastefoilrecord from './wastefoilrecord'
import CRUD, { crud, form, header, presenter } from '@crud/crud'
import rrOperation from '@crud/RR.operation'
import crudOperation from '@crud/CRUD.operation'
import udOperation from '@crud/UD.operation'
import pagination from '@crud/Pagination'
const defaultForm = {
record_id: null,
point_code: null,
point_name: null,
weight: null,
create_time: null
}
export default {
name: 'Wastefoilrecord',
components: { pagination, crudOperation, rrOperation, udOperation },
mixins: [presenter(), header(), form(defaultForm), crud()],
cruds() {
return CRUD({
title: '废箔记录',
url: 'api/wastefoilrecord',
idField: 'record_id',
sort: 'record_id,desc',
crudMethod: { ...crudWastefoilrecord }
})
},
data() {
return {
permission: {
},
rules: {
}}
},
methods: {
// 钩子在获取表格数据之前执行false 则代表不获取数据
[CRUD.HOOK.beforeRefresh]() {
return true
}
}
}
</script>
<style scoped>
</style>

View File

@@ -0,0 +1,27 @@
import request from '@/utils/request'
export function add(data) {
return request({
url: 'api/wastefoilrecord',
method: 'post',
data
})
}
export function del(ids) {
return request({
url: 'api/wastefoilrecord/',
method: 'delete',
data: ids
})
}
export function edit(data) {
return request({
url: 'api/wastefoilrecord',
method: 'put',
data
})
}
export default { add, edit, del }