单据查询(费用管理)查询源码

This commit is contained in:
lihao 2025-05-28 15:26:33 +08:00
parent 489659a045
commit 1b8e919b42
2 changed files with 145 additions and 0 deletions

5
erm/component.xml Normal file
View File

@ -0,0 +1,5 @@
<?xml version="1.0" encoding='gb2312'?>
<module displayname="erm" name="erm">
<dependencies>
</dependencies>
</module>

View File

@ -0,0 +1,140 @@
//
// Source code recreated from a .class file by IntelliJ IDEA
// (powered by FernFlower decompiler)
//
package nccloud.web.erm.action.billmanage;
import com.alibaba.fastjson.JSONObject;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import nc.bs.logging.Log;
import nc.nccloud.util.erm.expenseaccount.Func;
import nc.vo.ep.bx.JKBXHeaderVO;
import nc.vo.ml.NCLangRes4VoTransl;
import nccloud.dto.baseapp.querytree.dataformat.Condition;
import nccloud.dto.baseapp.querytree.dataformat.PageInfo;
import nccloud.dto.baseapp.querytree.dataformat.QueryCondition;
import nccloud.dto.baseapp.querytree.dataformat.QueryTreeFormatVO;
import nccloud.dto.baseapp.querytree.dataformat.Value;
import nccloud.framework.core.exception.ExceptionUtils;
import nccloud.framework.core.json.IJson;
import nccloud.framework.service.ServiceLocator;
import nccloud.framework.web.container.IRequest;
import nccloud.framework.web.json.JsonFactory;
import nccloud.framework.web.ui.model.row.Row;
import nccloud.framework.web.ui.pattern.grid.Grid;
import nccloud.framework.web.ui.pattern.grid.GridOperator;
import nccloud.pubitf.erm.billmanage.IBillManageService;
import nccloud.web.erm.action.lic.AbstractLicAction;
import nccloud.web.erm.util.expenseaccount.initbills.InitBillsUtil;
import org.apache.commons.lang3.StringUtils;
public class BillQueryAction extends AbstractLicAction {
private Log log = Log.getInstance(this.getClass());
public BillQueryAction() {
}
public Object doRealAction(IRequest request) {
JKBXHeaderVO[] jkbxvos = new JKBXHeaderVO[0];
Grid grid = new Grid();
PageInfo pageInfo = null;
try {
if (request == null) {
ExceptionUtils.wrapBusinessException(NCLangRes4VoTransl.getNCLangRes().getStrByID("20110011makebill", "020110011makebill-0000"));
}
IJson json = JsonFactory.create();
String read = request.read();
if (StringUtils.isEmpty(read)) {
ExceptionUtils.wrapBusinessException(NCLangRes4VoTransl.getNCLangRes().getStrByID("20110011makebill", "020110011makebill-0000"));
}
QueryTreeFormatVO info = (QueryTreeFormatVO)json.fromJson(read, QueryTreeFormatVO.class);
if (null == info) {
ExceptionUtils.wrapBusinessException(NCLangRes4VoTransl.getNCLangRes().getStrByID("20110011makebill", "020110011makebill-0000"));
}
if (info.getUserdefObj() != null) {
QueryCondition queryCon = new QueryCondition();
List<Condition> conditions = new ArrayList();
for(Map.Entry<String, Object> entry : info.getUserdefObj().entrySet()) {
Condition con = new Condition();
con.setField((String)entry.getKey());
Value value = new Value();
value.setFirstvalue((String)entry.getValue());
con.setValue(value);
conditions.add(con);
}
queryCon.setConditions(conditions);
info.setQuerycondition(queryCon);
}
IBillManageService billManageService = (IBillManageService)ServiceLocator.find(IBillManageService.class);
String[] pks = null;
if (info.getQuerycondition() != null) {
jkbxvos = (JKBXHeaderVO[])billManageService.queryBillInfoByPage(info).toArray(jkbxvos);
} else {
ExceptionUtils.wrapBusinessException("请传入查询条件");
}
if (jkbxvos == null || jkbxvos.length == 0) {
return null;
}
pks = new String[jkbxvos.length];
for(int i = 0; i < jkbxvos.length; ++i) {
if (jkbxvos[i] != null) {
pks[i] = jkbxvos[i].getPk_jkbx();
}
}
GridOperator go = new GridOperator("201104DJCX_LIST");
grid = go.toGrid(jkbxvos);
InitBillsUtil.proGridDigit(grid);
this.proGridDjztAndSpr(grid, pks);
pageInfo = info.getPageInfo();
} catch (Exception e) {
this.log.error(e);
ExceptionUtils.wrapException(e);
}
JSONObject jsonObj = new JSONObject();
jsonObj.put("pageInfo", pageInfo);
jsonObj.put("data", grid);
return jsonObj;
}
private void proGridDjztAndSpr(Grid grid, String[] pks) throws Exception {
IBillManageService service = (IBillManageService)ServiceLocator.find(IBillManageService.class);
Map<String, String> busiid_username = service.qryCurApproveman(Arrays.asList(pks));
Row[] rows = grid.getModel().getRows();
for(int i = 0; i < rows.length; ++i) {
String pk_billtype = Func.toString(rows[i].getCell("pk_billtype").getValue());
String djlxbm = Func.toString(rows[i].getCell("djlxbm").getValue());
if (!"264a".equalsIgnoreCase(djlxbm) && !"261X".equalsIgnoreCase(pk_billtype) && !"262X".equalsIgnoreCase(pk_billtype)) {
if ("3".equals(Func.toString(rows[i].getCell("djzt").getValue()))) {
rows[i].getCell("djzt").setDisplay(NCLangRes4VoTransl.getNCLangRes().getStrByID("20110012billmanage", "020110012billmanage-0002"));
}
} else if ("3".equals(Func.toString(rows[i].getCell("djzt").getValue()))) {
rows[i].getCell("djzt").setDisplay(NCLangRes4VoTransl.getNCLangRes().getStrByID("20110012billmanage", "020110012billmanage-0000"));
}
if (busiid_username != null && busiid_username.size() > 0) {
String pk_jkbx = Func.toString(rows[i].getCell("pk_jkbx").getValue());
if (!StringUtils.isEmpty((CharSequence)busiid_username.get(pk_jkbx))) {
rows[i].getCell("approver").setDisplay((String)busiid_username.get(pk_jkbx));
}
}
}
}
}