Commit 04dcf5ec by 宋祥

1.库存收发存字段调整

parent c90e8451
......@@ -16,7 +16,7 @@ import com.baosight.iplat4j.core.util.StringUtils;
* Copyrigth:Baosight Software LTD.co Copyright (c) 2019. <br>
*
* @version 1.0
* @history 2024-01-20 15:01:27 create
* @history 2024-01-25 8:45:22 create
*/
public class HPKC009 extends DaoEPBase {
......@@ -33,13 +33,13 @@ public class HPKC009 extends DaoEPBase {
public static final String FIELD_INVENT_TYPE = "inventType"; /* 存货类型*/
public static final String FIELD_INVENT_CODE = "inventCode"; /* 存货编码*/
public static final String FIELD_INVENT_NAME = "inventName"; /* 存货名称*/
public static final String FIELD_SPEC = "spec"; /* 规格*/
public static final String FIELD_INVENT_RECORD_ID = "inventRecordId"; /* 规格ID*/
public static final String FIELD_INIT_AMOUNT = "initAmount"; /* 期初数量*/
public static final String FIELD_INIT_WEIGHT = "initWeight"; /* 期初重量*/
public static final String FIELD_STOCKIN_AMOUNT = "stockinAmount"; /* 入库数量*/
public static final String FIELD_STOCKIN_WEIGHT = "stockinWeight"; /* 入库重量*/
public static final String FIELD_STOCKOUT_AMOUNT = "stockoutAmount"; /* 出库数量*/
public static final String FIELD_STOCKOUT_WEIGHT = "stockoutWeight"; /* 出库重量*/
public static final String FIELD_ENTER_AMOUNT = "enterAmount"; /* 入库数量*/
public static final String FIELD_ENTER_WEIGHT = "enterWeight"; /* 入库重量*/
public static final String FIELD_OUTER_AMOUNT = "outerAmount"; /* 出库数量*/
public static final String FIELD_OUTER_WEIGHT = "outerWeight"; /* 出库重量*/
public static final String FIELD_END_AMOUNT = "endAmount"; /* 期末数量*/
public static final String FIELD_END_WEIGHT = "endWeight"; /* 期末重量*/
public static final String FIELD_CREATED_BY = "createdBy"; /* 创建人*/
......@@ -60,13 +60,13 @@ public class HPKC009 extends DaoEPBase {
public static final String COL_INVENT_TYPE = "INVENT_TYPE"; /* 存货类型*/
public static final String COL_INVENT_CODE = "INVENT_CODE"; /* 存货编码*/
public static final String COL_INVENT_NAME = "INVENT_NAME"; /* 存货名称*/
public static final String COL_SPEC = "SPEC"; /* 规格*/
public static final String COL_INVENT_RECORD_ID = "INVENT_RECORD_ID"; /* 规格ID*/
public static final String COL_INIT_AMOUNT = "INIT_AMOUNT"; /* 期初数量*/
public static final String COL_INIT_WEIGHT = "INIT_WEIGHT"; /* 期初重量*/
public static final String COL_STOCKIN_AMOUNT = "STOCKIN_AMOUNT"; /* 入库数量*/
public static final String COL_STOCKIN_WEIGHT = "STOCKIN_WEIGHT"; /* 入库重量*/
public static final String COL_STOCKOUT_AMOUNT = "STOCKOUT_AMOUNT"; /* 出库数量*/
public static final String COL_STOCKOUT_WEIGHT = "STOCKOUT_WEIGHT"; /* 出库重量*/
public static final String COL_ENTER_AMOUNT = "ENTER_AMOUNT"; /* 入库数量*/
public static final String COL_ENTER_WEIGHT = "ENTER_WEIGHT"; /* 入库重量*/
public static final String COL_OUTER_AMOUNT = "OUTER_AMOUNT"; /* 出库数量*/
public static final String COL_OUTER_WEIGHT = "OUTER_WEIGHT"; /* 出库重量*/
public static final String COL_END_AMOUNT = "END_AMOUNT"; /* 期末数量*/
public static final String COL_END_WEIGHT = "END_WEIGHT"; /* 期末重量*/
public static final String COL_CREATED_BY = "CREATED_BY"; /* 创建人*/
......@@ -76,6 +76,12 @@ public class HPKC009 extends DaoEPBase {
public static final String COL_UPDATED_NAME = "UPDATED_NAME"; /* 更新人名称*/
public static final String COL_UPDATED_TIME = "UPDATED_TIME"; /* 更新时间*/
public static final String QUERY = "HPKC009.query";
public static final String COUNT = "HPKC009.count";
public static final String INSERT = "HPKC009.insert";
public static final String UPDATE = "HPKC009.update";
public static final String DELETE = "HPKC009.delete";
private Long id = null;
private String companyCode = " "; /* 企业编码 预留*/
private String depCode = " "; /* 部门编码*/
......@@ -84,16 +90,16 @@ public class HPKC009 extends DaoEPBase {
private String dateProc = " "; /* 日期*/
private String whCode = " "; /* 仓库编码*/
private String whName = " "; /* 仓库名称*/
private Integer inventType; /* 存货类型*/
private String inventType = " "; /* 存货类型*/
private String inventCode = " "; /* 存货编码*/
private String inventName = " "; /* 存货名称*/
private String spec = " "; /* 规格*/
private Long inventRecordId = null; /* 规格ID*/
private BigDecimal initAmount = new BigDecimal(0.00); /* 期初数量*/
private BigDecimal initWeight = new BigDecimal(0.00); /* 期初重量*/
private BigDecimal stockinAmount = new BigDecimal(0.00); /* 入库数量*/
private BigDecimal stockinWeight = new BigDecimal(0.00); /* 入库重量*/
private BigDecimal stockoutAmount = new BigDecimal(0.00); /* 出库数量*/
private BigDecimal stockoutWeight = new BigDecimal(0.00); /* 出库重量*/
private BigDecimal enterAmount = new BigDecimal(0.00); /* 入库数量*/
private BigDecimal enterWeight = new BigDecimal(0.00); /* 入库重量*/
private BigDecimal outerAmount = new BigDecimal(0.00); /* 出库数量*/
private BigDecimal outerWeight = new BigDecimal(0.00); /* 出库重量*/
private BigDecimal endAmount = new BigDecimal(0.00); /* 期末数量*/
private BigDecimal endWeight = new BigDecimal(0.00); /* 期末重量*/
private String createdBy = " "; /* 创建人*/
......@@ -154,8 +160,8 @@ public class HPKC009 extends DaoEPBase {
eiColumn.setDescName("存货名称");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_SPEC);
eiColumn.setDescName("规格");
eiColumn = new EiColumn(FIELD_INVENT_RECORD_ID);
eiColumn.setDescName("规格ID");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_INIT_AMOUNT);
......@@ -172,28 +178,28 @@ public class HPKC009 extends DaoEPBase {
eiColumn.setDescName("期初重量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_STOCKIN_AMOUNT);
eiColumn = new EiColumn(FIELD_ENTER_AMOUNT);
eiColumn.setType("N");
eiColumn.setScaleLength(2);
eiColumn.setFieldLength(10);
eiColumn.setDescName("入库数量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_STOCKIN_WEIGHT);
eiColumn = new EiColumn(FIELD_ENTER_WEIGHT);
eiColumn.setType("N");
eiColumn.setScaleLength(2);
eiColumn.setFieldLength(10);
eiColumn.setDescName("入库重量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_STOCKOUT_AMOUNT);
eiColumn = new EiColumn(FIELD_OUTER_AMOUNT);
eiColumn.setType("N");
eiColumn.setScaleLength(2);
eiColumn.setFieldLength(10);
eiColumn.setDescName("出库数量");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_STOCKOUT_WEIGHT);
eiColumn = new EiColumn(FIELD_OUTER_WEIGHT);
eiColumn.setType("N");
eiColumn.setScaleLength(2);
eiColumn.setFieldLength(10);
......@@ -380,7 +386,7 @@ public class HPKC009 extends DaoEPBase {
* get the inventType - 存货类型.
* @return the inventType
*/
public Integer getInventType() {
public String getInventType() {
return this.inventType;
}
......@@ -389,7 +395,7 @@ public class HPKC009 extends DaoEPBase {
*
* @param inventType - 存货类型
*/
public void setInventType(Integer inventType) {
public void setInventType(String inventType) {
this.inventType = inventType;
}
/**
......@@ -425,20 +431,20 @@ public class HPKC009 extends DaoEPBase {
this.inventName = inventName;
}
/**
* get the spec - 规格.
* @return the spec
* get the inventRecordId - 规格ID.
* @return the inventRecordId
*/
public String getSpec() {
return this.spec;
public Long getInventRecordId() {
return this.inventRecordId;
}
/**
* set the spec - 规格.
* set the inventRecordId - 规格ID.
*
* @param spec - 规格
* @param inventRecordId - 规格ID
*/
public void setSpec(String spec) {
this.spec = spec;
public void setInventRecordId(Long inventRecordId) {
this.inventRecordId = inventRecordId;
}
/**
* get the initAmount - 期初数量.
......@@ -473,68 +479,68 @@ public class HPKC009 extends DaoEPBase {
this.initWeight = initWeight;
}
/**
* get the stockinAmount - 入库数量.
* @return the stockinAmount
* get the enterAmount - 入库数量.
* @return the enterAmount
*/
public BigDecimal getStockinAmount() {
return this.stockinAmount;
public BigDecimal getEnterAmount() {
return this.enterAmount;
}
/**
* set the stockinAmount - 入库数量.
* set the enterAmount - 入库数量.
*
* @param stockinAmount - 入库数量
* @param enterAmount - 入库数量
*/
public void setStockinAmount(BigDecimal stockinAmount) {
this.stockinAmount = stockinAmount;
public void setEnterAmount(BigDecimal enterAmount) {
this.enterAmount = enterAmount;
}
/**
* get the stockinWeight - 入库重量.
* @return the stockinWeight
* get the enterWeight - 入库重量.
* @return the enterWeight
*/
public BigDecimal getStockinWeight() {
return this.stockinWeight;
public BigDecimal getEnterWeight() {
return this.enterWeight;
}
/**
* set the stockinWeight - 入库重量.
* set the enterWeight - 入库重量.
*
* @param stockinWeight - 入库重量
* @param enterWeight - 入库重量
*/
public void setStockinWeight(BigDecimal stockinWeight) {
this.stockinWeight = stockinWeight;
public void setEnterWeight(BigDecimal enterWeight) {
this.enterWeight = enterWeight;
}
/**
* get the stockoutAmount - 出库数量.
* @return the stockoutAmount
* get the outerAmount - 出库数量.
* @return the outerAmount
*/
public BigDecimal getStockoutAmount() {
return this.stockoutAmount;
public BigDecimal getOuterAmount() {
return this.outerAmount;
}
/**
* set the stockoutAmount - 出库数量.
* set the outerAmount - 出库数量.
*
* @param stockoutAmount - 出库数量
* @param outerAmount - 出库数量
*/
public void setStockoutAmount(BigDecimal stockoutAmount) {
this.stockoutAmount = stockoutAmount;
public void setOuterAmount(BigDecimal outerAmount) {
this.outerAmount = outerAmount;
}
/**
* get the stockoutWeight - 出库重量.
* @return the stockoutWeight
* get the outerWeight - 出库重量.
* @return the outerWeight
*/
public BigDecimal getStockoutWeight() {
return this.stockoutWeight;
public BigDecimal getOuterWeight() {
return this.outerWeight;
}
/**
* set the stockoutWeight - 出库重量.
* set the outerWeight - 出库重量.
*
* @param stockoutWeight - 出库重量
* @param outerWeight - 出库重量
*/
public void setStockoutWeight(BigDecimal stockoutWeight) {
this.stockoutWeight = stockoutWeight;
public void setOuterWeight(BigDecimal outerWeight) {
this.outerWeight = outerWeight;
}
/**
* get the endAmount - 期末数量.
......@@ -680,16 +686,16 @@ public class HPKC009 extends DaoEPBase {
setDateProc(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_DATE_PROC)), dateProc));
setWhCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_WH_CODE)), whCode));
setWhName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_WH_NAME)), whName));
setInventType(NumberUtils.toInteger(StringUtils.toString(map.get(FIELD_INVENT_TYPE)), inventType));
setInventType(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_INVENT_TYPE)), inventType));
setInventCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_INVENT_CODE)), inventCode));
setInventName(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_INVENT_NAME)), inventName));
setSpec(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_SPEC)), spec));
setInventRecordId(NumberUtils.toLong(StringUtils.toString(map.get(FIELD_INVENT_RECORD_ID)), inventRecordId));
setInitAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_INIT_AMOUNT)), initAmount));
setInitWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_INIT_WEIGHT)), initWeight));
setStockinAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_STOCKIN_AMOUNT)), stockinAmount));
setStockinWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_STOCKIN_WEIGHT)), stockinWeight));
setStockoutAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_STOCKOUT_AMOUNT)), stockoutAmount));
setStockoutWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_STOCKOUT_WEIGHT)), stockoutWeight));
setEnterAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_ENTER_AMOUNT)), enterAmount));
setEnterWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_ENTER_WEIGHT)), enterWeight));
setOuterAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_OUTER_AMOUNT)), outerAmount));
setOuterWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_OUTER_WEIGHT)), outerWeight));
setEndAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_END_AMOUNT)), endAmount));
setEndWeight(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_END_WEIGHT)), endWeight));
setCreatedBy(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_CREATED_BY)), createdBy));
......@@ -718,13 +724,13 @@ public class HPKC009 extends DaoEPBase {
map.put(FIELD_INVENT_TYPE, StringUtils.toString(inventType, eiMetadata.getMeta(FIELD_INVENT_TYPE)));
map.put(FIELD_INVENT_CODE, StringUtils.toString(inventCode, eiMetadata.getMeta(FIELD_INVENT_CODE)));
map.put(FIELD_INVENT_NAME, StringUtils.toString(inventName, eiMetadata.getMeta(FIELD_INVENT_NAME)));
map.put(FIELD_SPEC, StringUtils.toString(spec, eiMetadata.getMeta(FIELD_SPEC)));
map.put(FIELD_INVENT_RECORD_ID, StringUtils.toString(inventRecordId, eiMetadata.getMeta(FIELD_INVENT_RECORD_ID)));
map.put(FIELD_INIT_AMOUNT, StringUtils.toString(initAmount, eiMetadata.getMeta(FIELD_INIT_AMOUNT)));
map.put(FIELD_INIT_WEIGHT, StringUtils.toString(initWeight, eiMetadata.getMeta(FIELD_INIT_WEIGHT)));
map.put(FIELD_STOCKIN_AMOUNT, StringUtils.toString(stockinAmount, eiMetadata.getMeta(FIELD_STOCKIN_AMOUNT)));
map.put(FIELD_STOCKIN_WEIGHT, StringUtils.toString(stockinWeight, eiMetadata.getMeta(FIELD_STOCKIN_WEIGHT)));
map.put(FIELD_STOCKOUT_AMOUNT, StringUtils.toString(stockoutAmount, eiMetadata.getMeta(FIELD_STOCKOUT_AMOUNT)));
map.put(FIELD_STOCKOUT_WEIGHT, StringUtils.toString(stockoutWeight, eiMetadata.getMeta(FIELD_STOCKOUT_WEIGHT)));
map.put(FIELD_ENTER_AMOUNT, StringUtils.toString(enterAmount, eiMetadata.getMeta(FIELD_ENTER_AMOUNT)));
map.put(FIELD_ENTER_WEIGHT, StringUtils.toString(enterWeight, eiMetadata.getMeta(FIELD_ENTER_WEIGHT)));
map.put(FIELD_OUTER_AMOUNT, StringUtils.toString(outerAmount, eiMetadata.getMeta(FIELD_OUTER_AMOUNT)));
map.put(FIELD_OUTER_WEIGHT, StringUtils.toString(outerWeight, eiMetadata.getMeta(FIELD_OUTER_WEIGHT)));
map.put(FIELD_END_AMOUNT, StringUtils.toString(endAmount, eiMetadata.getMeta(FIELD_END_AMOUNT)));
map.put(FIELD_END_WEIGHT, StringUtils.toString(endWeight, eiMetadata.getMeta(FIELD_END_WEIGHT)));
map.put(FIELD_CREATED_BY, StringUtils.toString(createdBy, eiMetadata.getMeta(FIELD_CREATED_BY)));
......
......@@ -4,6 +4,7 @@ import com.baosight.hpjx.common.DdynamicEnum;
import com.baosight.hpjx.core.constant.CommonConstant;
import com.baosight.hpjx.core.dao.DaoUtils;
import com.baosight.hpjx.hp.constant.HPConstant;
import com.baosight.hpjx.hp.constant.HPSqlConstant;
import com.baosight.hpjx.hp.kc.domain.HPKC005;
import com.baosight.hpjx.hp.kc.domain.HPKC006;
import com.baosight.hpjx.hp.kc.domain.HPKC007;
......@@ -55,7 +56,10 @@ public class ServiceHPKC005 extends ServiceBase {
}
/**
* 查询操作.
* 查询操作
*
* @param inInfo
* @return
*/
@Override
public EiInfo query(EiInfo inInfo) {
......@@ -64,8 +68,8 @@ public class ServiceHPKC005 extends ServiceBase {
String receiptDate = MapUtils.getString(queryRow, "receiptDate");
queryRow.put("receiptDate", StringUtil.removeSpecifiedCharacter(receiptDate,
StringUtil.DEFAULT_CHARACTER_TO_BE_REMOVED));
inInfo = super.query(inInfo, "HPKC005.query", new HPKC005());
List sum = dao.query("HPKC005.querySum", queryRow);
inInfo = super.query(inInfo, HPKC005.QUERY, new HPKC005());
List sum = dao.query(HPSqlConstant.HPKC005.QUERY_SUM, queryRow);
inInfo.getBlock(EiConstant.resultBlock).set(EiConstant.COLUMN_TOTAL_SUM, sum.get(0));
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
......@@ -74,75 +78,11 @@ public class ServiceHPKC005 extends ServiceBase {
}
/**
* 保存操作.
* 新增操作
*
* @param inInfo
* @return
*/
public EiInfo save(EiInfo inInfo) {
try {
List<Map> resultRows = inInfo.getBlock(EiConstant.resultBlock).getRows();
// 数据校验
this.checkSaveData(resultRows);
// 写入数据
for (int i = 0; i < resultRows.size(); i++) {
HPKC005 fKc005 = new HPKC005();
fKc005.fromMap(resultRows.get(i));
// 设置基础信息
this.setBaseInfo(fKc005);
if (fKc005.getId() == null || fKc005.getId() == 0) {
this.add(fKc005);
} else {
this.modify(fKc005);
}
}
inInfo = this.query(inInfo);
inInfo.setStatus(EiConstant.STATUS_DEFAULT);
inInfo.setMsg("操作成功!本次对[" + resultRows.size() + "]条数据保存成功!");
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "保存失败");
}
return inInfo;
}
/**
* 校验保存的数据
*
* @param resultRows
*/
private void checkSaveData(List<Map> resultRows) {
for (int i = 0; i < resultRows.size(); i++) {
HPKC005 fKc005 = new HPKC005();
fKc005.fromMap(resultRows.get(i));
AssertUtils.isEmpty(fKc005.getWhCode(), "仓库名称不能为空");
AssertUtils.isNull(fKc005.getInventCode(), "存货名称不能为空");
}
}
/**
* 新增
*
* @param fKc005
*/
private void add(HPKC005 fKc005) {
// 生成单据号
fKc005.setCheckNo(SequenceGenerator.getNextSequence(
HPConstant.SequenceId.CHECK_NO));
DaoUtils.insert("HPKC005.insert", fKc005);
}
/**
* 修改数据
*
* @param fKc005
*/
private void modify(HPKC005 fKc005) {
DaoUtils.update("HPKC005.update", fKc005);
}
/**
* 新增操作.
*/
@Override
public EiInfo insert(EiInfo inInfo) {
try {
......
......@@ -26,7 +26,10 @@ import java.util.Map;
public class ServiceHPKC008 extends ServiceBase {
/**
* 画面初始化.
* 画面初始化
*
* @param inInfo
* @return
*/
public EiInfo initLoad(EiInfo inInfo) {
try {
......@@ -39,7 +42,10 @@ public class ServiceHPKC008 extends ServiceBase {
}
/**
* 查询操作.
* 查询操作
*
* @param inInfo
* @return
*/
@Override
public EiInfo query(EiInfo inInfo) {
......@@ -80,6 +86,8 @@ public class ServiceHPKC008 extends ServiceBase {
HPConstant.SequenceId.HPKC008_NUMBER));
DaoUtils.insert(HPKC008.INSERT, fKc008);
}
inInfo = this.query(inInfo);
inInfo.setStatus(EiConstant.STATUS_DEFAULT);
inInfo.setMsg("操作成功!本次对[" + resultRows.size() + "]条数据新增成功!");
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "新增失败");
......
......@@ -57,6 +57,8 @@ public class ServiceHPKC009 extends ServiceBase {
try {
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.WH_RECORD_BLOCK_ID), null);
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.INVENT_NAME_BLOCK_ID), null);
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.INVENT_SPEC_BLOCK_ID), null);
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.SPEC_NAME_BLOCK_ID), null, false);
inInfo.addBlock(EiConstant.resultBlock).addBlockMeta(new HPKC009().eiMetadata);
} catch (PlatException e) {
LogUtils.setDetailMsg(inInfo, e, "初始化失败");
......@@ -78,7 +80,7 @@ public class ServiceHPKC009 extends ServiceBase {
queryRow.put("dateProc", StringUtil.removeSpecifiedCharacter(receiptDate,
StringUtil.DEFAULT_CHARACTER_TO_BE_REMOVED));
queryRow.put("dateType", CommonConstant.DateType.MONTH);
inInfo = super.query(inInfo, "HPKC009.query", new HPPZ009());
inInfo = super.query(inInfo, HPKC009.QUERY, new HPKC009());
List sum = dao.query("HPKC009.querySum", queryRow);
inInfo.getBlock(EiConstant.resultBlock).set(EiConstant.COLUMN_TOTAL_SUM, sum.get(0));
} catch (Exception e) {
......@@ -197,14 +199,14 @@ public class ServiceHPKC009 extends ServiceBase {
Map<String, HPKC009> dKc009Map = dKc009s.stream().collect(Collectors.toMap(item ->
item.getCompanyCode() + "#" + item.getDepCode() + "#" + item.getWhCode() + "#"
+ item.getInventType() + "#" + item.getInventCode() + "#"
+ item.getSpec(), item -> item));
+ item.getInventRecordId(), item -> item));
// 根据期末库存生成收发存对象
for (HPKC001 aItem : aItems) {
String key = aItem.getCompanyCode() + "#" + aItem.getDepCode() + "#"
+ aItem.getWhCode() + "#" + aItem.getMaterialType() + "#"
+ aItem.getMaterialCode() + "#" + aItem.getSpec();
HPKC009 kc009 = BeanUtils.copy(aItem, HPKC009.class);
kc009.setInventType(Integer.parseInt(aItem.getMaterialType()));
kc009.setInventType(aItem.getMaterialType());
kc009.setInventCode(aItem.getMaterialCode());
kc009.setKcType(HPConstant.KcType.CG);
kc009.setDateType(queryMap.get("dateType").toString());
......@@ -214,22 +216,22 @@ public class ServiceHPKC009 extends ServiceBase {
kc009.setEndWeight(aItem.getWeight());
// 收入
HPKC001 bKc001 = bKc001Map.get(key);
kc009.setStockinAmount(bKc001 == null ? BigDecimal.ZERO : BigDecimal.valueOf(bKc001.getQuantity()));
kc009.setStockinWeight(bKc001 == null ? BigDecimal.ZERO : bKc001.getWeight());
kc009.setEnterAmount(bKc001 == null ? BigDecimal.ZERO : BigDecimal.valueOf(bKc001.getQuantity()));
kc009.setEnterWeight(bKc001 == null ? BigDecimal.ZERO : bKc001.getWeight());
// 发出
HPKC002 cKc002 = cKc001Map.get(key);
kc009.setStockoutAmount(cKc002 == null ? BigDecimal.ZERO : BigDecimal.valueOf(cKc002.getQuantity()));
kc009.setStockoutWeight(cKc002 == null ? BigDecimal.ZERO : cKc002.getWeight());
kc009.setOuterAmount(cKc002 == null ? BigDecimal.ZERO : BigDecimal.valueOf(cKc002.getQuantity()));
kc009.setOuterWeight(cKc002 == null ? BigDecimal.ZERO : cKc002.getWeight());
// 期初
HPKC009 dKc009 = dKc009Map.get(key);
if (dKc009 != null) {
kc009.setInitAmount(dKc009.getEndAmount());
kc009.setInitWeight(dKc009.getEndWeight());
} else {
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getStockoutAmount())
.subtract(kc009.getStockinAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getStockoutWeight())
.subtract(kc009.getStockinWeight()));
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getOuterAmount())
.subtract(kc009.getEnterAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getOuterWeight())
.subtract(kc009.getEnterWeight()));
}
kc009Map.put(key, kc009);
}
......@@ -272,7 +274,7 @@ public class ServiceHPKC009 extends ServiceBase {
+ aItem.getInventCode();
HPKC009 kc009 = BeanUtils.copy(aItem, HPKC009.class);
kc009.setWhCode(aItem.getWhCode());
kc009.setInventType(aItem.getInventType());
kc009.setInventType(aItem.getInventType() + "");
kc009.setInventCode(aItem.getInventCode());
kc009.setKcType(HPConstant.KcType.SC);
kc009.setDateType(queryMap.get("dateType").toString());
......@@ -282,22 +284,22 @@ public class ServiceHPKC009 extends ServiceBase {
kc009.setEndWeight(aItem.getWeight());
// 收入
HPKC003 bItem = bItemMap.get(key);
kc009.setStockinAmount(bItem == null ? BigDecimal.ZERO : bItem.getAmount());
kc009.setStockinWeight(bItem == null ? BigDecimal.ZERO : bItem.getWeight());
kc009.setEnterAmount(bItem == null ? BigDecimal.ZERO : bItem.getAmount());
kc009.setEnterWeight(bItem == null ? BigDecimal.ZERO : bItem.getWeight());
// 发出
HPKC004 cItem = cItemMap.get(key);
kc009.setStockoutAmount(cItem == null ? BigDecimal.ZERO : cItem.getAmount());
kc009.setStockoutWeight(cItem == null ? BigDecimal.ZERO : cItem.getWeight());
kc009.setOuterAmount(cItem == null ? BigDecimal.ZERO : cItem.getAmount());
kc009.setOuterWeight(cItem == null ? BigDecimal.ZERO : cItem.getWeight());
// 期初
HPKC009 dItem = dItemMap.get(key);
if (dItem != null) {
kc009.setInitAmount(dItem.getEndAmount());
kc009.setInitWeight(dItem.getEndWeight());
} else {
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getStockoutAmount())
.subtract(kc009.getStockinAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getStockoutWeight())
.subtract(kc009.getStockinWeight()));
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getOuterAmount())
.subtract(kc009.getEnterAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getOuterWeight())
.subtract(kc009.getEnterWeight()));
}
kc009Map.put(key, kc009);
}
......@@ -338,7 +340,7 @@ public class ServiceHPKC009 extends ServiceBase {
String key = aItem.getCompanyCode() + "#" + aItem.getDepCode() + "#"
+ aItem.getWhCode() + "#" + aItem.getInventType() + "#" + aItem.getInventCode();
HPKC009 kc009 = BeanUtils.copy(aItem, HPKC009.class);
kc009.setInventType(Integer.parseInt(aItem.getInventType()));
kc009.setInventType(aItem.getInventType());
kc009.setInventCode(aItem.getInventCode());
kc009.setKcType(HPConstant.KcType.QT);
kc009.setDateType(queryMap.get("dateType").toString());
......@@ -348,22 +350,22 @@ public class ServiceHPKC009 extends ServiceBase {
kc009.setEndWeight(aItem.getWeight());
// 收入
HPKC006 bItem = bItemMap.get(key);
kc009.setStockinAmount(bItem == null ? BigDecimal.ZERO : bItem.getAmount());
kc009.setStockinWeight(bItem == null ? BigDecimal.ZERO : bItem.getWeight());
kc009.setEnterAmount(bItem == null ? BigDecimal.ZERO : bItem.getAmount());
kc009.setEnterWeight(bItem == null ? BigDecimal.ZERO : bItem.getWeight());
// 发出
HPKC007 cItem = cItemMap.get(key);
kc009.setStockoutAmount(cItem == null ? BigDecimal.ZERO : cItem.getAmount());
kc009.setStockoutWeight(cItem == null ? BigDecimal.ZERO : cItem.getWeight());
kc009.setOuterAmount(cItem == null ? BigDecimal.ZERO : cItem.getAmount());
kc009.setOuterWeight(cItem == null ? BigDecimal.ZERO : cItem.getWeight());
// 期初
HPKC009 dItem = dItemMap.get(key);
if (dItem != null) {
kc009.setInitAmount(dItem.getEndAmount());
kc009.setInitWeight(dItem.getEndWeight());
} else {
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getStockoutAmount())
.subtract(kc009.getStockinAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getStockoutWeight())
.subtract(kc009.getStockinWeight()));
kc009.setInitAmount(kc009.getEndAmount().add(kc009.getOuterAmount())
.subtract(kc009.getOuterAmount()));
kc009.setInitWeight(kc009.getEndWeight().add(kc009.getOuterWeight())
.subtract(kc009.getEnterWeight()));
}
kc009Map.put(key, kc009);
}
......
......@@ -14,13 +14,13 @@
INVENT_TYPE as "inventType", <!-- 存货类型 -->
INVENT_CODE as "inventCode", <!-- 存货编码 -->
INVENT_NAME as "inventName", <!-- 存货名称 -->
SPEC as "spec", <!-- 规格 -->
INVENT_RECORD_ID as "inventRecordId", <!-- 规格ID -->
INIT_AMOUNT as "initAmount", <!-- 期初数量 -->
INIT_WEIGHT as "initWeight", <!-- 期初重量 -->
STOCKIN_AMOUNT as "stockinAmount", <!-- 入库数量 -->
STOCKIN_WEIGHT as "stockinWeight", <!-- 入库重量 -->
STOCKOUT_AMOUNT as "stockoutAmount", <!-- 出库数量 -->
STOCKOUT_WEIGHT as "stockoutWeight", <!-- 出库重量 -->
ENTER_AMOUNT as "enterAmount", <!-- 入库数量 -->
ENTER_WEIGHT as "enterWeight", <!-- 入库重量 -->
OUTER_AMOUNT as "outerAmount", <!-- 出库数量 -->
OUTER_WEIGHT as "outerWeight", <!-- 出库重量 -->
END_AMOUNT as "endAmount", <!-- 期末数量 -->
END_WEIGHT as "endWeight", <!-- 期末重量 -->
CREATED_BY as "createdBy", <!-- 创建人 -->
......@@ -65,18 +65,12 @@
<isNotEmpty prepend=" AND " property="inventName">
INVENT_NAME = #inventName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="spec">
SPEC = #spec#
<isNotEmpty prepend=" AND " property="inventRecordId">
INVENT_RECORD_ID = #inventRecordId#
</isNotEmpty>
</sql>
<!-- 查询 -->
<select id="query" resultClass="com.baosight.hpjx.hp.kc.domain.HPKC009">
SELECT
<include refid="column"/>
FROM ${hpjxSchema}.T_HPKC009
WHERE 1=1
<include refid="condition"/>
<sql id="order">
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
......@@ -85,6 +79,16 @@
ID asc
</isEmpty>
</dynamic>
</sql>
<!-- 查询 -->
<select id="query" resultClass="com.baosight.hpjx.hp.kc.domain.HPKC009">
SELECT
<include refid="column"/>
FROM ${hpjxSchema}.T_HPKC009
WHERE 1=1
<include refid="condition"/>
<include refid="order"/>
</select>
<select id="count" resultClass="int">
......@@ -97,10 +101,10 @@
SELECT
COALESCE(SUM(INIT_AMOUNT), 0) AS "initAmount", <!-- 期初数量 -->
COALESCE(SUM(INIT_WEIGHT), 0) AS "initWeight", <!-- 期初重量 -->
COALESCE(SUM(STOCKIN_AMOUNT), 0) AS "stockinAmount", <!-- 入库数量 -->
COALESCE(SUM(STOCKIN_WEIGHT), 0) AS "stockinWeight", <!-- 入库重量 -->
COALESCE(SUM(STOCKOUT_AMOUNT), 0) AS "stockoutAmount", <!-- 差异数量 -->
COALESCE(SUM(STOCKOUT_WEIGHT), 0) AS "stockoutWeight", <!-- 差异重量 -->
COALESCE(SUM(ENTER_AMOUNT), 0) AS "enterAmount", <!-- 入库数量 -->
COALESCE(SUM(ENTER_WEIGHT), 0) AS "enterWeight", <!-- 入库重量 -->
COALESCE(SUM(OUTER_AMOUNT), 0) AS "outerAmount", <!-- 差异数量 -->
COALESCE(SUM(OUTER_WEIGHT), 0) AS "outerWeight", <!-- 差异重量 -->
COALESCE(SUM(END_AMOUNT), 0) AS "endAmount", <!-- 期末数量 -->
COALESCE(SUM(END_WEIGHT), 0) AS "endWeight" <!-- 期末重量 -->
FROM ${hpjxSchema}.T_HPKC009
......@@ -110,15 +114,34 @@
<insert id="insert">
INSERT INTO ${hpjxSchema}.T_HPKC009 (
COMPANY_CODE, DEP_CODE, KC_TYPE, DATE_TYPE, DATE_PROC, WH_CODE, WH_NAME, INVENT_TYPE,
INVENT_CODE, INVENT_NAME, SPEC, INIT_AMOUNT, INIT_WEIGHT, STOCKIN_AMOUNT,
STOCKIN_WEIGHT, STOCKOUT_AMOUNT, STOCKOUT_WEIGHT, END_AMOUNT, END_WEIGHT,
CREATED_BY, CREATED_NAME, CREATED_TIME
COMPANY_CODE, <!-- 企业编码 预留 -->
DEP_CODE, <!-- 部门编码 -->
KC_TYPE, <!-- 库存类型:CG:采购,SC:生产,QT:其他 -->
DATE_TYPE, <!-- 日期类型:DAY:天,MONTH:月 -->
DATE_PROC, <!-- 日期 -->
WH_CODE, <!-- 仓库编码 -->
WH_NAME, <!-- 仓库名称 -->
INVENT_TYPE, <!-- 存货类型 -->
INVENT_CODE, <!-- 存货编码 -->
INVENT_NAME, <!-- 存货名称 -->
INVENT_RECORD_ID, <!-- 规格ID -->
INIT_AMOUNT, <!-- 期初数量 -->
INIT_WEIGHT, <!-- 期初重量 -->
ENTER_AMOUNT, <!-- 入库数量 -->
ENTER_WEIGHT, <!-- 入库重量 -->
OUTER_AMOUNT, <!-- 出库数量 -->
OUTER_WEIGHT, <!-- 出库重量 -->
END_AMOUNT, <!-- 期末数量 -->
END_WEIGHT, <!-- 期末重量 -->
CREATED_BY, <!-- 创建人 -->
CREATED_NAME, <!-- 创建人名称 -->
CREATED_TIME <!-- 创建时间 -->
) VALUES (
#companyCode#, #depCode#, #kcType#, #dateType#, #dateProc#, #whCode#, #whName#, #inventType#,
#inventCode#, #inventName#, #spec#, #initAmount#, #initWeight#, #stockinAmount#,
#stockinWeight#, #stockoutAmount#, #stockoutWeight#, #endAmount#, #endWeight#,
#createdBy#, #createdName#, #createdTime#
#companyCode#, #depCode#, #kcType#, #dateType#, #dateProc#, #whCode#,
#whName#, #inventType#, #inventCode#, #inventName#, #inventRecordId#,
#initAmount#, #initWeight#, #enterAmount#, #enterWeight#, #outerAmount#,
#outerWeight#, #endAmount#, #endWeight#, #createdBy#, #createdName#,
#createdTime#
)
</insert>
......
......@@ -51,11 +51,6 @@ $(function() {
template: function (options) {
return showUserName(options.createdBy, options.createdName);
}
}, {
field: "updatedName",
template: function (options) {
return showUserName(options.updatedBy, options.updatedName);
}
}],
loadComplete: function (grid) {
}
......
......@@ -22,12 +22,6 @@
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="material_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<%--<EF:EFSelect ename="inqu_status-0-status" cname="单据状态" filter="contains" required="false"
template="#=textField#" valueTemplate="#=textField#" defaultValue="">
<EF:EFOption label="请选择" value=""></EF:EFOption>
<EF:EFOption label="0-待审核" value="0"></EF:EFOption>
<EF:EFOption label="1-已审核" value="1"></EF:EFOption>
</EF:EFSelect>--%>
</div>
<div class="row">
<EF:EFSelect ename="inqu_status-0-spec" cname="规格" colWidth="3" filter="contains" defultValue="">
......@@ -42,36 +36,32 @@
<EF:EFColumn ename="id" cname="内码" hidden="true"/>
<EF:EFColumn ename="checkNo" cname="盘点单号" enable="false" width="140" align="center"/>
<EF:EFColumn ename="receiptDate" cname="单据日期" editType="date" dateFormat="yyyy-MM-dd"
parseFormats="['yyyyMMdd']" width="90" align="center" required="true"/>
<%--<EF:EFComboColumn ename="status" cname="单据状态" enable="false" width="100" readonly="true"
textField="textField" valueField="valueField" align="center">
<EF:EFOption label="0-待审核" value="0"></EF:EFOption>
<EF:EFOption label="1-已审核" value="1"></EF:EFOption>
</EF:EFComboColumn>--%>
parseFormats="['yyyyMMdd']" width="90" align="center" readonly="true"/>
<EF:EFComboColumn ename="whCode" cname="仓库编码" width="120" columnTemplate="#=textField#"
itemTemplate="#=textField#" blockName="wh_record_block_id"
textField="textField" valueField="valueField"
align="center" filter="contains" required="true">
align="center" filter="contains" readonly="true">
</EF:EFComboColumn>
<EF:EFComboColumn ename="inventType" cname="存货类型" width="100" align="center" required="true">
<EF:EFComboColumn ename="inventType" cname="存货类型" width="100" align="center"
readonly="true">
<EF:EFCodeOption codeName="hpjx.hpkc.inventType"/>
</EF:EFComboColumn>
<EF:EFColumn ename="inventCode" cname="存货名称" width="120" align="center" required="true"/>
<EF:EFColumn ename="inventRecordId" cname="规格" width="120" align="center"/>
<EF:EFColumn ename="inventCode" cname="存货名称" width="120" align="center" readonly="true"/>
<EF:EFColumn ename="inventRecordId" cname="规格" width="120" align="center" readonly="true"/>
<EF:EFColumn ename="bookAmount" cname="账面数量" format="{0:N3}" maxLength="20" width="90" align="right"
sumType="all" required="true"/>
sumType="all" readonly="true"/>
<EF:EFColumn ename="bookWeight" cname="账面重量" format="{0:N3}" maxLength="20" width="90" align="right"
sumType="all" required="true"/>
sumType="all" readonly="true"/>
<EF:EFColumn ename="entityAmount" cname="实物数量" format="{0:N3}" maxLength="20" width="100" align="right"
sumType="all" required="true"/>
sumType="all" readonly="true"/>
<EF:EFColumn ename="entityWeight" cname="实物重量" format="{0:N3}" maxLength="20" width="100" align="right"
sumType="all" required="true"/>
sumType="all" readonly="true"/>
<EF:EFColumn ename="diffAmount" cname="差异数量" enable="false" format="{0:N3}" maxLength="20" width="100"
align="right" sumType="all"/>
align="right" sumType="all" required="true" readonly="true"/>
<EF:EFColumn ename="diffWeight" cname="差异重量" enable="false" format="{0:N3}" maxLength="20" width="100"
align="right" sumType="all"/>
<EF:EFColumn ename="notes" cname="备注" width="100"/>
<EF:EFColumn ename="createdBy" cname="创建人" enable="false" width="100" align="center"/>
align="right" sumType="all" required="true" readonly="true"/>
<EF:EFColumn ename="notes" cname="备注" width="100" readonly="true"/>
<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:EFGrid>
......
......@@ -8,16 +8,26 @@
<EF:EFPage title="库存收发存">
<EF:EFRegion id="inqu" title="查询条件">
<div class="row">
<EF:EFDatePicker ename="inqu_status-0-dateProc" cname="日期:" start="year" depth="year"
role="date" format="yyyy-MM" readonly="true"/>
<EF:EFSelect ename="inqu_status-0-inventType" cname="存货类型:" filter="contains" defaultValue="">
<EF:EFOption label="请选择" value=""/>
<EF:EFDatePicker cname="单据日期" ename="inqu_status-0-receiptDate" colWidth="3"
role="date" format="yyyy-MM-dd" readonly="true"/>
<EF:EFSelect cname="存货类型" ename="inqu_status-0-inventType" colWidth="3" filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFCodeOption codeName="hpjx.hpkc.inventType"/>
</EF:EFSelect>
<EF:EFSelect ename="inqu_status-0-whCode" cname="仓库名称" filter="contains" defultValue="">
<EF:EFOption label="请选择" value=""/>
<EF:EFSelect cname="仓库名称" ename="inqu_status-0-whCode" colWidth="3" filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="wh_record_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
<EF:EFSelect cname="存货名称" ename="inqu_status-0-inventCode" colWidth="3" filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="invent_name_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
</div>
<div class="row">
<EF:EFSelect cname="规格" ename="inqu_status-0-spec" colWidth="3" filter="contains">
<EF:EFOption label="全部" value=""/>
<EF:EFOptions blockId="spec_name_block_id" textField="textField" valueField="valueField"/>
</EF:EFSelect>
</div>
</EF:EFRegion>
......@@ -28,18 +38,16 @@
<EF:EFCodeOption codeName="hpjx.hpkc.kcType"/>
</EF:EFComboColumn>
<EF:EFColumn cname="日期" ename="dateProc" enable="false" width="90" align="center"/>
<EF:EFComboColumn cname="仓库名称" ename="whCode" enable="false" columnTemplate="#=textField#"
itemTemplate="#=textField#" blockName="wh_record_block_id"
textField="textField" valueField="valueField"
align="center" filter="contains" width="100">
</EF:EFComboColumn>
<EF:EFComboColumn cname="存货类型" ename="inventType" enable="false" width="90" align="center">
<EF:EFCodeOption codeName="hpjx.hpkc.inventType"/>
</EF:EFComboColumn>
<EF:EFComboColumn cname="存货名称" ename="inventCode" enable="false" columnTemplate="#=textField#"
itemTemplate="#=textField#" blockName="invent_name_block_id"
textField="textField" valueField="valueField"
align="center" filter="contains" width="100">
<EF:EFComboColumn cname="仓库名称" ename="whCode" enable="false" width="100" align="center"
blockName="wh_record_block_id" textField="textField" valueField="valueField"
columnTemplate="#=textField#" itemTemplate="#=textField#">
</EF:EFComboColumn>
<EF:EFComboColumn cname="存货名称" ename="inventCode" enable="false" width="100" align="center"
blockName="invent_name_block_id" textField="textField" valueField="valueField"
columnTemplate="#=textField#" itemTemplate="#=textField#">
</EF:EFComboColumn>
<EF:EFColumn cname="规格" ename="spec" enable="false" width="120"/>
<EF:EFColumn cname="期初数量" ename="initAmount" enable="false" width="90" align="right" format="{0:N3}"
......
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