|
|
|
@ -6,6 +6,7 @@ import com.spring.ifs.data.*; |
|
|
|
import com.spring.ifs.utils.IfsConverterToMap; |
|
|
|
import com.spring.ifs.utils.IfsPlsqlUtils; |
|
|
|
import com.spring.modules.base.entity.WorkCenterCost; |
|
|
|
import com.spring.modules.base.vo.PersonnelLevelVo; |
|
|
|
import com.spring.modules.part.entity.APIEntity.PartIfsInventory; |
|
|
|
import com.spring.modules.part.vo.InventoryPartUnitCostSumVo; |
|
|
|
import ifs.fnd.ap.APException; |
|
|
|
@ -14,6 +15,7 @@ import ifs.fnd.ap.Server; |
|
|
|
import org.slf4j.Logger; |
|
|
|
import org.slf4j.LoggerFactory; |
|
|
|
|
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.util.ArrayList; |
|
|
|
import java.util.HashMap; |
|
|
|
import java.util.List; |
|
|
|
@ -582,46 +584,54 @@ public class BaseSearchApiTest { |
|
|
|
* @date 2025/5/6 11:58 |
|
|
|
* @version 1.0 |
|
|
|
*/ |
|
|
|
public static List<LaborClassCost> getLaborClassCosts(Server srv, int startIndex, int pageSize) throws APException { |
|
|
|
public static List<PersonnelLevelVo> getLaborClassCosts(Server srv, String siteCon, int startIndex, int pageSize) throws APException { |
|
|
|
StringBuilder searchSql = new StringBuilder(); |
|
|
|
searchSql.append("SELECT OBJID ifsRowId, OBJVERSION ifsRowVersion, CONTRACT, LABOR_CLASS_NO,"); |
|
|
|
searchSql.append(" ifsapp.LABOR_CLASS_API.Get_labor_class_Description(CONTRACT, LABOR_CLASS_NO) laborClassDesc,"); |
|
|
|
searchSql.append(" COST_SET, ifsapp.COST_SET_API.Get_Description(CONTRACT,COST_SET) costSetDesc, labor_class_RATE, labor_class_COST_CODE,"); |
|
|
|
searchSql.append(" to_char(START_DATE, 'yyyy-MM-dd') START_DATE, to_char(END_DATE, 'yyyy-MM-dd') END_DATE"); |
|
|
|
searchSql.append(" FROM ifsapp.LABOR_CLASS_COST"); |
|
|
|
searchSql.append(" WHERE COST_SET = '1' AND END_DATE IS NULL"); |
|
|
|
searchSql.append("SELECT lcc.OBJID ifsRowId, lcc.OBJVERSION ifsRowVersion, lcc.CONTRACT, lcc.LABOR_CLASS_NO,"); |
|
|
|
searchSql.append(" ifsapp.LABOR_CLASS_API.Get_labor_class_Description(lcc.CONTRACT, lcc.LABOR_CLASS_NO) laborClassDesc,"); |
|
|
|
searchSql.append(" lcc.COST_SET, ifsapp.COST_SET_API.Get_Description(lcc.CONTRACT,lcc.COST_SET) costSetDesc,"); |
|
|
|
searchSql.append(" lcc.labor_class_RATE, lcc.labor_class_COST_CODE,"); |
|
|
|
searchSql.append(" to_char(lcc.START_DATE, 'yyyy-MM-dd') START_DATE, to_char(lcc.END_DATE, 'yyyy-MM-dd') END_DATE,"); |
|
|
|
searchSql.append(" (CASE WHEN lc.objstate = 'Active' THEN 'Y' ELSE 'N' END) active"); |
|
|
|
searchSql.append(" FROM ifsapp.LABOR_CLASS_COST lcc"); |
|
|
|
searchSql.append(" LEFT JOIN ifsapp.labor_class lc ON lc.CONTRACT = lcc.CONTRACT AND lc.LABOR_CLASS_NO = lcc.LABOR_CLASS_NO"); |
|
|
|
searchSql.append(" WHERE lcc.COST_SET = '1' AND lcc.END_DATE IS NULL"); |
|
|
|
|
|
|
|
//添加判断的查询条件 |
|
|
|
if (!(null == siteCon || "".equals(siteCon))) { |
|
|
|
searchSql.append(" AND lcc.contract IN " + siteCon); |
|
|
|
} |
|
|
|
//设置查询的入参 |
|
|
|
Map<String, String> inParam = new HashMap<>(); |
|
|
|
//添加排序语句 |
|
|
|
searchSql.append(" ORDER BY CONTRACT, LABOR_CLASS_NO"); |
|
|
|
searchSql.append(" ORDER BY lcc.CONTRACT, lcc.LABOR_CLASS_NO"); |
|
|
|
//添加分页的查询语句 |
|
|
|
searchSql.append(" OFFSET "+startIndex+" ROWS FETCH NEXT "+pageSize+" ROWS ONLY"); |
|
|
|
logger.info("人员等级成本查询语句sql"+searchSql.toString()); |
|
|
|
searchSql.append(" OFFSET " + startIndex + " ROWS FETCH NEXT " + pageSize + " ROWS ONLY"); |
|
|
|
logger.info("人员等级成本查询语句sql" + searchSql.toString()); |
|
|
|
//调用查询的通用方法 |
|
|
|
RecordCollection recordCollection = IfsPlsqlUtils.execSqlSearchGetRecordCollection(srv, searchSql, inParam); |
|
|
|
//判断能否返回 |
|
|
|
if (recordCollection == null) { |
|
|
|
return new ArrayList<>(); |
|
|
|
} else { |
|
|
|
List<LaborClassCost> returnlList = new ArrayList<>(); |
|
|
|
List<PersonnelLevelVo> returnlList = new ArrayList<>(); |
|
|
|
//处理结果集 |
|
|
|
List<Map<String, String>> resultList = IfsConverterToMap.ConverterIfsToList(recordCollection); |
|
|
|
//获取数据转bean |
|
|
|
for (int i = 0; i < resultList.size(); i++) { |
|
|
|
Map<String, String> tempMap = resultList.get(i); |
|
|
|
LaborClassCost tempItem = new LaborClassCost(); |
|
|
|
PersonnelLevelVo tempItem = new PersonnelLevelVo(); |
|
|
|
//设置参数 |
|
|
|
tempItem.setIfsRowId(tempMap.get("IFSROWID")); |
|
|
|
//tempItem.setIfsRowId(tempMap.get("IFSROWID")); |
|
|
|
tempItem.setIfsRowVersion(tempMap.get("IFSROWVERSION")); |
|
|
|
tempItem.setContract(tempMap.get("CONTRACT")); |
|
|
|
tempItem.setLaborClassNo(tempMap.get("LABOR_CLASS_NO")); |
|
|
|
tempItem.setLaborClassDesc(tempMap.get("LABORCLASSDESC")); |
|
|
|
tempItem.setCostSet(tempMap.get("COST_SET")); |
|
|
|
tempItem.setCostSetDesc(tempMap.get("COSTSETDESC")); |
|
|
|
tempItem.setLaborClassRate(tempMap.get("LABOR_CLASS_RATE")); |
|
|
|
tempItem.setLaborClassCostCode(tempMap.get("LABOR_CLASS_COST_CODE")); |
|
|
|
tempItem.setStartDate(tempMap.get("START_DATE")); |
|
|
|
tempItem.setEndDate(tempMap.get("END_DATE")); |
|
|
|
tempItem.setSite(tempMap.get("CONTRACT")); |
|
|
|
tempItem.setLevelId(tempMap.get("LABOR_CLASS_NO")); |
|
|
|
tempItem.setLevelDesc(tempMap.get("LABORCLASSDESC")); |
|
|
|
tempItem.setActive(tempMap.get("ACTIVE")); |
|
|
|
tempItem.setCreateDate(DateUtils.getStringToDate(tempMap.get("START_DATE"), "yyyy-MM-dd")); |
|
|
|
tempItem.setCreateBy(tempMap.get("Admin")); |
|
|
|
tempItem.setUpdateDate(null); // 从tempMap获取值 |
|
|
|
tempItem.setUpdateBy(tempMap.get("UPDATE_BY")); // 从tempMap获取值 |
|
|
|
tempItem.setLevelCost(new BigDecimal(tempMap.get("LABOR_CLASS_RATE"))); |
|
|
|
//添加对象 |
|
|
|
returnlList.add(tempItem); |
|
|
|
} |
|
|
|
|