Commit 89fd34a1 by liuyang

Merge branch 'dev' of http://git.pseer.com:8800/platform/hg-smart into dev-ly

parents c4b98103 7d65781f
......@@ -92,7 +92,7 @@ public enum DdynamicEnum {
* 用途:存货档案下拉框 (不默认状态)
* 编写:
*/
INVENT_RECORD_BOX_BLOCK_ID("invent_record_box_block_id","inventCode","inventName","status","id","inventType","spec","material","unit", "length", "width", "thick","HGPZ005.queryInventCodeBox"),
INVENT_RECORD_BOX_BLOCK_ID("invent_record_box_block_id","inventCode","inventName","status","id","inventType","spec","material","unit", "length", "width", "thick","coefficient","HGPZ005.queryInventCodeBox"),
/**
* 模块:存货档案
......@@ -520,9 +520,27 @@ public enum DdynamicEnum {
this.dbSource = dbSource;
}
DdynamicEnum(String blockId, String value, String text, String param1, String param2, String param3, String param4,
String param5, String param6,String param7,String param8,String param9,String param10,String dbSource) {
this.blockId = blockId;
this.value = value;
this.text = text;
this.param1 = param1;
this.param2 = param2;
this.param3 = param3;
this.param4 = param4;
this.param5 = param5;
this.param6 = param6;
this.param7 = param7;
this.param8 = param8;
this.param9 = param9;
this.param10 = param10;
this.dbSource = dbSource;
}
DdynamicEnum(String blockId, String value, String text, String param1, String param2, String param3,
String param4, String param5, String param6, String param7, String param8, String param9,
String param4, String param5, String param6, String param7, String param8, String param9,String param10,
String dbSource, Map paramMap) {
this.blockId = blockId;
this.value = value;
......@@ -536,6 +554,7 @@ public enum DdynamicEnum {
this.param7 = param7;
this.param8 = param8;
this.param9 = param9;
this.param10 = param10;
this.dbSource = dbSource;
this.paramMap = paramMap;
}
......
......@@ -19,9 +19,9 @@ import com.baosight.iplat4j.core.util.StringUtils;
* @history 2024-05-11 17:26:35 create
*/
public class HGKC001 extends DaoEPBase {
private static final long serialVersionUID = 1L;
public static final String FIELD_ID = "id";
public static final String FIELD_ACCOUNT_CODE = "accountCode"; /* 企业编码*/
public static final String FIELD_DEP_CODE = "depCode"; /* 部门编码*/
......@@ -54,7 +54,11 @@ public class HGKC001 extends DaoEPBase {
public static final String FIELD_DEPOSIT_QTY = "depositQty"; /* 入库数量*/
public static final String FIELD_DEPOSIT_UNIT_WEIGHT = "depositUnitWeight"; /* 入库单重*/
public static final String FIELD_DEPOSIT_WEIGHT = "depositWeight"; /* 入库重量*/
public static final String FIELD_SUBMIT_STATUS = "submitStatus"; /* 提交状态 0未提交,1已提交*/
public static final String FIELD_STORAGE_TYPE = "storageType"; /* 入库类型:1:入库 2:退回*/
public static final String FIELD_IS_RETURN = "isReturn"; /* 是否退回*/
public static final String COL_ID = "ID";
public static final String COL_ACCOUNT_CODE = "ACCOUNT_CODE"; /* 企业编码*/
public static final String COL_DEP_CODE = "DEP_CODE"; /* 部门编码*/
......@@ -87,13 +91,20 @@ public class HGKC001 extends DaoEPBase {
public static final String COL_DEPOSIT_QTY = "DEPOSIT_QTY"; /* 入库数量*/
public static final String COL_DEPOSIT_UNIT_WEIGHT = "DEPOSIT_UNIT_WEIGHT"; /* 入库单重*/
public static final String COL_DEPOSIT_WEIGHT = "DEPOSIT_WEIGHT"; /* 入库重量*/
public static final String COL_SUBMIT_STATUS = "SUBMIT_STATUS"; /* 提交状态 0未提交,1已提交*/
public static final String COL_STORAGE_TYPE = "STORAGE_TYPE"; /* 入库类型:1:入库 2:退回*/
public static final String COL_IS_RETURN = "IS_RETURN"; /* 是否退回*/
public static final String QUERY = "HGKC001.query";
public static final String COUNT = "HGKC001.count";
public static final String INSERT = "HGKC001.insert";
public static final String UPDATE = "HGKC001.update";
public static final String DELETE = "HGKC001.delete";
public static final String UPDATE_WH_CODE = "HGKC001.updateWhCode";
public static final String UPDATE_SUBMIT_STATUS = "HGKC001.updateSubmitStatus";
private Long id = new Long(0);
private String accountCode = " "; /* 企业编码*/
private String depCode = " "; /* 部门编码*/
......@@ -126,170 +137,184 @@ public class HGKC001 extends DaoEPBase {
private BigDecimal depositQty = new BigDecimal(0.000); /* 入库数量*/
private BigDecimal depositUnitWeight = new BigDecimal(0.000); /* 入库单重*/
private BigDecimal depositWeight = new BigDecimal(0.000); /* 入库重量*/
private Integer submitStatus; /* 提交状态 0未提交,1已提交*/
private Integer storageType; /* 入库类型:1:入库 2:退回*/
private Integer isReturn; /* 是否退回:0:否 1:是*/
/**
* initialize the metadata.
*/
public void initMetaData() {
EiColumn eiColumn;
eiColumn = new EiColumn(FIELD_ID);
eiColumn.setPrimaryKey(true);
eiColumn.setDescName(" ");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_ACCOUNT_CODE);
eiColumn.setDescName("企业编码");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEP_CODE);
eiColumn.setDescName("部门编码");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_CREATED_BY);
eiColumn.setDescName("记录创建者");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_CREATED_NAME);
eiColumn.setDescName("记录创建名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_CREATED_TIME);
eiColumn.setDescName("记录创建时间");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_UPDATED_BY);
eiColumn.setDescName("记录修改者");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_UPDATED_NAME);
eiColumn.setDescName("记录修改名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_UPDATED_TIME);
eiColumn.setDescName("记录修改时间");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DELETE_FLAG);
eiColumn.setDescName("0-未删除,1-已删除");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_COMPANY_CODE);
eiColumn.setDescName("公司编码");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_COMPANY_NAME);
eiColumn.setDescName("公司名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEPOSIT_DATE);
eiColumn.setDescName("入库日期");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEPOSIT_NO);
eiColumn.setDescName("入库单号");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_RECEIVE_NO);
eiColumn.setDescName("收货单号");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_PLAN_NO);
eiColumn.setDescName("计划单号");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_CONTRACT_NO);
eiColumn.setDescName("合同号");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_WH_CODE);
eiColumn.setDescName("仓库编码");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_WH_NAME);
eiColumn.setDescName("仓库名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_INVENT_TYPE);
eiColumn.setDescName("存货类型");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_INVENT_CODE);
eiColumn.setDescName("存货编码");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_INVENT_NAME);
eiColumn.setDescName("存货名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_SPEC_ID);
eiColumn.setDescName("规格ID");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_SPEC);
eiColumn.setDescName("规格");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_MATERIAL);
eiColumn.setDescName("材质");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_UNIT);
eiColumn.setDescName("单位");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_LENGTH);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("长度");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_WIDTH);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("宽度");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_THICK);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("厚度");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEPOSIT_QTY);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("入库数量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEPOSIT_UNIT_WEIGHT);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("入库单重");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_DEPOSIT_WEIGHT);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(20);
eiColumn.setDescName("入库重量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_SUBMIT_STATUS);
eiColumn.setDescName("提交状态");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_STORAGE_TYPE);
eiColumn.setDescName("入库类型:1:入库 2:退回");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_IS_RETURN);
eiColumn.setDescName("是否退回:0:否 1:是");
eiMetadata.addMeta(eiColumn);
}
/**
* the constructor.
*/
public HGKC001() {
initMetaData();
}
/**
* get the id .
* @return the id
......@@ -297,7 +322,7 @@ public class HGKC001 extends DaoEPBase {
public Long getId() {
return this.id;
}
/**
* set the id .
*
......@@ -313,7 +338,7 @@ public class HGKC001 extends DaoEPBase {
public String getAccountCode() {
return this.accountCode;
}
/**
* set the accountCode - 企业编码.
*
......@@ -329,7 +354,7 @@ public class HGKC001 extends DaoEPBase {
public String getDepCode() {
return this.depCode;
}
/**
* set the depCode - 部门编码.
*
......@@ -345,7 +370,7 @@ public class HGKC001 extends DaoEPBase {
public String getCreatedBy() {
return this.createdBy;
}
/**
* set the createdBy - 记录创建者.
*
......@@ -361,7 +386,7 @@ public class HGKC001 extends DaoEPBase {
public String getCreatedName() {
return this.createdName;
}
/**
* set the createdName - 记录创建名称.
*
......@@ -377,7 +402,7 @@ public class HGKC001 extends DaoEPBase {
public String getCreatedTime() {
return this.createdTime;
}
/**
* set the createdTime - 记录创建时间.
*
......@@ -393,7 +418,7 @@ public class HGKC001 extends DaoEPBase {
public String getUpdatedBy() {
return this.updatedBy;
}
/**
* set the updatedBy - 记录修改者.
*
......@@ -409,7 +434,7 @@ public class HGKC001 extends DaoEPBase {
public String getUpdatedName() {
return this.updatedName;
}
/**
* set the updatedName - 记录修改名称.
*
......@@ -425,7 +450,7 @@ public class HGKC001 extends DaoEPBase {
public String getUpdatedTime() {
return this.updatedTime;
}
/**
* set the updatedTime - 记录修改时间.
*
......@@ -441,7 +466,7 @@ public class HGKC001 extends DaoEPBase {
public Integer getDeleteFlag() {
return this.deleteFlag;
}
/**
* set the deleteFlag - 0-未删除,1-已删除.
*
......@@ -457,7 +482,7 @@ public class HGKC001 extends DaoEPBase {
public String getCompanyCode() {
return this.companyCode;
}
/**
* set the companyCode - 公司编码.
*
......@@ -473,7 +498,7 @@ public class HGKC001 extends DaoEPBase {
public String getCompanyName() {
return this.companyName;
}
/**
* set the companyName - 公司名称.
*
......@@ -489,7 +514,7 @@ public class HGKC001 extends DaoEPBase {
public String getDepositDate() {
return this.depositDate;
}
/**
* set the depositDate - 入库日期.
*
......@@ -505,7 +530,7 @@ public class HGKC001 extends DaoEPBase {
public String getDepositNo() {
return this.depositNo;
}
/**
* set the depositNo - 入库单号.
*
......@@ -521,7 +546,7 @@ public class HGKC001 extends DaoEPBase {
public String getReceiveNo() {
return this.receiveNo;
}
/**
* set the receiveNo - 收货单号.
*
......@@ -537,7 +562,7 @@ public class HGKC001 extends DaoEPBase {
public String getPlanNo() {
return this.planNo;
}
/**
* set the planNo - 计划单号.
*
......@@ -553,7 +578,7 @@ public class HGKC001 extends DaoEPBase {
public String getContractNo() {
return this.contractNo;
}
/**
* set the contractNo - 合同号.
*
......@@ -569,7 +594,7 @@ public class HGKC001 extends DaoEPBase {
public String getWhCode() {
return this.whCode;
}
/**
* set the whCode - 仓库编码.
*
......@@ -585,7 +610,7 @@ public class HGKC001 extends DaoEPBase {
public String getWhName() {
return this.whName;
}
/**
* set the whName - 仓库名称.
*
......@@ -601,7 +626,7 @@ public class HGKC001 extends DaoEPBase {
public String getInventType() {
return this.inventType;
}
/**
* set the inventType - 存货类型.
*
......@@ -617,7 +642,7 @@ public class HGKC001 extends DaoEPBase {
public String getInventCode() {
return this.inventCode;
}
/**
* set the inventCode - 存货编码.
*
......@@ -633,7 +658,7 @@ public class HGKC001 extends DaoEPBase {
public String getInventName() {
return this.inventName;
}
/**
* set the inventName - 存货名称.
*
......@@ -649,7 +674,7 @@ public class HGKC001 extends DaoEPBase {
public Long getSpecId() {
return this.specId;
}
/**
* set the specId - 规格ID.
*
......@@ -665,7 +690,7 @@ public class HGKC001 extends DaoEPBase {
public String getSpec() {
return this.spec;
}
/**
* set the spec - 规格.
*
......@@ -681,7 +706,7 @@ public class HGKC001 extends DaoEPBase {
public String getMaterial() {
return this.material;
}
/**
* set the material - 材质.
*
......@@ -697,7 +722,7 @@ public class HGKC001 extends DaoEPBase {
public String getUnit() {
return this.unit;
}
/**
* set the unit - 单位.
*
......@@ -713,7 +738,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getLength() {
return this.length;
}
/**
* set the length - 长度.
*
......@@ -729,7 +754,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getWidth() {
return this.width;
}
/**
* set the width - 宽度.
*
......@@ -745,7 +770,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getThick() {
return this.thick;
}
/**
* set the thick - 厚度.
*
......@@ -761,7 +786,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getDepositQty() {
return this.depositQty;
}
/**
* set the depositQty - 入库数量.
*
......@@ -777,7 +802,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getDepositUnitWeight() {
return this.depositUnitWeight;
}
/**
* set the depositUnitWeight - 入库单重.
*
......@@ -793,7 +818,7 @@ public class HGKC001 extends DaoEPBase {
public BigDecimal getDepositWeight() {
return this.depositWeight;
}
/**
* set the depositWeight - 入库重量.
*
......@@ -802,6 +827,31 @@ public class HGKC001 extends DaoEPBase {
public void setDepositWeight(BigDecimal depositWeight) {
this.depositWeight = depositWeight;
}
public Integer getSubmitStatus() {
return submitStatus;
}
public void setSubmitStatus(Integer submitStatus) {
this.submitStatus = submitStatus;
}
public Integer getStorageType() {
return storageType;
}
public void setStorageType(Integer storageType) {
this.storageType = storageType;
}
public Integer getIsReturn() {
return isReturn;
}
public void setIsReturn(Integer isReturn) {
this.isReturn = isReturn;
}
/**
* get the value from Map.
*
......@@ -809,7 +859,7 @@ public class HGKC001 extends DaoEPBase {
*/
@Override
public void fromMap(Map map) {
setId(NumberUtils.toLong(StringUtils.toString(map.get(FIELD_ID)), id));
setAccountCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_ACCOUNT_CODE)), accountCode));
setDepCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_DEP_CODE)), depCode));
......@@ -842,14 +892,17 @@ public class HGKC001 extends DaoEPBase {
setDepositQty(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_DEPOSIT_QTY)), depositQty));
setDepositUnitWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_DEPOSIT_UNIT_WEIGHT)), depositUnitWeight));
setDepositWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_DEPOSIT_WEIGHT)), depositWeight));
setSubmitStatus(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_SUBMIT_STATUS)), submitStatus));
setStorageType(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_STORAGE_TYPE)), storageType));
setIsReturn(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_IS_RETURN)), isReturn));
}
/**
* set the value to Map.
*/
@Override
public Map toMap() {
Map map = new HashMap();
map.put(FIELD_ID, StringUtils.toString(id, eiMetadata.getMeta(FIELD_ID)));
map.put(FIELD_ACCOUNT_CODE, StringUtils.toString(accountCode, eiMetadata.getMeta(FIELD_ACCOUNT_CODE)));
......@@ -883,7 +936,10 @@ public class HGKC001 extends DaoEPBase {
map.put(FIELD_DEPOSIT_QTY, StringUtils.toString(depositQty, eiMetadata.getMeta(FIELD_DEPOSIT_QTY)));
map.put(FIELD_DEPOSIT_UNIT_WEIGHT, StringUtils.toString(depositUnitWeight, eiMetadata.getMeta(FIELD_DEPOSIT_UNIT_WEIGHT)));
map.put(FIELD_DEPOSIT_WEIGHT, StringUtils.toString(depositWeight, eiMetadata.getMeta(FIELD_DEPOSIT_WEIGHT)));
map.put(FIELD_SUBMIT_STATUS, StringUtils.toString(submitStatus, eiMetadata.getMeta(FIELD_SUBMIT_STATUS)));
map.put(FIELD_STORAGE_TYPE, StringUtils.toString(storageType, eiMetadata.getMeta(FIELD_STORAGE_TYPE)));
map.put(FIELD_IS_RETURN, StringUtils.toString(isReturn, eiMetadata.getMeta(FIELD_IS_RETURN)));
return map;
}
}
......@@ -7,15 +7,15 @@ import com.baosight.hggp.core.enums.DeleteFlagEnum;
import com.baosight.hggp.hg.cg.tools.HGCGTools;
import com.baosight.hggp.hg.constant.HGConstant;
import com.baosight.hggp.hg.kc.domain.HGKC001;
import com.baosight.hggp.hg.kc.domain.HGKC003;
import com.baosight.hggp.hg.kc.tools.HGKCTools;
import com.baosight.hggp.hg.kc.utils.HGKCUtils;
import com.baosight.hggp.util.AssertUtils;
import com.baosight.hggp.util.CommonMethod;
import com.baosight.hggp.util.EiInfoUtils;
import com.baosight.hggp.util.LogUtils;
import com.baosight.hggp.util.MapUtils;
import com.baosight.hggp.util.*;
import com.baosight.iplat4j.core.ei.EiBlock;
import com.baosight.iplat4j.core.ei.EiConstant;
import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.exception.PlatException;
import com.baosight.iplat4j.core.resource.I18nMessages;
import com.baosight.iplat4j.core.service.impl.ServiceBase;
import java.util.Arrays;
......@@ -27,7 +27,7 @@ import java.util.Map;
* @date:2024/5/9,11:04
*/
public class ServiceHGKC001 extends ServiceBase {
/**
* 画面初始化
*
......@@ -49,7 +49,7 @@ public class ServiceHGKC001 extends ServiceBase {
}
return inInfo;
}
/**
* 查询操作
*
......@@ -68,7 +68,7 @@ public class ServiceHGKC001 extends ServiceBase {
}
return inInfo;
}
/**
* 保存操作.
*
......@@ -93,7 +93,7 @@ public class ServiceHGKC001 extends ServiceBase {
}
return inInfo;
}
/**
* 数据校验
*
......@@ -107,7 +107,7 @@ public class ServiceHGKC001 extends ServiceBase {
AssertUtils.isNull(dbCg004, String.format("入库单[%s]不存在", depositNo));
}
}
/**
* 数据保存
*
......@@ -116,10 +116,10 @@ public class ServiceHGKC001 extends ServiceBase {
*/
private void saveData(List<HGKC001> fCg004s, Map<String, HGKC001> dbCg004Map) {
for (HGKC001 fCg004 : fCg004s) {
String depositNo = fCg004.getDepositNo();
DaoUtils.update(HGKC001.UPDATE_WH_CODE, fCg004);
}
}
/**
* 删除操作.
*
......@@ -144,7 +144,7 @@ public class ServiceHGKC001 extends ServiceBase {
}
return inInfo;
}
/**
* 数据校验
*
......@@ -158,7 +158,7 @@ public class ServiceHGKC001 extends ServiceBase {
AssertUtils.isNull(dbCg004, String.format("入库单[%s]不存在", depositNo));
}
}
/**
* 数据保存
*
......@@ -172,11 +172,53 @@ public class ServiceHGKC001 extends ServiceBase {
dbKc001.setDeleteFlag(DeleteFlagEnum.REMOVE.getCode());
DaoUtils.update(HGKC001.DELETE, dbKc001);
// 扣减库存
HGKCUtils.HgKc010.updateInv(dbKc001.getCompanyCode(), dbKc001.getWhCode(), dbKc001.getSpecId(),
HGKCUtils.HgKc010.updateInv(dbKc001.getCompanyCode(), dbKc001.getWhCode(), dbKc001.getInventCode(),
dbKc001.getDepositQty().negate(), dbKc001.getDepositWeight().negate());
// 更新收货单状态
HGCGTools.HgCg003.updateStatus(dbKc001.getReceiveNo(), HGConstant.CgReceiveStatus.S_2);
}
}
/**
* 修改提交状态
* @param inInfo
* @return
*/
public EiInfo updateSubmitStatus(EiInfo inInfo){
int i = 0;
try {
HGKC001 hgkc001 = new HGKC001();
EiBlock eiBlock = inInfo.getBlock(EiConstant.resultBlock);
for (i = 0; i < eiBlock.getRowCount(); i++) {
Map<?, ?> map = eiBlock.getRow(i);
hgkc001.fromMap(map);
hgkc001 = HGKCTools.HgKc001.getId(hgkc001.getId());
hgkc001.setSubmitStatus(HGConstant.ProductStatus.YTJ);
// 校验数据
this.checkSubmitData(hgkc001);
DaoUtils.update(HGKC001.UPDATE_SUBMIT_STATUS, hgkc001);
// 更新库存数量
HGKCUtils.HgKc010.updateInv(hgkc001.getCompanyCode(), hgkc001.getWhCode(), hgkc001.getInventCode(),
hgkc001.getDepositQty(), hgkc001.getDepositUnitWeight(), hgkc001.getDepositWeight());
// 更新收货单状态
HGCGTools.HgCg003.updateStatus(hgkc001.getReceiveNo(), HGConstant.CgReceiveStatus.S_5);
}
inInfo.setStatus(EiConstant.STATUS_SUCCESS);
inInfo.setMsgByKey("ep.1000", new String[]{String.valueOf(i), I18nMessages.getText("label.update", "提交")});
} catch (PlatException e) {
e.printStackTrace();
inInfo.setStatus(EiConstant.STATUS_FAILURE);
ErrorCodeUtils.handleUpdateException(inInfo,i,e);
logError("修改失败", e.getMessage());
return inInfo;
}
return inInfo;
}
private void checkSubmitData(HGKC001 hgkc001) {
AssertUtils.isEmpty(hgkc001.getWhCode(),"仓库编码不能为空!");
AssertUtils.isEmpty(hgkc001.getWhName(),"仓库名称不能为空!");
}
}
......@@ -33,7 +33,7 @@ import java.util.Map;
* @date:2024/5/9,11:04
*/
public class ServiceHGKC001A extends ServiceBase {
/**
* 画面初始化
*
......@@ -55,7 +55,7 @@ public class ServiceHGKC001A extends ServiceBase {
}
return inInfo;
}
/**
* 查询操作
*
......@@ -76,7 +76,7 @@ public class ServiceHGKC001A extends ServiceBase {
}
return inInfo;
}
/**
* 确认操作.
*
......@@ -101,7 +101,7 @@ public class ServiceHGKC001A extends ServiceBase {
}
return inInfo;
}
/**
* 数据校验
*
......@@ -118,7 +118,7 @@ public class ServiceHGKC001A extends ServiceBase {
AssertUtils.isEmpty(fCg003A.getWhCode(), String.format("收货单号[%s]的仓库名称不能为空", dbCg003.getReceiveNo()));
}
}
/**
* 数据保存
*
......@@ -138,13 +138,14 @@ public class ServiceHGKC001A extends ServiceBase {
newKc001.setDepositUnitWeight(dbCg003.getReceiveUnitWeight());
newKc001.setDepositWeight(dbCg003.getDepositQty().multiply(dbCg003.getReceiveUnitWeight()));
newKc001.setDeleteFlag(DeleteFlagEnum.UN_REMOVE.getCode());
newKc001.setSpecId(dbCg003.getSpecId());
DaoUtils.insert(HGKC001.INSERT, newKc001);
// 更新库存数量
HGKCUtils.HgKc010.updateInv(newKc001.getCompanyCode(), newKc001.getWhCode(), newKc001.getSpecId(),
HGKCUtils.HgKc010.updateInv(newKc001.getCompanyCode(), newKc001.getWhCode(), newKc001.getInventCode(),
newKc001.getDepositQty(), newKc001.getDepositUnitWeight(), newKc001.getDepositWeight());
// 更新收货单状态
HGCGTools.HgCg003.updateStatus(receiveNo, HGConstant.CgReceiveStatus.S_5);
}
}
}
......@@ -29,7 +29,7 @@ import java.util.Map;
* @date:2024/1/25,23:19
*/
public class ServiceHGKC002 extends ServiceBase {
/**
* 画面初始化.
*
......@@ -52,7 +52,7 @@ public class ServiceHGKC002 extends ServiceBase {
}
return inInfo;
}
/**
* 查询操作
*
......@@ -71,7 +71,7 @@ public class ServiceHGKC002 extends ServiceBase {
}
return inInfo;
}
/**
* 删除操作
*
......@@ -96,7 +96,7 @@ public class ServiceHGKC002 extends ServiceBase {
}
return inInfo;
}
/**
* 删除检查
*
......@@ -111,7 +111,7 @@ public class ServiceHGKC002 extends ServiceBase {
String.format("领用单【%s】已删除,请勿重复操作", reqNo));
}
}
/**
* 删除数据
*
......@@ -132,9 +132,9 @@ public class ServiceHGKC002 extends ServiceBase {
newKc002.setDeleteFlag(CommonConstant.YesNo.YES_1);
DaoUtils.insert(HGKC002.INSERT, newKc002);
// 修改库存
HGKCUtils.HgKc010.updateInv(dbKc002.getCompanyCode(), dbKc002.getWhCode(), dbKc002.getSpecId(),
HGKCUtils.HgKc010.updateInv(dbKc002.getCompanyCode(), dbKc002.getWhCode(), dbKc002.getInventCode(),
dbKc002.getApplyQty(), dbKc002.getApplyWeight());
}
}
}
......@@ -137,7 +137,7 @@ public class ServiceHGKC002A extends ServiceEPBase {
newKc002.setDeleteFlag(CommonConstant.YesNo.NO_0);
DaoUtils.insert(HGKC002.INSERT, newKc002);
// 修改库存数量
HGKCUtils.HgKc010.updateInv(dbKc010.getCompanyCode(), dbKc010.getWhCode(), dbKc010.getSpecId(),
HGKCUtils.HgKc010.updateInv(dbKc010.getCompanyCode(), dbKc010.getWhCode(), dbKc010.getInventCode(),
applyQty.negate(), dbKc010.getInvUnitWeight(), newKc002.getApplyWeight().negate());
}
}
......
......@@ -160,7 +160,7 @@ public class ServiceHGKC003 extends ServiceBase {
//修改计划生产任务完工数量
HGSCTools.complete(hgkc003.getQualityId(),hgkc003.getInvQty().intValue(),hgkc003.getRectificationId());
// 修改库存
HGKCUtils.HgKc010.updateInv(hgkc003.getCompanyCode(), hgkc003.getWhCode(), hgkc003.getPartSpecId(),
HGKCUtils.HgKc010.updateInv(hgkc003.getCompanyCode(), hgkc003.getWhCode(), hgkc003.getPartCode(),
hgkc003.getInvQty(), hgkc003.getInvWeight());
}
inInfo.setStatus(EiConstant.STATUS_SUCCESS);
......@@ -246,7 +246,7 @@ public class ServiceHGKC003 extends ServiceBase {
//修改计划生产任务完工数量
HGSCTools.complete(fKc003.getQualityId(),newKc003.getInvQty().intValue(),fKc003.getRectificationId());
// 修改库存
HGKCUtils.HgKc010.updateInv(newKc003.getCompanyCode(), newKc003.getWhCode(), newKc003.getPartSpecId(),
HGKCUtils.HgKc010.updateInv(newKc003.getCompanyCode(), newKc003.getWhCode(), newKc003.getPartCode(),
newKc003.getInvQty(), newKc003.getInvWeight());
}
......
......@@ -166,7 +166,7 @@ public class ServiceHGKC004 extends ServiceEPBase {
if (hgkc004A.getPrice().compareTo(BigDecimal.ZERO)<=0 || hgkc004A.getAmount().compareTo(BigDecimal.ZERO)<=0){
throw new PlatException("单价和金额不能小于0!");
}
HGKC010 hgkc010 = HGKCTools.HgKc010.get(kc004.getCompanyCode(), kc004.getWhCode(), hgkc004A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(kc004.getCompanyCode(), kc004.getWhCode(), hgkc004A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......
......@@ -178,7 +178,7 @@ public class ServiceHGKC005 extends ServiceEPBase {
// 存货名称
fKc005.setInventName(HGPZTools.HgPz005.getByCode(fKc005.getInventCode()).getInventName());
// 根据规格计算账面单重
BigDecimal unitWeight = HGPZTools.HgPz005.calcUnitWeight(fKc005.getInventRecordId());
BigDecimal unitWeight = HGPZTools.HgPz005.calcUnitWeight(fKc005.getInventCode());
fKc005.setBookUnitWeight(unitWeight);
fKc005.setEntityUnitWeight(unitWeight);
// 计算总重
......
......@@ -176,7 +176,7 @@ public class ServiceHGKC006 extends ServiceBase {
for(HGKC006A hgkc006A : hgkc006AList){
//增加库存
HGKCUtils.HgKc010.updateInv(hgkc006A.getCompanyCode(),hgkc006A.getWhCode(),
hgkc006A.getPartSpecId(),hgkc006A.getInvQty(),
hgkc006A.getPartCode(),hgkc006A.getInvQty(),
hgkc006A.getInvUnitWeight(),hgkc006A.getInvWeight());
}
}
......
......@@ -176,7 +176,7 @@ public class ServiceHGKC007 extends ServiceBase {
BigDecimal invWeight = hgkc007A.getInvWeight().multiply(new BigDecimal(-1));
//减少库存
HGKCUtils.HgKc010.updateInv(hgkc007A.getCompanyCode(),hgkc007A.getWhCode(),
hgkc007A.getPartSpecId(),qty,
hgkc007A.getPartCode(),qty,
invUnitWeight,invWeight);
}
}
......
......@@ -135,7 +135,7 @@ public class ServiceHGKC007A extends ServiceBase {
AssertUtils.isEmpty(UserSessionUtils.getAccountCode(), "当前用户未绑定公司,无法操作数据,请联系管理员!");
AssertUtils.isEmpty(UserSessionUtils.getOrgId(), "当前用户未绑定部门,无法操作数据,请联系管理员!");
AssertUtils.isNull(hgkc007a.getPrimaryId(), "未获取到其他出库单ID信息");
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgkc007a.getCompanyCode(),hgkc007a.getWhCode(),hgkc007a.getPartSpecId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgkc007a.getCompanyCode(),hgkc007a.getWhCode(),hgkc007a.getPartCode());
if (hgkc010==null){
throw new PlatException("实时库存不存在!");
}
......
......@@ -136,7 +136,7 @@ public class ServiceHGKC008 extends ServiceBase {
BigDecimal invWeight = hgkc008A.getInvWeight().multiply(new BigDecimal(-1));
//增加库存
HGKCUtils.HgKc010.updateInv(hgkc008A.getCompanyCode(),hgkc008A.getWhCode(),
hgkc008A.getInvSpecId(),qty,
hgkc008A.getInventCode(),qty,
invUnitWeight,invWeight);
}
}
......
......@@ -99,7 +99,7 @@ public class ServiceHGKC013A extends ServiceEPBase {
Object object = this.dao.get(HGKC013.QUERY,HGKC010.FIELD_ID,parentId);
if (object!=null){
Map map1 = MapUtils.toMap(object);
HGKC010 hgkc010 = HGKCTools.HgKc010.get(map1.get(HGKC013.FIELD_COMPANY_CODE).toString(),map1.get(HGKC013.FIELD_CALLOUT_WH_CODE).toString(),hgkc013a.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(map1.get(HGKC013.FIELD_COMPANY_CODE).toString(),map1.get(HGKC013.FIELD_CALLOUT_WH_CODE).toString(),hgkc013a.getInventCode());
if (hgkc010==null){
throw new PlatException("实时库存不存在!");
}
......
......@@ -34,7 +34,10 @@
THICK as "thick", <!-- 厚度 -->
DEPOSIT_QTY as "depositQty", <!-- 入库数量 -->
DEPOSIT_UNIT_WEIGHT as "depositUnitWeight", <!-- 入库单重 -->
DEPOSIT_WEIGHT as "depositWeight" <!-- 入库重量 -->
DEPOSIT_WEIGHT as "depositWeight", <!-- 入库重量 -->
STORAGE_TYPE as "storageType", <!-- 入库类型:1:入库 2:退回 -->
IS_RETURN as "isReturn", <!-- 是否退回:0:否 1:是 -->
SUBMIT_STATUS as "submitStatus" <!-- 提交状态 -->
</sql>
<sql id="condition">
......@@ -93,6 +96,15 @@
<isNotEmpty prepend=" AND " property="unit">
UNIT = #unit#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="submitStatus">
SUBMIT_STATUS = #submitStatus#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="isReturn">
IS_RETURN = #isReturn#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="storageType">
STORAGE_TYPE = #storageType#
</isNotEmpty>
</sql>
<sql id="idCondition">
......@@ -173,13 +185,17 @@
THICK, <!-- 厚度 -->
DEPOSIT_QTY, <!-- 入库数量 -->
DEPOSIT_UNIT_WEIGHT, <!-- 入库单重 -->
DEPOSIT_WEIGHT <!-- 入库重量 -->
DEPOSIT_WEIGHT, <!-- 入库重量 -->
STORAGE_TYPE, <!-- 入库类型:1:入库 2:退回 -->
IS_RETURN, <!-- 是否退回:0:否 1:是 -->
SUBMIT_STATUS
) VALUES (
#accountCode#, #depCode#, #createdBy#, #createdName#, #createdTime#,
#deleteFlag#, #companyCode#, #companyName#, #depositDate#, #depositNo#,
#receiveNo#, #planNo#, #contractNo#, #whCode#, #whName#, #inventType#,
#inventCode#, #inventName#, #specId#, #spec#, #material#,
#unit#, #length#, #width#, #thick#, #depositQty#, #depositUnitWeight#, #depositWeight#
#unit#, #length#, #width#, #thick#, #depositQty#, #depositUnitWeight#, #depositWeight#,
#storageType#, #isReturn#,#submitStatus#
)
</insert>
......@@ -199,6 +215,17 @@
<include refid="idCondition"/>
</update>
<update id="updateWhCode">
UPDATE ${hggpSchema}.HGKC001
SET
WH_CODE = #whCode#,
WH_NAME = #whName#,
UPDATED_BY = #updatedBy#,
UPDATED_NAME = #updatedName#,
UPDATED_TIME = #updatedTime#
WHERE DEPOSIT_NO = #depositNo#
</update>
<!-- 统计库存 -->
<select id="statDate" resultClass="com.baosight.hggp.hg.kc.domain.HGKC001">
SELECT
......@@ -218,4 +245,15 @@
GROUP BY COMPANY_CODE, DEP_CODE, WH_CODE, INVENT_TYPE, INVENT_CODE,SPEC_ID
</select>
<update id="updateSubmitStatus">
UPDATE ${hggpSchema}.HGKC001
SET
UPDATED_BY = #updatedBy#, <!-- 更新人 -->
UPDATED_NAME = #updatedName#, <!-- 更新人名称 -->
UPDATED_TIME = #updatedTime#, <!-- 更新时间 -->
SUBMIT_STATUS = #submitStatus# <!-- 提交状态 -->
WHERE
ID = #id#
</update>
</sqlMap>
......@@ -6,6 +6,8 @@ import com.baosight.hggp.core.constant.CommonConstant;
import com.baosight.hggp.core.dao.DaoBase;
import com.baosight.hggp.core.dao.DaoUtils;
import com.baosight.hggp.core.enums.DeleteFlagEnum;
import com.baosight.hggp.hg.cg.domain.HGCG003;
import com.baosight.hggp.hg.cg.utils.HGCGUtils;
import com.baosight.hggp.hg.constant.HGConstant;
import com.baosight.hggp.hg.constant.HGSqlConstant;
import com.baosight.hggp.hg.kc.domain.*;
......@@ -14,6 +16,7 @@ import com.baosight.hggp.hg.pz.tools.HGPZTools;
import com.baosight.hggp.hg.zl.domain.HGZL002;
import com.baosight.hggp.hg.zl.domain.HGZL004;
import com.baosight.hggp.util.AssertUtils;
import com.baosight.hggp.util.BeanUtils;
import com.baosight.hggp.util.DateUtils;
import com.baosight.hggp.util.StringUtils;
import com.baosight.iplat4j.core.ei.EiConstant;
......@@ -42,6 +45,21 @@ public class HGKCTools {
public static class HgKc001 {
/**
* 生产入库单信息
*
* @param id
* @return
*/
public static HGKC001 getId(Long id) {
AssertUtils.isEmpty(Collections.singleton(id), "采购入库单为空!");
Map<String, Object> paramMap = new HashMap();
paramMap.put("id", id);
paramMap.put("deleteFlag", 0);
List<HGKC001> list = DaoBase.getInstance().query(HGKC001.QUERY, paramMap);
AssertUtils.isEmpty(list, "采购入库单为空!");
return list.get(0);
}
/**
* 锁
*
* @param depositNos
......@@ -80,6 +98,35 @@ public class HGKCTools {
return results.stream().collect(Collectors.toMap(HGKC001::getDepositNo, item -> item));
}
/**
* 生产入库(入库质检单)
* @param receiveNo
*/
public static void putInStorageData(String receiveNo) {
List<String> receiveNoList = new LinkedList<>();
receiveNoList.add(receiveNo);
// db数据
Map<String, HGCG003> dbCg003Map = HGCGUtils.HgCg003.lockGetData(receiveNoList);
HGCG003 dbCg003 = dbCg003Map.get(receiveNo);
HGKC001 newKc001 = BeanUtils.copy(dbCg003, HGKC001.class);
newKc001.setDepositDate(DateUtils.shortDate());
newKc001.setDepositNo(SequenceGenerator.getNextSequence(HGConstant.SequenceId.CG_DEPOSIT_NO));
newKc001.setDepositQty(dbCg003.getDepositQty());
newKc001.setDepositUnitWeight(dbCg003.getReceiveUnitWeight());
newKc001.setDepositWeight(dbCg003.getDepositQty().multiply(dbCg003.getReceiveUnitWeight()));
newKc001.setDeleteFlag(DeleteFlagEnum.UN_REMOVE.getCode());
newKc001.setSpecId(dbCg003.getSpecId());
newKc001.setSubmitStatus(HGConstant.ProductStatus.WTJ);
newKc001.setStorageType(HGConstant.StorageType.RK);
newKc001.setIsReturn(CommonConstant.YesNo.NO_0);
DaoUtils.insert(HGKC001.INSERT, newKc001);
// 更新库存数量
// HGKCUtils.HgKc010.updateInv(newKc001.getCompanyCode(), newKc001.getWhCode(), newKc001.getInventCode(),
// newKc001.getDepositQty(), newKc001.getDepositUnitWeight(), newKc001.getDepositWeight());
// 更新收货单状态
// HGCGTools.HgCg003.updateStatus(receiveNo, HGConstant.CgReceiveStatus.S_5);
}
}
/**
......@@ -700,33 +747,33 @@ public class HGKCTools {
*
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
* @return
*/
public static void lock(String companyCode, String whCode, Long specId) {
if (StringUtils.isBlank(companyCode) || StringUtils.isBlank(whCode) || specId == null) {
public static void lock(String companyCode, String whCode, String inventCode) {
if (StringUtils.isBlank(companyCode) || StringUtils.isBlank(whCode) || StringUtils.isBlank(inventCode)) {
return;
}
Map paramMap = new HashMap();
paramMap.put("companyCode", companyCode);
paramMap.put("whCode", whCode);
paramMap.put("specId", specId);
paramMap.put("inventCode", inventCode);
DaoBase.getInstance().update(HGSqlConstant.HgKc010.LOCK, paramMap);
}
/**
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
*/
public static HGKC010 get(String companyCode, String whCode, Long specId) {
public static HGKC010 get(String companyCode, String whCode, String inventCode) {
AssertUtils.isEmpty(companyCode, "公司编码不能为空");
AssertUtils.isEmpty(whCode, "仓库编码不能为空");
AssertUtils.isTrue(specId == null || specId == 0, "规格ID不能为空");
AssertUtils.isEmpty(inventCode, "物料编码不能为空");
Map paramMap = new HashMap();
paramMap.put("companyCode", companyCode);
paramMap.put("whCode", whCode);
paramMap.put("specId", specId);
paramMap.put("inventCode", inventCode);
List<HGKC010> results = DaoBase.getInstance().query(HGKC010.QUERY, paramMap);
return CollectionUtils.isEmpty(results) ? null : results.get(0);
}
......
......@@ -218,13 +218,13 @@ public class HGKCUtils {
*
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
* @param qty
* @param weight
*/
public static void updateInv(String companyCode, String whCode, Long specId, BigDecimal qty,
public static void updateInv(String companyCode, String whCode, String inventCode, BigDecimal qty,
BigDecimal weight) {
updateInv(companyCode, whCode, specId, qty, null, weight);
updateInv(companyCode, whCode, inventCode, qty, null, weight);
}
/**
......@@ -232,20 +232,20 @@ public class HGKCUtils {
*
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
* @param qty
* @param unitWeight
* @param weight
*/
public static void updateInv(String companyCode, String whCode, Long specId, BigDecimal qty,
BigDecimal unitWeight, BigDecimal weight) {
HGKC010 newKc010 = buildBean(companyCode, whCode, specId, qty, unitWeight, weight);
public static void updateInv(String companyCode, String whCode, String inventCode, BigDecimal qty,
BigDecimal unitWeight, BigDecimal weight) {
HGKC010 newKc010 = buildBean(companyCode, whCode, inventCode, qty, unitWeight, weight);
// 参数校验
checkUpdateInv(companyCode, whCode, specId, qty, weight);
checkUpdateInv(companyCode, whCode, inventCode, qty, weight);
// 锁库存
HGKCTools.HgKc010.lock(companyCode, whCode, specId);
HGKCTools.HgKc010.lock(companyCode, whCode, inventCode);
// 获取DB数据
HGKC010 dbKc010 = HGKCTools.HgKc010.get(companyCode, whCode, specId);
HGKC010 dbKc010 = HGKCTools.HgKc010.get(companyCode, whCode, inventCode);
if (dbKc010 == null) {
addInvData(newKc010);
} else {
......@@ -258,18 +258,18 @@ public class HGKCUtils {
*
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
* @param qty
* @param unitWeight
* @param weight
* @return
*/
private static HGKC010 buildBean(String companyCode, String whCode, Long specId, BigDecimal qty,
private static HGKC010 buildBean(String companyCode, String whCode, String inventCode, BigDecimal qty,
BigDecimal unitWeight, BigDecimal weight) {
HGKC010 newKc010 = new HGKC010();
newKc010.setCompanyCode(companyCode);
newKc010.setWhCode(whCode);
newKc010.setSpecId(specId);
newKc010.setInventCode(inventCode);
newKc010.setInvQty(qty);
newKc010.setInvUnitWeight(unitWeight);
newKc010.setInvWeight(weight);
......@@ -281,15 +281,15 @@ public class HGKCUtils {
*
* @param companyCode
* @param whCode
* @param specId
* @param inventCode
* @param qty
* @param weight
*/
private static void checkUpdateInv(String companyCode, String whCode, Long specId, BigDecimal qty,
private static void checkUpdateInv(String companyCode, String whCode, String inventCode, BigDecimal qty,
BigDecimal weight) {
AssertUtils.isEmpty(companyCode, "公司编码不能为空");
AssertUtils.isEmpty(whCode, "仓库编码不能为空");
AssertUtils.isTrue(specId == null || specId == 0, "规格ID不能为空");
AssertUtils.isEmpty(inventCode, "物料编码不能为空");
AssertUtils.isNull(qty, "库存变更数量不能为空");
AssertUtils.isNull(weight, "库存变更重量不能为空");
AssertUtils.isTrue(qty.compareTo(BigDecimal.ZERO) == 0
......@@ -307,7 +307,7 @@ public class HGKCUtils {
// 仓库
newKc010.setWhName(HGPZTools.HgPz007.get(newKc010.getWhCode()).getWhName());
// 规格
HGPZ005 dbPz005 = HGPZTools.HgPz005.get(newKc010.getSpecId());
HGPZ005 dbPz005 = HGPZTools.HgPz005.get(newKc010.getInventCode());
newKc010.setInventType(dbPz005.getInventType());
newKc010.setInventCode(dbPz005.getInventCode());
newKc010.setInventName(dbPz005.getInventName());
......
......@@ -327,7 +327,8 @@
LENGTH as "length", <!-- 长 -->
WIDTH as "width", <!-- 宽 -->
THICK as "thick", <!-- 厚 -->
STATUS as "status"
STATUS as "status",
COEFFICIENT as "coefficient" <!-- 系数 -->
FROM ${hggpSchema}.HGPZ005
WHERE DELETE_FLAG = 0
<isNotEmpty prepend=" AND " property="accountCode">
......
......@@ -235,12 +235,12 @@ public class HGPZTools {
*/
public static class HgPz005 {
public static HGPZ005 get(Long id) {
AssertUtils.isNull(id, "规格ID不能为空");
public static HGPZ005 get(String inventCode) {
AssertUtils.isNull(inventCode, "物料编码不能为空");
Map queryMap = new HashMap();
queryMap.put("id", id);
queryMap.put("inventCode", inventCode);
List<HGPZ005> results = DaoBase.getInstance().query(HGPZ005.QUERY, queryMap);
AssertUtils.isEmpty(results, String.format("规格[%s]不存在", id));
AssertUtils.isEmpty(results, String.format("物料编码[%s]不存在", inventCode));
return results.get(0);
}
......@@ -391,11 +391,11 @@ public class HGPZTools {
/**
* 计算单重
*
* @param id
* @param inventCode
* @return
*/
public static BigDecimal calcUnitWeight(Long id) {
HGPZ005 hgpz005 = get(id);
public static BigDecimal calcUnitWeight(String inventCode) {
HGPZ005 hgpz005 = get(inventCode);
return calcUnitWeight(hgpz005);
}
......@@ -567,11 +567,11 @@ public class HGPZTools {
*/
public static void setSpecInfo(DaoEPBase bean, String keyName) {
try {
String inventRecordId = BeanUtils.getProperty(bean, keyName);
if (StringUtils.isBlank(inventRecordId)) {
String inventCode = BeanUtils.getProperty(bean, keyName);
if (StringUtils.isBlank(inventCode)) {
return;
}
HGPZ005 dbPz06 = get(Long.parseLong(inventRecordId));
HGPZ005 dbPz06 = get(inventCode);
BeanUtils.setProperty(bean, HGPZ005.FIELD_SPEC, dbPz06.getSpec());
BeanUtils.setProperty(bean, HGPZ005.FIELD_LENGTH, dbPz06.getLength());
BeanUtils.setProperty(bean, HGPZ005.FIELD_WIDTH, dbPz06.getWidth());
......
......@@ -110,7 +110,7 @@ public class ServiceHGYX001 extends ServiceEPBase {
HGYX001A hgyx001A = new HGYX001A();
hgyx001A.fromMap(resultRow);
hgyx001A.setParentId(hgyx001.getId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......@@ -127,7 +127,7 @@ public class ServiceHGYX001 extends ServiceEPBase {
HGYX001A hgyx001A = new HGYX001A();
hgyx001A.fromMap(resultRow);
hgyx001A.setParentId(hgyx001.getId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......@@ -254,7 +254,7 @@ public class ServiceHGYX001 extends ServiceEPBase {
*/
public void addHGKC004A(List<HGYX001A> hgyx001As, HGKC004 hgkc004) {
for (HGYX001A hgyx001A : hgyx001As) {
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgkc004.getCompanyCode(), hgkc004.getWhCode(), hgyx001A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgkc004.getCompanyCode(), hgkc004.getWhCode(), hgyx001A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......@@ -300,7 +300,7 @@ public class ServiceHGYX001 extends ServiceEPBase {
HGYX001A hgyx001A = new HGYX001A();
hgyx001A.fromMap(resultRow);
hgyx001A.setParentId(hgyx001.getId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......@@ -319,7 +319,7 @@ public class ServiceHGYX001 extends ServiceEPBase {
HGYX001A hgyx001A = new HGYX001A();
hgyx001A.fromMap(resultRow);
hgyx001A.setParentId(hgyx001.getId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventRecordId());
HGKC010 hgkc010 = HGKCTools.HgKc010.get(hgyx001.getCompanyCode(), hgyx001.getConsWhCode(), hgyx001A.getInventCode());
if (hgkc010 == null) {
throw new PlatException("库存不足!");
}
......
......@@ -7,6 +7,7 @@ import com.baosight.hggp.core.dao.DaoUtils;
import com.baosight.hggp.core.enums.DeleteFlagEnum;
import com.baosight.hggp.hg.cg.tools.HGCGTools;
import com.baosight.hggp.hg.constant.HGSqlConstant;
import com.baosight.hggp.hg.kc.tools.HGKCTools;
import com.baosight.hggp.hg.zl.domain.HGZL001;
import com.baosight.hggp.hg.zl.utils.HGZLUtils;
import com.baosight.hggp.util.AssertUtils;
......@@ -27,7 +28,7 @@ import java.util.Map;
* @date 2024年01月09日 10:18
*/
public class ServiceHGZL001 extends ServiceBase {
/**
* 画面初始化
*
......@@ -47,7 +48,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 查询操作
*
......@@ -66,7 +67,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 新增操作
*
......@@ -98,7 +99,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 修改操作
*
......@@ -128,7 +129,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 设置基础信息
*
......@@ -147,7 +148,7 @@ public class ServiceHGZL001 extends ServiceBase {
// fZl001.setCheckUser(UserSession.getLoginName());
// fZl001.setCheckUserName(UserSession.getLoginCName());
}
/**
* 删除操作
*
......@@ -175,7 +176,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 已处理
*
......@@ -199,7 +200,7 @@ public class ServiceHGZL001 extends ServiceBase {
}
return inInfo;
}
/**
* 校验数据
*
......@@ -216,7 +217,7 @@ public class ServiceHGZL001 extends ServiceBase {
String.format("质检单[%s]的合格数量加不合格数量必须等于收货数量", checkNo));
}
}
/**
* 保存数据
*
......@@ -233,7 +234,9 @@ public class ServiceHGZL001 extends ServiceBase {
DaoUtils.update(HGSqlConstant.HgZl001.PROCESS, dbZl001);
// 更新收货单状态
HGCGTools.HgCg003.updateCheck(dbZl001);
//生成采购入库单
HGKCTools.HgKc001.putInStorageData(dbZl001.getReceiveNo());
}
}
}
......@@ -32,7 +32,7 @@ import java.util.Map;
* @date:2022/7/11,11:08
*/
public class ServiceHGZL001B extends ServiceEPBase {
/**
* 初始化
*
......@@ -53,7 +53,7 @@ public class ServiceHGZL001B extends ServiceEPBase {
}
return inInfo;
}
/**
* 查询数据列表
*
......@@ -65,14 +65,14 @@ public class ServiceHGZL001B extends ServiceEPBase {
public EiInfo query(EiInfo inInfo) {
try {
Map queryMap = EiInfoUtils.getFirstRow(inInfo);
queryMap.put(HGCG003.FIELD_STATUS, HGConstant.CgReceiveStatus.S_2);
queryMap.put(HGCG003.FIELD_STATUS, HGConstant.CgReceiveStatus.S_0);
inInfo = super.query(inInfo, HGCG003.QUERY, new HGCG003());
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
}
return inInfo;
}
/**
* 生成巡检单
*
......@@ -93,7 +93,7 @@ public class ServiceHGZL001B extends ServiceEPBase {
}
return inInfo;
}
/**
* 校验数据
*
......@@ -104,11 +104,11 @@ public class ServiceHGZL001B extends ServiceEPBase {
for (HGCG003 fCg003 : fCg003s) {
String receiveNo = fCg003.getReceiveNo();
HGCG003 dbSc003 = dbCg003Map.get(fCg003.getReceiveNo());
AssertUtils.isNotEquals(HGConstant.CgReceiveStatus.S_2, dbSc003.getStatus(),
String.format("采购收货单[%s]状态不是\"已收货\",不允许操作", receiveNo));
AssertUtils.isNotEquals(HGConstant.CgReceiveStatus.S_0, dbSc003.getStatus(),
String.format("采购收货单[%s]状态不是\"待确认\",不允许操作", receiveNo));
}
}
/**
* 保存数据
*
......@@ -130,5 +130,5 @@ public class ServiceHGZL001B extends ServiceEPBase {
HGCGTools.HgCg003.updateStatus(receiveNo, HGConstant.CgReceiveStatus.S_3);
}
}
}
......@@ -28,7 +28,6 @@ $(function () {
}
}
}
// 查询
$("#QUERY").on("click", query);
......@@ -44,6 +43,9 @@ $(function () {
$(window).load(function () {
// 查询
query();
initInventCode();
});
/**
......@@ -54,6 +56,31 @@ let query = function () {
}
/**
* 存货编号
*/
let initInventCode = function () {
//物料信息下拉
var inInfo=new EiInfo();
EiCommunicator.send("HGPZ005", "queryComboBox", inInfo, {
onSuccess: function (ei) {
let dataSource;
var input=$("#inqu_status-0-inventCode");
dataSource=ei.getBlock("invent_record_block_id").getMappedRows();
input.kendoDropDownList({
valuePrimitive: true,
dataTextField: "valueField",
dataValueField: "valueField",
optionLabel:"请选择",
dataSource: dataSource,
template: "[#:valueField#]#:textField#|#:param2Field#",
filter: "contains"
});
}, onFail: function (ei) {
}
}, {async: false});
}
/**
* 供应商变更
*/
let supCodeChange = function (e) {
......
......@@ -26,14 +26,14 @@
filter="contains" optionLabel="全部" defultValue="">
<EF:EFOptions blockId="sup_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="存货名称" blockId="inqu_status" ename="inventCode" row="0" colWidth="3"
<EF:EFSelect cname="存货编号" blockId="inqu_status" ename="inventCode" row="0" colWidth="3"
filter="contains" optionLabel="全部" defultValue="" template="[#=valueField#]#=textField#">
<EF:EFOptions blockId="invent_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="规格" ename="inqu_status-0-spec" colWidth="3" filter="contains" optionLabel="全部"
defultValue="">
<EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<%-- <EF:EFSelect cname="规格" ename="inqu_status-0-spec" colWidth="3" filter="contains" optionLabel="全部"--%>
<%-- defultValue="">--%>
<%-- <EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>--%>
<%-- </EF:EFSelect>--%>
</div>
<div class="row">
<EF:EFDateSpan startCname="创建时间(从)" endCname="至" blockId="inqu_status"
......
......@@ -40,6 +40,8 @@ $(function () {
$(window).load(function () {
// 查询
query();
initInventCode();
});
/**
......@@ -50,6 +52,31 @@ let query = function () {
}
/**
* 存货编号
*/
let initInventCode = function () {
//物料信息下拉
var inInfo=new EiInfo();
EiCommunicator.send("HGPZ005", "queryComboBox", inInfo, {
onSuccess: function (ei) {
let dataSource;
var input=$("#inqu_status-0-inventCode");
dataSource=ei.getBlock("invent_record_block_id").getMappedRows();
input.kendoDropDownList({
valuePrimitive: true,
dataTextField: "valueField",
dataValueField: "valueField",
optionLabel:"请选择",
dataSource: dataSource,
template: "[#:valueField#]#:textField#|#:param2Field#",
filter: "contains"
});
}, onFail: function (ei) {
}
}, {async: false});
}
/**
* 保存
*/
let save = function () {
......
......@@ -26,14 +26,14 @@
filter="contains" optionLabel="全部" defultValue="">
<EF:EFOptions blockId="sup_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="存货名称" blockId="inqu_status" ename="inventCode" row="0" colWidth="3"
<EF:EFSelect cname="存货编号" blockId="inqu_status" ename="inventCode" row="0" colWidth="3"
filter="contains" optionLabel="全部" defultValue="">
<EF:EFOptions blockId="invent_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="规格" ename="inqu_status-0-spec" colWidth="3" filter="contains" optionLabel="全部"
defultValue="">
<EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<%-- <EF:EFSelect cname="规格" ename="inqu_status-0-spec" colWidth="3" filter="contains" optionLabel="全部"--%>
<%-- defultValue="">--%>
<%-- <EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>--%>
<%-- </EF:EFSelect>--%>
</div>
<div class="row">
<EF:EFDateSpan startCname="创建时间(从)" endCname="至" blockId="inqu_status"
......@@ -57,7 +57,7 @@
<EF:EFColumn ename="supCode" cname="供应商编码" enable="false" width="100" align="center" hidden="true"/>
<EF:EFColumn ename="supName" cname="供应商名称" enable="false" width="100" align="center"/>
<EF:EFColumn ename="purUserName" cname="采购员" enable="false" width="100" align="center"/>
<EF:EFColumn ename="inventCode" cname="存货编码" enable="false" width="100" align="center" hidden="true"/>
<EF:EFColumn ename="inventCode" cname="存货编码" enable="false" width="100" align="center"/>
<EF:EFColumn ename="inventName" cname="存货名称" enable="false" width="100" align="center"/>
<EF:EFColumn ename="specId" cname="规格ID" enable="false" width="100" align="center" hidden="true"/>
<EF:EFColumn ename="spec" cname="规格" enable="false" width="120" align="center"/>
......
......@@ -7,7 +7,28 @@ $(function () {
pageSize: 20,
pageSizes: [20, 50, 70, 100],
},
columns: [],
columns: [
{
field: "operator",
title: "操作",
template: function (item) {
let status = item.submitStatus;
let isReturn = item.isReturn;
let template = '';
if (item.id){
if (status == 0) {
template += '<a style="cursor: pointer;display: inline-flex;justify-content: center;margin:auto 5px" '
+ 'onclick="updateSubmitStatus(' + item.id + ')" >提交</a>';
}
// if (status == 1 && isReturn == 0) {
// template += '<a style="cursor: pointer;display: inline-flex;justify-content: center;margin:auto 5px" '
// + 'onclick="sendBack(' + item.id + ')" >退回</a>';
// }
}
return template;
}
}
],
loadComplete: function (grid) {
// 确认
$("#CONFIRM").on("click", confirm);
......@@ -133,3 +154,40 @@ let selectReceiveCallback = function () {
// 关闭弹窗
JSColorbox.close();
}
/**
* 提交
* @param id
* @param status
*/
function updateSubmitStatus(id) {
let inEiInfo = new EiInfo();
inEiInfo.set("result-0-id", id);
JSUtils.confirm("确定提交此采购入库单吗? ", {
ok: function () {
EiCommunicator.send('HGKC001', 'updateSubmitStatus', inEiInfo, {
onSuccess: function (ei) {
if (ei.getStatus() >= 0) {
try {
query();
} catch (e) {
}
if (ei.getStatus() == 0) {
NotificationUtil(ei, 'warning');
} else {
NotificationUtil(ei);
}
} else {
NotificationUtil(ei, "error");
}
},
onFail: function (ei) {
// 发生异常
NotificationUtil("操作失败,原因[" + ei + "]", "error");
}
}
);
}
});
}
......@@ -46,13 +46,14 @@
<EF:EFRegion id="result" title="明细信息">
<EF:EFGrid blockId="result" autoDraw="override" isFloat="true" checkMode="row">
<EF:EFColumn ename="id" cname="内码" hidden="true"/>
<EF:EFColumn ename="operator" cname="操作" locked="true" width="80" enable="false" align="center" readonly="false"/>
<EF:EFColumn ename="companyCode" cname="公司编码" enable="false" width="100" align="center" hidden="true"/>
<EF:EFColumn ename="companyName" cname="公司名称" enable="false" width="130" align="center"/>
<EF:EFColumn ename="depositDate" cname="入库日期" enable="false" width="100" align="center" editType="date"
dateFormat="yyyy-MM-dd" parseFormats="['yyyyMMdd']"/>
<EF:EFColumn ename="depositNo" cname="入库单号" enable="false" width="120" align="center"/>
<EF:EFColumn ename="receiveNo" cname="收货单号" enable="false" width="120" align="center"/>
<EF:EFComboColumn ename="whCode" cname="仓库名称" enable="false" width="120" align="left" defaultValue=""
<EF:EFComboColumn ename="whCode" cname="仓库名称" enable="true" width="120" align="left" defaultValue=""
filter="contains" required="true">
<EF:EFOptions blockId="wh_record_block_id" valueField="valueField" textField="textField"/>
</EF:EFComboColumn>
......@@ -71,6 +72,9 @@
<EF:EFColumn ename="createdName" cname="创建人" enable="false" width="100" align="center"/>
<EF:EFColumn ename="createdTime" cname="创建时间" enable="false" width="140" align="center"
editType="datetime" parseFormats="['yyyyMMddHHmmss']"/>
<EF:EFComboColumn cname="提交状态" ename="submitStatus" width="90" align="center" required="false">
<EF:EFCodeOption codeName="hggp.sc.productStatus" />
</EF:EFComboColumn>
</EF:EFGrid>
</EF:EFRegion>
<EF:EFRegion title="提示">
......
......@@ -226,28 +226,31 @@ function INSERTCG() {
$.each(rows, function(index, item) {
if (item.get("status")==0){
message("未提交,无法选中!");
flag = false;
return false;
}
ids.push(item.planMaterialCode)
});
inEiInfo.set("planMaterialCodes",ids.join(','));
JSUtils.confirm("确定对勾选中的[" + rows.length + "]条数据做\"保存\"操作? ", {
ok: function () {
EiCommunicator.send('HGSC009A', 'insertcg', inEiInfo, {
onSuccess(response) {
NotificationUtil(response.msg);
query();
},
onFail(errorMessage, status, e) {
NotificationUtil("执行失败!", "error");
if(flag) {
inEiInfo.set("planMaterialCodes",ids.join(','));
JSUtils.confirm("确定对勾选中的[" + rows.length + "]条数据做\"保存\"操作? ", {
ok: function () {
EiCommunicator.send('HGSC009A', 'insertcg', inEiInfo, {
onSuccess(response) {
NotificationUtil(response.msg);
query();
},
onFail(errorMessage, status, e) {
NotificationUtil("执行失败!", "error");
}
}, {
async: false
}
}, {
async: false
}
);
);
}
});
}
});
}
inEiInfo.set("planMaterialCodes", ids.join(','));
}
......
......@@ -82,6 +82,9 @@ $(function () {
resultGrid.setCellValue(e.items[0], 'length', inventRecordBoxBlockId[i]['param7Field'])
resultGrid.setCellValue(e.items[0], 'width', inventRecordBoxBlockId[i]['param8Field'])
resultGrid.setCellValue(e.items[0], 'thick', inventRecordBoxBlockId[i]['param9Field'])
//系数
let coefficient = inventRecordBoxBlockId[i]['param10Field']
calUnitWeight(e.items[0],e.items[0].length,e.items[0].width,e.items[0].thick,coefficient);
}
}
}
......@@ -203,3 +206,10 @@ let deleteFunc = function () {
});
}
let calUnitWeight = function (item,length,width,thick,coefficient) {
if(length && width && thick && coefficient){
let amount = length * width * thick * coefficient/1000000;
//item['amount'] = amount.toString();
resultGrid.setCellValue(item, 'singleWeight', amount);
}
}
......@@ -58,7 +58,7 @@
<EF:EFColumn ename="singleWeight" cname="单重" width="120" align="right" format="{0:N3}"
defaultValue="0"
data-regex="/^-?[0-9]{1,17}([.][0-9]{1,3})?$/"
data-errorprompt="请输入数字,该值最大可设置17位整数和3位小数!"/>
data-errorprompt="请输入数字,该值最大可设置17位整数和3位小数!" enable="false"/>
<EF:EFColumn ename="grossAmount" cname="总重" width="120" align="right" enable="false" format="{0:N3}"/>
<EF:EFColumn ename="prdtCode" cname="部件编码" enable="false" width="120" align="center" hidden="true"/>
<EF:EFColumn ename="partCode" cname="零件编码" enable="false" width="120" align="center" hidden="true"/>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment