供应商退货单头

This commit is contained in:
JinLu.Yin 2022-06-13 16:28:26 +08:00
parent dde5d6a26b
commit 4fd97d13e2
6 changed files with 717 additions and 0 deletions

View File

@ -0,0 +1,112 @@
package com.ktg.mes.wm.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.ktg.common.constant.UserConstants;
import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.ktg.common.annotation.Log;
import com.ktg.common.core.controller.BaseController;
import com.ktg.common.core.domain.AjaxResult;
import com.ktg.common.enums.BusinessType;
import com.ktg.mes.wm.domain.WmRtVendor;
import com.ktg.mes.wm.service.IWmRtVendorService;
import com.ktg.common.utils.poi.ExcelUtil;
import com.ktg.common.core.page.TableDataInfo;
/**
* 供应商退货Controller
*
* @author yinjinlu
* @date 2022-06-13
*/
@RestController
@RequestMapping("/mes/wm/rtvendor")
public class WmRtVendorController extends BaseController
{
@Autowired
private IWmRtVendorService wmRtVendorService;
/**
* 查询供应商退货列表
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:list')")
@GetMapping("/list")
public TableDataInfo list(WmRtVendor wmRtVendor)
{
startPage();
List<WmRtVendor> list = wmRtVendorService.selectWmRtVendorList(wmRtVendor);
return getDataTable(list);
}
/**
* 导出供应商退货列表
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:export')")
@Log(title = "供应商退货", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, WmRtVendor wmRtVendor)
{
List<WmRtVendor> list = wmRtVendorService.selectWmRtVendorList(wmRtVendor);
ExcelUtil<WmRtVendor> util = new ExcelUtil<WmRtVendor>(WmRtVendor.class);
util.exportExcel(response, list, "供应商退货数据");
}
/**
* 获取供应商退货详细信息
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:query')")
@GetMapping(value = "/{rtId}")
public AjaxResult getInfo(@PathVariable("rtId") Long rtId)
{
return AjaxResult.success(wmRtVendorService.selectWmRtVendorByRtId(rtId));
}
/**
* 新增供应商退货
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:add')")
@Log(title = "供应商退货", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody WmRtVendor wmRtVendor)
{
if(UserConstants.NOT_UNIQUE.equals(wmRtVendorService.checkCodeUnique(wmRtVendor))){
return AjaxResult.error("退货单编号已经存在!");
}
return toAjax(wmRtVendorService.insertWmRtVendor(wmRtVendor));
}
/**
* 修改供应商退货
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:edit')")
@Log(title = "供应商退货", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody WmRtVendor wmRtVendor)
{
if(UserConstants.NOT_UNIQUE.equals(wmRtVendorService.checkCodeUnique(wmRtVendor))){
return AjaxResult.error("退货单编号已经存在!");
}
return toAjax(wmRtVendorService.updateWmRtVendor(wmRtVendor));
}
/**
* 删除供应商退货
*/
@PreAuthorize("@ss.hasPermi('mes:wm:rtvendor:remove')")
@Log(title = "供应商退货", businessType = BusinessType.DELETE)
@DeleteMapping("/{rtIds}")
public AjaxResult remove(@PathVariable Long[] rtIds)
{
return toAjax(wmRtVendorService.deleteWmRtVendorByRtIds(rtIds));
}
}

View File

@ -0,0 +1,223 @@
package com.ktg.mes.wm.domain;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ktg.common.annotation.Excel;
import com.ktg.common.core.domain.BaseEntity;
/**
* 供应商退货对象 wm_rt_vendor
*
* @author yinjinlu
* @date 2022-06-13
*/
public class WmRtVendor extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 退货单ID */
private Long rtId;
/** 退货单编号 */
@Excel(name = "退货单编号")
private String rtCode;
/** 退货单名称 */
@Excel(name = "退货单名称")
private String rtName;
/** 采购订单编号 */
@Excel(name = "采购订单编号")
private String poCode;
/** 供应商ID */
@Excel(name = "供应商ID")
private Long vendorId;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String vendorCode;
/** 供应商名称 */
@Excel(name = "供应商名称")
private String vendorName;
/** 供应商简称 */
@Excel(name = "供应商简称")
private String vendorNick;
/** 退货日期 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "退货日期", width = 30, dateFormat = "yyyy-MM-dd")
private Date rtDate;
/** 单据状态 */
@Excel(name = "单据状态")
private String status;
/** 预留字段1 */
private String attr1;
/** 预留字段2 */
private String attr2;
/** 预留字段3 */
private Long attr3;
/** 预留字段4 */
private Long attr4;
public void setRtId(Long rtId)
{
this.rtId = rtId;
}
public Long getRtId()
{
return rtId;
}
public void setRtCode(String rtCode)
{
this.rtCode = rtCode;
}
public String getRtCode()
{
return rtCode;
}
public void setRtName(String rtName)
{
this.rtName = rtName;
}
public String getRtName()
{
return rtName;
}
public void setPoCode(String poCode)
{
this.poCode = poCode;
}
public String getPoCode()
{
return poCode;
}
public void setVendorId(Long vendorId)
{
this.vendorId = vendorId;
}
public Long getVendorId()
{
return vendorId;
}
public void setVendorCode(String vendorCode)
{
this.vendorCode = vendorCode;
}
public String getVendorCode()
{
return vendorCode;
}
public void setVendorName(String vendorName)
{
this.vendorName = vendorName;
}
public String getVendorName()
{
return vendorName;
}
public void setVendorNick(String vendorNick)
{
this.vendorNick = vendorNick;
}
public String getVendorNick()
{
return vendorNick;
}
public void setRtDate(Date rtDate)
{
this.rtDate = rtDate;
}
public Date getRtDate()
{
return rtDate;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setAttr1(String attr1)
{
this.attr1 = attr1;
}
public String getAttr1()
{
return attr1;
}
public void setAttr2(String attr2)
{
this.attr2 = attr2;
}
public String getAttr2()
{
return attr2;
}
public void setAttr3(Long attr3)
{
this.attr3 = attr3;
}
public Long getAttr3()
{
return attr3;
}
public void setAttr4(Long attr4)
{
this.attr4 = attr4;
}
public Long getAttr4()
{
return attr4;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("rtId", getRtId())
.append("rtCode", getRtCode())
.append("rtName", getRtName())
.append("poCode", getPoCode())
.append("vendorId", getVendorId())
.append("vendorCode", getVendorCode())
.append("vendorName", getVendorName())
.append("vendorNick", getVendorNick())
.append("rtDate", getRtDate())
.append("status", getStatus())
.append("remark", getRemark())
.append("attr1", getAttr1())
.append("attr2", getAttr2())
.append("attr3", getAttr3())
.append("attr4", getAttr4())
.append("createBy", getCreateBy())
.append("createTime", getCreateTime())
.append("updateBy", getUpdateBy())
.append("updateTime", getUpdateTime())
.toString();
}
}

View File

@ -0,0 +1,68 @@
package com.ktg.mes.wm.mapper;
import java.util.List;
import com.ktg.mes.wm.domain.WmRtVendor;
/**
* 供应商退货Mapper接口
*
* @author yinjinlu
* @date 2022-06-13
*/
public interface WmRtVendorMapper
{
/**
* 查询供应商退货
*
* @param rtId 供应商退货主键
* @return 供应商退货
*/
public WmRtVendor selectWmRtVendorByRtId(Long rtId);
/**
* 查询供应商退货列表
*
* @param wmRtVendor 供应商退货
* @return 供应商退货集合
*/
public List<WmRtVendor> selectWmRtVendorList(WmRtVendor wmRtVendor);
/**
* 检查供应商退货单编码是否唯一
* @param wmRtVendor
* @return
*/
public WmRtVendor checkCodeUnique(WmRtVendor wmRtVendor);
/**
* 新增供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
public int insertWmRtVendor(WmRtVendor wmRtVendor);
/**
* 修改供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
public int updateWmRtVendor(WmRtVendor wmRtVendor);
/**
* 删除供应商退货
*
* @param rtId 供应商退货主键
* @return 结果
*/
public int deleteWmRtVendorByRtId(Long rtId);
/**
* 批量删除供应商退货
*
* @param rtIds 需要删除的数据主键集合
* @return 结果
*/
public int deleteWmRtVendorByRtIds(Long[] rtIds);
}

View File

@ -0,0 +1,68 @@
package com.ktg.mes.wm.service;
import java.util.List;
import com.ktg.mes.wm.domain.WmRtVendor;
/**
* 供应商退货Service接口
*
* @author yinjinlu
* @date 2022-06-13
*/
public interface IWmRtVendorService
{
/**
* 查询供应商退货
*
* @param rtId 供应商退货主键
* @return 供应商退货
*/
public WmRtVendor selectWmRtVendorByRtId(Long rtId);
/**
* 查询供应商退货列表
*
* @param wmRtVendor 供应商退货
* @return 供应商退货集合
*/
public List<WmRtVendor> selectWmRtVendorList(WmRtVendor wmRtVendor);
/**
* 检查供应商退货单编码是否唯一
* @param wmRtVendor
* @return
*/
public String checkCodeUnique(WmRtVendor wmRtVendor);
/**
* 新增供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
public int insertWmRtVendor(WmRtVendor wmRtVendor);
/**
* 修改供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
public int updateWmRtVendor(WmRtVendor wmRtVendor);
/**
* 批量删除供应商退货
*
* @param rtIds 需要删除的供应商退货主键集合
* @return 结果
*/
public int deleteWmRtVendorByRtIds(Long[] rtIds);
/**
* 删除供应商退货信息
*
* @param rtId 供应商退货主键
* @return 结果
*/
public int deleteWmRtVendorByRtId(Long rtId);
}

View File

@ -0,0 +1,109 @@
package com.ktg.mes.wm.service.impl;
import java.util.List;
import com.ktg.common.constant.UserConstants;
import com.ktg.common.utils.DateUtils;
import com.ktg.common.utils.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.ktg.mes.wm.mapper.WmRtVendorMapper;
import com.ktg.mes.wm.domain.WmRtVendor;
import com.ktg.mes.wm.service.IWmRtVendorService;
/**
* 供应商退货Service业务层处理
*
* @author yinjinlu
* @date 2022-06-13
*/
@Service
public class WmRtVendorServiceImpl implements IWmRtVendorService
{
@Autowired
private WmRtVendorMapper wmRtVendorMapper;
/**
* 查询供应商退货
*
* @param rtId 供应商退货主键
* @return 供应商退货
*/
@Override
public WmRtVendor selectWmRtVendorByRtId(Long rtId)
{
return wmRtVendorMapper.selectWmRtVendorByRtId(rtId);
}
/**
* 查询供应商退货列表
*
* @param wmRtVendor 供应商退货
* @return 供应商退货
*/
@Override
public List<WmRtVendor> selectWmRtVendorList(WmRtVendor wmRtVendor)
{
return wmRtVendorMapper.selectWmRtVendorList(wmRtVendor);
}
@Override
public String checkCodeUnique(WmRtVendor wmRtVendor) {
WmRtVendor rt = wmRtVendorMapper.checkCodeUnique(wmRtVendor);
Long rtId = wmRtVendor.getRtId() ==null?-1L:wmRtVendor.getRtId();
if(StringUtils.isNotNull(rt) && rt.getRtId().longValue() != rtId.longValue()){
return UserConstants.NOT_UNIQUE;
}
return UserConstants.UNIQUE;
}
/**
* 新增供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
@Override
public int insertWmRtVendor(WmRtVendor wmRtVendor)
{
wmRtVendor.setCreateTime(DateUtils.getNowDate());
return wmRtVendorMapper.insertWmRtVendor(wmRtVendor);
}
/**
* 修改供应商退货
*
* @param wmRtVendor 供应商退货
* @return 结果
*/
@Override
public int updateWmRtVendor(WmRtVendor wmRtVendor)
{
wmRtVendor.setUpdateTime(DateUtils.getNowDate());
return wmRtVendorMapper.updateWmRtVendor(wmRtVendor);
}
/**
* 批量删除供应商退货
*
* @param rtIds 需要删除的供应商退货主键
* @return 结果
*/
@Override
public int deleteWmRtVendorByRtIds(Long[] rtIds)
{
return wmRtVendorMapper.deleteWmRtVendorByRtIds(rtIds);
}
/**
* 删除供应商退货信息
*
* @param rtId 供应商退货主键
* @return 结果
*/
@Override
public int deleteWmRtVendorByRtId(Long rtId)
{
return wmRtVendorMapper.deleteWmRtVendorByRtId(rtId);
}
}

View File

@ -0,0 +1,137 @@
<?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.ktg.mes.wm.mapper.WmRtVendorMapper">
<resultMap type="WmRtVendor" id="WmRtVendorResult">
<result property="rtId" column="rt_id" />
<result property="rtCode" column="rt_code" />
<result property="rtName" column="rt_name" />
<result property="poCode" column="po_code" />
<result property="vendorId" column="vendor_id" />
<result property="vendorCode" column="vendor_code" />
<result property="vendorName" column="vendor_name" />
<result property="vendorNick" column="vendor_nick" />
<result property="rtDate" column="rt_date" />
<result property="status" column="status" />
<result property="remark" column="remark" />
<result property="attr1" column="attr1" />
<result property="attr2" column="attr2" />
<result property="attr3" column="attr3" />
<result property="attr4" column="attr4" />
<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="selectWmRtVendorVo">
select rt_id, rt_code, rt_name, po_code, vendor_id, vendor_code, vendor_name, vendor_nick, rt_date, status, remark, attr1, attr2, attr3, attr4, create_by, create_time, update_by, update_time from wm_rt_vendor
</sql>
<select id="selectWmRtVendorList" parameterType="WmRtVendor" resultMap="WmRtVendorResult">
<include refid="selectWmRtVendorVo"/>
<where>
<if test="rtCode != null and rtCode != ''"> and rt_code = #{rtCode}</if>
<if test="rtName != null and rtName != ''"> and rt_name like concat('%', #{rtName}, '%')</if>
<if test="poCode != null and poCode != ''"> and po_code = #{poCode}</if>
<if test="vendorId != null "> and vendor_id = #{vendorId}</if>
<if test="vendorCode != null and vendorCode != ''"> and vendor_code = #{vendorCode}</if>
<if test="vendorName != null and vendorName != ''"> and vendor_name like concat('%', #{vendorName}, '%')</if>
<if test="vendorNick != null and vendorNick != ''"> and vendor_nick = #{vendorNick}</if>
<if test="rtDate != null "> and rt_date = #{rtDate}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
</where>
</select>
<select id="selectWmRtVendorByRtId" parameterType="Long" resultMap="WmRtVendorResult">
<include refid="selectWmRtVendorVo"/>
where rt_id = #{rtId}
</select>
<select id="checkCodeUnique" parameterType="WmRtVendor" resultMap="WmRtVendorResult">
<include refid="selectWmRtVendorVo"/>
where rt_code = #{rtCode}
</select>
<insert id="insertWmRtVendor" parameterType="WmRtVendor" useGeneratedKeys="true" keyProperty="rtId">
insert into wm_rt_vendor
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="rtCode != null and rtCode != ''">rt_code,</if>
<if test="rtName != null and rtName != ''">rt_name,</if>
<if test="poCode != null">po_code,</if>
<if test="vendorId != null">vendor_id,</if>
<if test="vendorCode != null">vendor_code,</if>
<if test="vendorName != null">vendor_name,</if>
<if test="vendorNick != null">vendor_nick,</if>
<if test="rtDate != null">rt_date,</if>
<if test="status != null">status,</if>
<if test="remark != null">remark,</if>
<if test="attr1 != null">attr1,</if>
<if test="attr2 != null">attr2,</if>
<if test="attr3 != null">attr3,</if>
<if test="attr4 != null">attr4,</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="rtCode != null and rtCode != ''">#{rtCode},</if>
<if test="rtName != null and rtName != ''">#{rtName},</if>
<if test="poCode != null">#{poCode},</if>
<if test="vendorId != null">#{vendorId},</if>
<if test="vendorCode != null">#{vendorCode},</if>
<if test="vendorName != null">#{vendorName},</if>
<if test="vendorNick != null">#{vendorNick},</if>
<if test="rtDate != null">#{rtDate},</if>
<if test="status != null">#{status},</if>
<if test="remark != null">#{remark},</if>
<if test="attr1 != null">#{attr1},</if>
<if test="attr2 != null">#{attr2},</if>
<if test="attr3 != null">#{attr3},</if>
<if test="attr4 != null">#{attr4},</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="updateWmRtVendor" parameterType="WmRtVendor">
update wm_rt_vendor
<trim prefix="SET" suffixOverrides=",">
<if test="rtCode != null and rtCode != ''">rt_code = #{rtCode},</if>
<if test="rtName != null and rtName != ''">rt_name = #{rtName},</if>
<if test="poCode != null">po_code = #{poCode},</if>
<if test="vendorId != null">vendor_id = #{vendorId},</if>
<if test="vendorCode != null">vendor_code = #{vendorCode},</if>
<if test="vendorName != null">vendor_name = #{vendorName},</if>
<if test="vendorNick != null">vendor_nick = #{vendorNick},</if>
<if test="rtDate != null">rt_date = #{rtDate},</if>
<if test="status != null">status = #{status},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="attr1 != null">attr1 = #{attr1},</if>
<if test="attr2 != null">attr2 = #{attr2},</if>
<if test="attr3 != null">attr3 = #{attr3},</if>
<if test="attr4 != null">attr4 = #{attr4},</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 rt_id = #{rtId}
</update>
<delete id="deleteWmRtVendorByRtId" parameterType="Long">
delete from wm_rt_vendor where rt_id = #{rtId}
</delete>
<delete id="deleteWmRtVendorByRtIds" parameterType="String">
delete from wm_rt_vendor where rt_id in
<foreach item="rtId" collection="array" open="(" separator="," close=")">
#{rtId}
</foreach>
</delete>
</mapper>