Browse Source

采购入库

master
ruanqi 2 years ago
parent
commit
197623363a
  1. 144
      src/main/java/com/spring/modules/material/controller/IssureSoController.java
  2. 48
      src/main/java/com/spring/modules/material/dao/IssureSoMapper.java
  3. 220
      src/main/java/com/spring/modules/material/service/Impl/IssureSoServiceImpl.java
  4. 2
      src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java
  5. 38
      src/main/java/com/spring/modules/material/service/IssureSoService.java
  6. 130
      src/main/resources/mapper/material/IssureSoMapper.xml
  7. 2
      src/main/resources/mapper/material/PoReceiveMapper.xml

144
src/main/java/com/spring/modules/material/controller/IssureSoController.java

@ -0,0 +1,144 @@
package com.spring.modules.material.controller;
import com.spring.common.utils.PageUtils;
import com.spring.common.utils.R;
import com.spring.modules.material.data.*;
import com.spring.modules.material.service.IssureSoService;
import com.spring.modules.material.service.PoReceiveService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
@RequestMapping(value = "/issureSo")
public class IssureSoController {
@Autowired
private IssureSoService issureSoService;
/**
* @Description TODO
* @Title searchTransHeader
* @param data
* @author rq
* @date 2024/5/31 11:45
* @return R
* @throw
*/
@PostMapping(value="/searchTransHeader")
public R searchTransHeader(@RequestBody TransHeaderData data) {
PageUtils page = issureSoService.searchTransHeader(data);
return R.ok().put("page", page);
}
/**
* @Description TODO
* @Title searchTransDetail
* @param data
* @author rq
* @date 2024/5/31 15:23
* @return R
* @throw
*/
@PostMapping(value="/searchTransDetail")
public R searchTransDetail(@RequestBody TransHeaderData data){
List<TransDetailData> rows = issureSoService.searchTransDetail(data);
return R.ok().put("rows", rows);
}
@PostMapping(value="/searchTransDetailSub")
public R searchTransDetailSub(@RequestBody TransHeaderData data){
List<TransDetailSubData> rows = issureSoService.searchTransDetailSub(data);
return R.ok().put("rows", rows);
}
@PostMapping(value="/getWareHouseList")
public R getWareHouseList(@RequestBody WareHouseSearchOutData data){
List<WareHouseSearchOutData> rows = issureSoService.getWareHouseList(data);
return R.ok().put("rows", rows);
}
/**
* @Description 保存入库单抬头
* @Title saveTransHeaderData
* @param data
* @author rq
* @date 2024/5/31 17:37
* @return R
* @throw
*/
@PostMapping(value="/saveTransHeaderData")
public R saveTransHeaderData(@RequestBody TransHeaderData data) {
String result= issureSoService.saveTransHeaderData(data);
return R.ok().put("transNo",result);
}
/**
* @Description TODO
* @Title searchTransDetailAndSubCach
* @param data
* @author rq
* @date 2024/6/4 11:31
* @return R
* @throw
*/
@PostMapping(value="/searchTransDetailAndSubCach")
public R searchTransDetailAndSubCach(@RequestBody TransHeaderData data) {
TransHeaderData row= issureSoService.searchTransHeaderData(data);
List<TransDetailsubCachData> rows =issureSoService.searchTransDetailsubCachData(data);
return R.ok().put("row",row).put("rows",rows);
}
/**
* @Description 手工创建缓存卷
* @Title createNewCachRoll
* @param data
* @author rq
* @date 2024/6/4 14:16
* @return R
* @throw
*/
@PostMapping(value="/createNewCachRoll")
public R createNewCachRoll(@RequestBody TransDetailsubCachData data) {
issureSoService.createNewCachRoll(data);
return R.ok();
}
@PostMapping(value="/deleteSubCach")
public R deleteSubCach(@RequestBody TransDetailsubCachData data) {
issureSoService.deleteSubCach(data);
return R.ok();
}
/**
* @Description TODO
* @Title finalSaveTransHeaderDetail
* @param data
* @author rq
* @date 2024/6/4 15:48
* @return R
* @throw
*/
@PostMapping(value="/finalSaveTransHeaderDetail")
public R finalSaveTransHeaderDetail(@RequestBody TransHeaderData data) {
issureSoService.finalSaveTransHeaderDetail(data);
return R.ok();
}
/**
* @Description 删除入库主表
* @Title deleteTransHeaderData
* @param data
* @author rq
* @date 2024/6/5 14:55
* @return R
* @throw
*/
@PostMapping(value="/deleteTransHeaderData")
public R deleteTransHeaderData(@RequestBody TransHeaderData data) {
issureSoService.deleteTransHeaderData(data);
return R.ok();
}
}

48
src/main/java/com/spring/modules/material/dao/IssureSoMapper.java

@ -0,0 +1,48 @@
package com.spring.modules.material.dao;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.spring.modules.material.data.*;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import java.util.List;
@Mapper
@Repository
public interface IssureSoMapper {
IPage<TransHeaderData> searchTransHeader(Page<TransHeaderData> page, @Param("query") TransHeaderData data);
List<TransDetailData> searchTransDetail(TransHeaderData data);
List<TransDetailSubData> searchTransDetailSub(TransHeaderData data);
List<WareHouseSearchOutData> getWareHouseList(WareHouseSearchOutData inData);
TransHeaderData searchTransHeaderData(TransHeaderData data);
List<TransDetailsubCachData> searchTransDetailsubCachData(TransHeaderData inData);
void createNewCachRoll(TransDetailsubCachData data);
List<TransDetailData> getDetailDataByCach(TransHeaderData inData);
Double getNextTransHeaderSeqNo (TransHeaderData inData);
void saveTransDetailData(TransDetailData inData);
void batchInsertTransDetailSub( List<TransDetailSubData> inlist);
void deleteTransCach(TransHeaderData inData);
void deleteSubCach(TransDetailsubCachData inData);
void deleteTransHeaderData(TransHeaderData inData);
void updateTransHeader(TransHeaderData inData);
}

220
src/main/java/com/spring/modules/material/service/Impl/IssureSoServiceImpl.java

@ -0,0 +1,220 @@
package com.spring.modules.material.service.Impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.spring.common.utils.DateUtil;
import com.spring.common.utils.PageUtils;
import com.spring.modules.base.dao.NormalSearchMapper;
import com.spring.modules.base.entity.PartInformationEntity;
import com.spring.modules.base.service.TransNoControlService;
import com.spring.modules.material.dao.IssureSoMapper;
import com.spring.modules.material.data.*;
import com.spring.modules.material.entity.Supplier;
import com.spring.modules.material.service.IssureSoService;
import com.spring.modules.report.dao.ProcedureDao;
import com.spring.modules.sys.entity.SysUserEntity;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@Service
public class IssureSoServiceImpl implements IssureSoService {
@Autowired
private ProcedureDao procedureDao;
@Autowired
private NormalSearchMapper normalSearchMapper;
@Autowired
private IssureSoMapper issureSoMapper;
@Autowired
private TransNoControlService transNoControlService;
@Override
public PageUtils searchTransHeader(TransHeaderData data) {
IPage<TransHeaderData> resultList = this.issureSoMapper.searchTransHeader(new Page<TransHeaderData>(data.getPage(), data.getLimit()), data);
return new PageUtils(resultList);
}
@Override
public List<TransDetailData> searchTransDetail(TransHeaderData data){
return issureSoMapper.searchTransDetail(data);
}
@Override
public List<TransDetailSubData> searchTransDetailSub(TransHeaderData data){
return issureSoMapper.searchTransDetailSub(data);
}
@Override
public List<WareHouseSearchOutData> getWareHouseList(WareHouseSearchOutData inData){
return issureSoMapper.getWareHouseList(inData);
}
@Override
public String saveTransHeaderData(TransHeaderData inData){
if("0".equals(inData.getTransNo())){
// 公共参数
String site = inData.getSite();
String wareHouseId = inData.getWarehouseID();
String transTypeDb = "SI";
String transDate = DateUtil.getStringDate(inData.getTransDate(),"yyyy-MM-dd");
String userId = inData.getEnterBy();
String receiver = inData.getReceiver();
String partnerType = "";
String partnerID = "";
String remark="";
String orderNo=inData.getOrderRef1();
String projectID="";
List<Object> params = new ArrayList<>();
params.add(site);
params.add(wareHouseId);
params.add(transTypeDb);
params.add(transDate);
params.add(userId);
params.add(receiver);
params.add(partnerType);
params.add(partnerID);
params.add(remark);
params.add(orderNo);
params.add(projectID);
// 执行方法
List<Map<String, Object>> resultList = procedureDao.getProcedureData("LNJ_Create_TransHeader", params);
String code = String.valueOf(resultList.get(0).get("result_code"));
if ("400".equalsIgnoreCase(code)) {
String msg = String.valueOf(resultList.get(0).get("result_msg"));
throw new RuntimeException(msg);
}
return String.valueOf(resultList.get(0).get("result_msg"));
}else {
List<TransDetailData> detailList= issureSoMapper.searchTransDetail(inData);
if(detailList.size()>0){
throw new RuntimeException("发料单有明细记录无法修改");
}
List<TransDetailsubCachData> searchTransDetailsubCachData= issureSoMapper.searchTransDetailsubCachData(inData);
if(searchTransDetailsubCachData.size()>0){
throw new RuntimeException("发料单有扫描标签记录无法修改");
}
// if(inData.getPartnerID()!=null&&!"".equals(inData.getPartnerID())){
// Supplier checkSupplier=new Supplier();
// checkSupplier.setSite(inData.getSite());
// checkSupplier.setActive("Y");
// checkSupplier.setSupplierID(inData.getPartnerID());
// List<Supplier> checkSupplierList=normalSearchMapper.getSupplierListForSearch(checkSupplier);
// if(checkSupplierList.size()==0){
// throw new RuntimeException("供应商不可用或者不存在");
// }
// }
SysUserEntity sysUserEntity=new SysUserEntity();
sysUserEntity.setUsername(inData.getReceiver());
List<SysUserEntity> getUserListForSearch=normalSearchMapper.getUserListForSearch(sysUserEntity);
if(getUserListForSearch.size()==0){
throw new RuntimeException("经手人不可用或者不存在");
}
issureSoMapper.updateTransHeader(inData);
return inData.getTransNo();
}
}
@Override
public TransHeaderData searchTransHeaderData(TransHeaderData inData){
return issureSoMapper.searchTransHeaderData(inData);
}
@Override
public List<TransDetailsubCachData> searchTransDetailsubCachData(TransHeaderData inData){
return issureSoMapper.searchTransDetailsubCachData(inData);
}
@Override
@Transactional
public void createNewCachRoll(TransDetailsubCachData inData){
SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal();
PartInformationEntity newData=new PartInformationEntity();
newData.setPartNo(inData.getPartNo());
newData.setSite(inData.getSite());
newData.setActive("Y");
List<PartInformationEntity> checkPartNo=normalSearchMapper.getPartListForSearch(newData);
if(checkPartNo.size()==0){
throw new RuntimeException("物料不存在或者不在用");
}
for (int i = 0; i < inData.getRollNumber(); i++) {
String rollNo= transNoControlService.transNo(inData.getSite(), "RollNo");
inData.setRollNo(rollNo);
inData.setEnterBy(sysUserEntity.getUsername());
issureSoMapper.createNewCachRoll(inData);
}
}
@Override
public void deleteSubCach(TransDetailsubCachData inData){
issureSoMapper.deleteSubCach(inData);
}
@Override
public void deleteTransHeaderData(TransHeaderData inData){
List<TransDetailData> detailList= issureSoMapper.searchTransDetail(inData);
if(detailList.size()>0){
throw new RuntimeException("入库单有明细记录无法删除");
}
List<TransDetailsubCachData> searchTransDetailsubCachData= issureSoMapper.searchTransDetailsubCachData(inData);
if(searchTransDetailsubCachData.size()>0){
throw new RuntimeException("入库单有扫描标签记录无法删除");
}
issureSoMapper.deleteTransHeaderData(inData);
}
@Override
@Transactional
public void finalSaveTransHeaderDetail(TransHeaderData inData){
SysUserEntity sysUserEntity = (SysUserEntity) SecurityUtils.getSubject().getPrincipal();
String userName=sysUserEntity.getUsername();
inData.setEnterName(userName);
//
List<TransDetailData> transDetailData=issureSoMapper.getDetailDataByCach(inData);
if(transDetailData.size()==0){
throw new RuntimeException("没有缓存卷需要保存");
}
for (int i = 0; i < transDetailData.size(); i++) {
Double getNextTransHeaderSeqNo=issureSoMapper.getNextTransHeaderSeqNo(inData);
transDetailData.get(i).setItemNo(getNextTransHeaderSeqNo);
issureSoMapper.saveTransDetailData(transDetailData.get(i));
}
TransHeaderData getHeader= issureSoMapper.searchTransHeaderData(inData);
List<TransDetailsubCachData> subData=issureSoMapper.searchTransDetailsubCachData(inData);
List<TransDetailSubData> inList=new ArrayList<>();
for (int i = 0; i < transDetailData.size(); i++) {
Double seqNo=0.0;
for (int j = 0; j <subData.size() ; j++) {
if (transDetailData.get(i).getPartNo().equals(subData.get(j).getPartNo())&&
transDetailData.get(i).getLocationID().equals(subData.get(j).getLocationID())&&
transDetailData.get(i).getBatchNo().equals(subData.get(j).getBatchNo()) &&
transDetailData.get(i).getManufactureDate().equals(subData.get(j).getManufactureDate()) &&
transDetailData.get(i).getExpiredDate().equals(subData.get(j).getExpiredDate())){
seqNo=seqNo+1.0;
TransDetailSubData transDetailSubData=new TransDetailSubData();
transDetailSubData.setTransNo(transDetailData.get(i).getTransNo());
transDetailSubData.setSite(transDetailData.get(i).getSite());
transDetailSubData.setItemNo(transDetailData.get(i).getItemNo().floatValue());
transDetailSubData.setSeqNo(seqNo.floatValue());
transDetailSubData.setLocationID(transDetailData.get(i).getLocationID());
transDetailSubData.setBatchNo(transDetailData.get(i).getBatchNo());
transDetailSubData.setRollNo(subData.get(j).getRollNo());
transDetailSubData.setRollQty(subData.get(j).getRollQty());
transDetailSubData.setOrderRef1(getHeader.getOrderRef1());
inList.add(transDetailSubData);
}
}
}
issureSoMapper.batchInsertTransDetailSub(inList);
issureSoMapper.deleteTransCach(inData);
}
}

2
src/main/java/com/spring/modules/material/service/Impl/PoReceiveServiceImpl.java

@ -103,6 +103,7 @@ public class PoReceiveServiceImpl implements PoReceiveService {
if(searchTransDetailsubCachData.size()>0){ if(searchTransDetailsubCachData.size()>0){
throw new RuntimeException("入库单有扫描标签记录无法修改"); throw new RuntimeException("入库单有扫描标签记录无法修改");
} }
if(inData.getPartnerID()!=null&&!"".equals(inData.getPartnerID())){
Supplier checkSupplier=new Supplier(); Supplier checkSupplier=new Supplier();
checkSupplier.setSite(inData.getSite()); checkSupplier.setSite(inData.getSite());
checkSupplier.setActive("Y"); checkSupplier.setActive("Y");
@ -111,6 +112,7 @@ public class PoReceiveServiceImpl implements PoReceiveService {
if(checkSupplierList.size()==0){ if(checkSupplierList.size()==0){
throw new RuntimeException("供应商不可用或者不存在"); throw new RuntimeException("供应商不可用或者不存在");
} }
}
SysUserEntity sysUserEntity=new SysUserEntity(); SysUserEntity sysUserEntity=new SysUserEntity();
sysUserEntity.setUsername(inData.getReceiver()); sysUserEntity.setUsername(inData.getReceiver());
List<SysUserEntity> getUserListForSearch=normalSearchMapper.getUserListForSearch(sysUserEntity); List<SysUserEntity> getUserListForSearch=normalSearchMapper.getUserListForSearch(sysUserEntity);

38
src/main/java/com/spring/modules/material/service/IssureSoService.java

@ -0,0 +1,38 @@
package com.spring.modules.material.service;
import com.spring.common.utils.PageUtils;
import com.spring.modules.material.data.*;
import java.util.List;
public interface IssureSoService {
PageUtils searchTransHeader(TransHeaderData data);
List<TransDetailData> searchTransDetail(TransHeaderData data);
List<TransDetailSubData> searchTransDetailSub(TransHeaderData data);
List<WareHouseSearchOutData> getWareHouseList(WareHouseSearchOutData inData);
String saveTransHeaderData(TransHeaderData data);
/**
* @Description TODO
* @Title searchTransDetail
* @param inData
* @author rq
* @date 2024/6/4 11:34
* @return TransDetailData
* @throw
*/
TransHeaderData searchTransHeaderData(TransHeaderData inData);
List<TransDetailsubCachData> searchTransDetailsubCachData(TransHeaderData inData);
void createNewCachRoll(TransDetailsubCachData data);
void finalSaveTransHeaderDetail(TransHeaderData inData);
void deleteSubCach(TransDetailsubCachData data);
void deleteTransHeaderData(TransHeaderData inData);
}

130
src/main/resources/mapper/material/IssureSoMapper.xml

@ -0,0 +1,130 @@
<?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.spring.modules.material.dao.IssureSoMapper">
<select id="searchTransHeader" parameterType="TransHeaderData" resultType="TransHeaderData">
SELECT
TransNo,Site,WarehouseID,TransDate,TransType_DB transTypeDb,TransType,UserName,Receiver,TransYear,TransMonth,PartnerID,PartnerName,
PartnerType,AuthorizeFlag,AuthorizeDate,Authorizor,TransferFlag,TransferDate,TransferGuys,VoucherDate,ProjectID,
ProjectName,EnterDate,Remark,UseLocation,OrderRef1,LinkOrderFlag,DelAddID,Status,UserName EnterBy,dbo.get_user_display(UserName) enterName
,dbo.get_user_display(Receiver) ReceiverName
FROM TransHeader
<where>
site = #{query.site}
<if test = "query.orderRef1 != null and query.orderRef1 != ''">
AND OrderRef1 like #{query.orderRef1}
</if>
<if test = "query.transTypeDb != null and query.transTypeDb != ''">
AND TransType_DB = #{query.transTypeDb}
</if>
<if test = "query.startDate != null and query.startDate != ''">
AND TransDate >= #{query.startDate}
</if>
<if test = "query.endDate != null and query.endDate != ''">
AND #{query.endDate}>=TransDate
</if>
</where>
</select>
<select id="searchTransDetail" parameterType="TransHeaderData" resultType="TransDetailData">
SELECT
TransNo,Site,ItemNo,PartNo,LocationID,TransQty,Direction,BatchNo,OrderRef1,
OrderRef2,Remark,ManufactureDate,ExpiredDate,TransQty2,
wdr_no,enterDate,enterBy,dbo.get_part_desc(Site,PartNo) partDesc,dbo.get_user_display(enterBy) enterName
FROM TransDetail
where site=#{site} and TransNo=#{transNo}
</select>
<select id="searchTransDetailSub" parameterType="TransHeaderData" resultType="TransDetailSubData">
SELECT
a.TransNo,a.Site,a.SeqNo,a.itemNo,a.LocationID,a.BatchNo,a.BoxNo,a.RollNo,a.RollQty,a.orderRef1,a.orderRef2,
a.remark,b.EnterDate,b.enterBy,dbo.get_user_display(b.enterBy) enterName,b.ManufactureDate,b.ExpiredDate
FROM TransDetailsub a left join TransDetail b on a.Site=b.site and a.TransNo=b.TransNo and a.itemNo=b.ItemNo
where a.site=#{site} and a.TransNo=#{transNo}
</select>
<select id="getWareHouseList" parameterType="WareHouseSearchOutData" resultType="WareHouseSearchOutData">
SELECT
site,warehouse_id wareHouseId,warehouse_name wareHouseName
FROM warehouse
where site=#{site} and active='Y'
</select>
<select id="searchTransHeaderData" parameterType="TransHeaderData" resultType="TransHeaderData">
SELECT top 1
TransNo,Site,WarehouseID,TransDate,Receiver,PartnerID,PartnerName,
PartnerType,AuthorizeFlag,AuthorizeDate,Authorizor,TransferFlag,TransferDate,TransferGuys,VoucherDate,ProjectID,
ProjectName,EnterDate,Remark,UseLocation,OrderRef1,LinkOrderFlag,DelAddID,Status,dbo.get_user_display(Receiver) receiverName
FROM TransHeader
where site=#{site} and TransNo=#{transNo}
</select>
<select id="searchTransDetailsubCachData" parameterType="TransHeaderData" resultType="TransDetailsubCachData">
SELECT
Site,TransNo,PartNo,RollNo,RollQty,BatchNo,wdrNo,LocationID,ManufactureDate,ExpiredDate,enterBy,enterDate
,id,dbo.get_part_desc(Site,PartNo) partDesc,dbo.get_user_display(enterBy) enterByName
FROM TransDetailsub_cach
where site=#{site} and TransNo=#{transNo}
</select>
<insert id="createNewCachRoll" parameterType="TransDetailsubCachData" >
insert into TransDetailsub_cach(Site,TransNo,PartNo,RollNo,RollQty,BatchNo,wdrNo,LocationID,ManufactureDate,
ExpiredDate,enterBy,enterDate)
values(#{site},#{transNo},#{partNo},#{rollNo},#{rollQty},#{batchNo},#{wdrNo},#{locationID},#{manufactureDate},
#{expiredDate},#{enterBy},GetDate())
</insert>
<select id="getDetailDataByCach" resultType="TransDetailData">
SELECT
a.site,a.TransNo,a.PartNo,a.LocationID,sum(a.RollQty) as TransQty,'+' as Direction,a.BatchNo,b.OrderRef1,'N' as VitualPartFlag,a.ManufactureDate,a.ExpiredDate,
0 as StandCost,0 as ActualCost,0 as Price,0 as Freight,0 as Duty,sum(a.RollQty) as TransQty2,enterBy,wdrNo
FROM TransDetailsub_cach a left join TransHeader b on a.Site=b.Site and a.TransNo=b.transNo
WHERE a.site=#{site} and a.TransNo=#{transNo}
GROUP BY a.site,a.TransNo,a.PartNo,a.LocationID,a.BatchNo,b.OrderRef1,a.ManufactureDate,a.ExpiredDate,A.enterBy,a.wdrNo
</select>
<select id="getNextTransHeaderSeqNo" resultType="Double">
select isnull(max(itemNo),0)+1
from TransDetail where TransNo=#{transNo} and site=#{site}
</select>
<insert id="saveTransDetailData" parameterType="TransDetailData" >
insert into TransDetail(TransNo,Site,ItemNo,PartNo,LocationID,TransQty,Direction,BatchNo,StandCost,
ActualCost,Price,Freight,Duty,OrderRef1,VitualPartFlag,ManufactureDate,
ExpiredDate,TransQty2,wdr_no,enterDate,enterBy)
values(#{transNo},#{site},#{itemNo,jdbcType=DOUBLE},#{partNo},#{locationID},#{transQty},#{direction},#{batchNo},#{standCost},
#{actualCost},#{price},#{freight},#{duty},#{orderRef1},#{vitualPartFlag},#{manufactureDate},
#{expiredDate},#{transQty2},#{wdrNo},GetDate(),#{enterBy})
</insert>
<insert id="batchInsertTransDetailSub">
insert into TransDetailsub
(TransNo,Site,SeqNo,itemNo,LocationID,BatchNo,BoxNo,RollNo,RollQty,orderRef1) VALUES
<foreach collection="list" item="item" index="index" separator=",">
(#{item.transNo}, #{item.site}, #{item.seqNo}, #{item.itemNo}, #{item.locationID}, #{item.batchNo},'', #{item.rollNo,jdbcType=VARCHAR}, #{item.rollQty}, #{item.orderRef1})
</foreach>
</insert>
<delete id="deleteTransCach">
delete from TransDetailsub_cach where TransNo=#{transNo} and site=#{site}
</delete>
<select id="deleteSubCach" >
delete from TransDetailsub_cach where id=#{id}
</select>
<delete id="deleteTransHeaderData">
delete from transHeader where site=#{site} and transNo=#{transNo}
</delete>
<update id="updateTransHeader">
update transHeader set WarehouseID=#{warehouseID} ,PartnerID=#{partnerID},Receiver=#{receiver},orderRef1=#{orderRef1},transDate=#{transDate} where site=#{site} and transNo=#{transNo}
</update>
</mapper>

2
src/main/resources/mapper/material/PoReceiveMapper.xml

@ -55,7 +55,7 @@
SELECT top 1 SELECT top 1
TransNo,Site,WarehouseID,TransDate,Receiver,PartnerID,PartnerName, TransNo,Site,WarehouseID,TransDate,Receiver,PartnerID,PartnerName,
PartnerType,AuthorizeFlag,AuthorizeDate,Authorizor,TransferFlag,TransferDate,TransferGuys,VoucherDate,ProjectID, PartnerType,AuthorizeFlag,AuthorizeDate,Authorizor,TransferFlag,TransferDate,TransferGuys,VoucherDate,ProjectID,
ProjectName,EnterDate,Remark,UseLocation,OrderRef1,LinkOrderFlag,DelAddID,Status,dbo.get_user_display(Receiver) receiveName
ProjectName,EnterDate,Remark,UseLocation,OrderRef1,LinkOrderFlag,DelAddID,Status,dbo.get_user_display(Receiver) receiverName
FROM TransHeader FROM TransHeader
where site=#{site} and TransNo=#{transNo} where site=#{site} and TransNo=#{transNo}
</select> </select>

Loading…
Cancel
Save