QC3433560 年度费用预算申请 流程更新 费控预算信息

湖南方盛制药股份有限公司发票管理系统
Chengliang 6 months ago
parent 46f1c9fde1
commit aef3473db1

@ -1,5 +1,7 @@
package test; package test;
import com.weaver.general.TimeUtil;
/** /**
* @Author weaver_cl * @Author weaver_cl
* @Description: * @Description:
@ -9,6 +11,19 @@ package test;
public class MainTest { public class MainTest {
public static void main(String[] args) { public static void main(String[] args) {
double doubleValue = getDoubleValue("");
System.out.println(doubleValue);
}
public static double getDoubleValue(String var0) {
return getDoubleValue(var0, -1.0D);
}
public static double getDoubleValue(String var0, double var1) {
try {
return Double.parseDouble(var0);
} catch (Exception var4) {
return var1;
}
} }
} }

@ -0,0 +1,170 @@
package weaver.interfaces.fssecond.action;
import com.weaver.general.TimeUtil;
import com.weaver.general.Util;
import org.apache.commons.lang.StringUtils;
import weaver.conn.RecordSet;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.RequestInfo;
import java.util.ArrayList;
import java.util.List;
/**
* @Author liang.cheng
* @Date 2024/12/18 1:38 PM
* @Description: QC3433560
* @Version 1.0
*/
public class FnabudgetinfoAction implements Action {
@Override
public String execute(RequestInfo requestInfo) {
String requestid = requestInfo.getRequestid();
int formid = Math.abs(requestInfo.getRequestManager().getFormid());
RecordSet rs = new RecordSet();
String mainTable = String.format("%s%s", "formtable_main_", formid);
String detaiTable = String.format("%s%s",mainTable,"_dt1");
String currentTime = TimeUtil.getCurrentTimeString();
FnabudgetinfoPo fbinfo = FnabudgetinfoPo.builder()
.budgetStatus(1)
.organizationType(2)
.revision(0)
.status(1)
.createDate(currentTime)
.remark("年度费用预算申请流程requestid:"+requestid)
.build();
Integer mainTableId = null;
//1.获取流程主表信息
rs.executeQuery("select id,sqr,ysnd,ysbm from "+mainTable+" where requestId = ?",requestid);
if (rs.next()) {
mainTableId = Util.getIntValue(rs.getString("id"));
fbinfo.setCreaterId(Util.getIntValue(rs.getString("sqr")));
fbinfo.setBudgetperiods(selectBudgetPeriods(Util.null2String(rs.getString("ysnd"))));
fbinfo.setBudgetOrganizationId(Util.getIntValue(rs.getString("ysbm")));
}
if (fbinfo.getBudgetperiods() == null) {
requestInfo.getRequestManager().setMessagecontent("费控预算年度未维护");
return Action.FAILURE_AND_CONTINUE;
}
//2.插入费控主表信息
//校验数据是否重复
rs.executeQuery("select count(1) as sums from fnabudgetinfo where organizationtype = 2 and budgetorganizationid = ? and " +
" budgetperiods = ? and status = 1",fbinfo.getBudgetOrganizationId(),fbinfo.getBudgetperiods());
rs.next();
int sums = Util.getIntValue(rs.getString("sums"));
if (sums > 0) {
requestInfo.getRequestManager().setMessagecontent("当前部门费控预算信息已存在生效状态数据,请检查");
return Action.FAILURE_AND_CONTINUE;
}
rs.executeUpdate("insert into fnabudgetinfo(budgetstatus,createrid,budgetorganizationid,organizationtype,budgetperiods," +
" revision,status,remark,createdate) values(?,?,?,?,?,?,?,?,?)",fbinfo.getBudgetStatus(),fbinfo.getCreaterId(),
fbinfo.getBudgetOrganizationId(),fbinfo.getOrganizationType(),fbinfo.getBudgetperiods(),fbinfo.getRevision(),
fbinfo.getStatus(),fbinfo.getRemark(),fbinfo.getCreateDate());
//获取插入后主表id
rs.executeQuery("select id from fnabudgetinfo where organizationtype = 2 and budgetorganizationid = ? and " +
" budgetperiods = ? and status = 1",fbinfo.getBudgetOrganizationId(),fbinfo.getBudgetperiods());
rs.next();
Integer budgetinfoId = Util.getIntValue(rs.getString("id"));
List<FnabudgetinfoDetailPo> fbDetail = new ArrayList<>();
//3.获取流程明细数据
rs.executeQuery("select kmmc,y1,y2,y3,y4,y5,y6,y7,y8,y9,y10,y11,y12,ybzsm_1,ybzsm_2,ybzsm_3,ybzsm_4,ybzsm_5,ybzsm_6,ybzsm_7,ybzsm_8,ybzsm_9,ybzsm_10,ybzsm_11,ybzsm_12 \n" +
" from "+detaiTable+" where mainid = ? and (y1 is not null or y2 is not null or y3 is not null or y4 is not null or y5 is not null \n" +
" or y6 is not null or y7 is not null or y8 is not null or y9 is not null or y10 is not null or y11 is not null or y12 is not null)",mainTableId);
while (rs.next()) {
Integer kmmc = Util.getIntValue(rs.getString("kmmc"));
String y1 = Util.null2String(rs.getString("y1"));
String y2 = Util.null2String(rs.getString("y2"));
String y3 = Util.null2String(rs.getString("y3"));
String y4 = Util.null2String(rs.getString("y4"));
String y5 = Util.null2String(rs.getString("y5"));
String y6 = Util.null2String(rs.getString("y6"));
String y7 = Util.null2String(rs.getString("y7"));
String y8 = Util.null2String(rs.getString("y8"));
String y9 = Util.null2String(rs.getString("y9"));
String y10 = Util.null2String(rs.getString("y10"));
String y11 = Util.null2String(rs.getString("y11"));
String y12 = Util.null2String(rs.getString("y12"));
// String ybzsm1 = Util.null2String(rs.getString("ybzsm_1"));
// String ybzsm2 = Util.null2String(rs.getString("ybzsm_2"));
// String ybzsm3 = Util.null2String(rs.getString("ybzsm_3"));
// String ybzsm4 = Util.null2String(rs.getString("ybzsm_4"));
// String ybzsm5 = Util.null2String(rs.getString("ybzsm_5"));
// String ybzsm6 = Util.null2String(rs.getString("ybzsm_6"));
// String ybzsm7 = Util.null2String(rs.getString("ybzsm_7"));
// String ybzsm8 = Util.null2String(rs.getString("ybzsm_8"));
// String ybzsm9 = Util.null2String(rs.getString("ybzsm_9"));
// String ybzsm10 = Util.null2String(rs.getString("ybzsm_10"));
// String ybzsm11 = Util.null2String(rs.getString("ybzsm_11"));
// String ybzsm12 = Util.null2String(rs.getString("ybzsm_12"));
FnabudgetinfoDetailPo fnabudgetinfoDetail = FnabudgetinfoDetailPo.builder().budgettypeId(kmmc)
.build();
List<FnabudgetinfoDetailItemPo> items = new ArrayList<>();
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y1).budgetperiodsList(1).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y2).budgetperiodsList(2).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y3).budgetperiodsList(3).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y4).budgetperiodsList(4).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y5).budgetperiodsList(5).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y6).budgetperiodsList(6).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y7).budgetperiodsList(7).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y8).budgetperiodsList(8).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y9).budgetperiodsList(9).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y10).budgetperiodsList(10).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y11).budgetperiodsList(11).build());
items.add(FnabudgetinfoDetailItemPo.builder().budgetAccount(y12).budgetperiodsList(12).build());
items.forEach(e -> {
if (StringUtils.isNotEmpty(e.getBudgetAccount())){
double value = Util.getDoubleValue(e.getBudgetAccount());
fnabudgetinfoDetail.setBudgetAccount(value);
fnabudgetinfoDetail.setBudgetperiodsList(e.getBudgetperiodsList());
fbDetail.add(fnabudgetinfoDetail);
}
});
}
//4.插入费控明细表信息
fbDetail.forEach(item -> {
rs.executeUpdate("insert into fnabudgetinfodetail(budgetinfoid,budgetperiods,budgettypeid,budgetaccount,budgetperiodslist) " +
" values(?,?,?,?,?)",budgetinfoId,fbinfo.getBudgetperiods(),item.getBudgettypeId(),item.getBudgetAccount(),item.getBudgetperiodsList());
});
return Action.SUCCESS;
}
/**
* id
* @param year
* @return
*/
private Integer selectBudgetPeriods(String year) {
RecordSet rs = new RecordSet();
Integer budgetperiods = null;
rs.executeQuery("select id from FnaYearsPeriods where fnayear = ?",year);
if (rs.next()) {
budgetperiods = Util.getIntValue(rs.getString("id"));
}
return budgetperiods;
}
}

@ -0,0 +1,27 @@
package weaver.interfaces.fssecond.action;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author liang.cheng
* @Date 2024/12/18 1:47 PM
* @Description: TODO
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FnabudgetinfoDetailItemPo {
private String budgetAccount;
private String budgetremark;
private Integer budgetperiodsList;
}

@ -0,0 +1,33 @@
package weaver.interfaces.fssecond.action;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author liang.cheng
* @Date 2024/12/18 1:47 PM
* @Description: TODO
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FnabudgetinfoDetailPo {
private Integer budgetinfoId;
private Integer budgetperiods;
private Integer budgettypeId;
private double budgetAccount;
private String budgetremark;
private Integer budgetperiodsList;
}

@ -0,0 +1,55 @@
package weaver.interfaces.fssecond.action;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
/**
* @Author liang.cheng
* @Date 2024/12/18 1:47 PM
* @Description: TODO
* @Version 1.0
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Builder
public class FnabudgetinfoPo {
/**
* 1
*/
private Integer budgetStatus;
private Integer createrId;
private Integer budgetOrganizationId;
/**
* 2
*/
private Integer organizationType;
private Integer budgetperiods;
/**
* 0
*/
private Integer revision;
/**
* 1
*/
private Integer status;
/**
* yy-MM-dd HH:mm:ss
*/
private String createDate;
private String remark;
}
Loading…
Cancel
Save