新增盘点模块相关接口

This commit is contained in:
2025-06-17 08:39:05 +08:00
parent 52ff615f29
commit f3752c7cbc
32 changed files with 853 additions and 2303 deletions

View File

@@ -0,0 +1,104 @@
package com.zg.project.Inventory.Task.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
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.zg.framework.aspectj.lang.annotation.Log;
import com.zg.framework.aspectj.lang.enums.BusinessType;
import com.zg.project.Inventory.domain.entity.InventoryTask;
import com.zg.project.Inventory.Task.service.IInventoryTaskService;
import com.zg.framework.web.controller.BaseController;
import com.zg.framework.web.domain.AjaxResult;
import com.zg.common.utils.poi.ExcelUtil;
import com.zg.framework.web.page.TableDataInfo;
/**
* 盘点任务Controller
*
* @author zg
* @date 2025-06-16
*/
@RestController
@RequestMapping("/Inventory/task")
public class InventoryTaskController extends BaseController
{
@Autowired
private IInventoryTaskService inventoryTaskService;
/**
* 查询盘点任务列表
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:list')")
@GetMapping("/list")
public TableDataInfo list(InventoryTask inventoryTask)
{
startPage();
List<InventoryTask> list = inventoryTaskService.selectInventoryTaskList(inventoryTask);
return getDataTable(list);
}
/**
* 导出盘点任务列表
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:export')")
@Log(title = "盘点任务", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, InventoryTask inventoryTask)
{
List<InventoryTask> list = inventoryTaskService.selectInventoryTaskList(inventoryTask);
ExcelUtil<InventoryTask> util = new ExcelUtil<InventoryTask>(InventoryTask.class);
util.exportExcel(response, list, "盘点任务数据");
}
/**
* 获取盘点任务详细信息
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(inventoryTaskService.selectInventoryTaskById(id));
}
/**
* 新增盘点任务
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:add')")
@Log(title = "盘点任务", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody InventoryTask inventoryTask)
{
return toAjax(inventoryTaskService.insertInventoryTask(inventoryTask));
}
/**
* 修改盘点任务
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:edit')")
@Log(title = "盘点任务", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody InventoryTask inventoryTask)
{
return toAjax(inventoryTaskService.updateInventoryTask(inventoryTask));
}
/**
* 删除盘点任务
*/
@PreAuthorize("@ss.hasPermi('Inventory:task:remove')")
@Log(title = "盘点任务", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(inventoryTaskService.deleteInventoryTaskByIds(ids));
}
}

View File

@@ -0,0 +1,61 @@
package com.zg.project.Inventory.Task.mapper;
import java.util.List;
import com.zg.project.Inventory.domain.entity.InventoryTask;
/**
* 盘点任务Mapper接口
*
* @author zg
* @date 2025-06-16
*/
public interface InventoryTaskMapper
{
/**
* 查询盘点任务
*
* @param id 盘点任务主键
* @return 盘点任务
*/
public InventoryTask selectInventoryTaskById(Long id);
/**
* 查询盘点任务列表
*
* @param inventoryTask 盘点任务
* @return 盘点任务集合
*/
public List<InventoryTask> selectInventoryTaskList(InventoryTask inventoryTask);
/**
* 新增盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
public int insertInventoryTask(InventoryTask inventoryTask);
/**
* 修改盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
public int updateInventoryTask(InventoryTask inventoryTask);
/**
* 删除盘点任务
*
* @param id 盘点任务主键
* @return 结果
*/
public int deleteInventoryTaskById(Long id);
/**
* 批量删除盘点任务
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteInventoryTaskByIds(Long[] ids);
}

View File

@@ -0,0 +1,61 @@
package com.zg.project.Inventory.Task.service;
import java.util.List;
import com.zg.project.Inventory.domain.entity.InventoryTask;
/**
* 盘点任务Service接口
*
* @author zg
* @date 2025-06-16
*/
public interface IInventoryTaskService
{
/**
* 查询盘点任务
*
* @param id 盘点任务主键
* @return 盘点任务
*/
public InventoryTask selectInventoryTaskById(Long id);
/**
* 查询盘点任务列表
*
* @param inventoryTask 盘点任务
* @return 盘点任务集合
*/
public List<InventoryTask> selectInventoryTaskList(InventoryTask inventoryTask);
/**
* 新增盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
public int insertInventoryTask(InventoryTask inventoryTask);
/**
* 修改盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
public int updateInventoryTask(InventoryTask inventoryTask);
/**
* 批量删除盘点任务
*
* @param ids 需要删除的盘点任务主键集合
* @return 结果
*/
public int deleteInventoryTaskByIds(Long[] ids);
/**
* 删除盘点任务信息
*
* @param id 盘点任务主键
* @return 结果
*/
public int deleteInventoryTaskById(Long id);
}

View File

@@ -0,0 +1,93 @@
package com.zg.project.Inventory.Task.service.impl;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zg.project.Inventory.Task.mapper.InventoryTaskMapper;
import com.zg.project.Inventory.domain.entity.InventoryTask;
import com.zg.project.Inventory.Task.service.IInventoryTaskService;
/**
* 盘点任务Service业务层处理
*
* @author zg
* @date 2025-06-16
*/
@Service
public class InventoryTaskServiceImpl implements IInventoryTaskService
{
@Autowired
private InventoryTaskMapper inventoryTaskMapper;
/**
* 查询盘点任务
*
* @param id 盘点任务主键
* @return 盘点任务
*/
@Override
public InventoryTask selectInventoryTaskById(Long id)
{
return inventoryTaskMapper.selectInventoryTaskById(id);
}
/**
* 查询盘点任务列表
*
* @param inventoryTask 盘点任务
* @return 盘点任务
*/
@Override
public List<InventoryTask> selectInventoryTaskList(InventoryTask inventoryTask)
{
return inventoryTaskMapper.selectInventoryTaskList(inventoryTask);
}
/**
* 新增盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
@Override
public int insertInventoryTask(InventoryTask inventoryTask)
{
return inventoryTaskMapper.insertInventoryTask(inventoryTask);
}
/**
* 修改盘点任务
*
* @param inventoryTask 盘点任务
* @return 结果
*/
@Override
public int updateInventoryTask(InventoryTask inventoryTask)
{
return inventoryTaskMapper.updateInventoryTask(inventoryTask);
}
/**
* 批量删除盘点任务
*
* @param ids 需要删除的盘点任务主键
* @return 结果
*/
@Override
public int deleteInventoryTaskByIds(Long[] ids)
{
return inventoryTaskMapper.deleteInventoryTaskByIds(ids);
}
/**
* 删除盘点任务信息
*
* @param id 盘点任务主键
* @return 结果
*/
@Override
public int deleteInventoryTaskById(Long id)
{
return inventoryTaskMapper.deleteInventoryTaskById(id);
}
}

View File

@@ -1,116 +0,0 @@
package com.zg.project.Inventory.Visualization.controller;
import java.util.List;
import javax.servlet.http.HttpServletResponse;
import com.zg.project.Inventory.Visualization.domain.vo.OdtlVO;
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.zg.framework.aspectj.lang.annotation.Log;
import com.zg.framework.aspectj.lang.enums.BusinessType;
import com.zg.project.Inventory.Visualization.domain.Odtl;
import com.zg.project.Inventory.Visualization.service.IOdtlService;
import com.zg.framework.web.controller.BaseController;
import com.zg.framework.web.domain.AjaxResult;
import com.zg.common.utils.poi.ExcelUtil;
import com.zg.framework.web.page.TableDataInfo;
/**
* 借料出库 明细Controller
*
* @author zg
* @date 2025-05-09
*/
@RestController
@RequestMapping("/Visual/odtl")
public class OdtlController extends BaseController
{
@Autowired
private IOdtlService odtlService;
/**
* 查询借料出库 明细列表
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:list')")
@GetMapping("/list")
public TableDataInfo list(Odtl odtl)
{
startPage();
List<Odtl> list = odtlService.selectOdtlList(odtl);
return getDataTable(list);
}
/**
* 查询全部出入库明细
* @return
*/
@GetMapping("/odtlQueryAll")
public AjaxResult queryAll() {
List<OdtlVO> list = odtlService.queryAll();
return AjaxResult.success(list);
}
/**
* 导出借料出库 明细列表
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:export')")
@Log(title = "借料出库 明细", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, Odtl odtl)
{
List<Odtl> list = odtlService.selectOdtlList(odtl);
ExcelUtil<Odtl> util = new ExcelUtil<Odtl>(Odtl.class);
util.exportExcel(response, list, "借料出库 明细数据");
}
/**
* 获取借料出库 明细详细信息
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:query')")
@GetMapping(value = "/{Id}")
public AjaxResult getInfo(@PathVariable("Id") Long Id)
{
return success(odtlService.selectOdtlById(Id));
}
/**
* 新增借料出库 明细
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:add')")
@Log(title = "借料出库 明细", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody Odtl odtl)
{
return toAjax(odtlService.insertOdtl(odtl));
}
/**
* 修改借料出库 明细
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:edit')")
@Log(title = "借料出库 明细", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody Odtl odtl)
{
return toAjax(odtlService.updateOdtl(odtl));
}
/**
* 删除借料出库 明细
*/
@PreAuthorize("@ss.hasPermi('Visualization:odtl:remove')")
@Log(title = "借料出库 明细", businessType = BusinessType.DELETE)
@DeleteMapping("/{Ids}")
public AjaxResult remove(@PathVariable Long[] Ids)
{
return toAjax(odtlService.deleteOdtlByIds(Ids));
}
}

View File

@@ -1,116 +0,0 @@
package com.zg.project.Inventory.Visualization.controller;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletResponse;
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.zg.framework.aspectj.lang.annotation.Log;
import com.zg.framework.aspectj.lang.enums.BusinessType;
import com.zg.project.Inventory.Visualization.domain.Pln;
import com.zg.project.Inventory.Visualization.service.IPlnService;
import com.zg.framework.web.controller.BaseController;
import com.zg.framework.web.domain.AjaxResult;
import com.zg.common.utils.poi.ExcelUtil;
import com.zg.framework.web.page.TableDataInfo;
/**
* 计划履约Controller
*
* @author zg
* @date 2025-05-09
*/
@RestController
@RequestMapping("/Visual/pln")
public class PlnController extends BaseController
{
@Autowired
private IPlnService plnService;
/**
* 查询计划履约列表
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:list')")
@GetMapping("/list")
public TableDataInfo list(Pln pln)
{
startPage();
List<Pln> list = plnService.selectPlnList(pln);
return getDataTable(list);
}
/**
* 查询所有供应计划
*/
@GetMapping("/plnQueryAll")
public AjaxResult queryAll() {
Map<String, Object> resultMap = plnService.getAll();
return AjaxResult.success(resultMap);
}
/**
* 导出计划履约列表
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:export')")
@Log(title = "计划履约", businessType = BusinessType.EXPORT)
@PostMapping("/export")
public void export(HttpServletResponse response, Pln pln)
{
List<Pln> list = plnService.selectPlnList(pln);
ExcelUtil<Pln> util = new ExcelUtil<Pln>(Pln.class);
util.exportExcel(response, list, "计划履约数据");
}
/**
* 获取计划履约详细信息
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:query')")
@GetMapping(value = "/{id}")
public AjaxResult getInfo(@PathVariable("id") Long id)
{
return success(plnService.selectPlnById(id));
}
/**
* 新增计划履约
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:add')")
@Log(title = "计划履约", businessType = BusinessType.INSERT)
@PostMapping
public AjaxResult add(@RequestBody Pln pln)
{
return toAjax(plnService.insertPln(pln));
}
/**
* 修改计划履约
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:edit')")
@Log(title = "计划履约", businessType = BusinessType.UPDATE)
@PutMapping
public AjaxResult edit(@RequestBody Pln pln)
{
return toAjax(plnService.updatePln(pln));
}
/**
* 删除计划履约
*/
@PreAuthorize("@ss.hasPermi('Visualization:pln:remove')")
@Log(title = "计划履约", businessType = BusinessType.DELETE)
@DeleteMapping("/{ids}")
public AjaxResult remove(@PathVariable Long[] ids)
{
return toAjax(plnService.deletePlnByIds(ids));
}
}

View File

@@ -1,30 +0,0 @@
package com.zg.project.Inventory.Visualization.controller;
import com.zg.framework.web.controller.BaseController;
import com.zg.framework.web.domain.AjaxResult;
import com.zg.project.Inventory.AutoInventory.service.ISodService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.Map;
@RestController
@RequestMapping("/Visual")
public class SodController extends BaseController {
@Autowired
private ISodService sodService;
/**
* 查询当前库存情况
* @return
*/
@GetMapping("/sodQueryAll")
public AjaxResult queryAll() {
Map<String, Object> resultMap = sodService.getAll();
return AjaxResult.success(resultMap);
}
}

View File

@@ -1,188 +0,0 @@
package com.zg.project.Inventory.Visualization.domain;
import java.math.BigDecimal;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zg.framework.aspectj.lang.annotation.Excel;
import com.zg.framework.web.domain.BaseEntity;
/**
* 借料出库 明细对象 odtl
*
* @author zg
* @date 2025-05-09
*/
public class Odtl extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** $column.columnComment */
private Long Id;
/** rdtl的id */
@Excel(name = "rdtl的id")
private Long rdid;
/** sod的id */
@Excel(name = "sod的id")
private Long sid;
/** 取货数量 */
@Excel(name = "取货数量")
private BigDecimal amt;
/** 取货位置 */
@Excel(name = "取货位置")
private String pcde;
/** 为出库单时1表示已出库;0表示入库 */
@Excel(name = "为出库单时1表示已出库;0表示入库")
private String ste;
/** RIFD编号 */
@Excel(name = "RIFD编号")
private String rfid;
/** wh_sod.id危化品库存id */
@Excel(name = "wh_sod.id危化品库存id")
private Long wsid;
/** 声光标签编码 */
@Excel(name = "声光标签编码")
private String vlid;
/** 1:还料 */
@Excel(name = "1:还料")
private Long flg;
/** ERP出库凭证 */
@Excel(name = "ERP出库凭证")
private String prf;
public void setId(Long Id)
{
this.Id = Id;
}
public Long getId()
{
return Id;
}
public void setRdid(Long rdid)
{
this.rdid = rdid;
}
public Long getRdid()
{
return rdid;
}
public void setSid(Long sid)
{
this.sid = sid;
}
public Long getSid()
{
return sid;
}
public void setAmt(BigDecimal amt)
{
this.amt = amt;
}
public BigDecimal getAmt()
{
return amt;
}
public void setPcde(String pcde)
{
this.pcde = pcde;
}
public String getPcde()
{
return pcde;
}
public void setSte(String ste)
{
this.ste = ste;
}
public String getSte()
{
return ste;
}
public void setRfid(String rfid)
{
this.rfid = rfid;
}
public String getRfid()
{
return rfid;
}
public void setWsid(Long wsid)
{
this.wsid = wsid;
}
public Long getWsid()
{
return wsid;
}
public void setVlid(String vlid)
{
this.vlid = vlid;
}
public String getVlid()
{
return vlid;
}
public void setFlg(Long flg)
{
this.flg = flg;
}
public Long getFlg()
{
return flg;
}
public void setPrf(String prf)
{
this.prf = prf;
}
public String getPrf()
{
return prf;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("Id", getId())
.append("rdid", getRdid())
.append("sid", getSid())
.append("amt", getAmt())
.append("pcde", getPcde())
.append("ste", getSte())
.append("rfid", getRfid())
.append("wsid", getWsid())
.append("vlid", getVlid())
.append("flg", getFlg())
.append("prf", getPrf())
.toString();
}
}

View File

@@ -1,712 +0,0 @@
package com.zg.project.Inventory.Visualization.domain;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zg.framework.aspectj.lang.annotation.Excel;
import com.zg.framework.web.domain.BaseEntity;
/**
* 计划履约对象 pln
*
* @author zg
* @date 2025-05-09
*/
public class Pln extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** $column.columnComment */
private Long id;
/** 工厂代码 */
@Excel(name = "工厂代码")
private String gcdm;
/** 工厂描述 */
@Excel(name = "工厂描述")
private String gcms;
/** 招标批次 */
@Excel(name = "招标批次")
private String zbpc;
/** 招标批次名称 */
@Excel(name = "招标批次名称")
private String zbpcmc;
/** 生效日期 */
@Excel(name = "生效日期")
private String sxrq;
/** 签订日期 */
@Excel(name = "签订日期")
private String qdrq;
/** 合同编号(电子商务) */
@Excel(name = "合同编号", readConverterExp = "电=子商务")
private String htbh;
/** 供应计划编号 */
@Excel(name = "供应计划编号")
private String gyjhbh;
/** 工程编号(项目定义号) */
@Excel(name = "工程编号", readConverterExp = "项=目定义号")
private String gcbh;
/** 工程名称(项目描述) */
@Excel(name = "工程名称", readConverterExp = "项=目描述")
private String xmms;
/** 供应商编码 */
@Excel(name = "供应商编码")
private String gysbm;
/** 供应商名称 */
@Excel(name = "供应商名称")
private String gysmc;
/** 采购订单号 */
@Excel(name = "采购订单号")
private String cgddh;
/** 采购订单行项目号 */
@Excel(name = "采购订单行项目号")
private String hxmh;
/** 合同交货期 */
@Excel(name = "合同交货期")
private String htjhq;
/** 确定交货期 */
@Excel(name = "确定交货期")
private String qdjhq;
/** 实际交货期 */
@Excel(name = "实际交货期")
private String sjjhq;
/** 物料号 */
@Excel(name = "物料号")
private String wlh;
/** 物料描述 */
@Excel(name = "物料描述")
private String wlms;
/** 计量单位 */
@Excel(name = "计量单位")
private String jldw;
/** 合同数量 */
@Excel(name = "合同数量")
private String htsl;
/** 计划交货数量 */
@Excel(name = "计划交货数量")
private String jhjhsl;
/** 计划交货批次 */
@Excel(name = "计划交货批次")
private String jhjhpc;
/** 计划交货金额(含税) */
@Excel(name = "计划交货金额", readConverterExp = "含=税")
private String jhjhje;
/** 实际交货数量 */
@Excel(name = "实际交货数量")
private String sjjhsl;
/** 供应计划状态 */
@Excel(name = "供应计划状态")
private String gyjhzt;
/** 采购凭证类型 */
@Excel(name = "采购凭证类型")
private String cgpzlx;
/** 采购申请计划交货日期 */
@Excel(name = "采购申请计划交货日期")
private String jhjhrq;
/** 交货地点 */
@Excel(name = "交货地点")
private String jhdd;
/** 交货联系人 */
@Excel(name = "交货联系人")
private String jhlxr;
/** 联系方式 */
@Excel(name = "联系方式")
private String lxfs;
/** 传ECP标识 */
@Excel(name = "传ECP标识")
private String ecp;
/** 项目单位 */
@Excel(name = "项目单位")
private String xmdw;
/** 用于订单排序,数字越大,排序越靠前 */
@Excel(name = "用于订单排序,数字越大,排序越靠前")
private Long odr;
/** 采购订单行号 */
@Excel(name = "采购订单行号")
private String rcde;
/** 采购凭证 */
@Excel(name = "采购凭证")
private String cgpz;
/** 已入库-初始值 */
@Excel(name = "已入库-初始值")
private Long yrk;
/** 已出库-初始值 */
@Excel(name = "已出库-初始值")
private Long yck;
/** 状态0正常1关闭提醒 */
@Excel(name = "状态0正常1关闭提醒")
private Long ste;
/** 施工队 */
@Excel(name = "施工队")
private String tem;
/** 导入时间 */
@Excel(name = "导入时间")
private String intme;
/** 最后一次更新时间 */
@Excel(name = "最后一次更新时间")
private String updtme;
/** $column.columnComment */
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private Long rAmt;
/** $column.columnComment */
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private Long cAmt;
/** $column.columnComment */
@Excel(name = "${comment}", readConverterExp = "$column.readConverterExp()")
private String crtim;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setGcdm(String gcdm)
{
this.gcdm = gcdm;
}
public String getGcdm()
{
return gcdm;
}
public void setGcms(String gcms)
{
this.gcms = gcms;
}
public String getGcms()
{
return gcms;
}
public void setZbpc(String zbpc)
{
this.zbpc = zbpc;
}
public String getZbpc()
{
return zbpc;
}
public void setZbpcmc(String zbpcmc)
{
this.zbpcmc = zbpcmc;
}
public String getZbpcmc()
{
return zbpcmc;
}
public void setSxrq(String sxrq)
{
this.sxrq = sxrq;
}
public String getSxrq()
{
return sxrq;
}
public void setQdrq(String qdrq)
{
this.qdrq = qdrq;
}
public String getQdrq()
{
return qdrq;
}
public void setHtbh(String htbh)
{
this.htbh = htbh;
}
public String getHtbh()
{
return htbh;
}
public void setGyjhbh(String gyjhbh)
{
this.gyjhbh = gyjhbh;
}
public String getGyjhbh()
{
return gyjhbh;
}
public void setGcbh(String gcbh)
{
this.gcbh = gcbh;
}
public String getGcbh()
{
return gcbh;
}
public void setXmms(String xmms)
{
this.xmms = xmms;
}
public String getXmms()
{
return xmms;
}
public void setGysbm(String gysbm)
{
this.gysbm = gysbm;
}
public String getGysbm()
{
return gysbm;
}
public void setGysmc(String gysmc)
{
this.gysmc = gysmc;
}
public String getGysmc()
{
return gysmc;
}
public void setCgddh(String cgddh)
{
this.cgddh = cgddh;
}
public String getCgddh()
{
return cgddh;
}
public void setHxmh(String hxmh)
{
this.hxmh = hxmh;
}
public String getHxmh()
{
return hxmh;
}
public void setHtjhq(String htjhq)
{
this.htjhq = htjhq;
}
public String getHtjhq()
{
return htjhq;
}
public void setQdjhq(String qdjhq)
{
this.qdjhq = qdjhq;
}
public String getQdjhq()
{
return qdjhq;
}
public void setSjjhq(String sjjhq)
{
this.sjjhq = sjjhq;
}
public String getSjjhq()
{
return sjjhq;
}
public void setWlh(String wlh)
{
this.wlh = wlh;
}
public String getWlh()
{
return wlh;
}
public void setWlms(String wlms)
{
this.wlms = wlms;
}
public String getWlms()
{
return wlms;
}
public void setJldw(String jldw)
{
this.jldw = jldw;
}
public String getJldw()
{
return jldw;
}
public void setHtsl(String htsl)
{
this.htsl = htsl;
}
public String getHtsl()
{
return htsl;
}
public void setJhjhsl(String jhjhsl)
{
this.jhjhsl = jhjhsl;
}
public String getJhjhsl()
{
return jhjhsl;
}
public void setJhjhpc(String jhjhpc)
{
this.jhjhpc = jhjhpc;
}
public String getJhjhpc()
{
return jhjhpc;
}
public void setJhjhje(String jhjhje)
{
this.jhjhje = jhjhje;
}
public String getJhjhje()
{
return jhjhje;
}
public void setSjjhsl(String sjjhsl)
{
this.sjjhsl = sjjhsl;
}
public String getSjjhsl()
{
return sjjhsl;
}
public void setGyjhzt(String gyjhzt)
{
this.gyjhzt = gyjhzt;
}
public String getGyjhzt()
{
return gyjhzt;
}
public void setCgpzlx(String cgpzlx)
{
this.cgpzlx = cgpzlx;
}
public String getCgpzlx()
{
return cgpzlx;
}
public void setJhjhrq(String jhjhrq)
{
this.jhjhrq = jhjhrq;
}
public String getJhjhrq()
{
return jhjhrq;
}
public void setJhdd(String jhdd)
{
this.jhdd = jhdd;
}
public String getJhdd()
{
return jhdd;
}
public void setJhlxr(String jhlxr)
{
this.jhlxr = jhlxr;
}
public String getJhlxr()
{
return jhlxr;
}
public void setLxfs(String lxfs)
{
this.lxfs = lxfs;
}
public String getLxfs()
{
return lxfs;
}
public void setEcp(String ecp)
{
this.ecp = ecp;
}
public String getEcp()
{
return ecp;
}
public void setXmdw(String xmdw)
{
this.xmdw = xmdw;
}
public String getXmdw()
{
return xmdw;
}
public void setOdr(Long odr)
{
this.odr = odr;
}
public Long getOdr()
{
return odr;
}
public void setRcde(String rcde)
{
this.rcde = rcde;
}
public String getRcde()
{
return rcde;
}
public void setCgpz(String cgpz)
{
this.cgpz = cgpz;
}
public String getCgpz()
{
return cgpz;
}
public void setYrk(Long yrk)
{
this.yrk = yrk;
}
public Long getYrk()
{
return yrk;
}
public void setYck(Long yck)
{
this.yck = yck;
}
public Long getYck()
{
return yck;
}
public void setSte(Long ste)
{
this.ste = ste;
}
public Long getSte()
{
return ste;
}
public void setTem(String tem)
{
this.tem = tem;
}
public String getTem()
{
return tem;
}
public void setIntme(String intme)
{
this.intme = intme;
}
public String getIntme()
{
return intme;
}
public void setUpdtme(String updtme)
{
this.updtme = updtme;
}
public String getUpdtme()
{
return updtme;
}
public void setrAmt(Long rAmt)
{
this.rAmt = rAmt;
}
public Long getrAmt()
{
return rAmt;
}
public void setcAmt(Long cAmt)
{
this.cAmt = cAmt;
}
public Long getcAmt()
{
return cAmt;
}
public void setCrtim(String crtim)
{
this.crtim = crtim;
}
public String getCrtim()
{
return crtim;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("gcdm", getGcdm())
.append("gcms", getGcms())
.append("zbpc", getZbpc())
.append("zbpcmc", getZbpcmc())
.append("sxrq", getSxrq())
.append("qdrq", getQdrq())
.append("htbh", getHtbh())
.append("gyjhbh", getGyjhbh())
.append("gcbh", getGcbh())
.append("xmms", getXmms())
.append("gysbm", getGysbm())
.append("gysmc", getGysmc())
.append("cgddh", getCgddh())
.append("hxmh", getHxmh())
.append("htjhq", getHtjhq())
.append("qdjhq", getQdjhq())
.append("sjjhq", getSjjhq())
.append("wlh", getWlh())
.append("wlms", getWlms())
.append("jldw", getJldw())
.append("htsl", getHtsl())
.append("jhjhsl", getJhjhsl())
.append("jhjhpc", getJhjhpc())
.append("jhjhje", getJhjhje())
.append("sjjhsl", getSjjhsl())
.append("gyjhzt", getGyjhzt())
.append("cgpzlx", getCgpzlx())
.append("jhjhrq", getJhjhrq())
.append("jhdd", getJhdd())
.append("jhlxr", getJhlxr())
.append("lxfs", getLxfs())
.append("ecp", getEcp())
.append("xmdw", getXmdw())
.append("odr", getOdr())
.append("rcde", getRcde())
.append("cgpz", getCgpz())
.append("yrk", getYrk())
.append("yck", getYck())
.append("ste", getSte())
.append("tem", getTem())
.append("intme", getIntme())
.append("updtme", getUpdtme())
.append("rAmt", getrAmt())
.append("cAmt", getcAmt())
.append("crtim", getCrtim())
.toString();
}
}

View File

@@ -1,20 +0,0 @@
package com.zg.project.Inventory.Visualization.domain.dto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.Max;
import javax.validation.constraints.Min;
@Data
public class QueryDTO {
@ApiModelProperty("页码从1开始")
@Min(value = 1, message = "页码最小为1")
private Integer pageNum = 1;
@ApiModelProperty("每页条数")
@Min(value = 1, message = "每页条数最小为1")
@Max(value = 100, message = "每页条数最大为100")
private Integer pageSize = 10;
}

View File

@@ -1,55 +0,0 @@
package com.zg.project.Inventory.Visualization.domain.vo;
import lombok.Data;
import java.math.BigDecimal;
@Data
public class OdtlVO {
// odtl 表字段
private String aamt;
private String bcde;
private Long sid;
// rdtl 表字段
private String mid;
private String berpid;
private String bdesPro;
private String bprf;
private String mrk;
private Integer ste;
private String prc;
private String bth;
private String bgys;
private String fycde1;
private String fycde2;
// rcp 表字段
private Long rid;
private String cerpid;
private String cdesPro;
private Integer bnum;
private String tpe;
private String usr;
private String nme;
private String tme;
private String cde;
private String tnme;
private String ptme;
private String tpnme;
private String cgy;
private String wtpe;
private String wh;
private String ctme;
// mtd 表字段
private String desMat;
private String unt;
// sod 表字段
private String smid;
private String sbnum;
private String spcde;
private String egys;
private String smrk;
}

View File

@@ -1,65 +0,0 @@
package com.zg.project.Inventory.Visualization.mapper;
import java.util.List;
import com.zg.project.Inventory.Visualization.domain.Odtl;
import com.zg.project.Inventory.Visualization.domain.vo.OdtlVO;
/**
* 借料出库 明细Mapper接口
*
* @author zg
* @date 2025-05-09
*/
public interface OdtlMapper
{
/**
* 查询借料出库 明细
*
* @param Id 借料出库 明细主键
* @return 借料出库 明细
*/
public Odtl selectOdtlById(Long Id);
/**
* 查询借料出库 明细列表
*
* @param odtl 借料出库 明细
* @return 借料出库 明细集合
*/
public List<Odtl> selectOdtlList(Odtl odtl);
/**
* 新增借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
public int insertOdtl(Odtl odtl);
/**
* 修改借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
public int updateOdtl(Odtl odtl);
/**
* 删除借料出库 明细
*
* @param Id 借料出库 明细主键
* @return 结果
*/
public int deleteOdtlById(Long Id);
/**
* 批量删除借料出库 明细
*
* @param Ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteOdtlByIds(Long[] Ids);
List<OdtlVO> queryAll();
}

View File

@@ -1,64 +0,0 @@
package com.zg.project.Inventory.Visualization.mapper;
import java.util.List;
import com.zg.project.Inventory.Visualization.domain.Pln;
/**
* 计划履约Mapper接口
*
* @author zg
* @date 2025-05-09
*/
public interface PlnMapper
{
/**
* 查询计划履约
*
* @param id 计划履约主键
* @return 计划履约
*/
public Pln selectPlnById(Long id);
/**
* 查询计划履约列表
*
* @param pln 计划履约
* @return 计划履约集合
*/
public List<Pln> selectPlnList(Pln pln);
/**
* 新增计划履约
*
* @param pln 计划履约
* @return 结果
*/
public int insertPln(Pln pln);
/**
* 修改计划履约
*
* @param pln 计划履约
* @return 结果
*/
public int updatePln(Pln pln);
/**
* 删除计划履约
*
* @param id 计划履约主键
* @return 结果
*/
public int deletePlnById(Long id);
/**
* 批量删除计划履约
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deletePlnByIds(Long[] ids);
List<Pln> getAll();
}

View File

@@ -1,65 +0,0 @@
package com.zg.project.Inventory.Visualization.service;
import java.util.List;
import com.zg.project.Inventory.Visualization.domain.Odtl;
import com.zg.project.Inventory.Visualization.domain.vo.OdtlVO;
/**
* 借料出库 明细Service接口
*
* @author zg
* @date 2025-05-09
*/
public interface IOdtlService
{
/**
* 查询借料出库 明细
*
* @param Id 借料出库 明细主键
* @return 借料出库 明细
*/
public Odtl selectOdtlById(Long Id);
/**
* 查询借料出库 明细列表
*
* @param odtl 借料出库 明细
* @return 借料出库 明细集合
*/
public List<Odtl> selectOdtlList(Odtl odtl);
/**
* 新增借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
public int insertOdtl(Odtl odtl);
/**
* 修改借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
public int updateOdtl(Odtl odtl);
/**
* 批量删除借料出库 明细
*
* @param Ids 需要删除的借料出库 明细主键集合
* @return 结果
*/
public int deleteOdtlByIds(Long[] Ids);
/**
* 删除借料出库 明细信息
*
* @param Id 借料出库 明细主键
* @return 结果
*/
public int deleteOdtlById(Long Id);
List<OdtlVO> queryAll();
}

View File

@@ -1,66 +0,0 @@
package com.zg.project.Inventory.Visualization.service;
import java.util.List;
import java.util.Map;
import com.zg.project.Inventory.Visualization.domain.Pln;
/**
* 计划履约Service接口
*
* @author zg
* @date 2025-05-09
*/
public interface IPlnService
{
/**
* 查询计划履约
*
* @param id 计划履约主键
* @return 计划履约
*/
public Pln selectPlnById(Long id);
/**
* 查询计划履约列表
*
* @param pln 计划履约
* @return 计划履约集合
*/
public List<Pln> selectPlnList(Pln pln);
/**
* 新增计划履约
*
* @param pln 计划履约
* @return 结果
*/
public int insertPln(Pln pln);
/**
* 修改计划履约
*
* @param pln 计划履约
* @return 结果
*/
public int updatePln(Pln pln);
/**
* 批量删除计划履约
*
* @param ids 需要删除的计划履约主键集合
* @return 结果
*/
public int deletePlnByIds(Long[] ids);
/**
* 删除计划履约信息
*
* @param id 计划履约主键
* @return 结果
*/
public int deletePlnById(Long id);
Map<String, Object> getAll();
}

View File

@@ -1,100 +0,0 @@
package com.zg.project.Inventory.Visualization.service.impl;
import java.util.List;
import com.zg.project.Inventory.Visualization.domain.vo.OdtlVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zg.project.Inventory.Visualization.mapper.OdtlMapper;
import com.zg.project.Inventory.Visualization.domain.Odtl;
import com.zg.project.Inventory.Visualization.service.IOdtlService;
/**
* 借料出库 明细Service业务层处理
*
* @author zg
* @date 2025-05-09
*/
@Service
public class OdtlServiceImpl implements IOdtlService
{
@Autowired
private OdtlMapper odtlMapper;
/**
* 查询借料出库 明细
*
* @param Id 借料出库 明细主键
* @return 借料出库 明细
*/
@Override
public Odtl selectOdtlById(Long Id)
{
return odtlMapper.selectOdtlById(Id);
}
/**
* 查询借料出库 明细列表
*
* @param odtl 借料出库 明细
* @return 借料出库 明细
*/
@Override
public List<Odtl> selectOdtlList(Odtl odtl)
{
return odtlMapper.selectOdtlList(odtl);
}
/**
* 新增借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
@Override
public int insertOdtl(Odtl odtl)
{
return odtlMapper.insertOdtl(odtl);
}
/**
* 修改借料出库 明细
*
* @param odtl 借料出库 明细
* @return 结果
*/
@Override
public int updateOdtl(Odtl odtl)
{
return odtlMapper.updateOdtl(odtl);
}
/**
* 批量删除借料出库 明细
*
* @param Ids 需要删除的借料出库 明细主键
* @return 结果
*/
@Override
public int deleteOdtlByIds(Long[] Ids)
{
return odtlMapper.deleteOdtlByIds(Ids);
}
/**
* 删除借料出库 明细信息
*
* @param Id 借料出库 明细主键
* @return 结果
*/
@Override
public int deleteOdtlById(Long Id)
{
return odtlMapper.deleteOdtlById(Id);
}
@Override
public List<OdtlVO> queryAll() {
return odtlMapper.queryAll();
}
}

View File

@@ -1,137 +0,0 @@
package com.zg.project.Inventory.Visualization.service.impl;
import java.util.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zg.project.Inventory.Visualization.mapper.PlnMapper;
import com.zg.project.Inventory.Visualization.domain.Pln;
import com.zg.project.Inventory.Visualization.service.IPlnService;
/**
* 计划履约Service业务层处理
*
* @author zg
* @date 2025-05-09
*/
@Service
public class PlnServiceImpl implements IPlnService
{
@Autowired
private PlnMapper plnMapper;
/**
* 查询计划履约
*
* @param id 计划履约主键
* @return 计划履约
*/
@Override
public Pln selectPlnById(Long id)
{
return plnMapper.selectPlnById(id);
}
/**
* 查询计划履约列表
*
* @param pln 计划履约
* @return 计划履约
*/
@Override
public List<Pln> selectPlnList(Pln pln)
{
return plnMapper.selectPlnList(pln);
}
/**
* 新增计划履约
*
* @param pln 计划履约
* @return 结果
*/
@Override
public int insertPln(Pln pln)
{
return plnMapper.insertPln(pln);
}
/**
* 修改计划履约
*
* @param pln 计划履约
* @return 结果
*/
@Override
public int updatePln(Pln pln)
{
return plnMapper.updatePln(pln);
}
/**
* 批量删除计划履约
*
* @param ids 需要删除的计划履约主键
* @return 结果
*/
@Override
public int deletePlnByIds(Long[] ids)
{
return plnMapper.deletePlnByIds(ids);
}
/**
* 删除计划履约信息
*
* @param id 计划履约主键
* @return 结果
*/
@Override
public int deletePlnById(Long id)
{
return plnMapper.deletePlnById(id);
}
@Override
public Map<String, Object> getAll() {
List<Pln> list = plnMapper.getAll();
Map<String, Object> result = new HashMap<>();
// 用来存储每月统计信息的列表
List<Map<String, Object>> monthStatsList = new ArrayList<>();
Map<String, Map<String, Object>> monthTempMap = new LinkedHashMap<>();
for (Pln p : list) {
String month = p.getIntme() != null && p.getIntme().length() >= 7 ? p.getIntme().substring(0, 7) : "未知";
Map<String, Object> m = monthTempMap.computeIfAbsent(month, k -> {
Map<String, Object> map = new HashMap<>();
map.put("month", k);
map.put("count", 0);
map.put("htsl", 0.0);
map.put("jhjhsl", 0.0);
map.put("jhjhje", 0.0);
return map;
});
m.put("count", (int) m.get("count") + 1);
m.put("htsl", (double) m.get("htsl") + toDouble(p.getHtsl()));
m.put("jhjhsl", (double) m.get("jhjhsl") + toDouble(p.getJhjhsl()));
m.put("jhjhje", (double) m.get("jhjhje") + toDouble(p.getJhjhje()));
}
// 转成 list 结构返回
monthStatsList.addAll(monthTempMap.values());
result.put("monthStats", monthStatsList);
return result;
}
private double toDouble(String val) {
try {
return val == null ? 0.0 : Double.parseDouble(val.trim());
} catch (Exception e) {
return 0.0;
}
}
}

View File

@@ -0,0 +1,218 @@
package com.zg.project.Inventory.domain.entity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.zg.framework.aspectj.lang.annotation.Excel;
import com.zg.framework.web.domain.BaseEntity;
/**
* 盘点任务对象 inventory_task
*
* @author zg
* @date 2025-06-16
*/
public class InventoryTask extends BaseEntity
{
private static final long serialVersionUID = 1L;
/** 主键ID */
private Long id;
/** 任务名称 */
@Excel(name = "任务名称")
private String taskName;
/** 仓库ID */
@Excel(name = "仓库ID")
private String warehouseId;
/** 场景ID */
@Excel(name = "场景ID")
private String sceneId;
/** 执行人用户ID */
@Excel(name = "执行人用户ID")
private Long userId;
/** 要求完成时间 */
@Excel(name = "要求完成时间")
private String requireTime;
/** 任务状态0待执行1已完成2已超时 */
@Excel(name = "任务状态", readConverterExp = "0=待执行1已完成2已超时")
private String status;
/** 任务类型0手持盘点1自动盘点 */
@Excel(name = "任务类型", readConverterExp = "0=手持盘点1自动盘点")
private String taskType;
/** 创建人 */
@Excel(name = "创建人")
private String createdBy;
/** 创建时间 */
@Excel(name = "创建时间")
private String createdAt;
/** 修改人 */
@Excel(name = "修改人")
private String updatedBy;
/** 修改时间 */
@Excel(name = "修改时间")
private String updatedAt;
/** 逻辑删除标志0正常 1删除 */
@Excel(name = "逻辑删除标志", readConverterExp = "0=正常,1=删除")
private String isDelete;
public void setId(Long id)
{
this.id = id;
}
public Long getId()
{
return id;
}
public void setTaskName(String taskName)
{
this.taskName = taskName;
}
public String getTaskName()
{
return taskName;
}
public void setWarehouseId(String warehouseId)
{
this.warehouseId = warehouseId;
}
public String getWarehouseId()
{
return warehouseId;
}
public void setSceneId(String sceneId)
{
this.sceneId = sceneId;
}
public String getSceneId()
{
return sceneId;
}
public void setUserId(Long userId)
{
this.userId = userId;
}
public Long getUserId()
{
return userId;
}
public void setRequireTime(String requireTime)
{
this.requireTime = requireTime;
}
public String getRequireTime()
{
return requireTime;
}
public void setStatus(String status)
{
this.status = status;
}
public String getStatus()
{
return status;
}
public void setTaskType(String taskType)
{
this.taskType = taskType;
}
public String getTaskType()
{
return taskType;
}
public void setCreatedBy(String createdBy)
{
this.createdBy = createdBy;
}
public String getCreatedBy()
{
return createdBy;
}
public void setCreatedAt(String createdAt)
{
this.createdAt = createdAt;
}
public String getCreatedAt()
{
return createdAt;
}
public void setUpdatedBy(String updatedBy)
{
this.updatedBy = updatedBy;
}
public String getUpdatedBy()
{
return updatedBy;
}
public void setUpdatedAt(String updatedAt)
{
this.updatedAt = updatedAt;
}
public String getUpdatedAt()
{
return updatedAt;
}
public void setIsDelete(String isDelete)
{
this.isDelete = isDelete;
}
public String getIsDelete()
{
return isDelete;
}
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("taskName", getTaskName())
.append("warehouseId", getWarehouseId())
.append("sceneId", getSceneId())
.append("userId", getUserId())
.append("requireTime", getRequireTime())
.append("status", getStatus())
.append("taskType", getTaskType())
.append("remark", getRemark())
.append("createdBy", getCreatedBy())
.append("createdAt", getCreatedAt())
.append("updatedBy", getUpdatedBy())
.append("updatedAt", getUpdatedAt())
.append("isDelete", getIsDelete())
.toString();
}
}

View File

@@ -1,20 +1,20 @@
package com.zg.project.information.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.zg.framework.aspectj.lang.annotation.Excel;
import com.zg.framework.web.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import java.util.Date;
/**
* 出库类型对象 stock_out_type
*
*
* @author zg
* @date 2025-06-09
*/
public class StockOutType extends BaseEntity
{
public class StockOutType extends BaseEntity {
private static final long serialVersionUID = 1L;
/** 主键ID */
@@ -22,19 +22,19 @@ public class StockOutType extends BaseEntity
/** 出库类型名称 */
@Excel(name = "出库类型名称")
private String ckTypeName;
private String typeName;
/** 出库类型编号 */
@Excel(name = "出库类型编号")
private String ckTypeCode;
private String typeCode;
/** 创建人 */
@Excel(name = "创建人")
private String createdBy;
/** 创建时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date createdAt;
/** 修改人 */
@@ -42,105 +42,84 @@ public class StockOutType extends BaseEntity
private String updatedBy;
/** 修改时间 */
@JsonFormat(pattern = "yyyy-MM-dd")
@Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@Excel(name = "修改时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
private Date updatedAt;
/** 是否删除0正常 1删除 */
@Excel(name = "是否删除", readConverterExp = "0=正常,1=删除")
private String isDelete;
public void setId(Long id)
{
// ===== Getter / Setter =====
public void setId(Long id) {
this.id = id;
}
public Long getId()
{
public Long getId() {
return id;
}
public void setCkTypeName(String ckTypeName)
{
this.ckTypeName = ckTypeName;
public void setTypeName(String typeName) {
this.typeName = typeName;
}
public String getTypeName() {
return typeName;
}
public String getCkTypeName()
{
return ckTypeName;
public void setTypeCode(String typeCode) {
this.typeCode = typeCode;
}
public String getTypeCode() {
return typeCode;
}
public void setCkTypeCode(String ckTypeCode)
{
this.ckTypeCode = ckTypeCode;
}
public String getCkTypeCode()
{
return ckTypeCode;
}
public void setCreatedBy(String createdBy)
{
public void setCreatedBy(String createdBy) {
this.createdBy = createdBy;
}
public String getCreatedBy()
{
public String getCreatedBy() {
return createdBy;
}
public void setCreatedAt(Date createdAt)
{
public void setCreatedAt(Date createdAt) {
this.createdAt = createdAt;
}
public Date getCreatedAt()
{
public Date getCreatedAt() {
return createdAt;
}
public void setUpdatedBy(String updatedBy)
{
public void setUpdatedBy(String updatedBy) {
this.updatedBy = updatedBy;
}
public String getUpdatedBy()
{
public String getUpdatedBy() {
return updatedBy;
}
public void setUpdatedAt(Date updatedAt)
{
public void setUpdatedAt(Date updatedAt) {
this.updatedAt = updatedAt;
}
public Date getUpdatedAt()
{
public Date getUpdatedAt() {
return updatedAt;
}
public void setIsDelete(String isDelete)
{
public void setIsDelete(String isDelete) {
this.isDelete = isDelete;
}
public String getIsDelete()
{
public String getIsDelete() {
return isDelete;
}
// ===== toString =====
@Override
public String toString() {
return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("ckTypeName", getCkTypeName())
.append("ckTypeCode", getCkTypeCode())
.append("createdBy", getCreatedBy())
.append("createdAt", getCreatedAt())
.append("updatedBy", getUpdatedBy())
.append("updatedAt", getUpdatedAt())
.append("isDelete", getIsDelete())
.toString();
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
.append("id", getId())
.append("typeName", getTypeName())
.append("typeCode", getTypeCode())
.append("createdBy", getCreatedBy())
.append("createdAt", getCreatedAt())
.append("updatedBy", getUpdatedBy())
.append("updatedAt", getUpdatedAt())
.append("isDelete", getIsDelete())
.toString();
}
}

View File

@@ -78,7 +78,7 @@ public class RkInfoController extends BaseController
}
/**
* 新增库存单据主
* 入库操作
*/
@PostMapping("/add")
@PreAuthorize("@ss.hasPermi('wisdom:stock:add')")
@@ -124,6 +124,25 @@ public class RkInfoController extends BaseController
return AjaxResult.success(result);
}
/**
* 撤销出库
* @param
* @return
*/
@PutMapping("/deleteByCkBillNo")
@PreAuthorize("@ss.hasPermi('wisdom:stock:deleteByBillNo')")
public AjaxResult deleteByCkBillNo(@RequestBody Map<String, String> body) {
String billNoCk = body.get("billNoCk");
if (billNoCk == null || billNoCk.trim().isEmpty()) {
return AjaxResult.error("参数错误缺少出库单据号billNoCk");
}
int result = rkInfoService.deleteByCkBillNo(billNoCk);
return result > 0
? AjaxResult.success("出库单据: " + billNoCk + " 撤销成功")
: AjaxResult.error("撤销失败,出库单据: " + billNoCk + " 不存在或已处理");
}
/**
* 出库操作
* @param

View File

@@ -26,4 +26,5 @@ public class StockOutDTO {
/** 出库列表 */
private List<StockOutItemDTO> ckList;
}

View File

@@ -105,4 +105,17 @@ public interface RkInfoMapper
* @param update
*/
void updateById(RkInfo update);
/**
* 根据出库单据号查询订单编号
* @param billNo
* @return
*/
List<String> selectSapNoByCkBillNo(String billNo);
/**
* 撤销出库
* @param billNoCk
*/
int cancelStockOut(String billNoCk);
}

View File

@@ -96,4 +96,10 @@ public interface IRkInfoService
* @return
*/
int batchOutStock(StockOutDTO dto);
/**
* 撤销出库
* @param
*/
int deleteByCkBillNo(String billNoCk);
}

View File

@@ -131,7 +131,7 @@ public class RkInfoServiceImpl implements IRkInfoService
}
// // ✅ 生成统一单据号
// String billNo = BillNoUtil.generateTodayBillNo("RK");
String billNo = BillNoUtil.generateTodayBillNo("RK");
//
// // ✅ 插入单据主表
// RkBill bill = new RkBill();
@@ -156,7 +156,7 @@ public class RkInfoServiceImpl implements IRkInfoService
entity.setCangku(dto.getCangku());
entity.setLihuoY(dto.getLihuoY());
// entity.setBillNo(billNo);
entity.setBillNo(billNo);
entity.setXj(item.getXj());
entity.setXmNo(item.getXmNo());
@@ -316,6 +316,17 @@ public class RkInfoServiceImpl implements IRkInfoService
rkInfoMapper.deleteByBillNo(billNo);
}
/**
* 撤销出库
* @param
*/
@Override
public int deleteByCkBillNo(String billNoCk) {
return rkInfoMapper.cancelStockOut(billNoCk);
}
/**
* 统计过期库存
* @return
@@ -338,6 +349,7 @@ public class RkInfoServiceImpl implements IRkInfoService
@Override
@Transactional(rollbackFor = Exception.class)
public int batchOutStock(StockOutDTO dto) {
if (dto.getCkList() == null || dto.getCkList().isEmpty()) {
throw new ServiceException("出库数据不能为空");
}
@@ -349,26 +361,25 @@ public class RkInfoServiceImpl implements IRkInfoService
String billNo = BillNoUtil.generateTodayBillNo("CK");
// Step 2: 构造出库主单 rk_bill
RkBill bill = new RkBill();
bill.setBillNo(billNo);
bill.setCkType(dto.getCkType());
bill.setCkTime(dto.getLyTime());
bill.setCkLihuoY(dto.getCkLihuoY());
bill.setTeamCode(dto.getTeamCode());
bill.setIsChuku("1");
bill.setIsDelete("0");
bill.setCreateBy(username);
bill.setCreateTime(now);
bill.setUpdateBy(username);
bill.setUpdateTime(now);
rkBillMapper.insertRkBill(bill);
// RkBill bill = new RkBill();
// bill.setBillNo(billNo);
// bill.setCkType(dto.getCkType());
// bill.setCkTime(dto.getLyTime());
// bill.setCkLihuoY(dto.getCkLihuoY());
// bill.setTeamCode(dto.getTeamCode());
// bill.setIsChuku("1");
// bill.setIsDelete("0");
// bill.setCreateBy(username);
// bill.setCreateTime(now);
// bill.setUpdateBy(username);
// bill.setUpdateTime(now);
//
// rkBillMapper.insertRkBill(bill);
// Step 3: 批量更新 rk_info出库状态 + 单号 + 单据ID
for (StockOutItemDTO item : dto.getCkList()) {
RkInfo update = new RkInfo();
update.setId(item.getId());
update.setBillNoCk(bill.getBillNo());
update.setBillNoCk(billNo);
update.setIsChuku("1");
update.setCkType(dto.getCkType());

View File

@@ -0,0 +1,115 @@
<?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.zg.project.Inventory.Task.mapper.InventoryTaskMapper">
<resultMap type="InventoryTask" id="InventoryTaskResult">
<result property="id" column="id" />
<result property="taskName" column="task_name" />
<result property="warehouseId" column="warehouse_id" />
<result property="sceneId" column="scene_id" />
<result property="userId" column="user_id" />
<result property="requireTime" column="require_time" />
<result property="status" column="status" />
<result property="taskType" column="task_type" />
<result property="remark" column="remark" />
<result property="createdBy" column="created_by" />
<result property="createdAt" column="created_at" />
<result property="updatedBy" column="updated_by" />
<result property="updatedAt" column="updated_at" />
<result property="isDelete" column="is_delete" />
</resultMap>
<sql id="selectInventoryTaskVo">
select id, task_name, warehouse_id, scene_id, user_id, require_time, status, task_type, remark, created_by, created_at, updated_by, updated_at, is_delete from inventory_task
</sql>
<select id="selectInventoryTaskList" parameterType="InventoryTask" resultMap="InventoryTaskResult">
<include refid="selectInventoryTaskVo"/>
<where>
<if test="taskName != null and taskName != ''"> and task_name like concat('%', #{taskName}, '%')</if>
<if test="warehouseId != null "> and warehouse_id = #{warehouseId}</if>
<if test="sceneId != null "> and scene_id = #{sceneId}</if>
<if test="userId != null "> and user_id = #{userId}</if>
<if test="requireTime != null and requireTime != ''"> and require_time = #{requireTime}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
<if test="taskType != null and taskType != ''"> and task_type = #{taskType}</if>
<if test="createdBy != null and createdBy != ''"> and created_by = #{createdBy}</if>
<if test="createdAt != null and createdAt != ''"> and created_at = #{createdAt}</if>
<if test="updatedBy != null and updatedBy != ''"> and updated_by = #{updatedBy}</if>
<if test="updatedAt != null and updatedAt != ''"> and updated_at = #{updatedAt}</if>
<if test="isDelete != null and isDelete != ''"> and is_delete = #{isDelete}</if>
</where>
</select>
<select id="selectInventoryTaskById" parameterType="Long" resultMap="InventoryTaskResult">
<include refid="selectInventoryTaskVo"/>
where id = #{id}
</select>
<insert id="insertInventoryTask" parameterType="InventoryTask" useGeneratedKeys="true" keyProperty="id">
insert into inventory_task
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="taskName != null and taskName != ''">task_name,</if>
<if test="warehouseId != null">warehouse_id,</if>
<if test="sceneId != null">scene_id,</if>
<if test="userId != null">user_id,</if>
<if test="requireTime != null and requireTime != ''">require_time,</if>
<if test="status != null">status,</if>
<if test="taskType != null and taskType != ''">task_type,</if>
<if test="remark != null">remark,</if>
<if test="createdBy != null">created_by,</if>
<if test="createdAt != null">created_at,</if>
<if test="updatedBy != null">updated_by,</if>
<if test="updatedAt != null">updated_at,</if>
<if test="isDelete != null">is_delete,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="taskName != null and taskName != ''">#{taskName},</if>
<if test="warehouseId != null">#{warehouseId},</if>
<if test="sceneId != null">#{sceneId},</if>
<if test="userId != null">#{userId},</if>
<if test="requireTime != null and requireTime != ''">#{requireTime},</if>
<if test="status != null">#{status},</if>
<if test="taskType != null and taskType != ''">#{taskType},</if>
<if test="remark != null">#{remark},</if>
<if test="createdBy != null">#{createdBy},</if>
<if test="createdAt != null">#{createdAt},</if>
<if test="updatedBy != null">#{updatedBy},</if>
<if test="updatedAt != null">#{updatedAt},</if>
<if test="isDelete != null">#{isDelete},</if>
</trim>
</insert>
<update id="updateInventoryTask" parameterType="InventoryTask">
update inventory_task
<trim prefix="SET" suffixOverrides=",">
<if test="taskName != null and taskName != ''">task_name = #{taskName},</if>
<if test="warehouseId != null">warehouse_id = #{warehouseId},</if>
<if test="sceneId != null">scene_id = #{sceneId},</if>
<if test="userId != null">user_id = #{userId},</if>
<if test="requireTime != null and requireTime != ''">require_time = #{requireTime},</if>
<if test="status != null">status = #{status},</if>
<if test="taskType != null and taskType != ''">task_type = #{taskType},</if>
<if test="remark != null">remark = #{remark},</if>
<if test="createdBy != null">created_by = #{createdBy},</if>
<if test="createdAt != null">created_at = #{createdAt},</if>
<if test="updatedBy != null">updated_by = #{updatedBy},</if>
<if test="updatedAt != null">updated_at = #{updatedAt},</if>
<if test="isDelete != null">is_delete = #{isDelete},</if>
</trim>
where id = #{id}
</update>
<delete id="deleteInventoryTaskById" parameterType="Long">
delete from inventory_task where id = #{id}
</delete>
<delete id="deleteInventoryTaskByIds" parameterType="String">
delete from inventory_task where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@@ -1,155 +0,0 @@
<?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.zg.project.Inventory.Visualization.mapper.OdtlMapper">
<resultMap type="Odtl" id="OdtlResult">
<result property="Id" column="Id" />
<result property="rdid" column="rdid" />
<result property="sid" column="sid" />
<result property="amt" column="amt" />
<result property="pcde" column="pcde" />
<result property="ste" column="ste" />
<result property="rfid" column="rfid" />
<result property="wsid" column="wsid" />
<result property="vlid" column="vlid" />
<result property="flg" column="flg" />
<result property="prf" column="prf" />
</resultMap>
<sql id="selectOdtlVo">
select Id, rdid, sid, amt, pcde, ste, rfid, wsid, vlid, flg, prf from odtl
</sql>
<select id="selectOdtlList" parameterType="Odtl" resultMap="OdtlResult">
<include refid="selectOdtlVo"/>
<where>
<if test="rdid != null "> and rdid = #{rdid}</if>
<if test="sid != null "> and sid = #{sid}</if>
<if test="amt != null "> and amt = #{amt}</if>
<if test="pcde != null and pcde != ''"> and pcde = #{pcde}</if>
<if test="ste != null and ste != ''"> and ste = #{ste}</if>
<if test="rfid != null and rfid != ''"> and rfid = #{rfid}</if>
<if test="wsid != null "> and wsid = #{wsid}</if>
<if test="vlid != null and vlid != ''"> and vlid = #{vlid}</if>
<if test="flg != null "> and flg = #{flg}</if>
<if test="prf != null and prf != ''"> and prf = #{prf}</if>
</where>
</select>
<select id="selectOdtlById" parameterType="Long" resultMap="OdtlResult">
<include refid="selectOdtlVo"/>
where Id = #{Id}
</select>
<select id="queryAll" resultType="com.zg.project.Inventory.Visualization.domain.vo.OdtlVO">
SELECT
A.amt AS aamt,
A.pcde AS bcde,
A.sid,
B.mid,
B.erpid AS berpid,
B.des_pro AS bdes_pro,
B.prf AS bprf,
B.mrk,
B.ste,
B.prc,
NULLIF(TRIM(B.bth), '') AS bth,
B.gys AS bgys,
B.fycde_1,
B.fycde_2,
C.id AS rid,
C.erpid AS cerpid,
C.des_pro AS cdes_pro,
C.bnum,
C.tpe,
C.usr,
C.nme,
C.tme,
C.cde,
C.tnme,
DATE_FORMAT(C.ptme, '%Y-%m') AS ptme,
C.tpnme,
C.cgy,
C.wtpe,
C.wh,
C.tme AS ctme,
D.des_mat,
D.unt,
E.mid AS smid,
E.bnum AS sbnum,
E.pcde AS spcde,
E.gys AS egys,
E.mrk AS smrk
FROM odtl A
LEFT JOIN rdtl B ON A.rdid = B.id
LEFT JOIN rcp C ON B.rid = C.id
LEFT JOIN mtd D ON B.mid = D.mid
LEFT JOIN sod E ON A.sid = E.id
WHERE B.ste = 1
AND C.del = 0
ORDER BY C.ptme DESC
</select>
<insert id="insertOdtl" parameterType="Odtl" useGeneratedKeys="true" keyProperty="Id">
insert into odtl
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="rdid != null">rdid,</if>
<if test="sid != null">sid,</if>
<if test="amt != null">amt,</if>
<if test="pcde != null">pcde,</if>
<if test="ste != null">ste,</if>
<if test="rfid != null">rfid,</if>
<if test="wsid != null">wsid,</if>
<if test="vlid != null">vlid,</if>
<if test="flg != null">flg,</if>
<if test="prf != null">prf,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="rdid != null">#{rdid},</if>
<if test="sid != null">#{sid},</if>
<if test="amt != null">#{amt},</if>
<if test="pcde != null">#{pcde},</if>
<if test="ste != null">#{ste},</if>
<if test="rfid != null">#{rfid},</if>
<if test="wsid != null">#{wsid},</if>
<if test="vlid != null">#{vlid},</if>
<if test="flg != null">#{flg},</if>
<if test="prf != null">#{prf},</if>
</trim>
</insert>
<update id="updateOdtl" parameterType="Odtl">
update odtl
<trim prefix="SET" suffixOverrides=",">
<if test="rdid != null">rdid = #{rdid},</if>
<if test="sid != null">sid = #{sid},</if>
<if test="amt != null">amt = #{amt},</if>
<if test="pcde != null">pcde = #{pcde},</if>
<if test="ste != null">ste = #{ste},</if>
<if test="rfid != null">rfid = #{rfid},</if>
<if test="wsid != null">wsid = #{wsid},</if>
<if test="vlid != null">vlid = #{vlid},</if>
<if test="flg != null">flg = #{flg},</if>
<if test="prf != null">prf = #{prf},</if>
</trim>
where Id = #{Id}
</update>
<delete id="deleteOdtlById" parameterType="Long">
delete from odtl where Id = #{Id}
</delete>
<delete id="deleteOdtlByIds" parameterType="String">
delete from odtl where Id in
<foreach item="Id" collection="array" open="(" separator="," close=")">
#{Id}
</foreach>
</delete>
</mapper>

View File

@@ -1,279 +0,0 @@
<?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.zg.project.Inventory.Visualization.mapper.PlnMapper">
<resultMap type="Pln" id="PlnResult">
<result property="id" column="id" />
<result property="gcdm" column="gcdm" />
<result property="gcms" column="gcms" />
<result property="zbpc" column="zbpc" />
<result property="zbpcmc" column="zbpcmc" />
<result property="sxrq" column="sxrq" />
<result property="qdrq" column="qdrq" />
<result property="htbh" column="htbh" />
<result property="gyjhbh" column="gyjhbh" />
<result property="gcbh" column="gcbh" />
<result property="xmms" column="xmms" />
<result property="gysbm" column="gysbm" />
<result property="gysmc" column="gysmc" />
<result property="cgddh" column="cgddh" />
<result property="hxmh" column="hxmh" />
<result property="htjhq" column="htjhq" />
<result property="qdjhq" column="qdjhq" />
<result property="sjjhq" column="sjjhq" />
<result property="wlh" column="wlh" />
<result property="wlms" column="wlms" />
<result property="jldw" column="jldw" />
<result property="htsl" column="htsl" />
<result property="jhjhsl" column="jhjhsl" />
<result property="jhjhpc" column="jhjhpc" />
<result property="jhjhje" column="jhjhje" />
<result property="sjjhsl" column="sjjhsl" />
<result property="gyjhzt" column="gyjhzt" />
<result property="cgpzlx" column="cgpzlx" />
<result property="jhjhrq" column="jhjhrq" />
<result property="jhdd" column="jhdd" />
<result property="jhlxr" column="jhlxr" />
<result property="lxfs" column="lxfs" />
<result property="ecp" column="ecp" />
<result property="xmdw" column="xmdw" />
<result property="odr" column="odr" />
<result property="rcde" column="rcde" />
<result property="cgpz" column="cgpz" />
<result property="yrk" column="yrk" />
<result property="yck" column="yck" />
<result property="ste" column="ste" />
<result property="tem" column="tem" />
<result property="intme" column="intme" />
<result property="updtme" column="updtme" />
<result property="rAmt" column="r_amt" />
<result property="cAmt" column="c_amt" />
<result property="crtim" column="crtim" />
</resultMap>
<sql id="selectPlnVo">
select id, gcdm, gcms, zbpc, zbpcmc, sxrq, qdrq, htbh, gyjhbh, gcbh, xmms, gysbm, gysmc, cgddh, hxmh, htjhq, qdjhq, sjjhq, wlh, wlms, jldw, htsl, jhjhsl, jhjhpc, jhjhje, sjjhsl, gyjhzt, cgpzlx, jhjhrq, jhdd, jhlxr, lxfs, ecp, xmdw, odr, rcde, cgpz, yrk, yck, ste, tem, intme, updtme, r_amt, c_amt, crtim from pln
</sql>
<select id="selectPlnList" parameterType="Pln" resultMap="PlnResult">
<include refid="selectPlnVo"/>
<where>
<if test="gcdm != null and gcdm != ''"> and gcdm = #{gcdm}</if>
<if test="gcms != null and gcms != ''"> and gcms = #{gcms}</if>
<if test="zbpc != null and zbpc != ''"> and zbpc = #{zbpc}</if>
<if test="zbpcmc != null and zbpcmc != ''"> and zbpcmc = #{zbpcmc}</if>
<if test="sxrq != null and sxrq != ''"> and sxrq = #{sxrq}</if>
<if test="qdrq != null and qdrq != ''"> and qdrq = #{qdrq}</if>
<if test="htbh != null and htbh != ''"> and htbh = #{htbh}</if>
<if test="gyjhbh != null and gyjhbh != ''"> and gyjhbh = #{gyjhbh}</if>
<if test="gcbh != null and gcbh != ''"> and gcbh = #{gcbh}</if>
<if test="xmms != null and xmms != ''"> and xmms = #{xmms}</if>
<if test="gysbm != null and gysbm != ''"> and gysbm = #{gysbm}</if>
<if test="gysmc != null and gysmc != ''"> and gysmc = #{gysmc}</if>
<if test="cgddh != null and cgddh != ''"> and cgddh = #{cgddh}</if>
<if test="hxmh != null and hxmh != ''"> and hxmh = #{hxmh}</if>
<if test="htjhq != null and htjhq != ''"> and htjhq = #{htjhq}</if>
<if test="qdjhq != null and qdjhq != ''"> and qdjhq = #{qdjhq}</if>
<if test="sjjhq != null and sjjhq != ''"> and sjjhq = #{sjjhq}</if>
<if test="wlh != null and wlh != ''"> and wlh = #{wlh}</if>
<if test="wlms != null and wlms != ''"> and wlms = #{wlms}</if>
<if test="jldw != null and jldw != ''"> and jldw = #{jldw}</if>
<if test="htsl != null and htsl != ''"> and htsl = #{htsl}</if>
<if test="jhjhsl != null and jhjhsl != ''"> and jhjhsl = #{jhjhsl}</if>
<if test="jhjhpc != null and jhjhpc != ''"> and jhjhpc = #{jhjhpc}</if>
<if test="jhjhje != null and jhjhje != ''"> and jhjhje = #{jhjhje}</if>
<if test="sjjhsl != null and sjjhsl != ''"> and sjjhsl = #{sjjhsl}</if>
<if test="gyjhzt != null and gyjhzt != ''"> and gyjhzt = #{gyjhzt}</if>
<if test="cgpzlx != null and cgpzlx != ''"> and cgpzlx = #{cgpzlx}</if>
<if test="jhjhrq != null and jhjhrq != ''"> and jhjhrq = #{jhjhrq}</if>
<if test="jhdd != null and jhdd != ''"> and jhdd = #{jhdd}</if>
<if test="jhlxr != null and jhlxr != ''"> and jhlxr = #{jhlxr}</if>
<if test="lxfs != null and lxfs != ''"> and lxfs = #{lxfs}</if>
<if test="ecp != null and ecp != ''"> and ecp = #{ecp}</if>
<if test="xmdw != null and xmdw != ''"> and xmdw = #{xmdw}</if>
<if test="odr != null "> and odr = #{odr}</if>
<if test="rcde != null and rcde != ''"> and rcde = #{rcde}</if>
<if test="cgpz != null and cgpz != ''"> and cgpz = #{cgpz}</if>
<if test="yrk != null "> and yrk = #{yrk}</if>
<if test="yck != null "> and yck = #{yck}</if>
<if test="ste != null "> and ste = #{ste}</if>
<if test="tem != null and tem != ''"> and tem = #{tem}</if>
<if test="intme != null and intme != ''"> and intme = #{intme}</if>
<if test="updtme != null and updtme != ''"> and updtme = #{updtme}</if>
<if test="rAmt != null "> and r_amt = #{rAmt}</if>
<if test="cAmt != null "> and c_amt = #{cAmt}</if>
<if test="crtim != null and crtim != ''"> and crtim = #{crtim}</if>
</where>
</select>
<select id="selectPlnById" parameterType="Long" resultMap="PlnResult">
<include refid="selectPlnVo"/>
where id = #{id}
</select>
<select id="getAll" resultType="com.zg.project.Inventory.Visualization.domain.Pln">
select * from pln
</select>
<insert id="insertPln" parameterType="Pln" useGeneratedKeys="true" keyProperty="id">
insert into pln
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="gcdm != null">gcdm,</if>
<if test="gcms != null">gcms,</if>
<if test="zbpc != null">zbpc,</if>
<if test="zbpcmc != null">zbpcmc,</if>
<if test="sxrq != null">sxrq,</if>
<if test="qdrq != null">qdrq,</if>
<if test="htbh != null">htbh,</if>
<if test="gyjhbh != null">gyjhbh,</if>
<if test="gcbh != null">gcbh,</if>
<if test="xmms != null">xmms,</if>
<if test="gysbm != null">gysbm,</if>
<if test="gysmc != null">gysmc,</if>
<if test="cgddh != null">cgddh,</if>
<if test="hxmh != null">hxmh,</if>
<if test="htjhq != null">htjhq,</if>
<if test="qdjhq != null">qdjhq,</if>
<if test="sjjhq != null">sjjhq,</if>
<if test="wlh != null">wlh,</if>
<if test="wlms != null">wlms,</if>
<if test="jldw != null">jldw,</if>
<if test="htsl != null">htsl,</if>
<if test="jhjhsl != null">jhjhsl,</if>
<if test="jhjhpc != null">jhjhpc,</if>
<if test="jhjhje != null">jhjhje,</if>
<if test="sjjhsl != null">sjjhsl,</if>
<if test="gyjhzt != null">gyjhzt,</if>
<if test="cgpzlx != null">cgpzlx,</if>
<if test="jhjhrq != null">jhjhrq,</if>
<if test="jhdd != null">jhdd,</if>
<if test="jhlxr != null">jhlxr,</if>
<if test="lxfs != null">lxfs,</if>
<if test="ecp != null">ecp,</if>
<if test="xmdw != null">xmdw,</if>
<if test="odr != null">odr,</if>
<if test="rcde != null">rcde,</if>
<if test="cgpz != null">cgpz,</if>
<if test="yrk != null">yrk,</if>
<if test="yck != null">yck,</if>
<if test="ste != null">ste,</if>
<if test="tem != null">tem,</if>
<if test="intme != null">intme,</if>
<if test="updtme != null">updtme,</if>
<if test="rAmt != null">r_amt,</if>
<if test="cAmt != null">c_amt,</if>
<if test="crtim != null">crtim,</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="gcdm != null">#{gcdm},</if>
<if test="gcms != null">#{gcms},</if>
<if test="zbpc != null">#{zbpc},</if>
<if test="zbpcmc != null">#{zbpcmc},</if>
<if test="sxrq != null">#{sxrq},</if>
<if test="qdrq != null">#{qdrq},</if>
<if test="htbh != null">#{htbh},</if>
<if test="gyjhbh != null">#{gyjhbh},</if>
<if test="gcbh != null">#{gcbh},</if>
<if test="xmms != null">#{xmms},</if>
<if test="gysbm != null">#{gysbm},</if>
<if test="gysmc != null">#{gysmc},</if>
<if test="cgddh != null">#{cgddh},</if>
<if test="hxmh != null">#{hxmh},</if>
<if test="htjhq != null">#{htjhq},</if>
<if test="qdjhq != null">#{qdjhq},</if>
<if test="sjjhq != null">#{sjjhq},</if>
<if test="wlh != null">#{wlh},</if>
<if test="wlms != null">#{wlms},</if>
<if test="jldw != null">#{jldw},</if>
<if test="htsl != null">#{htsl},</if>
<if test="jhjhsl != null">#{jhjhsl},</if>
<if test="jhjhpc != null">#{jhjhpc},</if>
<if test="jhjhje != null">#{jhjhje},</if>
<if test="sjjhsl != null">#{sjjhsl},</if>
<if test="gyjhzt != null">#{gyjhzt},</if>
<if test="cgpzlx != null">#{cgpzlx},</if>
<if test="jhjhrq != null">#{jhjhrq},</if>
<if test="jhdd != null">#{jhdd},</if>
<if test="jhlxr != null">#{jhlxr},</if>
<if test="lxfs != null">#{lxfs},</if>
<if test="ecp != null">#{ecp},</if>
<if test="xmdw != null">#{xmdw},</if>
<if test="odr != null">#{odr},</if>
<if test="rcde != null">#{rcde},</if>
<if test="cgpz != null">#{cgpz},</if>
<if test="yrk != null">#{yrk},</if>
<if test="yck != null">#{yck},</if>
<if test="ste != null">#{ste},</if>
<if test="tem != null">#{tem},</if>
<if test="intme != null">#{intme},</if>
<if test="updtme != null">#{updtme},</if>
<if test="rAmt != null">#{rAmt},</if>
<if test="cAmt != null">#{cAmt},</if>
<if test="crtim != null">#{crtim},</if>
</trim>
</insert>
<update id="updatePln" parameterType="Pln">
update pln
<trim prefix="SET" suffixOverrides=",">
<if test="gcdm != null">gcdm = #{gcdm},</if>
<if test="gcms != null">gcms = #{gcms},</if>
<if test="zbpc != null">zbpc = #{zbpc},</if>
<if test="zbpcmc != null">zbpcmc = #{zbpcmc},</if>
<if test="sxrq != null">sxrq = #{sxrq},</if>
<if test="qdrq != null">qdrq = #{qdrq},</if>
<if test="htbh != null">htbh = #{htbh},</if>
<if test="gyjhbh != null">gyjhbh = #{gyjhbh},</if>
<if test="gcbh != null">gcbh = #{gcbh},</if>
<if test="xmms != null">xmms = #{xmms},</if>
<if test="gysbm != null">gysbm = #{gysbm},</if>
<if test="gysmc != null">gysmc = #{gysmc},</if>
<if test="cgddh != null">cgddh = #{cgddh},</if>
<if test="hxmh != null">hxmh = #{hxmh},</if>
<if test="htjhq != null">htjhq = #{htjhq},</if>
<if test="qdjhq != null">qdjhq = #{qdjhq},</if>
<if test="sjjhq != null">sjjhq = #{sjjhq},</if>
<if test="wlh != null">wlh = #{wlh},</if>
<if test="wlms != null">wlms = #{wlms},</if>
<if test="jldw != null">jldw = #{jldw},</if>
<if test="htsl != null">htsl = #{htsl},</if>
<if test="jhjhsl != null">jhjhsl = #{jhjhsl},</if>
<if test="jhjhpc != null">jhjhpc = #{jhjhpc},</if>
<if test="jhjhje != null">jhjhje = #{jhjhje},</if>
<if test="sjjhsl != null">sjjhsl = #{sjjhsl},</if>
<if test="gyjhzt != null">gyjhzt = #{gyjhzt},</if>
<if test="cgpzlx != null">cgpzlx = #{cgpzlx},</if>
<if test="jhjhrq != null">jhjhrq = #{jhjhrq},</if>
<if test="jhdd != null">jhdd = #{jhdd},</if>
<if test="jhlxr != null">jhlxr = #{jhlxr},</if>
<if test="lxfs != null">lxfs = #{lxfs},</if>
<if test="ecp != null">ecp = #{ecp},</if>
<if test="xmdw != null">xmdw = #{xmdw},</if>
<if test="odr != null">odr = #{odr},</if>
<if test="rcde != null">rcde = #{rcde},</if>
<if test="cgpz != null">cgpz = #{cgpz},</if>
<if test="yrk != null">yrk = #{yrk},</if>
<if test="yck != null">yck = #{yck},</if>
<if test="ste != null">ste = #{ste},</if>
<if test="tem != null">tem = #{tem},</if>
<if test="intme != null">intme = #{intme},</if>
<if test="updtme != null">updtme = #{updtme},</if>
<if test="rAmt != null">r_amt = #{rAmt},</if>
<if test="cAmt != null">c_amt = #{cAmt},</if>
<if test="crtim != null">crtim = #{crtim},</if>
</trim>
where id = #{id}
</update>
<delete id="deletePlnById" parameterType="Long">
delete from pln where id = #{id}
</delete>
<delete id="deletePlnByIds" parameterType="String">
delete from pln where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>

View File

@@ -1,37 +1,52 @@
<?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">
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zg.project.information.mapper.StockOutTypeMapper">
<resultMap type="StockOutType" id="StockOutTypeResult">
<result property="id" column="id" />
<result property="ckTypeName" column="ck_type_name" />
<result property="ckTypeCode" column="ck_type_code" />
<result property="createdBy" column="created_by" />
<result property="createdAt" column="created_at" />
<result property="updatedBy" column="updated_by" />
<result property="updatedAt" column="updated_at" />
<result property="isDelete" column="is_delete" />
<result property="id" column="id"/>
<result property="typeName" column="type_name"/>
<result property="typeCode" column="type_code"/>
<result property="createdBy" column="created_by"/>
<result property="createdAt" column="created_at"/>
<result property="updatedBy" column="updated_by"/>
<result property="updatedAt" column="updated_at"/>
<result property="isDelete" column="is_delete"/>
</resultMap>
<sql id="selectStockOutTypeVo">
select id, ck_type_name, ck_type_code, created_by, created_at, updated_by, updated_at, is_delete from stock_out_type
select id, type_name, type_code, created_by, created_at, updated_by, updated_at, is_delete
from stock_out_type
</sql>
<select id="selectStockOutTypeList" parameterType="StockOutType" resultMap="StockOutTypeResult">
<include refid="selectStockOutTypeVo"/>
<where>
<if test="ckTypeName != null and ckTypeName != ''"> and ck_type_name like concat('%', #{ckTypeName}, '%')</if>
<if test="ckTypeCode != null and ckTypeCode != ''"> and ck_type_code = #{ckTypeCode}</if>
<if test="createdBy != null and createdBy != ''"> and created_by = #{createdBy}</if>
<if test="createdAt != null "> and created_at = #{createdAt}</if>
<if test="updatedBy != null and updatedBy != ''"> and updated_by = #{updatedBy}</if>
<if test="updatedAt != null "> and updated_at = #{updatedAt}</if>
<if test="isDelete != null and isDelete != ''"> and is_delete = #{isDelete}</if>
<where>
<if test="typeName != null and typeName != ''">
and type_name like concat('%', #{typeName}, '%')
</if>
<if test="typeCode != null and typeCode != ''">
and type_code = #{typeCode}
</if>
<if test="createdBy != null and createdBy != ''">
and created_by = #{createdBy}
</if>
<if test="createdAt != null">
and created_at = #{createdAt}
</if>
<if test="updatedBy != null and updatedBy != ''">
and updated_by = #{updatedBy}
</if>
<if test="updatedAt != null">
and updated_at = #{updatedAt}
</if>
<if test="isDelete != null and isDelete != ''">
and is_delete = #{isDelete}
</if>
</where>
</select>
<select id="selectStockOutTypeById" parameterType="Long" resultMap="StockOutTypeResult">
<include refid="selectStockOutTypeVo"/>
where id = #{id}
@@ -40,30 +55,30 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<insert id="insertStockOutType" parameterType="StockOutType" useGeneratedKeys="true" keyProperty="id">
insert into stock_out_type
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="ckTypeName != null and ckTypeName != ''">ck_type_name,</if>
<if test="ckTypeCode != null and ckTypeCode != ''">ck_type_code,</if>
<if test="typeName != null and typeName != ''">type_name,</if>
<if test="typeCode != null and typeCode != ''">type_code,</if>
<if test="createdBy != null">created_by,</if>
<if test="createdAt != null">created_at,</if>
<if test="updatedBy != null">updated_by,</if>
<if test="updatedAt != null">updated_at,</if>
<if test="isDelete != null">is_delete,</if>
</trim>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="ckTypeName != null and ckTypeName != ''">#{ckTypeName},</if>
<if test="ckTypeCode != null and ckTypeCode != ''">#{ckTypeCode},</if>
<if test="typeName != null and typeName != ''">#{typeName},</if>
<if test="typeCode != null and typeCode != ''">#{typeCode},</if>
<if test="createdBy != null">#{createdBy},</if>
<if test="createdAt != null">#{createdAt},</if>
<if test="updatedBy != null">#{updatedBy},</if>
<if test="updatedAt != null">#{updatedAt},</if>
<if test="isDelete != null">#{isDelete},</if>
</trim>
</trim>
</insert>
<update id="updateStockOutType" parameterType="StockOutType">
update stock_out_type
<trim prefix="SET" suffixOverrides=",">
<if test="ckTypeName != null and ckTypeName != ''">ck_type_name = #{ckTypeName},</if>
<if test="ckTypeCode != null and ckTypeCode != ''">ck_type_code = #{ckTypeCode},</if>
<if test="typeName != null and typeName != ''">type_name = #{typeName},</if>
<if test="typeCode != null and typeCode != ''">type_code = #{typeCode},</if>
<if test="createdBy != null">created_by = #{createdBy},</if>
<if test="createdAt != null">created_at = #{createdAt},</if>
<if test="updatedBy != null">updated_by = #{updatedBy},</if>
@@ -78,9 +93,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
</delete>
<delete id="deleteStockOutTypeByIds" parameterType="String">
delete from stock_out_type where id in
delete from stock_out_type where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
</mapper>
</mapper>

View File

@@ -13,6 +13,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<result property="lihuoY" column="lihuo_y" />
<result property="isChuku" column="is_chuku" />
<result property="billNo" column="bill_no"/>
<result property="billNoCk" column="bill_no_ck"/>
<result property="rkTypeName" column="rk_type_name"/>
<result property="wlTypeName" column="wl_type_name"/>
<result property="cangkuName" column="cangku_name"/>
@@ -54,11 +55,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
SELECT
ri.id,
ri.bill_no,
ri.bill_no_ck,
ri.rk_type, st.type_name AS rk_type_name,
ri.wl_type, mt.type_name AS wl_type_name,
ri.cangku, wh.warehouse_name AS cangku_name,
ri.rk_time, ri.lihuo_y, ri.is_chuku, ri.remark,
ri.ck_lihuo_y, ri.ck_type, sot.ck_type_name,
ri.ck_lihuo_y, ri.ck_type, sot.type_name AS ck_type_name,
ri.team_code, ct.team_name,
ri.ck_remark,
ri.ly_time,
@@ -71,7 +73,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN stock_in_type st ON ri.rk_type = st.type_code
LEFT JOIN material_type mt ON ri.wl_type = mt.type_code
LEFT JOIN warehouse_info wh ON ri.cangku = wh.warehouse_code
LEFT JOIN stock_out_type sot ON ri.ck_type = sot.ck_type_code
LEFT JOIN stock_out_type sot ON ri.ck_type = sot.type_code
LEFT JOIN construction_team ct ON ri.team_code = ct.team_code
</sql>
@@ -101,6 +103,20 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
DELETE FROM rk_info WHERE bill_no = #{billNo}
</delete>
<update id="cancelStockOut">
UPDATE rk_info
SET
is_chuku = '0',
bill_no_ck = NULL,
ck_lihuo_y = NULL,
ck_type = NULL,
team_code = NULL,
ly_time = NULL,
ck_remark = NULL,
update_time = NOW()
WHERE bill_no_ck = #{billNoCk}
</update>
<select id="selectRkInfoList" parameterType="RkInfo" resultMap="RkInfoResult">
<include refid="selectRkInfoVo"/>
<where>
@@ -108,7 +124,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="isChuku != null and isChuku != ''">
and is_chuku = #{isChuku}
</if>
<if test="keyword != null and keyword != ''">
and (
xm_no like concat('%', #{keyword}, '%')
@@ -119,19 +134,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
or gys_mc like concat('%', #{keyword}, '%')
or sap_no like concat('%', #{keyword}, '%')
or bill_no like concat('%', #{keyword}, '%')
or ck_type like concat('%', #{keyword}, '%')
or pcode like concat('%', #{keyword}, '%')
)
</if>
<if test="rkType != null and rkType != ''"> and rk_type = #{rkType}</if>
<if test="wlType != null and wlType != ''"> and wl_type = #{wlType}</if>
<if test="cangku != null and cangku != ''"> and cangku = #{cangku}</if>
<if test="rkTime != null "> and rk_time = #{rkTime}</if>
<if test="lihuoY != null and lihuoY != ''"> and lihuo_y = #{lihuoY}</if>
<if test="xj != null and xj != ''"> and xj = #{xj}</if>
<if test="billNo != null and billNo != ''">
and bill_no = #{billNo}
</if>
<if test="billNo != null and billNo != ''"> and bill_no = #{billNo}</if>
<if test="xmNo != null and xmNo != ''"> and xm_no = #{xmNo}</if>
<if test="xmMs != null and xmMs != ''"> and xm_ms = #{xmMs}</if>
<if test="wlNo != null and wlNo != ''"> and wl_no = #{wlNo}</if>
@@ -150,6 +163,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="lyTime != null"> and ri.ly_time = #{lyTime}</if>
<if test="trayCode != null and trayCode != ''"> and tray_code = #{trayCode}</if>
<if test="entityId != null and entityId != ''"> and entity_id = #{entityId}</if>
<if test="ckType != null and ckType != ''"> and ck_type = #{ckType}</if>
<if test="isDelete != null and isDelete != ''">
and ri.is_delete = #{isDelete}
</if>
@@ -157,6 +171,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
and ri.is_delete = 0
</if>
</where>
order by rk_time desc
</select>
<select id="selectRkInfoById" parameterType="Long" resultMap="RkInfoResult">
@@ -198,6 +215,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ORDER BY rk_time DESC
LIMIT #{limit}
</select>
<select id="selectSapNoByCkBillNo" resultType="java.lang.String">
SELECT DISTINCT sap_no FROM rk_info
WHERE bill_no = #{billNo} AND sap_no IS NOT NULL
</select>
<update id="updateRkInfo" parameterType="RkInfo">
update rk_info
@@ -230,7 +251,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="entityId != null">entity_id = #{entityId},</if>
<if test="ckLihuoY != null">ck_lihuo_y = #{ckLihuoY},</if>
<if test="ckType != null">ck_type = #{ckType},</if>
<if test="ckTypeName != null">ck_type_name = #{ckTypeName},</if>
<if test="sgdCode != null">sgd_code = #{sgdCode},</if>
<if test="sgdName != null">sgd_name = #{sgdName},</if>
<if test="lyTime != null">ly_time = #{lyTime},</if>
@@ -261,16 +281,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<update id="updateById" parameterType="RkInfo">
UPDATE rk_info
SET is_chuku = #{isChuku},
ck_remark = #{ckRemark},
ck_type = #{ckType},
ck_time = #{ckTime},
ck_lihuo_y = #{ckLihuoY},
team_code = #{teamCode},
update_by = #{updateBy},
update_time = #{updateTime}
<set>
<if test="isChuku != null">is_chuku = #{isChuku},</if>
<if test="ckRemark != null">ck_remark = #{ckRemark},</if>
<if test="ckType != null">ck_type = #{ckType},</if>
<if test="lyTime != null">ly_time = #{lyTime},</if>
<if test="ckLihuoY != null">ck_lihuo_y = #{ckLihuoY},</if>
<if test="teamCode != null">team_code = #{teamCode},</if>
<if test="billNoCk != null">bill_no_ck = #{billNoCk},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime}</if>
</set>
WHERE id = #{id}
</update>
</mapper>