Commit aba21119 authored by 耿迪迪's avatar 耿迪迪

料架及物料维护

parent 16798e04
package com.zehong.web.controller.shelf;
import com.zehong.common.annotation.Log;
import com.zehong.common.core.controller.BaseController;
import com.zehong.common.core.domain.AjaxResult;
import com.zehong.common.core.page.TableDataInfo;
import com.zehong.common.enums.BusinessType;
import com.zehong.common.utils.poi.ExcelUtil;
import com.zehong.system.domain.shelf.TRackMaterialRelation;
import com.zehong.system.service.shelf.ITRackMaterialRelationService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 料架和物料维护Controller
*
* @author zehong
* @date 2025-09-24
*/
@RestController
@RequestMapping("/shelf/relation")
public class TRackMaterialRelationController extends BaseController
{
@Autowired
private ITRackMaterialRelationService tRackMaterialRelationService;
/**
* 查询料架和物料维护列表
*/
@GetMapping("/list")
public TableDataInfo list(TRackMaterialRelation tRackMaterialRelation)
{
startPage();
List<TRackMaterialRelation> list = tRackMaterialRelationService.selectTRackMaterialRelationList(tRackMaterialRelation);
return getDataTable(list);
}
@GetMapping("/relationListInfo")
public AjaxResult relationListInfo(TRackMaterialRelation tRackMaterialRelation)
{
List<TRackMaterialRelation> list = tRackMaterialRelationService.selectTRackMaterialRelationList(tRackMaterialRelation);
return AjaxResult.success(list);
}
/**
* 导出料架和物料维护列表
*/
@Log(title = "料架和物料维护", businessType = BusinessType.EXPORT)
@GetMapping("/export")
public AjaxResult export(TRackMaterialRelation tRackMaterialRelation)
{
List<TRackMaterialRelation> list = tRackMaterialRelationService.selectTRackMaterialRelationList(tRackMaterialRelation);
ExcelUtil<TRackMaterialRelation> util = new ExcelUtil<TRackMaterialRelation>(TRackMaterialRelation.class);
return util.exportExcel(list, "料架和物料维护数据");
}
/**
* 获取料架和物料维护详细信息
*/
@GetMapping(value = "/{relationId}")
public AjaxResult getInfo(@PathVariable("relationId") Long relationId)
{
return AjaxResult.success(tRackMaterialRelationService.selectTRackMaterialRelationById(relationId));
}
/**
* 新增料架和物料维护
*/
@Log(title = "料架和物料维护", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody TRackMaterialRelation tRackMaterialRelation)
{
return toAjax(tRackMaterialRelationService.insertTRackMaterialRelation(tRackMaterialRelation));
}
/**
* 修改料架和物料维护
*/
@Log(title = "料架和物料维护", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody TRackMaterialRelation tRackMaterialRelation)
{
return toAjax(tRackMaterialRelationService.updateTRackMaterialRelation(tRackMaterialRelation));
}
/**
* 删除料架和物料维护
*/
@Log(title = "料架和物料维护", businessType = BusinessType.DELETE)
@DeleteMapping("/{relationIds}")
public AjaxResult remove(@PathVariable Long[] relationIds)
{
return toAjax(tRackMaterialRelationService.deleteTRackMaterialRelationByIds(relationIds));
}
}
package com.zehong.system.domain.shelf;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zehong.common.annotation.Excel;
import com.zehong.common.core.domain.BaseEntity;
/**
* 料架和物料维护对象 t_rack_material_relation
*
* @author zehong
* @date 2025-09-24
*/
public class TRackMaterialRelation extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键 */
private Long relationId;
/** 料盘码 */
@Excel(name = "料盘码")
private String rackCode;
/** 物料代码 */
@Excel(name = "物料代码")
private String materialCode;
/** 名称 */
@Excel(name = "名称")
private String materialName;
/** 规格型号 */
@Excel(name = "规格型号")
private String materialSpecifications;
public void setRelationId(Long relationId)
{
this.relationId = relationId;
}
public Long getRelationId()
{
return relationId;
}
public void setRackCode(String rackCode)
{
this.rackCode = rackCode;
}
public String getRackCode()
{
return rackCode;
}
public void setMaterialCode(String materialCode)
{
this.materialCode = materialCode;
}
public String getMaterialCode()
{
return materialCode;
}
public void setMaterialName(String materialName)
{
this.materialName = materialName;
}
public String getMaterialName()
{
return materialName;
}
public void setMaterialSpecifications(String materialSpecifications)
{
this.materialSpecifications = materialSpecifications;
}
public String getMaterialSpecifications()
{
return materialSpecifications;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("relationId", getRelationId())
.append("rackCode", getRackCode())
.append("materialCode", getMaterialCode())
.append("materialName", getMaterialName())
.append("materialSpecifications", getMaterialSpecifications())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.toString();
}
}
...@@ -19,7 +19,7 @@ public class TShelfInfo extends BaseEntity ...@@ -19,7 +19,7 @@ public class TShelfInfo extends BaseEntity
private Long fShelfId; private Long fShelfId;
/** 料架类型:0-pcba,1-仓库 */ /** 料架类型:0-pcba,1-仓库 */
@Excel(name = "料架类型:0-pcba,1-仓库") @Excel(name = "料架类型",readConverterExp = "0=pcba,1=仓库")
private Integer fType; private Integer fType;
/** 料架编号 */ /** 料架编号 */
...@@ -27,7 +27,7 @@ public class TShelfInfo extends BaseEntity ...@@ -27,7 +27,7 @@ public class TShelfInfo extends BaseEntity
private String fShelf; private String fShelf;
/** 状态 */ /** 状态 */
@Excel(name = "状态") @Excel(name = "状态",readConverterExp = "0=离线,1=就绪")
private Integer fStatus; private Integer fStatus;
public void setfShelfId(Long fShelfId) public void setfShelfId(Long fShelfId)
......
package com.zehong.system.mapper.shelf;
import java.util.List;
import com.zehong.system.domain.shelf.TRackMaterialRelation;
/**
* 料架和物料维护Mapper接口
*
* @author zehong
* @date 2025-09-24
*/
public interface TRackMaterialRelationMapper
{
/**
* 查询料架和物料维护
*
* @param relationId 料架和物料维护ID
* @return 料架和物料维护
*/
public TRackMaterialRelation selectTRackMaterialRelationById(Long relationId);
/**
* 查询料架和物料维护列表
*
* @param tRackMaterialRelation 料架和物料维护
* @return 料架和物料维护集合
*/
public List<TRackMaterialRelation> selectTRackMaterialRelationList(TRackMaterialRelation tRackMaterialRelation);
/**
* 新增料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
public int insertTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation);
/**
* 修改料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
public int updateTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation);
/**
* 删除料架和物料维护
*
* @param relationId 料架和物料维护ID
* @return 结果
*/
public int deleteTRackMaterialRelationById(Long relationId);
/**
* 批量删除料架和物料维护
*
* @param relationIds 需要删除的数据ID
* @return 结果
*/
public int deleteTRackMaterialRelationByIds(Long[] relationIds);
}
package com.zehong.system.service.impl.shelf;
import java.util.List;
import com.zehong.common.utils.DateUtils;
import com.zehong.common.utils.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.shelf.TRackMaterialRelationMapper;
import com.zehong.system.domain.shelf.TRackMaterialRelation;
import com.zehong.system.service.shelf.ITRackMaterialRelationService;
/**
* 料架和物料维护Service业务层处理
*
* @author zehong
* @date 2025-09-24
*/
@Service
public class TRackMaterialRelationServiceImpl implements ITRackMaterialRelationService
{
@Autowired
private TRackMaterialRelationMapper tRackMaterialRelationMapper;
/**
* 查询料架和物料维护
*
* @param relationId 料架和物料维护ID
* @return 料架和物料维护
*/
@Override
public TRackMaterialRelation selectTRackMaterialRelationById(Long relationId)
{
return tRackMaterialRelationMapper.selectTRackMaterialRelationById(relationId);
}
/**
* 查询料架和物料维护列表
*
* @param tRackMaterialRelation 料架和物料维护
* @return 料架和物料维护
*/
@Override
public List<TRackMaterialRelation> selectTRackMaterialRelationList(TRackMaterialRelation tRackMaterialRelation)
{
return tRackMaterialRelationMapper.selectTRackMaterialRelationList(tRackMaterialRelation);
}
/**
* 新增料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
@Override
public int insertTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation)
{
tRackMaterialRelation.setCreateTime(DateUtils.getNowDate());
tRackMaterialRelation.setCreateBy(SecurityUtils.getLoginUser().getUser().getNickName());
return tRackMaterialRelationMapper.insertTRackMaterialRelation(tRackMaterialRelation);
}
/**
* 修改料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
@Override
public int updateTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation)
{
tRackMaterialRelation.setUpdateTime(DateUtils.getNowDate());
tRackMaterialRelation.setUpdateBy(SecurityUtils.getLoginUser().getUser().getNickName());
return tRackMaterialRelationMapper.updateTRackMaterialRelation(tRackMaterialRelation);
}
/**
* 批量删除料架和物料维护
*
* @param relationIds 需要删除的料架和物料维护ID
* @return 结果
*/
@Override
public int deleteTRackMaterialRelationByIds(Long[] relationIds)
{
return tRackMaterialRelationMapper.deleteTRackMaterialRelationByIds(relationIds);
}
/**
* 删除料架和物料维护信息
*
* @param relationId 料架和物料维护ID
* @return 结果
*/
@Override
public int deleteTRackMaterialRelationById(Long relationId)
{
return tRackMaterialRelationMapper.deleteTRackMaterialRelationById(relationId);
}
}
package com.zehong.system.service.impl.shelf; package com.zehong.system.service.impl.shelf;
import java.util.List; import com.alibaba.fastjson.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zehong.system.mapper.shelf.TShelfInfoMapper;
import com.zehong.system.domain.shelf.TShelfInfo; import com.zehong.system.domain.shelf.TShelfInfo;
import com.zehong.system.mapper.shelf.TShelfInfoMapper;
import com.zehong.system.service.shelf.ITShelfApiService;
import com.zehong.system.service.shelf.ITShelfInfoService; import com.zehong.system.service.shelf.ITShelfInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.List;
/** /**
* 料架信息Service业务层处理 * 料架信息Service业务层处理
...@@ -21,6 +23,9 @@ public class TShelfInfoServiceImpl implements ITShelfInfoService ...@@ -21,6 +23,9 @@ public class TShelfInfoServiceImpl implements ITShelfInfoService
@Resource @Resource
private TShelfInfoMapper tShelfInfoMapper; private TShelfInfoMapper tShelfInfoMapper;
@Autowired
private ITShelfApiService shelfApiService;
/** /**
* 查询料架信息 * 查询料架信息
* *
...@@ -40,9 +45,15 @@ public class TShelfInfoServiceImpl implements ITShelfInfoService ...@@ -40,9 +45,15 @@ public class TShelfInfoServiceImpl implements ITShelfInfoService
* @return 料架信息 * @return 料架信息
*/ */
@Override @Override
public List<TShelfInfo> selectTShelfInfoList(TShelfInfo tShelfInfo) public List<TShelfInfo> selectTShelfInfoList(TShelfInfo tShelfInfo) {
{ List<TShelfInfo> shelfInfoList = tShelfInfoMapper.selectTShelfInfoList(tShelfInfo);
return tShelfInfoMapper.selectTShelfInfoList(tShelfInfo); for(TShelfInfo shelfInfo : shelfInfoList){
JSONObject param = new JSONObject();
param.put("SHELF",shelfInfo.getfShelf());
JSONObject statusResult = shelfApiService.getRackStatus(param.toJSONString());
shelfInfo.setfStatus(statusResult.getInteger("STATUS"));
}
return shelfInfoList;
} }
/** /**
......
package com.zehong.system.service.shelf;
import java.util.List;
import com.zehong.system.domain.shelf.TRackMaterialRelation;
/**
* 料架和物料维护Service接口
*
* @author zehong
* @date 2025-09-24
*/
public interface ITRackMaterialRelationService
{
/**
* 查询料架和物料维护
*
* @param relationId 料架和物料维护ID
* @return 料架和物料维护
*/
public TRackMaterialRelation selectTRackMaterialRelationById(Long relationId);
/**
* 查询料架和物料维护列表
*
* @param tRackMaterialRelation 料架和物料维护
* @return 料架和物料维护集合
*/
public List<TRackMaterialRelation> selectTRackMaterialRelationList(TRackMaterialRelation tRackMaterialRelation);
/**
* 新增料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
public int insertTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation);
/**
* 修改料架和物料维护
*
* @param tRackMaterialRelation 料架和物料维护
* @return 结果
*/
public int updateTRackMaterialRelation(TRackMaterialRelation tRackMaterialRelation);
/**
* 批量删除料架和物料维护
*
* @param relationIds 需要删除的料架和物料维护ID
* @return 结果
*/
public int deleteTRackMaterialRelationByIds(Long[] relationIds);
/**
* 删除料架和物料维护信息
*
* @param relationId 料架和物料维护ID
* @return 结果
*/
public int deleteTRackMaterialRelationById(Long relationId);
}
<?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.zehong.system.mapper.shelf.TRackMaterialRelationMapper">
<resultMap type="TRackMaterialRelation" id="TRackMaterialRelationResult">
<result property="relationId" column="relation_id" />
<result property="rackCode" column="rack_code" />
<result property="materialCode" column="material_code" />
<result property="materialName" column="material_name" />
<result property="materialSpecifications" column="material_specifications" />
<result property="createBy" column="create_by" />
<result property="createTime" column="create_time" />
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" />
</resultMap>
<sql id="selectTRackMaterialRelationVo">
select relation_id, rack_code, material_code, material_name, material_specifications, create_by, create_time, update_by, update_time from t_rack_material_relation
</sql>
<select id="selectTRackMaterialRelationList" parameterType="TRackMaterialRelation" resultMap="TRackMaterialRelationResult">
<include refid="selectTRackMaterialRelationVo"/>
<where>
<if test="rackCode != null and rackCode != ''"> and rack_code like concat('%', #{rackCode}, '%')</if>
<if test="materialCode != null and materialCode != ''"> and material_code like concat('%', #{materialCode}, '%')</if>
<if test="materialName != null and materialName != ''"> and material_name like concat('%', #{materialName}, '%')</if>
<if test="materialSpecifications != null and materialSpecifications != ''"> and material_specifications = #{materialSpecifications}</if>
</where>
</select>
<select id="selectTRackMaterialRelationById" parameterType="Long" resultMap="TRackMaterialRelationResult">
<include refid="selectTRackMaterialRelationVo"/>
where relation_id = #{relationId}
</select>
<insert id="insertTRackMaterialRelation" parameterType="TRackMaterialRelation" useGeneratedKeys="true" keyProperty="relationId">
insert into t_rack_material_relation
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="rackCode != null and rackCode != ''">rack_code,</if>
<if test="materialCode != null and materialCode != ''">material_code,</if>
<if test="materialName != null">material_name,</if>
<if test="materialSpecifications != null">material_specifications,</if>
<if test="createBy != null">create_by,</if>
<if test="createTime != null">create_time,</if>
<if test="updateBy != null">update_by,</if>
<if test="updateTime != null">update_time,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="rackCode != null and rackCode != ''">#{rackCode},</if>
<if test="materialCode != null and materialCode != ''">#{materialCode},</if>
<if test="materialName != null">#{materialName},</if>
<if test="materialSpecifications != null">#{materialSpecifications},</if>
<if test="createBy != null">#{createBy},</if>
<if test="createTime != null">#{createTime},</if>
<if test="updateBy != null">#{updateBy},</if>
<if test="updateTime != null">#{updateTime},</if>
</trim>
</insert>
<update id="updateTRackMaterialRelation" parameterType="TRackMaterialRelation">
update t_rack_material_relation
<trim prefix="SET" suffixOverrides=",">
<if test="rackCode != null and rackCode != ''">rack_code = #{rackCode},</if>
<if test="materialCode != null and materialCode != ''">material_code = #{materialCode},</if>
<if test="materialName != null">material_name = #{materialName},</if>
<if test="materialSpecifications != null">material_specifications = #{materialSpecifications},</if>
<if test="createBy != null">create_by = #{createBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if>
</trim>
where relation_id = #{relationId}
</update>
<delete id="deleteTRackMaterialRelationById" parameterType="Long">
delete from t_rack_material_relation where relation_id = #{relationId}
</delete>
<delete id="deleteTRackMaterialRelationByIds" parameterType="String">
delete from t_rack_material_relation where relation_id in
<foreach item="relationId" collection="array" open="(" separator="," close=")">
#{relationId}
</foreach>
</delete>
</mapper>
\ No newline at end of file
...@@ -19,7 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ...@@ -19,7 +19,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<include refid="selectTShelfInfoVo"/> <include refid="selectTShelfInfoVo"/>
<where> <where>
<if test="fType != null "> and f_type = #{fType}</if> <if test="fType != null "> and f_type = #{fType}</if>
<if test="fShelf != null and fShelf != ''"> and f_shelf = #{fShelf}</if> <if test="fShelf != null and fShelf != ''"> and f_shelf like (concat('%', #{fShelf}, '%'))</if>
<if test="fStatus != null "> and f_status = #{fStatus}</if> <if test="fStatus != null "> and f_status = #{fStatus}</if>
</where> </where>
</select> </select>
......
import request from '@/utils/request'
// 查询料架和物料维护列表
export function listRelation(query) {
return request({
url: '/shelf/relation/list',
method: 'get',
params: query
})
}
//查询所有
export function relationListInfo(query) {
return request({
url: '/shelf/relation/relationListInfo',
method: 'get',
params: query
})
}
// 查询料架和物料维护详细
export function getRelation(relationId) {
return request({
url: '/shelf/relation/' + relationId,
method: 'get'
})
}
// 新增料架和物料维护
export function addRelation(data) {
return request({
url: '/shelf/relation',
method: 'post',
data: data
})
}
// 修改料架和物料维护
export function updateRelation(data) {
return request({
url: '/shelf/relation',
method: 'put',
data: data
})
}
// 删除料架和物料维护
export function delRelation(relationId) {
return request({
url: '/shelf/relation/' + relationId,
method: 'delete'
})
}
// 导出料架和物料维护
export function exportRelation(query) {
return request({
url: '/shelf/relation/export',
method: 'get',
params: query
})
}
...@@ -237,7 +237,7 @@ ...@@ -237,7 +237,7 @@
); );
}, },
connect() { connect() {
this.ws = new WebSocket('ws://localhost:8080/smartRackBase/ws/notifications'); this.ws = new WebSocket('ws://' + window.location.host + process.env.VUE_APP_BASE_API + '/ws/notifications');
this.ws.onopen = () => { this.ws.onopen = () => {
console.log('WebSocket Connected'); console.log('WebSocket Connected');
}; };
......
...@@ -237,7 +237,7 @@ ...@@ -237,7 +237,7 @@
); );
}, },
connect() { connect() {
this.ws = new WebSocket('ws://localhost:8080/smartRackBase/ws/notifications'); this.ws = new WebSocket('ws://' + window.location.host + process.env.VUE_APP_BASE_API + '/ws/notifications');
this.ws.onopen = () => { this.ws.onopen = () => {
console.log('WebSocket Connected'); console.log('WebSocket Connected');
}; };
......
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
<el-form-item label="料架编号" prop="fShelf">
<el-input
v-model="queryParams.fShelf"
placeholder="请输入料架编号"
clearable
size="small"
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="料架类型" prop="fType">
<el-select v-model="queryParams.fType" placeholder="请选择料架类型" clearable size="small">
<el-option label="pcba" value="0" />
<el-option label="仓库" value="1" />
</el-select>
</el-form-item>
<!--<el-form-item label="状态" prop="fStatus">
<el-select v-model="queryParams.fStatus" placeholder="请选择状态" clearable size="small">
<el-option label="就绪" value="" />
<el-option label="离线" value="" />
</el-select>
</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 :gutter="10" class="mb8">
<!--<el-col :span="1.5">
<el-button
type="primary"
plain
icon="el-icon-plus"
size="mini"
@click="handleAdd"
v-hasPermi="['system:info:add']"
>新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdate"
v-hasPermi="['system:info:edit']"
>修改</el-button>
</el-col>
<el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-delete"
size="mini"
:disabled="multiple"
@click="handleDelete"
v-hasPermi="['system:info:remove']"
>删除</el-button>
</el-col>-->
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
:loading="exportLoading"
@click="handleExport"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="料架编号" align="center" prop="fShelf" />
<el-table-column label="料架类型" align="center" prop="fType">
<template slot-scope="scope">
<span v-if="scope.row.fType == 0">pcba</span>
<span v-else-if="scope.row.fType == 1">仓库</span>
<span v-else>-</span>
</template>
</el-table-column>
<el-table-column label="状态" align="center" prop="fStatus">
<template slot-scope="scope">
<span v-if="scope.row.fStatus == 0">离线</span>
<span v-else-if="scope.row.fStatus == 1">就绪</span>
<span v-else>-</span>
</template>
</el-table-column>
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button>
<!--<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.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="title" :visible.sync="open" width="500px" append-to-body>
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
<el-form-item label="料架编号" prop="fShelf">
<el-input v-model="form.fShelf" placeholder="请输入料架编号" />
</el-form-item>
<el-form-item label="料架类型" prop="fType">
<el-select v-model="form.fType" placeholder="请选择料架类型" style="width: 100%">
<el-option label="pcba" :value="0" />
<el-option label="仓库" :value="1" />
</el-select>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" @click="submitForm">确 定</el-button>
<el-button @click="cancel">取 消</el-button>
</div>
</el-dialog>
</div>
</template>
<script>
import { listInfo, getInfo, delInfo, addInfo, updateInfo, exportInfo } from "@/api/shelf/info";
export default {
name: "Info",
components: {
},
data() {
return {
// 遮罩层
loading: true,
// 导出遮罩层
exportLoading: false,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 料架信息表格数据
infoList: [],
// 弹出层标题
title: "",
// 是否显示弹出层
open: false,
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
fType: null,
fShelf: null,
fStatus: null
},
// 表单参数
form: {},
// 表单校验
rules: {
fType: [
{ required: true, message: "料架类型:0-pcba,1-仓库不能为空", trigger: "change" }
],
fShelf: [
{ required: true, message: "料架编号不能为空", trigger: "blur" }
],
}
};
},
created() {
this.getList();
},
methods: {
/** 查询料架信息列表 */
getList() {
this.loading = true;
listInfo(this.queryParams).then(response => {
this.infoList = response.rows;
this.total = response.total;
this.loading = false;
});
},
// 取消按钮
cancel() {
this.open = false;
this.reset();
},
// 表单重置
reset() {
this.form = {
fShelfId: null,
fType: null,
fShelf: null,
fStatus: 0
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.fShelfId)
this.single = selection.length!==1
this.multiple = !selection.length
},
/** 新增按钮操作 */
handleAdd() {
this.reset();
this.open = true;
this.title = "添加料架信息";
},
/** 修改按钮操作 */
handleUpdate(row) {
this.reset();
const fShelfId = row.fShelfId || this.ids
getInfo(fShelfId).then(response => {
this.form = response.data;
this.open = true;
this.title = "修改料架信息";
});
},
/** 提交按钮 */
submitForm() {
this.$refs["form"].validate(valid => {
if (valid) {
if (this.form.fShelfId != null) {
updateInfo(this.form).then(response => {
this.msgSuccess("修改成功");
this.open = false;
this.getList();
});
} else {
addInfo(this.form).then(response => {
this.msgSuccess("新增成功");
this.open = false;
this.getList();
});
}
}
});
},
/** 删除按钮操作 */
handleDelete(row) {
const fShelfIds = row.fShelfId || this.ids;
this.$confirm('是否确认删除料架信息编号为"' + fShelfIds + '"的数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(function() {
return delInfo(fShelfIds);
}).then(() => {
this.getList();
this.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
const queryParams = this.queryParams;
this.$confirm('是否确认导出所有料架信息数据项?', "警告", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning"
}).then(() => {
this.exportLoading = true;
return exportInfo(queryParams);
}).then(response => {
this.download(response.msg);
this.exportLoading = false;
}).catch(() => {});
}
}
};
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment