Commit 7e086e16 by liuyang

2024-09-12 签证单选择项目修复,销售合同的甲方筛选问题,翻页问题

parent e2a8b13e
......@@ -155,6 +155,7 @@ public class HGCW002 extends DaoEPBase {
private String updatedTime = " "; /* 记录修改时间*/
private String depCode = " "; /* 部门编码*/
private BigDecimal remainingAmount = new BigDecimal("0"); /* 剩余开票/收票金额*/
private String contractTypeStr = ""; /* 合同类型;1销售合同2劳务合同3补充协议4合同外用工*/
/**
* initialize the metadata.
......@@ -338,6 +339,10 @@ public class HGCW002 extends DaoEPBase {
eiColumn.setFieldLength(15);
eiColumn.setDescName("剩余开票/收票金额");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn("contractTypeStr");
eiColumn.setDescName("合同类型");
eiMetadata.addMeta(eiColumn);
}
/**
......@@ -996,6 +1001,14 @@ public class HGCW002 extends DaoEPBase {
this.remainingAmount = remainingAmount;
}
public String getContractTypeStr() {
return contractTypeStr;
}
public void setContractTypeStr(String contractTypeStr) {
this.contractTypeStr = contractTypeStr;
}
/**
* get the value from Map.
*
......@@ -1045,6 +1058,7 @@ public class HGCW002 extends DaoEPBase {
setUpdatedTime(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_UPDATED_TIME)), updatedTime));
setDepCode(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_DEP_CODE)), depCode));
setRemainingAmount(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_REMAINING_AMOUNT)), remainingAmount));
setContractTypeStr(StringUtils.defaultIfEmpty(StringUtils.toString(map.get("contractTypeStr")), contractTypeStr));
}
/**
......@@ -1095,6 +1109,7 @@ public class HGCW002 extends DaoEPBase {
map.put(FIELD_UPDATED_TIME, StringUtils.toString(updatedTime, eiMetadata.getMeta(FIELD_UPDATED_TIME)));
map.put(FIELD_DEP_CODE, StringUtils.toString(depCode, eiMetadata.getMeta(FIELD_DEP_CODE)));
map.put(FIELD_REMAINING_AMOUNT, StringUtils.toString(remainingAmount, eiMetadata.getMeta(FIELD_REMAINING_AMOUNT)));
map.put("contractTypeStr", StringUtils.toString(contractTypeStr, eiMetadata.getMeta("contractTypeStr")));
return map;
}
......
......@@ -11,15 +11,13 @@ import com.baosight.hggp.hg.cw.domain.HGCW003;
import com.baosight.hggp.hg.cw.domain.HGCW999;
import com.baosight.hggp.hg.cw.tools.HGCWTools;
import com.baosight.hggp.hg.cw.vo.UserVO;
import com.baosight.hggp.hg.pz.domain.HGPZ002;
import com.baosight.hggp.hg.sb.tools.HGSBTools;
import com.baosight.hggp.hg.sc.domain.HGSC001;
import com.baosight.hggp.hg.sc.tools.HGSCTools;
import com.baosight.hggp.hg.xs.domain.Company;
import com.baosight.hggp.hg.xs.domain.Org;
import com.baosight.hggp.util.CommonMethod;
import com.baosight.hggp.util.DateUtils;
import com.baosight.hggp.util.EiInfoUtils;
import com.baosight.hggp.util.LogUtils;
import com.baosight.hggp.util.*;
import com.baosight.hggp.util.contants.ACConstants;
import com.baosight.iplat4j.core.ei.EiBlock;
import com.baosight.iplat4j.core.ei.EiConstant;
......@@ -33,6 +31,7 @@ import org.apache.commons.collections.CollectionUtils;
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author yukang
......@@ -47,6 +46,7 @@ public class ServiceHGCW002 extends ServiceBase {
* @return
*/
@OperationLogAnnotation(operModul = "账期维护",operType = "查询",operDesc = "初始化")
@Override
public EiInfo initLoad(EiInfo inInfo) {
EiInfo outInfo = super.initLoad(inInfo,new HGCW002());
try {
......@@ -193,6 +193,7 @@ public class ServiceHGCW002 extends ServiceBase {
* @return
*/
@OperationLogAnnotation(operModul = "账期维护",operType = "删除",operDesc = "删除")
@Override
public EiInfo delete(EiInfo inInfo) {
try {
List<Map> resultRows = inInfo.getBlock(EiConstant.resultBlock).getRows();
......@@ -252,27 +253,145 @@ public class ServiceHGCW002 extends ServiceBase {
}
public EiInfo projectComboBox(EiInfo inInfo){
Map<String, Object> map = new HashMap<>();
List<HGCW002> hgcw002List = MapUtils.toDaoEPBases(inInfo.getBlock(EiConstant.queryBlock).getRows(),HGCW002.class);
List<String> contractTypArray = new ArrayList<>();
if (Objects.nonNull(inInfo.getAttr().get("reviewStatus"))) {
map.put("reviewStatus", inInfo.getAttr().get("reviewStatus"));
inInfo.setCell(EiConstant.queryBlock, ACConstants.ROW_CODE_0,HGCW002.FIELD_REVIEW_STATUS,inInfo.getAttr().get("reviewStatus"));
}
if (Objects.nonNull(inInfo.getAttr().get("contractType"))) {
map.put("contractType", inInfo.getAttr().get("contractType"));
inInfo.setCell(EiConstant.queryBlock, ACConstants.ROW_CODE_0,HGCW002.FIELD_CONTRACT_TYPE,inInfo.getAttr().get("contractType"));
}
if (Objects.nonNull(inInfo.getAttr().get("contractTypes"))) {
String[] contractTyps = inInfo.getAttr().get("contractTypes").toString().split(",");
for (String c : contractTyps) {
contractTypArray.add(c);
}
map.put("contractTyps", contractTypArray);
contractTypArray.addAll(Arrays.asList(contractTyps));
inInfo.setCell(EiConstant.queryBlock, ACConstants.ROW_CODE_0,"contractTyps",contractTypArray);
}
//增加根据当前登录人所属公司进行过滤
UserVO userVO = HGCWTools.HgCw002.getUserCompany();
map.put("companyCode", userVO.getUsercode());
List<HGCW002> HGCW002List = dao.query("HGCW002.queryProjectComboBox", map);
inInfo.addBlock("projcet_combo_box").setRows(HGCW002List);
List<String> userVO = UserSessionUtils.getRoleCompany().stream().map(Company::getCompanyCode).collect(Collectors.toList());
//map.put("companyCodes", userVO);
inInfo.setCell(EiConstant.queryBlock, ACConstants.ROW_CODE_0,HGCW002.FIELD_COMPANY_CODES,userVO);
inInfo = super.query(inInfo, "HGCW002.queryProjectComboBox", new HGCW002(),false,new HGCW002().eiMetadata,EiConstant.queryBlock, "projcet_combo_box","projcet_combo_box","HGCW002.queryProjectCount");
List<HGCW002> hgcw002s = MapUtils.toDaoEPBases(inInfo.getBlock("projcet_combo_box").getRows(), HGCW002.class);
if(CollectionUtils.isNotEmpty(hgcw002List)){
if (CollectionUtils.isNotEmpty(hgcw002s)){
HGCW002 hgcw0021 = hgcw002List.get(0);
HGCW002 hgcw0022 = hgcw002List.size()>1?hgcw002List.get(1):null;
String companyCode = hgcw0021.getCompanyCode().trim();
String companyName = hgcw0021.getCompanyName().trim();
String companyCode1 = hgcw0022==null?null:hgcw0022.getCompanyCode().trim();
String companyName1 = hgcw0022==null?null:hgcw0022.getCompanyName().trim();
if (StringUtils.isNotEmpty(companyCode)){
switch (Objects.requireNonNull(companyCode1)){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getCompanyCode().equals(companyCode)).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getCompanyCode().equals(companyCode)).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getCompanyCode().contains(companyCode)).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(companyName)){
switch (Objects.requireNonNull(companyName1)){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getCompanyName().equals(companyName)).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getCompanyName().equals(companyName)).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getCompanyName().contains(companyName)).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getProjCode().trim()) && StringUtils.isNotEmpty(hgcw0022.getProjCode())){
switch (hgcw0022.getProjCode()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getProjCode().equals(hgcw0021.getProjCode())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getProjCode().equals(hgcw0021.getProjCode())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getProjCode().contains(hgcw0021.getProjCode())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getProjName().trim()) && StringUtils.isNotEmpty(hgcw0022.getProjName())){
switch (hgcw0022.getProjName()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getProjName().equals(hgcw0021.getProjName())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getProjName().equals(hgcw0021.getProjName())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getProjName().contains(hgcw0021.getProjName())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getContractNumber().trim()) && StringUtils.isNotEmpty(hgcw0022.getContractNumber())){
switch (hgcw0022.getContractNumber()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractNumber().equals(hgcw0021.getContractNumber())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getContractNumber().equals(hgcw0021.getContractNumber())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractNumber().contains(hgcw0021.getContractNumber())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getContractName().trim()) && StringUtils.isNotEmpty(hgcw0022.getContractName())){
switch (hgcw0022.getContractName()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractName().equals(hgcw0021.getContractName())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getContractName().equals(hgcw0021.getContractName())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractName().contains(hgcw0021.getContractName())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getPartyA().trim()) && StringUtils.isNotEmpty(hgcw0022.getPartyA())){
switch (hgcw0022.getPartyA()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getPartyA().equals(hgcw0021.getPartyA())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getPartyA().equals(hgcw0021.getPartyA())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getPartyA().contains(hgcw0021.getPartyA())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getPartyB().trim()) && StringUtils.isNotEmpty(hgcw0022.getPartyB())){
switch (hgcw0022.getPartyB()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getPartyB().equals(hgcw0021.getPartyB())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getPartyB().equals(hgcw0021.getPartyB())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getPartyB().contains(hgcw0021.getPartyB())).collect(Collectors.toList());
}
}
if (StringUtils.isNotEmpty(hgcw0021.getContractTypeStr().trim()) && StringUtils.isNotEmpty(hgcw0022.getContractTypeStr())){
switch (hgcw0022.getContractTypeStr()){
case "eq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractTypeStr().equals(hgcw0021.getContractTypeStr())).collect(Collectors.toList());
break;
case "neq":
hgcw002s = hgcw002s.stream().filter(hgpz002 -> !hgpz002.getContractTypeStr().equals(hgcw0021.getContractTypeStr())).collect(Collectors.toList());
break;
default:
hgcw002s = hgcw002s.stream().filter(hgpz002 -> hgpz002.getContractTypeStr().contains(hgcw0021.getContractTypeStr())).collect(Collectors.toList());
}
}
}
}
inInfo.getBlock("projcet_combo_box").setRows(hgcw002s);
return inInfo;
}
......
......@@ -19,6 +19,7 @@ import com.baosight.hggp.hg.xs.tools.HGXSTools;
import com.baosight.hggp.util.*;
import com.baosight.hggp.util.contants.ACConstants;
import com.baosight.iplat4j.core.ei.EiBlock;
import com.baosight.iplat4j.core.ei.EiBlockMeta;
import com.baosight.iplat4j.core.ei.EiConstant;
import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.exception.PlatException;
......@@ -69,7 +70,8 @@ public class ServiceHGCW002A extends ServiceBase {
String contractCategory = inInfo.getString("contractCategory");
String partyA = inInfo.getString("partyA");
if (contractCategory.equals("1")) {
List<HGPZ002> hgpz002List = MapUtils.toDaoEPBases(super.query(inInfo,HGPZ002.QUERY, new HGPZ002()).getBlock(EiConstant.resultBlock).getRows(), HGPZ002.class);
inInfo = super.query(inInfo,HGPZ002.QUERY, new HGPZ002(),false,new HGPZ002().eiMetadata,EiConstant.queryBlock, "partyAResult", "partyAResult");
List<HGPZ002> hgpz002List = MapUtils.toDaoEPBases(inInfo.getBlock("partyAResult").getRows(), HGPZ002.class);
if (CollectionUtils.isNotEmpty(hgpz002List)) {
if(params.size()>0){
Map<String,String> params1 = params.get(0);
......@@ -152,8 +154,8 @@ public class ServiceHGCW002A extends ServiceBase {
userVOList.add(userVO);
}
}
inInfo.addBlock("partyAResult").addRows(userVOList);
//inInfo.getBlock("partyAResult").set(EiConstant.countStr, userVOList.size());
inInfo.getBlock("partyAResult").setRows(userVOList);
} catch (PlatException e) {
LogUtils.setDetailMsg(inInfo, e, "甲方名称查询失败");
}
......@@ -213,7 +215,8 @@ public class ServiceHGCW002A extends ServiceBase {
}
}
else if (contractCategory.equals("2")) {
List<HGPZ003> hgpz003List = MapUtils.toDaoEPBases(super.query(inInfo,HGPZ003.QUERY, new HGPZ003()).getBlock(EiConstant.resultBlock).getRows(), HGPZ003.class);
inInfo = super.query(inInfo,HGPZ003.QUERY, new HGPZ003(),false,new HGPZ003().eiMetadata,EiConstant.queryBlock, "partyAResult", "partyAResult");
List<HGPZ003> hgpz003List = MapUtils.toDaoEPBases(inInfo.getBlock("partyAResult").getRows(), HGPZ003.class);
if (CollectionUtils.isNotEmpty(hgpz003List)) {
if(params.size()>0){
Map<String,String> params1 = params.get(0);
......@@ -256,7 +259,8 @@ public class ServiceHGCW002A extends ServiceBase {
});
}
}
inInfo.addBlock("partyAResult").addRows(userVOList);
//inInfo.getBlock("partyAResult").set(EiConstant.countStr, userVOList.size());
inInfo.getBlock("partyAResult").setRows(userVOList);
} catch (PlatException e) {
LogUtils.setDetailMsg(inInfo, e, "乙方名称查询失败");
}
......
......@@ -503,7 +503,7 @@
COMPANY_NAME as "companyName", <!-- 公司名称 -->
PROJ_CODE as "projCode", <!-- 项目编码 -->
PROJ_NAME as "projName", <!-- 项目名称 -->
(SELECT ITEM_CNAME FROM ${platSchema}.tedcm01 WHERE CODESET_CODE = 'hggp.cw.contractType' AND ITEM_CODE = CONTRACT_TYPE) AS "contractType",
(SELECT ITEM_CNAME FROM ${platSchema}.tedcm01 WHERE CODESET_CODE = 'hggp.cw.contractType' AND ITEM_CODE = CONTRACT_TYPE) AS "contractTypeStr",
CONTRACT_TYPE,
CONTRACT_NUMBER as "contractNumber", <!-- 合同号 -->
CONTRACT_NAME as "contractName", <!-- 合同名称 -->
......@@ -532,6 +532,31 @@
ORDER BY CONTRACT_TYPE asc, CONTRACT_NUMBER desc
</select>
<select id="queryProjectCount" resultClass="int">
SELECT
count(*)
FROM ${hggpSchema}.HGCW002
WHERE 1=1
<isNotEmpty prepend=" AND " property="accountCode">
ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCodes">
COMPANY_CODE IN <iterate close=")" open="(" conjunction="," property="companyCodes">#companyCodes[]#</iterate>
</isNotEmpty>
<isNotEmpty prepend=" AND " property="reviewStatus">
REVIEW_STATUS = #reviewStatus#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractType">
CONTRACT_TYPE = #contractType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractTyps">
CONTRACT_TYPE IN <iterate close=")" open="(" conjunction="," property="contractTyps">#contractTyps[]#</iterate>
</isNotEmpty>
</select>
<update id="updateBalanceStatus">
UPDATE ${hggpSchema}.HGCW002
SET
......
......@@ -40,10 +40,10 @@
serviceName="HGCW002" methodName="projectComboBox"
resultId="projcet_combo_box" popupType="ServiceGrid"
valueField="projCode" textField="projCode"
columnEnames="companyCode,companyName,projCode,projName,contractType,contractNumber,contractName,partyA,partyB"
columnEnames="companyCode,companyName,projCode,projName,contractTypeStr,contractNumber,contractName,partyA,partyB"
columnCnames="公司编码,公司名称,项目编码,项目名称,合同类型,合同号,合同名称,甲方名称,乙方名称"
backFillColumnIds="companyCode,companyName,projCode,projName,contractType,contractNumber,contractName,partyA,partyB"
backFillFieldIds="companyCode,companyName,projCode,projName,contractType,contractNumber,contractName,partyA,partyB"
backFillColumnIds="companyCode,companyName,projCode,projName,contractTypeStr,contractNumber,contractName,partyA,partyB"
backFillFieldIds="companyCode,companyName,projCode,projName,contractTypeStr,contractNumber,contractName,partyA,partyB"
popupTitle="所属公司" popupWidth="1200">
</EF:EFPopupColumn>
<EF:EFColumn ename="projName" cname="项目名称" width="120" enable="false" readonly="true" align="center"/>
......
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