Commit 2daca877 by 宋祥

1.fixBug:结算单明细增加含税和不含税金额,修复累计结算金额计算错误问题

parent a5719cd3
......@@ -22,7 +22,7 @@ public class HGCW009 extends DaoEPBase {
private static final long serialVersionUID = 1L;
public static final String FIELD_ID = "id";
public static final String FIELD_ID = "id";
public static final String FIELD_ACCOUNT_CODE = "accountCode"; /* 企业编码*/
public static final String FIELD_COMPANY_CODE = "companyCode"; /* 公司编码*/
public static final String FIELD_COMPANY_NAME = "companyName"; /* 公司名称*/
......@@ -35,6 +35,7 @@ public class HGCW009 extends DaoEPBase {
public static final String FIELD_UNIT = "unit"; /* 单位*/
public static final String FIELD_UNIT_PRICE = "unitPrice"; /* 单价*/
public static final String FIELD_TOTAL_PRICE = "totalPrice"; /* 总价*/
public static final String FIELD_TOTAL_TAX_PRICE = "totalTaxPrice"; /* 总价*/
public static final String FIELD_INVENTORY_ID = "inventoryId"; /* 清单ID*/
public static final String FIELD_REMARKS = "remarks"; /* 备注*/
public static final String FIELD_CREATED_BY = "createdBy"; /* 记录创建者*/
......@@ -46,7 +47,7 @@ public class HGCW009 extends DaoEPBase {
public static final String FIELD_DEP_CODE = "depCode"; /* 部门编码*/
public static final String FIELD_COMPANY_CODES = "companyCodes";
public static final String COL_ID = "ID";
public static final String COL_ID = "ID";
public static final String COL_ACCOUNT_CODE = "ACCOUNT_CODE"; /* 企业编码*/
public static final String COL_COMPANY_CODE = "COMPANY_CODE"; /* 公司编码*/
public static final String COL_COMPANY_NAME = "COMPANY_NAME"; /* 公司名称*/
......@@ -59,6 +60,7 @@ public class HGCW009 extends DaoEPBase {
public static final String COL_UNIT = "UNIT"; /* 单位*/
public static final String COL_UNIT_PRICE = "UNIT_PRICE"; /* 单价*/
public static final String COL_TOTAL_PRICE = "TOTAL_PRICE"; /* 总价*/
public static final String COL_TOTAL_TAX_PRICE = "TOTAL_TAX_PRICE"; /* 总价*/
public static final String COL_INVENTORY_ID = "INVENTORY_ID"; /* 清单ID*/
public static final String COL_REMARKS = "REMARKS"; /* 结算依据*/
public static final String COL_CREATED_BY = "CREATED_BY"; /* 记录创建者*/
......@@ -75,7 +77,7 @@ public class HGCW009 extends DaoEPBase {
public static final String UPDATE = "HGCW009.update";
public static final String DELETE = "HGCW009.delete";
private Long id = new Long(0);
private Long id = new Long(0);
private String accountCode = " "; /* 企业编码*/
private String companyCode = " "; /* 公司编码*/
private String companyName = " "; /* 公司名称*/
......@@ -88,6 +90,7 @@ public class HGCW009 extends DaoEPBase {
private String unit = " "; /* 单位*/
private BigDecimal unitPrice = new BigDecimal("0"); /* 单价*/
private BigDecimal totalPrice = new BigDecimal("0"); /* 总价*/
private BigDecimal totalTaxPrice = new BigDecimal("0"); /* 总价*/
private Long inventoryId = new Long(0); /* 清单ID*/
private String remarks = " "; /* 结算依据*/
private String createdBy = " "; /* 记录创建者*/
......@@ -168,7 +171,14 @@ public class HGCW009 extends DaoEPBase {
eiColumn.setFieldLength(15);
eiColumn.setDescName("总价");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_TOTAL_TAX_PRICE);
eiColumn.setType("N");
eiColumn.setScaleLength(3);
eiColumn.setFieldLength(15);
eiColumn.setDescName("含税总价");
eiMetadata.addMeta(eiColumn);
eiColumn = new EiColumn(FIELD_INVENTORY_ID);
eiColumn.setDescName("清单ID");
eiMetadata.addMeta(eiColumn);
......@@ -226,7 +236,7 @@ public class HGCW009 extends DaoEPBase {
/**
* set the id .
*
* @param id
* @param id
*/
public void setId(Long id) {
this.id = id;
......@@ -423,6 +433,15 @@ public class HGCW009 extends DaoEPBase {
public void setTotalPrice(BigDecimal totalPrice) {
this.totalPrice = totalPrice;
}
public BigDecimal getTotalTaxPrice() {
return totalTaxPrice;
}
public void setTotalTaxPrice(BigDecimal totalTaxPrice) {
this.totalTaxPrice = totalTaxPrice;
}
/**
* get the inventoryId - 清单ID.
* @return the inventoryId
......@@ -589,6 +608,7 @@ public class HGCW009 extends DaoEPBase {
setUnit(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_UNIT)), unit));
setUnitPrice(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_UNIT_PRICE)), unitPrice));
setTotalPrice(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_TOTAL_PRICE)), totalPrice));
setTotalTaxPrice(NumberUtils.toBigDecimal(StringUtils.toString(map.get(FIELD_TOTAL_TAX_PRICE)), totalTaxPrice));
setInventoryId(NumberUtils.toLong(StringUtils.toString(map.get(FIELD_INVENTORY_ID)), inventoryId));
setRemarks(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_REMARKS)), remarks));
setCreatedBy(StringUtils.defaultIfEmpty(StringUtils.toString(map.get(FIELD_CREATED_BY)), createdBy));
......@@ -620,6 +640,7 @@ public class HGCW009 extends DaoEPBase {
map.put(FIELD_UNIT, StringUtils.toString(unit, eiMetadata.getMeta(FIELD_UNIT)));
map.put(FIELD_UNIT_PRICE, StringUtils.toString(unitPrice, eiMetadata.getMeta(FIELD_UNIT_PRICE)));
map.put(FIELD_TOTAL_PRICE, StringUtils.toString(totalPrice, eiMetadata.getMeta(FIELD_TOTAL_PRICE)));
map.put(FIELD_TOTAL_TAX_PRICE, StringUtils.toString(totalTaxPrice, eiMetadata.getMeta(FIELD_TOTAL_TAX_PRICE)));
map.put(FIELD_INVENTORY_ID, StringUtils.toString(inventoryId, eiMetadata.getMeta(FIELD_INVENTORY_ID)));
map.put(FIELD_REMARKS, StringUtils.toString(remarks, eiMetadata.getMeta(FIELD_REMARKS)));
map.put(FIELD_CREATED_BY, StringUtils.toString(createdBy, eiMetadata.getMeta(FIELD_CREATED_BY)));
......
......@@ -112,7 +112,7 @@ public class ServiceHGCW008 extends ServiceBase {
HGCWTools.HgCw008.remainingAmount(hgcw008.getContractNumber(), hgcw008.getThisPriceTax());
this.add(hgcw008);
// 写入其他数据
HGCWTools.HgCw009.save(detail1Rows,settlementNumber,hgcw008);
HGCWTools.HgCw009.save(detail1Rows, settlementNumber, hgcw008);
} else {
hgcw008.setContractDate(DateUtils.formatShort(hgcw008.getContractDate()));
HGCW008 hgcw008Db = HGCWTools.HgCw008.getId(hgcw008.getId().toString());
......
......@@ -2,6 +2,7 @@ package com.baosight.hggp.hg.cw.service;
import com.baosight.hggp.aspect.annotation.OperationLogAnnotation;
import com.baosight.hggp.common.DdynamicEnum;
import com.baosight.hggp.core.dao.DaoBase;
import com.baosight.hggp.hg.cw.domain.HGCW008;
import com.baosight.hggp.hg.cw.vo.UserVO;
import com.baosight.hggp.hg.xs.domain.Org;
......@@ -19,7 +20,9 @@ import org.apache.commons.collections.CollectionUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author yukang
......@@ -33,15 +36,17 @@ public class ServiceHGCW008A extends ServiceBase {
* @param inInfo
* @return
*/
@OperationLogAnnotation(operModul = "账期维护",operType = "查询",operDesc = "初始化")
@OperationLogAnnotation(operModul = "账期维护", operType = "查询", operDesc = "初始化")
public EiInfo initLoad(EiInfo inInfo) {
try {
CommonMethod.initBlock(inInfo, Arrays.asList(DdynamicEnum.PROJECT_CODE_BOX_BLOCK_ID), null, false);
inInfo.setCell(EiConstant.resultBlock, ACConstants.ROW_CODE_0, HGCW008.FIELD_CONTRACT_DATE, DateUtils.shortDate());
inInfo.setCell(EiConstant.resultBlock, ACConstants.ROW_CODE_0, HGCW008.FIELD_CONTRACT_DATE,
DateUtils.shortDate());
inInfo.addBlock("detail1").addBlockMeta(new HGCW008().eiMetadata);
} catch (PlatException e) {
LogUtils.setDetailMsg(inInfo, e, "初始化失败");
}
return inInfo;
}
}
......@@ -2,11 +2,13 @@ package com.baosight.hggp.hg.cw.service;
import com.baosight.hggp.aspect.annotation.OperationLogAnnotation;
import com.baosight.hggp.common.DdynamicEnum;
import com.baosight.hggp.core.dao.DaoBase;
import com.baosight.hggp.hg.cw.domain.HGCW008;
import com.baosight.hggp.hg.cw.domain.HGCW007;
import com.baosight.hggp.hg.cw.domain.HGCW009;
import com.baosight.hggp.hg.cw.domain.HGCW999;
import com.baosight.hggp.hg.cw.tools.HGCWTools;
import com.baosight.hggp.util.AssertUtils;
import com.baosight.hggp.util.CommonMethod;
import com.baosight.hggp.util.LogUtils;
import com.baosight.iplat4j.core.ei.EiConstant;
......@@ -14,8 +16,12 @@ import com.baosight.iplat4j.core.ei.EiInfo;
import com.baosight.iplat4j.core.exception.PlatException;
import com.baosight.iplat4j.core.service.impl.ServiceBase;
import org.apache.commons.collections.CollectionUtils;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author yukang
......@@ -35,13 +41,31 @@ public class ServiceHGCW008B extends ServiceBase {
String id = inInfo.getString("id");
HGCW008 HGCW008 = HGCWTools.HgCw008.getId(id);
inInfo.addBlock(EiConstant.resultBlock).addRow(HGCW008);
//获取清单
// 获取清单
List<HGCW009> hgcw009List = HGCWTools.HgCw009.queryBySettlementNumber(HGCW008.getSettlementNumber());
inInfo.addBlock("detail1").addRows(hgcw009List);
// 查询结算累计金额
Map amountMap = queryCalculateAmount(HGCW008.getContractNumber(), id);
inInfo.addBlock("main").addRow(amountMap);
} catch (PlatException e) {
LogUtils.setDetailMsg(inInfo, e, "初始化失败");
}
return inInfo;
}
/**
* 查询统计金额
*
* @param contractNumber
* @return
*/
public static Map queryCalculateAmount(String contractNumber, String id) {
AssertUtils.isEmpty(contractNumber, "合同号不能为空");
Map paramMap = new HashMap();
paramMap.put("contractNumber", contractNumber);
paramMap.put("excludeIds", new String[]{id});
List<Map> results = DaoBase.getInstance().query("HGCW008.queryCalculateAmount", paramMap);
return CollectionUtils.isEmpty(results) ? null : results.get(0);
}
}
......@@ -4,6 +4,8 @@ import com.baosight.hggp.aspect.annotation.OperationLogAnnotation;
import com.baosight.hggp.hg.cw.domain.*;
import com.baosight.hggp.hg.cw.tools.HGCWTools;
import com.baosight.hggp.util.LogUtils;
import com.baosight.hggp.util.MapUtils;
import com.baosight.hggp.util.ObjectUtils;
import com.baosight.hggp.util.StringUtils;
import com.baosight.iplat4j.core.ei.EiConstant;
import com.baosight.iplat4j.core.ei.EiInfo;
......@@ -12,6 +14,7 @@ import com.baosight.iplat4j.core.service.impl.ServiceBase;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* @author yukang
......@@ -56,6 +59,8 @@ public class ServiceHGCW008D extends ServiceBase {
inInfo.set("inqu_status-0-ids", ids);
}
inInfo = super.query(inInfo, HGCW003.QUERY, new HGCW003());
// 查询合同税点
this.setContractInfo(inInfo);
} catch (Exception e) {
LogUtils.setDetailMsg(inInfo, e, "查询失败");
}
......@@ -82,5 +87,29 @@ public class ServiceHGCW008D extends ServiceBase {
}
return inInfo;
}
/**
* 设置合同信息
*
* @param inInfo
*/
private void setContractInfo(EiInfo inInfo) {
List<Map> resultRows = inInfo.getBlock(EiConstant.resultBlock).getRows();
List<String> contractNumbers = ObjectUtils.listKey(resultRows, HGCW003.FIELD_CONTRACT_NUMBER);
// 根据计划号统计信息
Map<String, HGCW002> resultMap = HGCWTools.HgCw002.map(contractNumbers);
if (MapUtils.isEmpty(resultMap)) {
return;
}
for (Map resultRow : resultRows) {
String contractNumber = MapUtils.getString(resultRow, HGCW003.FIELD_CONTRACT_NUMBER);
HGCW002 dbCw02 = resultMap.get(contractNumber);
if (dbCw02 != null) {
resultRow.put(HGCW002.FIELD_TAX_POINTS, dbCw02.getTaxPoints());
} else {
resultRow.put(HGCW002.FIELD_TAX_POINTS, 0);
}
}
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <!-- table information
Generate time : 2024-05-10 15:49:56
Version : 1.0
schema : hggp
tableName : HGCW002
ID BIGINT NOT NULL primarykey,
ACCOUNT_CODE VARCHAR,
COMPANY_CODE VARCHAR,
COMPANY_NAME VARCHAR,
PROJ_CODE VARCHAR,
PROJ_NAME VARCHAR,
CONTRACT_NUMBER VARCHAR,
CONTRACT_NAME VARCHAR,
CONTRACT_TYPE TINYINT,
CONTRACT_CATEGORY TINYINT,
PARTY_A VARCHAR,
PARTY_B VARCHAR,
PARTY_C VARCHAR,
PLAN_START_DATE VARCHAR,
PLAN_END_DATE VARCHAR,
CONTRACT_STATUS TINYINT,
PARTY_A_NAME VARCHAR,
PARTY_A_PHONE_NUMBER VARCHAR,
ALREADY_NAME VARCHAR,
ALREADY_PHONE_NUMBER VARCHAR,
ENGINEERING_ADDRESS VARCHAR,
SIGNING_DATE VARCHAR,
MAIN_CONTRACT_NUMBER VARCHAR,
CONTRACT_CONTENT VARCHAR,
CONTRACTING_METHOD VARCHAR,
PAYMENT_METHOD TINYINT,
PRICING_METHOD TINYINT,
TAX_POINTS DECIMAL,
TOTAL_CONTRACT_PRICE_EXCLUDING DECIMAL,
VALUE_ADDED_TAX DECIMAL,
TOTAL_CONTRACT_PRICE_INCLUDING DECIMAL,
REVIEW_STATUS TINYINT,
BALANCE_STATUS TINYINT,
CREATED_BY VARCHAR NOT NULL,
CREATED_NAME VARCHAR NOT NULL,
CREATED_TIME VARCHAR NOT NULL,
UPDATED_BY VARCHAR NOT NULL,
UPDATED_NAME VARCHAR NOT NULL,
UPDATED_TIME VARCHAR NOT NULL,
DEP_CODE VARCHAR
-->
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="HGCW002">
<typeAlias alias="HGCW002" type="com.baosight.hggp.hg.cw.domain.HGCW002"/>
<typeAlias alias="HGCW002" type="com.baosight.hggp.hg.cw.domain.HGCW002"/>
<sql id="column">
ID as "id",
ACCOUNT_CODE as "accountCode", <!-- 企业编码 -->
......@@ -91,6 +47,7 @@
DEP_CODE as "depCode", <!-- 部门编码 -->
REMAINING_AMOUNT as "remainingAmount"
</sql>
<sql id="condition">
<include refid="HGXSDataAuth.authCondition"/>
<isNotEmpty prepend=" AND " property="id">
......@@ -221,149 +178,39 @@
</isNotEmpty>
</sql>
<select id="query" parameterClass="java.util.HashMap" resultClass="HGCW002">
SELECT
<include refid="column" />
FROM ${hggpSchema}.HGCW002 WHERE 1=1
<include refid="condition" />
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
</isNotEmpty>
<isEmpty property="orderBy">
ID asc
</isEmpty>
</dynamic>
<sql id="customCondition">
<isNotEmpty prepend=" AND " property="contractNumbers">
CONTRACT_NUMBER IN <iterate close=")" open="(" conjunction="," property="contractNumbers">#contractNumbers[]#</iterate>
</isNotEmpty>
</sql>
</select>
<sql id="orderBy">
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
</isNotEmpty>
<isEmpty property="orderBy">
ID asc
</isEmpty>
</dynamic>
</sql>
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGCW002 WHERE 1=1
<include refid="condition" />
</select>
<select id="query" resultClass="HGCW002">
SELECT
<include refid="column"/>
FROM ${hggpSchema}.HGCW002
WHERE 1=1
<include refid="condition"/>
<include refid="customCondition"/>
<include refid="orderBy"/>
</select>
<!--
<isNotEmpty prepend=" AND " property="id">
ID = #id#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="accountCode">
ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyName">
COMPANY_NAME = #companyName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="projCode">
PROJ_CODE = #projCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="projName">
PROJ_NAME = #projName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractNumber">
CONTRACT_NUMBER = #contractNumber#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractName">
CONTRACT_NAME = #contractName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractType">
CONTRACT_TYPE = #contractType#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractCategory">
CONTRACT_CATEGORY = #contractCategory#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partyA">
PARTY_A = #partyA#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partyB">
PARTY_B = #partyB#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partyC">
PARTY_C = #partyC#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="planStartDate">
PLAN_START_DATE = #planStartDate#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="planEndDate">
PLAN_END_DATE = #planEndDate#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractStatus">
CONTRACT_STATUS = #contractStatus#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partyAName">
PARTY_A_NAME = #partyAName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="partyAPhoneNumber">
PARTY_A_PHONE_NUMBER = #partyAPhoneNumber#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="alreadyName">
ALREADY_NAME = #alreadyName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="alreadyPhoneNumber">
ALREADY_PHONE_NUMBER = #alreadyPhoneNumber#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="engineeringAddress">
ENGINEERING_ADDRESS = #engineeringAddress#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="signingDate">
SIGNING_DATE = #signingDate#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="mainContractNumber">
MAIN_CONTRACT_NUMBER = #mainContractNumber#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractContent">
CONTRACT_CONTENT = #contractContent#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="contractingMethod">
CONTRACTING_METHOD = #contractingMethod#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="paymentMethod">
PAYMENT_METHOD = #paymentMethod#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="pricingMethod">
PRICING_METHOD = #pricingMethod#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="taxPoints">
TAX_POINTS = #taxPoints#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="totalContractPriceExcluding">
TOTAL_CONTRACT_PRICE_EXCLUDING = #totalContractPriceExcluding#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="valueAddedTax">
VALUE_ADDED_TAX = #valueAddedTax#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="totalContractPriceIncluding">
TOTAL_CONTRACT_PRICE_INCLUDING = #totalContractPriceIncluding#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="reviewStatus">
REVIEW_STATUS = #reviewStatus#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="balanceStatus">
BALANCE_STATUS = #balanceStatus#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdBy">
CREATED_BY = #createdBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdName">
CREATED_NAME = #createdName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdTime">
CREATED_TIME = #createdTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedBy">
UPDATED_BY = #updatedBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedName">
UPDATED_NAME = #updatedName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedTime">
UPDATED_TIME = #updatedTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="depCode">
DEP_CODE = #depCode#
</isNotEmpty>
-->
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGCW002
WHERE 1=1
<include refid="condition"/>
<include refid="customCondition"/>
</select>
<insert id="insert">
INSERT INTO ${hggpSchema}.HGCW002 (ID,
......
......@@ -99,10 +99,18 @@
</isNotEmpty>
</sql>
<select id="query" parameterClass="java.util.HashMap"
resultClass="com.baosight.hggp.hg.cw.domain.HGCW008">
SELECT
ID as "id",
<sql id="customCondition">
<isNotEmpty prepend=" AND " property="excludeIds">
ID NOT IN
<iterate close=")" open="(" conjunction="," property="excludeIds">
#excludeIds[]#
</iterate>
</isNotEmpty>
</sql>
<select id="query" resultClass="com.baosight.hggp.hg.cw.domain.HGCW008">
SELECT
ID as "id",
ACCOUNT_CODE as "accountCode", <!-- 企业编码 -->
COMPANY_CODE as "companyCode", <!-- 公司编码 -->
COMPANY_NAME as "companyName", <!-- 公司名称 -->
......@@ -223,9 +231,11 @@
IFNULL(SUM(THIS_SETTLEMENT_TAX), 0) as "thisSettlementTax",
IFNULL(SUM(THIS_PRICE_TAX), 0) as "thisPriceTax",
IFNULL(SUM(CUMULATIVE_SETTLEMENT_AMOUNT), 0) as "sumCumulativeSettlementAmount",
IFNULL(SUM(CUMULATIVE_SETTLEMENT_TAX), 0) as "sumCumulativeSettlementTax"
IFNULL(SUM(CUMULATIVE_SETTLEMENT_TAX), 0) as "sumCumulativeSettlementTax",
IFNULL(SUM(CUMULATIVE_PRICE_TAX), 0) as "sumCumulativePriceTax"
FROM ${hggpSchema}.HGCW008 WHERE 1=1
<include refid="condition"/>
<include refid="customCondition"/>
</select>
<update id="submit">
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMap PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-2.dtd"> <!-- table information
Generate time : 2024-05-22 10:58:05
Version : 1.0
schema : hggp
tableName : HGCW009
ID BIGINT NOT NULL primarykey,
ACCOUNT_CODE VARCHAR,
COMPANY_CODE VARCHAR,
COMPANY_NAME VARCHAR,
SETTLEMENT_NUMBER VARCHAR,
SETTLEMENT_BASIS VARCHAR,
TASK_NAME VARCHAR,
ENGINEERING_CONTENT VARCHAR,
THIS_ENGINEERING_QUANTITY DECIMAL,
CUMULATIVE_ENGINEERING_QUANTITY DECIMAL,
UNIT VARCHAR,
UNIT_PRICE DECIMAL,
TOTAL_PRICE DECIMAL,
INVENTORY_ID BIGINT,
CREATED_BY VARCHAR NOT NULL,
CREATED_NAME VARCHAR NOT NULL,
CREATED_TIME VARCHAR NOT NULL,
UPDATED_BY VARCHAR NOT NULL,
UPDATED_NAME VARCHAR NOT NULL,
UPDATED_TIME VARCHAR NOT NULL,
DEP_CODE VARCHAR
-->
<!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd">
<sqlMap namespace="HGCW009">
<sql id="condition">
<sql id="column">
ID as "id",
ACCOUNT_CODE as "accountCode", <!-- 企业编码 -->
COMPANY_CODE as "companyCode", <!-- 公司编码 -->
COMPANY_NAME as "companyName", <!-- 公司名称 -->
SETTLEMENT_NUMBER as "settlementNumber", <!-- 结算编号 -->
SETTLEMENT_BASIS as "settlementBasis", <!-- 结算依据 -->
TASK_NAME as "taskName", <!-- 任务名称 -->
ENGINEERING_CONTENT as "engineeringContent", <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY as "thisEngineeringQuantity", <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY as "cumulativeEngineeringQuantity", <!-- 至本次累计结算工程量 -->
UNIT as "unit", <!-- 单位 -->
UNIT_PRICE as "unitPrice", <!-- 含税单价 -->
TOTAL_PRICE as "totalPrice", <!-- 不含税总价 -->
TOTAL_TAX_PRICE as "totalTaxPrice", <!-- 含税总价 -->
INVENTORY_ID as "inventoryId", <!-- 清单ID -->
REMARKS as "remarks", <!-- 结算依据 -->
CREATED_BY as "createdBy", <!-- 记录创建者 -->
CREATED_NAME as "createdName", <!-- 记录创建名称 -->
CREATED_TIME as "createdTime", <!-- 记录创建时间 -->
UPDATED_BY as "updatedBy", <!-- 记录修改者 -->
UPDATED_NAME as "updatedName", <!-- 记录修改名称 -->
UPDATED_TIME as "updatedTime", <!-- 记录修改时间 -->
DEP_CODE as "depCode" <!-- 部门编码 -->
</sql>
<sql id="condition">
<include refid="HGXSDataAuth.authCondition"/>
<isNotEmpty prepend=" AND " property="id">
ID = #id#
......@@ -101,180 +101,87 @@
</isNotEmpty>
</sql>
<select id="query" parameterClass="java.util.HashMap"
resultClass="com.baosight.hggp.hg.cw.domain.HGCW009">
SELECT
ID as "id",
ACCOUNT_CODE as "accountCode", <!-- 企业编码 -->
COMPANY_CODE as "companyCode", <!-- 公司编码 -->
COMPANY_NAME as "companyName", <!-- 公司名称 -->
SETTLEMENT_NUMBER as "settlementNumber", <!-- 结算编号 -->
SETTLEMENT_BASIS as "settlementBasis", <!-- 结算依据 -->
TASK_NAME as "taskName", <!-- 任务名称 -->
ENGINEERING_CONTENT as "engineeringContent", <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY as "thisEngineeringQuantity", <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY as "cumulativeEngineeringQuantity", <!-- 至本次累计结算工程量 -->
UNIT as "unit", <!-- 单位 -->
UNIT_PRICE as "unitPrice", <!-- 单价 -->
TOTAL_PRICE as "totalPrice", <!-- 总价 -->
INVENTORY_ID as "inventoryId", <!-- 清单ID -->
REMARKS as "remarks", <!-- 结算依据 -->
CREATED_BY as "createdBy", <!-- 记录创建者 -->
CREATED_NAME as "createdName", <!-- 记录创建名称 -->
CREATED_TIME as "createdTime", <!-- 记录创建时间 -->
UPDATED_BY as "updatedBy", <!-- 记录修改者 -->
UPDATED_NAME as "updatedName", <!-- 记录修改名称 -->
UPDATED_TIME as "updatedTime", <!-- 记录修改时间 -->
DEP_CODE as "depCode" <!-- 部门编码 -->
FROM ${hggpSchema}.HGCW009 WHERE 1=1
<include refid="condition" />
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
</isNotEmpty>
<isEmpty property="orderBy">
ID asc
</isEmpty>
</dynamic>
</select>
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGCW009 WHERE 1=1
<include refid="condition" />
</select>
<select id="query" resultClass="com.baosight.hggp.hg.cw.domain.HGCW009">
SELECT
<include refid="column"/>
FROM ${hggpSchema}.HGCW009 WHERE 1=1
<include refid="condition"/>
<dynamic prepend="ORDER BY">
<isNotEmpty property="orderBy">
$orderBy$
</isNotEmpty>
<isEmpty property="orderBy">
ID asc
</isEmpty>
</dynamic>
</select>
<!--
<isNotEmpty prepend=" AND " property="id">
ID = #id#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="accountCode">
ACCOUNT_CODE = #accountCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyCode">
COMPANY_CODE = #companyCode#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="companyName">
COMPANY_NAME = #companyName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="settlementNumber">
SETTLEMENT_NUMBER = #settlementNumber#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="settlementBasis">
SETTLEMENT_BASIS = #settlementBasis#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="taskName">
TASK_NAME = #taskName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="engineeringContent">
ENGINEERING_CONTENT = #engineeringContent#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="thisEngineeringQuantity">
THIS_ENGINEERING_QUANTITY = #thisEngineeringQuantity#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="cumulativeEngineeringQuantity">
CUMULATIVE_ENGINEERING_QUANTITY = #cumulativeEngineeringQuantity#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="unit">
UNIT = #unit#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="unitPrice">
UNIT_PRICE = #unitPrice#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="totalPrice">
TOTAL_PRICE = #totalPrice#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="inventoryId">
INVENTORY_ID = #inventoryId#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdBy">
CREATED_BY = #createdBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdName">
CREATED_NAME = #createdName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="createdTime">
CREATED_TIME = #createdTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedBy">
UPDATED_BY = #updatedBy#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedName">
UPDATED_NAME = #updatedName#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="updatedTime">
UPDATED_TIME = #updatedTime#
</isNotEmpty>
<isNotEmpty prepend=" AND " property="depCode">
DEP_CODE = #depCode#
</isNotEmpty>
-->
<select id="count" resultClass="int">
SELECT COUNT(*) FROM ${hggpSchema}.HGCW009
WHERE 1=1
<include refid="condition"/>
</select>
<insert id="insert">
INSERT INTO ${hggpSchema}.HGCW009 (ID,
ACCOUNT_CODE, <!-- 企业编码 -->
COMPANY_CODE, <!-- 公司编码 -->
COMPANY_NAME, <!-- 公司名称 -->
SETTLEMENT_NUMBER, <!-- 结算编号 -->
SETTLEMENT_BASIS, <!-- 结算依据 -->
TASK_NAME, <!-- 任务名称 -->
ENGINEERING_CONTENT, <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY, <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY, <!-- 至本次累计结算工程量 -->
UNIT, <!-- 单位 -->
UNIT_PRICE, <!-- 单价 -->
TOTAL_PRICE, <!-- 总价 -->
INVENTORY_ID, <!-- 清单ID -->
REMARKS, <!-- 结算依据 -->
CREATED_BY, <!-- 记录创建者 -->
CREATED_NAME, <!-- 记录创建名称 -->
CREATED_TIME, <!-- 记录创建时间 -->
UPDATED_BY, <!-- 记录修改者 -->
UPDATED_NAME, <!-- 记录修改名称 -->
UPDATED_TIME, <!-- 记录修改时间 -->
DEP_CODE <!-- 部门编码 -->
)
INSERT INTO ${hggpSchema}.HGCW009 (ID,
ACCOUNT_CODE, <!-- 企业编码 -->
COMPANY_CODE, <!-- 公司编码 -->
COMPANY_NAME, <!-- 公司名称 -->
SETTLEMENT_NUMBER, <!-- 结算编号 -->
SETTLEMENT_BASIS, <!-- 结算依据 -->
TASK_NAME, <!-- 任务名称 -->
ENGINEERING_CONTENT, <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY, <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY, <!-- 至本次累计结算工程量 -->
UNIT, <!-- 单位 -->
UNIT_PRICE, <!-- 含税单价 -->
TOTAL_PRICE, <!-- 不含税总价 -->
TOTAL_TAX_PRICE, <!-- 含税总价 -->
INVENTORY_ID, <!-- 清单ID -->
REMARKS, <!-- 结算依据 -->
CREATED_BY, <!-- 记录创建者 -->
CREATED_NAME, <!-- 记录创建名称 -->
CREATED_TIME, <!-- 记录创建时间 -->
DEP_CODE <!-- 部门编码 -->
)
VALUES (#id#, #accountCode#, #companyCode#, #companyName#, #settlementNumber#, #settlementBasis#, #taskName#,
#engineeringContent#, #thisEngineeringQuantity#, #cumulativeEngineeringQuantity#, #unit#, #unitPrice#,
#totalPrice#, #inventoryId#, #remarks#, #createdBy#, #createdName#, #createdTime#, #updatedBy#, #updatedName#,
#updatedTime#, #depCode#)
#totalPrice#, #totalTaxPrice#, #inventoryId#, #remarks#, #createdBy#, #createdName#, #createdTime#,
#depCode#)
</insert>
<delete id="delete">
DELETE FROM ${hggpSchema}.HGCW009 WHERE
ID = #id#
DELETE FROM ${hggpSchema}.HGCW009 WHERE ID = #id#
</delete>
<update id="update">
UPDATE ${hggpSchema}.HGCW009
SET
ACCOUNT_CODE = #accountCode#, <!-- 企业编码 -->
COMPANY_CODE = #companyCode#, <!-- 公司编码 -->
COMPANY_NAME = #companyName#, <!-- 公司名称 -->
SETTLEMENT_NUMBER = #settlementNumber#, <!-- 结算编号 -->
SETTLEMENT_BASIS = #settlementBasis#, <!-- 结算依据 -->
TASK_NAME = #taskName#, <!-- 任务名称 -->
ENGINEERING_CONTENT = #engineeringContent#, <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY = #thisEngineeringQuantity#, <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY = #cumulativeEngineeringQuantity#, <!-- 至本次累计结算工程量 -->
UNIT = #unit#, <!-- 单位 -->
UNIT_PRICE = #unitPrice#, <!-- 单价 -->
TOTAL_PRICE = #totalPrice#, <!-- 总价 -->
INVENTORY_ID = #inventoryId#, <!-- 清单ID -->
REMARKS = #remarks#, <!-- 结算依据 -->
CREATED_BY = #createdBy#, <!-- 记录创建者 -->
CREATED_NAME = #createdName#, <!-- 记录创建名称 -->
CREATED_TIME = #createdTime#, <!-- 记录创建时间 -->
UPDATED_BY = #updatedBy#, <!-- 记录修改者 -->
UPDATED_NAME = #updatedName#, <!-- 记录修改名称 -->
UPDATED_TIME = #updatedTime#, <!-- 记录修改时间 -->
DEP_CODE = #depCode# <!-- 部门编码 -->
WHERE
ID = #id#
UPDATE ${hggpSchema}.HGCW009
SET
COMPANY_CODE = #companyCode#, <!-- 公司编码 -->
COMPANY_NAME = #companyName#, <!-- 公司名称 -->
SETTLEMENT_NUMBER = #settlementNumber#, <!-- 结算编号 -->
SETTLEMENT_BASIS = #settlementBasis#, <!-- 结算依据 -->
TASK_NAME = #taskName#, <!-- 任务名称 -->
ENGINEERING_CONTENT = #engineeringContent#, <!-- 工程内容 -->
THIS_ENGINEERING_QUANTITY = #thisEngineeringQuantity#, <!-- 本次结算工程量 -->
CUMULATIVE_ENGINEERING_QUANTITY = #cumulativeEngineeringQuantity#, <!-- 至本次累计结算工程量 -->
UNIT = #unit#, <!-- 单位 -->
UNIT_PRICE = #unitPrice#, <!-- 含税单价 -->
TOTAL_PRICE = #totalPrice#, <!-- 不含税总价 -->
TOTAL_TAX_PRICE = #totalTaxPrice#, <!-- 含税总价 -->
INVENTORY_ID = #inventoryId#, <!-- 清单ID -->
REMARKS = #remarks#, <!-- 结算依据 -->
UPDATED_BY = #updatedBy#, <!-- 记录修改者 -->
UPDATED_NAME = #updatedName#, <!-- 记录修改名称 -->
UPDATED_TIME = #updatedTime# <!-- 记录修改时间 -->
WHERE ID = #id#
</update>
<select id="queryEngineeringQuantity" resultClass="int">
SELECT IFNULL(SUM( THIS_ENGINEERING_QUANTITY ),0) as "sumEngineeringQuantity" FROM ${hggpSchema}.HGCW009 WHERE 1=1
<include refid="condition" />
</select>
<select id="queryEngineeringQuantity" resultClass="int">
SELECT IFNULL(SUM( THIS_ENGINEERING_QUANTITY ),0) as "sumEngineeringQuantity"
FROM ${hggpSchema}.HGCW009
WHERE 1=1
<include refid="condition"/>
</select>
</sqlMap>
......@@ -253,6 +253,8 @@ public class HGCWTools {
}
public static class HgCw002 {
public static UserVO getUserCompany() {
UserVO userVO = new UserVO();
List<Org> orgList = HGXSTools.XsOrg.queryByUser();
......@@ -284,7 +286,36 @@ public class HGCWTools {
queryMap.put("status", 1);
return DaoBase.getInstance().query(HGPZ003.QUERY, queryMap);
}
/**
* 查询
*
* @param contractNumbers
* @return
*/
public static List<HGCW002> list(List<String> contractNumbers) {
if (CollectionUtils.isEmpty(contractNumbers)) {
return null;
}
Map<String, Object> paramMap = new HashMap();
paramMap.put("contractNumbers", contractNumbers);
return DaoBase.getInstance().query(HGCW002.QUERY, paramMap);
}
/**
* 根据计划号统计
*
* @param contractNumbers
* @return
*/
public static Map<String, HGCW002> map(List<String> contractNumbers) {
List<HGCW002> results = list(contractNumbers);
if (CollectionUtils.isEmpty(results)) {
return null;
}
return results.stream().collect(Collectors.toMap(HGCW002::getContractNumber, item -> item));
}
public static HGCW002 getId(String id) {
AssertUtils.isNull(id, "合同ID不能为空!");
List<HGCW002> results = DaoBase.getInstance().query(HGCW002.QUERY,new HashMap<String,Object>(){
......@@ -608,17 +639,18 @@ public class HGCWTools {
}
public static class HgCw009 {
public static void save(List<Map> rows, String settlementNumber, HGCW008 hgcw008) {
AssertUtils.isNull(settlementNumber, "结算单号不能为空!");
rows.forEach(row -> {
HGCW009 hgcw009 = new HGCW009();
hgcw009.fromMap(row);
hgcw009.setCompanyCode(hgcw008.getCompanyCode());
hgcw009.setCompanyName(hgcw008.getCompanyCode());
hgcw009.setSettlementNumber(settlementNumber);
DaoUtils.insert(HGCW009.INSERT, hgcw009);
});
}
public static void save(List<Map> rows, String settlementNumber, HGCW008 hgcw008) {
AssertUtils.isNull(settlementNumber, "结算单号不能为空!");
rows.forEach(row -> {
HGCW009 hgcw009 = new HGCW009();
hgcw009.fromMap(row);
hgcw009.setCompanyCode(hgcw008.getCompanyCode());
hgcw009.setCompanyName(hgcw008.getCompanyCode());
hgcw009.setSettlementNumber(settlementNumber);
DaoUtils.insert(HGCW009.INSERT, hgcw009);
});
}
public static void update(List<Map> rows) {
rows.forEach(row -> {
......
......@@ -35,26 +35,30 @@
<EF:EFRegion id="result" title="记录集">
<EF:EFGrid blockId="result" autoDraw="no" isFloat="true" autoBind="false" checkMode="single row">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="operator" cname="操作" locked="true" enable="false" width="170" align="center"/>
<EF:EFComboColumn ename="reviewStatus" cname="审批状态" width="100" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#" enable="false" >
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="operator" cname="操作" locked="true" enable="false" width="170" align="center"/>
<EF:EFComboColumn ename="reviewStatus" cname="审批状态" width="80" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#" enable="false">
<EF:EFCodeOption codeName="hggp.cw.reviewStatus"/>
</EF:EFComboColumn>
<EF:EFColumn ename="companyName" cname="所属公司" align="center" enable="false"/>
<EF:EFColumn ename="projCode" cname="项目编号" align="center" enable="false"/>
<EF:EFColumn ename="projName" cname="项目名称" align="center" enable="false"/>
<EF:EFColumn ename="contractNumber" cname="合同号" align="center" enable="false"/>
<EF:EFColumn ename="contractName" cname="合同名称" align="center" enable="false"/>
<EF:EFColumn ename="settlementNumber" cname="结算编号" align="center" enable="false"/>
<EF:EFComboColumn ename="settlementType" cname="结算类别" width="100" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#" enable="false" >
<EF:EFCodeOption codeName="hggp.cw.settlementType"/>
</EF:EFComboColumn>
<EF:EFColumn ename="thisSettlementAmount" cname="本次结算金额" align="right" enable="false" format="{0:C3}"/>
<EF:EFColumn ename="thisSettlementTax" cname="本次结算税金" align="right" enable="false" format="{0:C3}"/>
<EF:EFColumn ename="thisPriceTax" cname="本次结算含税金额" align="right" enable="false" format="{0:C3}"/>
<EF:EFColumn ename="contractDate" cname="结算日期" align="center" enable="false" editType="date" parseFormats="['yyyyMMdd']" parseFormat="yyyy-MM-dd"/>
<EF:EFColumn ename="companyName" cname="所属公司" enable="false" width="200" align="left"/>
<EF:EFColumn ename="projCode" cname="项目编号" enable="false" width="130" align="center"/>
<EF:EFColumn ename="projName" cname="项目名称" enable="false" width="200" align="left"/>
<EF:EFColumn ename="contractNumber" cname="合同号" enable="false" width="180" align="center"/>
<EF:EFColumn ename="contractName" cname="合同名称" enable="false" width="200" align="left"/>
<EF:EFColumn ename="settlementNumber" cname="结算编号" align="center" enable="false"/>
<EF:EFComboColumn ename="settlementType" cname="结算类别" width="100" align="center"
columnTemplate="#=textField#" itemTemplate="#=textField#" enable="false">
<EF:EFCodeOption codeName="hggp.cw.settlementType"/>
</EF:EFComboColumn>
<EF:EFColumn ename="thisSettlementAmount" cname="本次结算金额" enable="false" width="140" align="right"
format="{0:C3}"/>
<EF:EFColumn ename="thisSettlementTax" cname="本次结算税金" enable="false" width="150" align="right"
format="{0:C3}"/>
<EF:EFColumn ename="thisPriceTax" cname="本次结算含税金额" enable="false" width="150" align="right"
format="{0:C3}"/>
<EF:EFColumn ename="contractDate" cname="结算日期" align="center" enable="false" editType="date"
parseFormats="['yyyyMMdd']" parseFormat="yyyy-MM-dd"/>
</EF:EFGrid>
</EF:EFRegion>
</EF:EFPage>
......
......@@ -16,59 +16,31 @@ $(function() {
pageSizes: [10,20,30,50,100,200],
},
columns: [{
field: "totalPrice",
field: "totalTaxPrice",
template: function (item) {
let thisEngineeringQuantity = item.thisEngineeringQuantity;
let unitPrice = item.unitPrice;
if(!isBlank(thisEngineeringQuantity) && !isBlank(unitPrice)){
return parseFloat(thisEngineeringQuantity) * parseFloat(unitPrice);
if(isBlank(item.totalPrice)){
let thisEngineeringQuantity = item.thisEngineeringQuantity;
let unitPrice = item.unitPrice;
if(!isBlank(thisEngineeringQuantity) && !isBlank(unitPrice)){
return parseFloat(thisEngineeringQuantity) * parseFloat(unitPrice);
} else {
return "";
}
} else {
return parseFloat(item.totalPrice);
}
return isBlank(item.totalPrice) ? "" : item.totalPrice;
}
}],
loadComplete: function (grid) {
$("#BTN_CHOICE").on("click",choiceFunc);
grid.dataSource.bind("change", function(e) {
if (e.field == "thisEngineeringQuantity") {
var tr, index;
// 获取此model元素信息
var item = e.items[0];
var inventoryId = item.inventoryId;
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0; // 工程量
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var totalPrice = thisEngineeringQuantity * unitPrice; // 总价
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
queryCumulativeEngineeringQuantity(inventoryId, item);
// 计算总金额
setTimeout(function () {
calculateAmount(detail1Grid.getDataItems());
}, 200);
}
if (e.field == "unitPrice") {
var tr,index;
// 获取此model元素信息
var item = e.items[0];
var inventoryId = item.inventoryId;
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0; // 工程量
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var totalPrice = thisEngineeringQuantity * unitPrice; // 总价
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
}
if (e.field == "totalPrice") {
var tr, index;
// 获取此model元素信息
var item = e.items[0];
var totalPrice = parseFloat(item.totalPrice) || 0; // 总价
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var thisEngineeringQuantity = totalPrice / unitPrice; // 工程量
detail1Grid.setCellValue(item, 'thisEngineeringQuantity', parseFloat(thisEngineeringQuantity));
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
}
});
grid.dataSource.bind("change", function (e) {
if (e.field == "thisEngineeringQuantity" || e.field == "unitPrice") {
calcTotalPrice(e, 2);
}
if (e.field == "totalTaxPrice") {
calcTotalPrice(e, 1);
}
});
},
beforeAdd :function (e) {
console.log("新增前");
......@@ -258,7 +230,8 @@ function choiceCallbackFunc(result1, result2, result3) {
detail1Grid.setCellValue(0, "taskName", item.inventory);
detail1Grid.setCellValue(0, "unit", item.unit);
detail1Grid.setCellValue(0, "unitPrice", item.totalPriceIncluding / item.provisionalQuantity);
detail1Grid.setCellValue(0, "totalPrice", item.totalPriceIncluding);
detail1Grid.setCellValue(0, "totalPrice", item.totalPriceExcluding);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalPriceIncluding);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
})
......@@ -270,6 +243,7 @@ function choiceCallbackFunc(result1, result2, result3) {
detail1Grid.setCellValue(0, "taskName", item.projName);
detail1Grid.setCellValue(0, "unitPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "totalPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "remarks", item.contractContent);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
......@@ -283,7 +257,8 @@ function choiceCallbackFunc(result1, result2, result3) {
detail1Grid.setCellValue(0, "taskName", item.inventory);
detail1Grid.setCellValue(0, "unit", item.unit);
detail1Grid.setCellValue(0, "unitPrice", item.totalPriceIncluding / item.provisionalQuantity);
detail1Grid.setCellValue(0, "totalPrice", item.totalPriceIncluding);
detail1Grid.setCellValue(0, "totalPrice", item.totalPriceExcluding);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalPriceIncluding);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
})
......@@ -295,6 +270,7 @@ function choiceCallbackFunc(result1, result2, result3) {
detail1Grid.setCellValue(0, "taskName", item.projName);
detail1Grid.setCellValue(0, "unitPrice", item.totalContractPriceIncluding * -1);
detail1Grid.setCellValue(0, "totalPrice", item.totalContractPriceIncluding * -1);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalContractPriceIncluding * -1);
detail1Grid.setCellValue(0, "remarks", item.contractContent);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
......@@ -307,13 +283,13 @@ function choiceCallbackFunc(result1, result2, result3) {
detail1Grid.setCellValue(0, "taskName", item.projName);
detail1Grid.setCellValue(0, "unitPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "totalPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalContractPriceIncluding);
detail1Grid.setCellValue(0, "remarks", item.contractContent);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
})
}
calculateAmount(detail1Grid.getDataItems())
JSColorbox.close();
}
function cancelFunc() {
......@@ -377,6 +353,44 @@ function queryCumulativeEngineeringQuantity(inventoryId,item) {
}
/**
* 计算总金额
*
* @param e
* @param type 1.总价,2.单价或工程量
*/
function calcTotalPrice(e, type) {
// 获取此model元素信息
let item = e.items[0];
let settlementBasis = item.settlementBasis;
let taxPoints = settlementBasis === "合同内" ? $("#result-0-taxPoints").val() : 0;
if (type === 1) {
// 含税总价
var totalTaxPrice = parseFloat(item.totalTaxPrice) || 0;
// 含税单价
var unitPrice = parseFloat(item.unitPrice) || 0;
// 工程量
var thisEngineeringQuantity = totalTaxPrice / unitPrice;
// 不含税金额
let totalPrice = isBlank(taxPoints) ? totalTaxPrice : totalTaxPrice / (1 + taxPoints / 100);
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
detail1Grid.setCellValue(item, 'thisEngineeringQuantity', thisEngineeringQuantity);
} else {
// 工程量
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0;
// 含税单价
var unitPrice = parseFloat(item.unitPrice) || 0;
// 含税总价
var totalTaxPrice = thisEngineeringQuantity * unitPrice;
// 不含税金额
let totalPrice = isBlank(taxPoints) ? totalTaxPrice : totalTaxPrice / (1 + taxPoints / 100);
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
detail1Grid.setCellValue(item, 'totalTaxPrice', parseFloat(totalTaxPrice));
}
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
}
/**
* 本次结算金额: 明细的本次结算求和
* 累计结算金额: 当前合同的所有结算单本次结算金额求和
* 本次结算税金: 明细的本次结算求和(不含扣款 )*税率
......@@ -390,65 +404,66 @@ function queryCumulativeEngineeringQuantity(inventoryId,item) {
function calculateAmount(rows) {
var contractType = $("#contractType").val();
var totalPrice = 0;
var deductionPrice= 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
//税点
var taxPoints = $("#result-0-taxPoints").val() ? $("#result-0-taxPoints").val() / 100 : 0;
//本次结算金额
var thisSettlementAmount = totalPrice + deductionPrice;
//累计结算金额
var cumulativeSettlementAmount = sumCumulativeSettlementAmount + thisSettlementAmount;
//本次结算税金
var thisSettlementTax = 0;
if (contractType == "1") {
thisSettlementTax = thisSettlementAmount * taxPoints;
} else {
thisSettlementTax = totalPrice * taxPoints;
}
//累计结算税金
var cumulativeSettlementTax = sumCumulativeSettlementTax + thisSettlementTax;
//本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
//累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
$("#result-0-thisSettlementAmount").val(parseFloat(thisSettlementAmount).toFixed(3));
$("#result-0-cumulativeSettlementAmount").val(parseFloat(cumulativeSettlementAmount).toFixed(3));
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3));
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3));
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3));
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3));
var deductionPrice = 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
// 税点
var taxPoints = $("#result-0-taxPoints").val() ? $("#result-0-taxPoints").val() / 100 : 0;
// 本次结算金额
var thisSettlementAmount = totalPrice + deductionPrice;
// 累计结算金额
var cumulativeSettlementAmount = sumCumulativeSettlementAmount + thisSettlementAmount;
// 本次结算税金
var thisSettlementTax = 0;
if (contractType == "1") {
thisSettlementTax = thisSettlementAmount * taxPoints;
} else {
thisSettlementTax = totalPrice * taxPoints;
}
// 累计结算税金
var cumulativeSettlementTax = sumCumulativeSettlementTax + thisSettlementTax;
// 本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
// 累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
$("#result-0-thisSettlementAmount").val(parseFloat(thisSettlementAmount).toFixed(3));
$("#result-0-cumulativeSettlementAmount").val(parseFloat(cumulativeSettlementAmount).toFixed(3));
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3));
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3));
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3));
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3));
}
function fieldValidation() {
var projCode = $("#result-0-projCode").val();
if (isBlank(projCode)) {
message("请选择项目!")
return ;
}
var contractDate = $("#result-0-contractDate").val();
if (isBlank(contractDate)) {
message("请选择结算日期!")
return ;
}
var projCode = $("#result-0-projCode").val();
if (isBlank(projCode)) {
message("请选择项目!")
return;
}
var contractDate = $("#result-0-contractDate").val();
if (isBlank(contractDate)) {
message("请选择结算日期!")
return;
}
}
function calculateAmount2(taxPoints) {
var rows = detail1Grid.getDataItems();
var contractType = $("#contractType").val();
var totalPrice = 0;
var deductionPrice= 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
var rows = detail1Grid.getDataItems();
var contractType = $("#contractType").val();
var totalPrice = 0;
var deductionPrice = 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
//本次结算金额
var thisSettlementAmount = $("#result-0-thisSettlementAmount").val() || 0;
//本次结算税金
......@@ -456,25 +471,25 @@ function calculateAmount2(taxPoints) {
if (contractType == "1") {
thisSettlementTax = thisSettlementAmount * taxPoints;
} else {
thisSettlementTax = totalPrice * taxPoints;
thisSettlementTax = totalPrice * taxPoints;
}
//本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3))
//累计结算金额
var cumulativeSettlementAmount = parseFloat(sumCumulativeSettlementAmount) + parseFloat(thisSettlementAmount);
//累计结算税金
var cumulativeSettlementTax = parseFloat(sumCumulativeSettlementTax) + parseFloat(thisSettlementTax);
//累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3))
//本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3))
//累计结算金额
var cumulativeSettlementAmount = parseFloat(sumCumulativeSettlementAmount)
+ parseFloat(thisSettlementAmount);
//累计结算税金
var cumulativeSettlementTax = parseFloat(sumCumulativeSettlementTax) + parseFloat(thisSettlementTax);
//累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3))
}
$(window).load(function () {
refreshRowNo();
refreshRowNo();
});
......@@ -4,8 +4,6 @@
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<head>
</head>
<EF:EFPage title="新增结算单">
<EF:EFRegion id="inqu1" title="基本信息">
<div class="row">
......@@ -66,16 +64,17 @@
<EF:EFGrid blockId="detail1" autoDraw="override" checkMode="row" isFloat="true" copyToAdd="false">
<EF:EFColumn ename="rowNo" cname="行号" hidden="true"/>
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" align="center"/>
<EF:EFColumn ename="taskName" cname="任务名称" align="center"/>
<EF:EFColumn ename="engineeringContent" cname="工程内容" align="center"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" enable="false" width="100" align="center"/>
<EF:EFColumn ename="taskName" cname="任务名称" align="left"/>
<EF:EFColumn ename="engineeringContent" cname="工程内容" align="left"/>
<EF:EFColumn ename="thisEngineeringQuantity" cname="本次结算工程量" format="{0:N3}" align="right"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" format="{0:N3}" align="right"
enable="false"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" enable="false" width="140"
format="{0:N3}" align="right"/>
<EF:EFColumn ename="unit" cname="单位" align="center"/>
<EF:EFColumn ename="unitPrice" cname="单价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalPrice" cname="合价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="remarks" cname="备注" align="center"/>
<EF:EFColumn ename="unitPrice" cname="含税单价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalPrice" cname="不含税总价" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalTaxPrice" cname="含税总价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="remarks" cname="备注" align="left"/>
<EF:EFColumn ename="inventoryId" cname="清单id" hidden="true"/>
</EF:EFGrid>
</EF:EFRegion>
......
var sumCumulativeSettlementAmount = 0;
var sumCumulativeSettlementTax = 0;
$(function() {
$("#cancel").on("click", function () {
......@@ -16,56 +13,29 @@ $(function() {
pageSizes: [10, 20, 30, 50, 100, 200],
},
columns: [{
field: "totalPrice",
field: "totalTaxPrice",
template: function (item) {
let thisEngineeringQuantity = item.thisEngineeringQuantity;
let unitPrice = item.unitPrice;
if (!isBlank(thisEngineeringQuantity) && !isBlank(unitPrice)) {
return parseFloat(thisEngineeringQuantity) * parseFloat(unitPrice);
if(isBlank(item.totalTaxPrice)){
let thisEngineeringQuantity = item.thisEngineeringQuantity;
let unitPrice = item.unitPrice;
if(!isBlank(thisEngineeringQuantity) && !isBlank(unitPrice)){
return parseFloat(thisEngineeringQuantity) * parseFloat(unitPrice);
} else {
return "";
}
} else {
return parseFloat(item.totalTaxPrice);
}
return isBlank(item.totalPrice) ? "" : item.totalPrice;
}
}],
loadComplete: function (grid) {
$("#BTN_CHOICE").on("click", choiceFunc);
grid.dataSource.bind("change", function (e) {
if (e.field == "thisEngineeringQuantity") {
var tr, index;
// 获取此model元素信息
var item = e.items[0];
var inventoryId = item.inventoryId;
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0; // 工程量
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var totalPrice = thisEngineeringQuantity * unitPrice; // 总价
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
queryCumulativeEngineeringQuantity(inventoryId, item);
// 计算总金额
setTimeout(function () {
calculateAmount(detail1Grid.getDataItems());
}, 200);
}
if (e.field == "unitPrice") {
var tr, index;
// 获取此model元素信息
var item = e.items[0];
var inventoryId = item.inventoryId;
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0; // 工程量
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var totalPrice = thisEngineeringQuantity * unitPrice; // 总价
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
if (e.field == "thisEngineeringQuantity" || e.field == "unitPrice") {
calcTotalPrice(e, 2);
}
if (e.field == "totalPrice") {
var tr, index;
// 获取此model元素信息
var item = e.items[0];
var totalPrice = parseFloat(item.totalPrice) || 0; // 总价
var unitPrice = parseFloat(item.unitPrice) || 0; // 单价
var thisEngineeringQuantity = totalPrice / unitPrice; // 工程量
detail1Grid.setCellValue(item, 'thisEngineeringQuantity', parseFloat(thisEngineeringQuantity));
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
if (e.field == "totalTaxPrice") {
calcTotalPrice(e, 1);
}
});
setTimeout(function() {
......@@ -139,50 +109,6 @@ $(function() {
}
}
IPLATUI.EFPopupInput = {
"popupInputProjCode": {
query: function (e) {
let inInfo = new EiInfo();
inInfo.set("inqu_status-0-reviewStatus", 3);
inInfo.set("inqu_status-0-approvalStatus", 2);
return inInfo;
},
/**
* grid中的数据回填时触发的事件
* @param e 回填数据事件
* e.sender 弹出窗口对象
* e.grid 弹出的grid对象
* e.model 选中的数据行model
*/
backFill: function (e) {
console.log("Step" + (++i) + ": ----backFill----");
// 回填数据
var model = e.model;
var contractNumber = model.contractNumber;
var info = new EiInfo();
info.set("contractNumber", contractNumber);
EiCommunicator.send("HGCW008", "queryCalculateAmount", info, {
onSuccess: function (ei) {
if (ei.getStatus() >= 0) {
var data = ei.extAttr.result;
sumCumulativeSettlementAmount = data[0].sumCumulativeSettlementAmount;
sumCumulativeSettlementTax = data[0].sumCumulativeSettlementTax;
} else {
NotificationUtil(ei, "error");
return 0;
}
},
onFail: function (ei) {
// 发生异常
NotificationUtil("操作失败,原因[" + ei + "]", "error");
return 0;
}
});
}
}
};
window.document.addEventListener("keyup",function (event) {
if(event.keyCode === 13){
var grid = $("#ef_grid_result").data("kendoGrid");
......@@ -265,7 +191,8 @@ function choiceCallbackFunc(result1, result2) {
detail1Grid.setCellValue(0, "taskName", item.inventory);
detail1Grid.setCellValue(0, "unit", item.unit);
detail1Grid.setCellValue(0, "unitPrice", item.unitPriceExcludingTax);
detail1Grid.setCellValue(0, "totalPrice", item.provisionalQuantity * item.unitPriceExcludingTax);
detail1Grid.setCellValue(0, "totalPrice", item.totalPriceExcluding);
detail1Grid.setCellValue(0, "totalTaxPrice", item.totalPriceIncluding);
detail1Grid.setCellValue(0, "inventoryId", item.id);
detail1Grid.refresh();
})
......@@ -353,6 +280,44 @@ function queryCumulativeEngineeringQuantity(inventoryId,item) {
}
/**
* 计算总金额
*
* @param e
* @param type 1.总价,2.单价或工程量
*/
function calcTotalPrice(e, type) {
// 获取此model元素信息
let item = e.items[0];
let settlementBasis = item.settlementBasis;
let taxPoints = settlementBasis === "合同内" ? $("#result-0-taxPoints").val() : 0;
if (type === 1) {
// 含税总价
var totalTaxPrice = parseFloat(item.totalTaxPrice) || 0;
// 含税单价
var unitPrice = parseFloat(item.unitPrice) || 0;
// 工程量
var thisEngineeringQuantity = totalTaxPrice / unitPrice;
// 不含税金额
let totalPrice = isBlank(taxPoints) ? totalTaxPrice : totalTaxPrice / (1 + taxPoints / 100);
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
detail1Grid.setCellValue(item, 'thisEngineeringQuantity', thisEngineeringQuantity);
} else {
// 工程量
var thisEngineeringQuantity = parseFloat(item.thisEngineeringQuantity) || 0;
// 含税单价
var unitPrice = parseFloat(item.unitPrice) || 0;
// 含税总价
var totalTaxPrice = thisEngineeringQuantity * unitPrice;
// 不含税金额
let totalPrice = isBlank(taxPoints) ? totalTaxPrice : totalTaxPrice / (1 + taxPoints / 100);
detail1Grid.setCellValue(item, 'totalPrice', parseFloat(totalPrice));
detail1Grid.setCellValue(item, 'totalTaxPrice', parseFloat(totalTaxPrice));
}
// 计算总金额
calculateAmount(detail1Grid.getDataItems());
}
/**
* 本次结算金额: 明细的本次结算求和
* 累计结算金额: 当前合同的所有结算单本次结算金额求和
* 本次结算税金: 明细的本次结算求和(不含扣款 )*税率
......@@ -364,101 +329,81 @@ function queryCumulativeEngineeringQuantity(inventoryId,item) {
* @param rows
*/
function calculateAmount(rows) {
var contractType = $("#contractType").val();
var totalPrice = 0;
var deductionPrice= 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
//税点
var taxPoints = $("#result-0-taxPoints").val() ? $("#result-0-taxPoints").val() / 100 : 0;
//本次结算金额
var thisSettlementAmount = totalPrice + deductionPrice;
//累计结算金额
var cumulativeSettlementAmount = sumCumulativeSettlementAmount + thisSettlementAmount;
//本次结算税金
var thisSettlementTax = 0;
if (contractType == "1") {
thisSettlementTax = thisSettlementAmount * taxPoints;
} else {
thisSettlementTax = totalPrice * taxPoints;
}
//累计结算税金
var cumulativeSettlementTax = sumCumulativeSettlementTax + thisSettlementTax;
//本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
//累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
$("#result-0-thisSettlementAmount").val(parseFloat(thisSettlementAmount).toFixed(3))
$("#result-0-cumulativeSettlementAmount").val(parseFloat(cumulativeSettlementAmount).toFixed(3))
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3))
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3))
var thisAmount = 0;
var thisTaxAmount = 0;
rows.forEach(function (row, index) {
thisAmount += parseFloat(row.totalPrice);
thisTaxAmount += parseFloat(row.totalTaxPrice);
});
// 本次结算税金
var thisTax = thisTaxAmount - thisAmount;
// 累计不含税金额,不含本结算单
var sumAmount = $("#main-0-thisSettlementAmount").val();
// 累计税额,不含本结算单
var sumTax = $("#main-0-thisSettlementTax").val();
// 累计含税金额,不含本结算单
var sumTaxAmount = $("#main-0-thisPriceTax").val();
// 累计结算金额
var cumulativeSettlementAmount = parseFloat(sumAmount) + thisAmount;
// 累计结算税金
var cumulativeSettlementTax = parseFloat(sumTax) + thisTax;
// 累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(sumTaxAmount) + thisTaxAmount;
$("#result-0-thisSettlementAmount").val(parseFloat(thisAmount).toFixed(3))
$("#result-0-cumulativeSettlementAmount").val(parseFloat(cumulativeSettlementAmount).toFixed(3))
$("#result-0-thisSettlementTax").val(parseFloat(thisTax).toFixed(3))
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisTaxAmount).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3))
}
/**
* 调整税率
*
* @param taxPoints
*/
function calculateAmount2(taxPoints) {
var rows = detail1Grid.getDataItems();
var contractType = $("#contractType").val();
var totalPrice = 0;
var deductionPrice= 0;
rows.forEach(function (row, index) {
if (row.settlementBasis == "合同内") {
totalPrice += parseFloat(row.totalPrice);
} else {
deductionPrice += parseFloat(row.totalPrice);
}
});
//本次结算金额
// 本次结算金额
var thisSettlementAmount = $("#result-0-thisSettlementAmount").val() || 0;
//本次结算税金
var thisSettlementTax = 0;
if (contractType == "1") {
thisSettlementTax = thisSettlementAmount * taxPoints;
} else {
thisSettlementTax = totalPrice * taxPoints;
}
//本次价税合计=本次结算金额+本次结算税金
var thisPriceTax = parseFloat(thisSettlementAmount) + parseFloat(thisSettlementTax);
$("#result-0-thisSettlementTax").val(parseFloat(thisSettlementTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisPriceTax).toFixed(3))
//累计结算金额
var cumulativeSettlementAmount = parseFloat(sumCumulativeSettlementAmount) + parseFloat(thisSettlementAmount);
//累计结算税金
var cumulativeSettlementTax = parseFloat(sumCumulativeSettlementTax) + parseFloat(thisSettlementTax);
//累计价税合计=累计结算金额+累计结算税金
var cumulativePriceTax = parseFloat(cumulativeSettlementAmount) + parseFloat(cumulativeSettlementTax);
// 本次结算税金
var thisTax = thisSettlementAmount * taxPoints;
// 本次价税合计=本次结算金额+本次结算税金
var thisTaxPrice = parseFloat(thisSettlementAmount) + parseFloat(thisTax);
$("#result-0-thisSettlementTax").val(parseFloat(thisTax).toFixed(3))
$("#result-0-thisPriceTax").val(parseFloat(thisTaxPrice).toFixed(3))
// 累计税额,不含本结算单
var sumTax = $("#main-0-thisSettlementTax").val();
// 累计含税金额,不含本结算单
var sumTaxAmount = $("#main-0-thisPriceTax").val();
// 累计结算税金
var cumulativeSettlementTax = parseFloat(sumTax) + parseFloat(thisTax);
// 累计结算含税金额
var cumulativeSettlementAmount = parseFloat(sumTaxAmount) + parseFloat(thisTaxPrice);
$("#result-0-cumulativeSettlementTax").val(parseFloat(cumulativeSettlementTax).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativePriceTax).toFixed(3))
$("#result-0-cumulativePriceTax").val(parseFloat(cumulativeSettlementAmount).toFixed(3))
}
function initDate() {
var projCode = $("#result-0-projCode").val();
var contractNumber = $("#result-0-contractNumber").val();
IPLAT.EFPopupInput.text( $("#popupInputProjCode") , projCode)
//根据合同回去合同类型
var info = new EiInfo();
info.set("contractNumber", contractNumber);
EiCommunicator.send("HGCW002", "queryContractByNumber", info, {
onSuccess: function (ei) {
if (ei.getStatus() >= 0) {
var data = ei.extAttr.hgcw002;
$("#contractType").val(data.contractType);
} else {
NotificationUtil(ei, "error");
return 0;
}
},
onFail: function (ei) {
// 发生异常
NotificationUtil("操作失败,原因[" + ei + "]", "error");
return 0;
}
});
var contractNumber = $("#result-0-contractNumber").val();
//根据合同回去合同类型
var info = new EiInfo();
info.set("contractNumber", contractNumber);
EiCommunicator.send("HGCW002", "queryContractByNumber", info, {
onSuccess: function (ei) {
if (ei.getStatus() >= 0) {
var data = ei.extAttr.hgcw002;
$("#contractType").val(data.contractType);
} else {
NotificationUtil(ei, "error");
return 0;
}
},
onFail: function (ei) {
// 发生异常
NotificationUtil("操作失败,原因[" + ei + "]", "error");
return 0;
}
});
}
function saveResult1Func(btn) {
......
......@@ -4,22 +4,13 @@
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<head>
</head>
<EF:EFPage title="修改结算单">
<EF:EFRegion id="inqu1" title="基本信息">
<EF:EFInput ename="result-0-id" cname="id" type="hidden"/>
<div class="row">
<%--<EF:EFPopupInput ename="popupInputProjCode" cname="项目编号" popupTitle="项目信息" popupWidth="900"
serviceName="HGCW002" methodName="queryContractByType" resultId="result"
save="false" popupType="ServiceGrid" refresh="true"
valueField="projCode" textField="projCode"
columnEnames="projCode,projName,contractNumber,contractName,totalContractPriceIncluding,contractTypeStr"
columnCnames="项目编码,项目名称,合同号,合同名称,合同总价,合同类型"
backFillColumnIds="projCode,projName,contractNumber,contractName,totalContractPriceIncluding,contractTypeStr,contractType"
backFillFieldIds="result-0-projCode,result-0-projName,result-0-contractNumber,result-0-contractName,result-0-totalContractPrice,result-0-contractTypeStr,contractType"
readonly="true" required="true" resizable="true" colWidth="4">
</EF:EFPopupInput>--%>
<EF:EFInput ename="main-0-thisSettlementAmount" cname="累计结算金额" type="hidden"/>
<EF:EFInput ename="main-0-thisSettlementTax" cname="累计结算税金" type="hidden"/>
<EF:EFInput ename="main-0-thisPriceTax" cname="累计结算价税合计金额" type="hidden"/>
<EF:EFInput ename="result-0-id" cname="id" type="hidden"/>
<div class="row">
<EF:EFInput ename="result-0-projCode" cname="项目编号" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-projName" cname="项目简称" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-contractNumber" cname="合同号" colWidth="4" readonly="true" />
......@@ -65,24 +56,26 @@
<EF:EFRegion id="detail1" title="合同清单">
<EF:EFGrid blockId="detail1" autoDraw="override" checkMode="row" isFloat="true" copyToAdd="false">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="settlementNumber" cname="结算单" hidden="true"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" align="center" />
<EF:EFColumn ename="taskName" cname="任务名称" align="center" />
<EF:EFColumn ename="engineeringContent" cname="工程内容" align="center" />
<EF:EFColumn ename="thisEngineeringQuantity" cname="本次结算工程量" format="{0:N3}" align="right"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" format="{0:N3}" align="right" enable="false"/>
<EF:EFColumn ename="unit" cname="单位" align="center" />
<EF:EFColumn ename="unitPrice" cname="单价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalPrice" cname="合价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="remarks" cname="备注" align="center" />
<EF:EFColumn ename="inventoryId" cname="清单id" hidden="true"/>
<EF:EFColumn ename="settlementNumber" cname="结算单" hidden="true"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" enable="false" width="100" align="center"/>
<EF:EFColumn ename="taskName" cname="任务名称" align="left"/>
<EF:EFColumn ename="engineeringContent" cname="工程内容" align="left"/>
<EF:EFColumn ename="thisEngineeringQuantity" cname="本次结算工程量" format="{0:N3}" align="right"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" enable="false" width="140"
format="{0:N3}" align="right"/>
<EF:EFColumn ename="unit" cname="单位" align="center"/>
<EF:EFColumn ename="unitPrice" cname="含税单价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalPrice" cname="不含税总价" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalTaxPrice" cname="含税总价" format="{0:N3}" align="right"/>
<EF:EFColumn ename="remarks" cname="备注" align="left"/>
<EF:EFColumn ename="inventoryId" cname="清单id" hidden="true"/>
</EF:EFGrid>
</EF:EFRegion>
<div class="row" style="display:flex;justify-content:center;">
<EF:EFButton ename="cancel" cname="取消" type="button" class="btn-center"/>
<EF:EFButton ename="btn_save" cname="保存" type="button" class="btn-center"/>
</div>
<div class="row" style="display:flex;justify-content:center;">
<EF:EFButton ename="cancel" cname="取消" type="button" class="btn-center"/>
<EF:EFButton ename="btn_save" cname="保存" type="button" class="btn-center"/>
</div>
</EF:EFPage>
......
......@@ -4,70 +4,71 @@
<%@ taglib prefix="EF" tagdir="/WEB-INF/tags/EF" %>
<c:set var="ctx" value="${pageContext.request.contextPath}"/>
<head>
</head>
<EF:EFPage title="修改结算单">
<EF:EFRegion id="inqu1" title="基本信息">
<EF:EFInput ename="result-0-id" cname="id" type="hidden"/>
<div class="row">
<EF:EFInput ename="result-0-projCode" cname="项目编号" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-projName" cname="项目简称" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-contractNumber" cname="合同号" colWidth="4" readonly="true" />
<EF:EFInput ename="contractType" cname="合同类型" type="hidden"/>
<EF:EFPage title="结算单详情">
<EF:EFRegion id="inqu1" title="基本信息">
<EF:EFInput ename="result-0-id" cname="id" type="hidden"/>
<div class="row">
<EF:EFInput ename="result-0-projCode" cname="项目编号" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-projName" cname="项目简称" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-contractNumber" cname="合同号" colWidth="4" readonly="true"/>
<EF:EFInput ename="contractType" cname="合同类型" type="hidden"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-contractName" cname="合同名称" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-settlementNumber" cname="结算编号" colWidth="4" readonly="true"/>
<EF:EFSelect cname="结算类别" ename="result-0-settlementType" colWidth="4" filter="contains" readonly="true"
enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.settlementType"/>
</EF:EFSelect>
</div>
<div class="row">
<EF:EFSelect cname="税点" ename="result-0-taxPoints" colWidth="4" filter="contains" readonly="true"
enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.taxPoints"/>
</EF:EFSelect>
<EF:EFSelect cname="价税分离" ename="result-0-priceTaxSeparation" colWidth="4" filter="contains" readonly="true"
enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.priceTaxSeparation"/>
</EF:EFSelect>
<EF:EFDatePicker cname="结算日期" ename="result-0-contractDate" colWidth="4"
format="yyyy-MM-dd" parseFormats="['yyyyMMdd']" readonly="true" enable="false"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-thisSettlementAmount" cname="本次结算金额(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-thisSettlementTax" cname="本次结算税金(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-thisPriceTax" cname="本次结算价税合计金额(元)" colWidth="4" readonly="true"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-cumulativeSettlementAmount" cname="累计结算金额(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-cumulativeSettlementTax" cname="累计结算税金(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-cumulativePriceTax" cname="累计结算价税合计金额(元)" colWidth="4" readonly="true"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-totalContractPrice" cname="合同金额(元)" colWidth="4" readonly="true"/>
</div>
</EF:EFRegion>
</div>
<div class="row">
<EF:EFInput ename="result-0-contractName" cname="合同名称" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-settlementNumber" cname="结算编号" colWidth="4" readonly="true"/>
<EF:EFSelect cname="结算类别" ename="result-0-settlementType" colWidth="4" filter="contains" readonly="true" enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.settlementType"/>
</EF:EFSelect>
</div>
<div class="row">
<EF:EFSelect cname="税点" ename="result-0-taxPoints" colWidth="4" filter="contains" readonly="true" enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.taxPoints"/>
</EF:EFSelect>
<EF:EFSelect cname="价税分离" ename="result-0-priceTaxSeparation" colWidth="4" filter="contains" readonly="true" enable="false">
<EF:EFOption label="-- 请选择 --" value=""/>
<EF:EFCodeOption codeName="hggp.cw.priceTaxSeparation"/>
</EF:EFSelect>
<EF:EFDatePicker cname="结算日期" ename="result-0-contractDate" colWidth="4"
format="yyyy-MM-dd" parseFormats="['yyyyMMdd']" readonly="true" enable="false"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-thisSettlementAmount" cname="本次结算金额(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-thisSettlementTax" cname="本次结算税金(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-thisPriceTax" cname="本次结算价税合计金额(元)" colWidth="4" readonly="true"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-cumulativeSettlementAmount" cname="累计结算金额(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-cumulativeSettlementTax" cname="累计结算税金(元)" colWidth="4" readonly="true"/>
<EF:EFInput ename="result-0-cumulativePriceTax" cname="累计结算价税合计金额(元)" colWidth="4" readonly="true"/>
</div>
<div class="row">
<EF:EFInput ename="result-0-totalContractPrice" cname="合同金额(元)" colWidth="4" readonly="true"/>
</div>
</EF:EFRegion>
<EF:EFRegion id="detail1" title="合同清单">
<EF:EFGrid blockId="detail1" autoDraw="override" checkMode="row" isFloat="true" copyToAdd="false">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="settlementNumber" cname="结算单" hidden="true"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" align="center" readonly="true" enable="false"/>
<EF:EFColumn ename="taskName" cname="任务名称" align="center" readonly="true" enable="false"/>
<EF:EFColumn ename="engineeringContent" cname="工程内容" align="center" readonly="true" enable="false"/>
<EF:EFColumn ename="thisEngineeringQuantity" cname="本次结算工程量" format="{0:N3}" align="right" readonly="true" enable="false"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" format="{0:N3}" align="right" readonly="true" enable="false"/>
<EF:EFColumn ename="unit" cname="单位" align="center" readonly="true" enable="false"/>
<EF:EFColumn ename="unitPrice" cname="单价" format="{0:N3}" align="right" readonly="true" enable="false"/>
<EF:EFColumn ename="totalPrice" cname="合价" format="{0:N3}" align="right" readonly="true" enable="false"/>
<EF:EFColumn ename="remarks" cname="备注" align="center" readonly="true" enable="false"/>
<EF:EFColumn ename="inventoryId" cname="清单id" hidden="true"/>
</EF:EFGrid>
</EF:EFRegion>
<EF:EFRegion id="detail1" title="合同清单">
<EF:EFGrid blockId="detail1" autoDraw="override" checkMode="row" isFloat="true" copyToAdd="false">
<EF:EFColumn ename="id" cname="主键" hidden="true"/>
<EF:EFColumn ename="settlementNumber" cname="结算单" hidden="true"/>
<EF:EFColumn ename="settlementBasis" cname="结算依据" enable="false" align="center"/>
<EF:EFColumn ename="taskName" cname="任务名称" enable="false" align="center"/>
<EF:EFColumn ename="engineeringContent" cname="工程内容" enable="false" align="center"/>
<EF:EFColumn ename="thisEngineeringQuantity" cname="本次结算工程量" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="cumulativeEngineeringQuantity" cname="至本次累计结算工程量" enable="false" width="140"
align="right" format="{0:N3}"/>
<EF:EFColumn ename="unit" cname="单位" enable="false" align="center"/>
<EF:EFColumn ename="unitPrice" cname="含税单价" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalPrice" cname="不含税总价" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="totalTaxPrice" cname="含税总价" enable="false" format="{0:N3}" align="right"/>
<EF:EFColumn ename="remarks" cname="备注" enable="false" align="center"/>
<EF:EFColumn ename="inventoryId" cname="清单id" hidden="true"/>
</EF:EFGrid>
</EF:EFRegion>
</EF:EFPage>
......
......@@ -28,17 +28,16 @@ $(function () {
* 确认
*/
$('#CONFIRM').on('click', function () {
let allRows = new Array();
let result3Row = new Array();
allRows = resultGrid.getCheckedRows();
result3Row = result3Grid.getCheckedRows();
if (allRows.length > 0) {
parent.JSColorbox.setValueCallback(allRows,result3Row);
} else {
message("请选择至少一条合同清单!");
return;
}
let allRows = new Array();
let result3Row = new Array();
allRows = resultGrid.getCheckedRows();
result3Row = result3Grid.getCheckedRows();
if (allRows.length > 0) {
parent.JSColorbox.setValueCallback(allRows, result3Row);
} else {
message("请选择至少一条合同清单!");
return;
}
})
});
......
......@@ -15,14 +15,16 @@
<EF:EFColumn ename="inventory" cname="清单" align="center" enable="false"/>
<EF:EFColumn ename="unit" cname="单位" align="center" enable="false"/>
<EF:EFColumn ename="provisionalQuantity" cname="暂定工程量" format="{0:N3}" align="center" enable="false"/>
<EF:EFColumn ename="measurementMethod" cname="计量方式" align="center" enable="false"/>
<EF:EFColumn ename="supplyMethod" cname="材料供应方式" align="center" enable="false"/>
<EF:EFColumn ename="unitPriceExcludingTax" cname="除税单价/元" format="{0:N3}" align="center" enable="false"/>
<EF:EFColumn ename="measurementMethod" cname="计量方式" align="center" enable="false"/>
<EF:EFColumn ename="supplyMethod" cname="材料供应方式" align="center" enable="false"/>
<EF:EFColumn ename="taxPoints" cname="合同税点" enable="false" width="90" align="center"/>
<EF:EFColumn ename="unitPriceExcludingTax" cname="除税单价/元" format="{0:N3}" align="center" enable="false"/>
<EF:EFColumn ename="totalPriceExcluding" cname="不含税总价" enable="false" format="{0:N3}" align="center"/>
<EF:EFColumn ename="totalPriceIncluding" cname="含税总价" enable="false" format="{0:N3}" align="center"/>
<EF:EFColumn ename="laborCosts" cname="其中人工费、元" format="{0:N3}" align="center" enable="false"/>
<EF:EFColumn ename="laborCosts" cname="其中人工费、元" format="{0:N3}" align="center" enable="false"/>
</EF:EFGrid>
</EF:EFRegion>
<EF:EFRegion id="result3" title="签证单" fitHeight="true">
<EF:EFGrid blockId="result3" autoDraw="override" isFloat="true" checkMode="row" queryMethod="query3">
<EF:EFColumn ename="id" cname="主键" 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