#HTXC-1# 初始化开发环境

main
shilei 3 years ago
parent d00625c8e4
commit 37f09a514f

@ -0,0 +1,60 @@
package com.engine.htxc.apprchalink.contract.cmd;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractLinkCmd.java
* @createTime 20220726 14:42:00
*/
public class ContractLinkCmd extends AbstractCommonCommand<Map<String, Object>> {
public ContractLinkCmd(Map<String, Object> params) {
this.params = params;
}
@Override
public BizLogContext getLogContext() {
return null;
}
@Override
public Map<String, Object> execute(CommandContext commandContext) {
List<Map<String,Object>> list=(List<Map<String, Object>>) params.get("data");
if(list==null ||list.size()<=0 ){
return null;
}
List<String> wherelist=new ArrayList<>();
list.forEach((Map<String,Object> map)->{
String deptid= Util.null2String(map.get("deptid"));
String htlxid=Util.null2String(map.get("htlxid"));
if(!StringUtils.isBlank(htlxid) && !StringUtils.isBlank(deptid)){
wherelist.add("(','||htlxNew||',' like '%,"+htlxid+",%' and fqbmid='"+deptid +"')");
}
});
if(wherelist.size()<=0){
return null;
}
String sql="select * from uf_contapprcha where 1=1 and ";
sql+=wherelist.stream().collect(Collectors.joining("or"));
List retlist=new DbTools().getSqlToList(sql,(Object) null);
if(list==null ){
return null;
}
Map<String,Object> retmap=new HashMap(1);
retmap.put("data",retlist);
return retmap;
}
}

@ -0,0 +1,18 @@
package com.engine.htxc.apprchalink.contract.service;
import com.alibaba.fastjson.JSONObject;
import weaver.hrm.User;
import java.util.Map;
/**
* @Remark
* @author K1810015
* @version 1.0.0
* @ClassName uf_contapprcha.java
* @createTime 20220726 14:25:00
*/
public interface ContractLinkService {
public JSONObject getnextuser(JSONObject jsonobject );
}

@ -0,0 +1,62 @@
package com.engine.htxc.apprchalink.contract.service.impl;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.engine.core.impl.Service;
import com.engine.htxc.apprchalink.cinterface.ApprachaLink;
import com.engine.htxc.apprchalink.cinterface.ApprachaLinkBuilder;
import com.engine.htxc.apprchalink.contract.cmd.ContractLinkCmd;
import com.engine.htxc.apprchalink.contract.service.ContractLinkService;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.hrm.User;
import java.util.*;
import java.util.stream.Collectors;
/**
* @Remark
* @author K1810015
* @version 1.0.0
* @ClassName uf_contapprcha.java
* @createTime 20220726 14:25:00
*/
public class ContractLinkServiceImpl extends Service implements ContractLinkService {
@Override
public JSONObject getnextuser(JSONObject jsonObject) {
try {
String data=Util.null2String(jsonObject.get("data"));
String fieldids=Util.null2String(jsonObject.get("fieldids"));
if(StringUtils.isBlank(data) || StringUtils.isBlank(fieldids)){
return null;
}
List<Map> lisltmap= JSON.parseArray(data,Map.class);
Map<String,Object> map=new HashMap<>();
map.put("data",lisltmap);
List<String> fieldlist= Arrays.stream(fieldids.split(",")).collect(Collectors.toList());
Map datanull= fieldlist.stream().collect(Collectors.toMap(
p->p.toString(),p->""
));
Map<String, Object> retmap = commandExecutor.execute(new ContractLinkCmd(map));
if (retmap == null || retmap.size() < 0) {
return new JSONObject(datanull);
}
List<Map<String, Object>> listmap = (List<Map<String, Object>>) retmap.get("data");
if (listmap == null || listmap.size() <= 0) {
return new JSONObject(datanull);
}
Map<String,Object> datamap=new ApprachaLinkBuilder<Map<String,Object>>().collback(listmap,fieldlist);
if(datamap==null || datamap.size()<=0){
return new JSONObject(datanull);
}
return new JSONObject(datamap);
}catch (Exception e){
return null;
}
}
}

@ -0,0 +1,15 @@
package com.engine.htxc.cggl.service;
import java.util.Map;
public interface CgglService {
Map<String, Object> insertLxxm(Map<String, Object> paramsMap);
Map<String, Object> insertCgxm(Map<String, Object> paramsMap);
Map<String, Object> itcgInsertCgxm(Map<String, Object> paramsMap);
String getModeUrl();
}

@ -0,0 +1,205 @@
package com.engine.htxc.cggl.service.impl;
import com.alibaba.fastjson.JSON;
import com.engine.core.impl.Service;
import com.engine.htxc.cggl.service.CgglService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import weaver.conn.RecordSet;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.Util;
import weaver.interfaces.htsc.comInfo.PropBean;
import weaver.workflow.logging.Logger;
import weaver.workflow.logging.LoggerFactory;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.HashMap;
import java.util.Map;
/**
* @Title: ecology-9
* @Company:
* @author: K1810039
* @version: 1.0
* @CreateDate: 2022-08-25 16:15
* @Description:
* @ModifyLog:
**/
@Slf4j
public class CgglServiceImpl extends Service implements CgglService {
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@Override
public Map<String, Object> insertLxxm(Map<String, Object> paramsMap) {
logger.info("IT立项参数"+ JSON.toJSONString(paramsMap));
Map<String , Object> map = new HashMap<>();
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String modeid = pb.getPropName("lxxm_modeid");
String xmbh = String.valueOf(paramsMap.get("xmbh"));
String itxmbh = String.valueOf(paramsMap.get("itxmbh"));
String xglc = String.valueOf(paramsMap.get("itgllc"));
String xmcjrq = String.valueOf(paramsMap.get("xmcjrq"));
String xmmc = String.valueOf(paramsMap.get("xmmc"));
String ysje = String.valueOf(paramsMap.get("ysje"));
String xmfzbm = String.valueOf(paramsMap.get("xmfzbm"));
String xmfzr = String.valueOf(paramsMap.get("xmfzr"));
String sjghxm = String.valueOf(paramsMap.get("sjghxm"));
String ly = String.valueOf(paramsMap.get("ly"));
String zt = String.valueOf(paramsMap.get("zt"));
String xmlx = String.valueOf(paramsMap.get("xmlx"));
String lxlcmc = String.valueOf(paramsMap.get("lxlcmc"));
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalDateTime now2 = LocalDateTime.now();
String nowDateStr = now2.format(formatter1);
String nowTimeStr = now2.format(formatter2);
String insertSql="insert into UF_CGXMGL (lxlcmc,xmbh,itxmbh,xglc,xmcjrq,xmmc,ysje,xmfzbm,xmfzr,sjghxm,ly,zt,xmlx,FORMMODEID,MODEDATACREATER,MODEDATACREATERTYPE,MODEDATACREATEDATE,MODEDATACREATETIME) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
logger.info("insertSql"+insertSql);
try {
boolean b = rs.executeUpdate(insertSql,lxlcmc,xmbh,itxmbh,xglc,xmcjrq,xmmc,ysje,xmfzbm,xmfzr,sjghxm,ly,zt,xmlx,modeid,'1','0',nowDateStr,nowTimeStr);
if (b){
// 建模权限重构
ModeRightInfo modeRightInfo = new ModeRightInfo();
modeRightInfo.setNewRight(true);
if (rs.execute("select max(id) as maxid from UF_CGXMGL") && rs.next()){
int billid = rs.getInt("maxid");
modeRightInfo.editModeDataShare(1, Integer.parseInt(modeid),billid);
}
map.put("success",true);
}else {
map.put("success",false);
}
} catch (NumberFormatException e) {
logger.error("执行插入出错:",e);
}
return map;
}
@Override
public Map<String, Object> insertCgxm(Map<String, Object> paramsMap) {
logger.info("采购立项参数:"+ JSON.toJSONString(paramsMap));
Map<String , Object> map = new HashMap<>();
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String modeid = pb.getPropName("cgxm_modeid");
String cgxmlx = "";
String itxmbh = String.valueOf(paramsMap.get("cgxmlx"));
// 通过 itxmbh 项目编号 到立项项目建模中匹配itxmbh与此相等的数据id赋值给 采购项目立项
if (StringUtils.isNotBlank(itxmbh)){
String sql = "select id from UF_CGXMGL where itxmbh like '%"+itxmbh+"%'";
logger.info(sql);
rs.execute(sql);
if (rs.next()){
cgxmlx = Util.null2String(rs.getString("id"));
}
}
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalDateTime now2 = LocalDateTime.now();
String nowDateStr = now2.format(formatter1);
String nowTimeStr = now2.format(formatter2);
String insertSql="insert into uf_cgxq (cgxmlx,FORMMODEID,MODEDATACREATER,MODEDATACREATERTYPE,MODEDATACREATEDATE,MODEDATACREATETIME) values(?,?,?,?,?,?)";
logger.info(insertSql);
boolean b = rs.executeUpdate(insertSql,cgxmlx,modeid,'1','0',nowDateStr,nowTimeStr);
if (b){
// 建模权限重构
ModeRightInfo modeRightInfo = new ModeRightInfo();
modeRightInfo.setNewRight(true);
if (rs.execute("select max(id) as maxid from uf_cgxq") && rs.next()){
int billid = rs.getInt("maxid");
modeRightInfo.editModeDataShare(1, Integer.parseInt(modeid),billid);
}
map.put("success",true);
}else {
map.put("success",false);
}
return map;
}
@Override
public Map<String, Object> itcgInsertCgxm(Map<String, Object> paramsMap) {
logger.info("采购立项参数:"+ JSON.toJSONString(paramsMap));
Map<String , Object> map = new HashMap<>();
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String modeid = pb.getPropName("cgxm_modeid");
String cgxmlx = "";
String xmmc = String.valueOf(paramsMap.get("xmmc"));
String xmlb = String.valueOf(paramsMap.get("xmlb"));
String xmlx1 = String.valueOf(paramsMap.get("xmlx1"));
String xmbh = String.valueOf(paramsMap.get("xmbh"));
String cgfs = String.valueOf(paramsMap.get("cgfs"));
String gys = String.valueOf(paramsMap.get("gys"));
String cgnr = String.valueOf(paramsMap.get("cgnr"));
String xmfzr = String.valueOf(paramsMap.get("xmfzr"));
String ysje = String.valueOf(paramsMap.get("ysje"));
String ysssbm = String.valueOf(paramsMap.get("ysssbm"));
String cgsl = String.valueOf(paramsMap.get("cgsl"));
String bz = String.valueOf(paramsMap.get("bz"));
String fj = String.valueOf(paramsMap.get("fj"));
String xglc = String.valueOf(paramsMap.get("itgllc"));
String cgzd1 = String.valueOf(paramsMap.get("cgzd1"));
String cgtk1 = String.valueOf(paramsMap.get("cgtk1"));
String ly = String.valueOf(paramsMap.get("ly"));
String zt = String.valueOf(paramsMap.get("zt"));
String cjrq = String.valueOf(paramsMap.get("cjrq"));
String itxmbh = String.valueOf(paramsMap.get("cgxmlx"));
// 通过 itxmbh 项目编号 到立项项目建模中匹配itxmbh与此相等的数据id赋值给 采购项目立项
if (StringUtils.isNotBlank(itxmbh)){
String sql = "select id from UF_CGXMGL where itxmbh like '%"+itxmbh+"%'";
logger.info(sql);
rs.execute(sql);
if (rs.next()){
cgxmlx = Util.null2String(rs.getString("id"));
}
}
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
DateTimeFormatter formatter2 = DateTimeFormatter.ofPattern("HH:mm:ss");
LocalDateTime now2 = LocalDateTime.now();
String nowDateStr = now2.format(formatter1);
String nowTimeStr = now2.format(formatter2);
String insertSql="insert into uf_cgxq (cgxmlx,xmmc,xmlb,xmlx1,xmbh,cgfs,gys,cgnr,xmfzr,ysssbm,cgsl,bz,fj,xglc,cgzd1,cgtk1,ysje,ly,zt,cjrq,FORMMODEID,MODEDATACREATER,MODEDATACREATERTYPE,MODEDATACREATEDATE,MODEDATACREATETIME) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
logger.info(insertSql);
boolean b = rs.executeUpdate(insertSql,cgxmlx,xmmc,xmlb,xmlx1,xmbh,cgfs,gys,cgnr,xmfzr,ysssbm,cgsl,bz,fj,xglc,cgzd1,cgtk1,ysje,ly,zt,cjrq,modeid,'1','0',nowDateStr,nowTimeStr);
if (b){
// 建模权限重构
ModeRightInfo modeRightInfo = new ModeRightInfo();
modeRightInfo.setNewRight(true);
if (rs.execute("select max(id) as maxid from uf_cgxq") && rs.next()){
int billid = rs.getInt("maxid");
modeRightInfo.editModeDataShare(1, Integer.parseInt(modeid),billid);
}
map.put("success",true);
}else {
map.put("success",false);
}
return map;
}
/**
* URL
*/
@Override
public String getModeUrl() {
log.info("--impl--getModeUrl--");
PropBean propBean = new PropBean();
String appHomepageId = propBean.getPropName("cggl_appHomepageId");
log.info("appHomepageId:[{}]",appHomepageId);
String url = "/mobilemode/mobile/view.html?appHomepageId="+appHomepageId+"&billid=";
return url;
}
}

@ -0,0 +1,109 @@
package com.engine.htxc.cggl.web;
import com.alibaba.fastjson.JSON;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.cggl.service.CgglService;
import com.engine.htxc.cggl.service.impl.CgglServiceImpl;
import com.engine.htxc.common.EcologyResponseDTO;
import lombok.extern.slf4j.Slf4j;
import weaver.workflow.logging.Logger;
import weaver.workflow.logging.LoggerFactory;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
import java.util.Map;
/**
* @Title: ecology-9
* @Company:
* @author: K1810039
* @version: 1.0
* @CreateDate: 2022-08-25 16:12
* @Description:
* @ModifyLog:
**/
@Slf4j
public class CgglAction {
CgglService getService(){
return (CgglService) ServiceUtil.getService(CgglServiceImpl.class);
}
private final Logger logger = LoggerFactory.getLogger(this.getClass());
@POST
@Path("/convertLxxm")
@Produces({MediaType.TEXT_PLAIN})
public String convertLxxm(Map<String, Object> paramsMap){
logger.info("it立项action参数"+paramsMap);
Map<String, Object> apidatas = new HashMap<String, Object>();
logger.info("----convertLxxm-----");
try{
//Map<String,Object> param = ParamUtil.request2Map(request);
apidatas = getService().insertLxxm(paramsMap);
apidatas.put("api_status", true);
}catch (Exception e) {
e.printStackTrace();
apidatas.put("api_status", false);
apidatas.put("api_errormsg", "catch exception : " + e.getMessage());
}
return JSON.toJSONString(apidatas);
}
@POST
@Path("/convertCgxm")
@Produces({MediaType.TEXT_PLAIN})
public String convertCgxm(Map<String, Object> paramsMap){
logger.info("采购项目action参数"+paramsMap);
Map<String, Object> apidatas = new HashMap<String, Object>();
logger.info("----convertCgxm-----");
try{
apidatas = getService().insertCgxm(paramsMap);
apidatas.put("api_status", true);
}catch (Exception e) {
e.printStackTrace();
apidatas.put("api_status", false);
apidatas.put("api_errormsg", "catch exception : " + e.getMessage());
}
return JSON.toJSONString(apidatas);
}
@POST
@Path("/itcgConvertCgxm")
@Produces({MediaType.TEXT_PLAIN})
public String itcgConvertCgxm(Map<String, Object> paramsMap){
logger.info("it采购转建模action参数"+paramsMap);
Map<String, Object> apidatas = new HashMap<String, Object>();
logger.info("----itcgConvertCgxm-----");
try{
apidatas = getService().itcgInsertCgxm(paramsMap);
apidatas.put("api_status", true);
}catch (Exception e) {
e.printStackTrace();
apidatas.put("api_status", false);
apidatas.put("api_errormsg", "catch exception : " + e.getMessage());
}
return JSON.toJSONString(apidatas);
}
@GET
@Path("/getModeUrl")
@Produces({MediaType.TEXT_PLAIN})
public String getModeUrl(){
Map<String, Object> apidatas = new HashMap<String, Object>();
log.info("----getModeUrl----");
try{
String url = getService().getModeUrl();
log.info("返回数据:[{}]",url);
return EcologyResponseDTO.successJson(url);
}catch (Exception e) {
log.error("getModeUrl接口异常:",e);
return EcologyResponseDTO.failJson("接口异常请检查");
}
}
}

@ -0,0 +1,13 @@
package com.engine.htxc.cgglpt.service;
public interface CgglptService {
boolean allowDelete(String ids);
Boolean scrapPurchase(String id);
void recovery(String id);
boolean getWorkFlowByJmid(String id);
String triggerWorkflow(String userId,String billId);
}

@ -0,0 +1,297 @@
package com.engine.htxc.cgglpt.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.cgglpt.service.CgglptService;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.resource.ResourceComInfo;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import weaver.interfaces.htsc.comInfo.PropBean;
import weaver.interfaces.htxc.cgglpt.CheckComplete;
import weaver.soa.workflow.request.MainTableInfo;
import weaver.soa.workflow.request.Property;
import weaver.soa.workflow.request.RequestInfo;
import weaver.soa.workflow.request.RequestService;
import weaver.workflow.request.RequestComInfo;
import weaver.workflow.workflow.WorkflowComInfo;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
public class CgglptServiceImpl extends Service implements CgglptService {
@Override
public boolean allowDelete(String ids) {
RecordSet rs = new RecordSet();
String sql = "select * from uf_cgxq where id ="+ids ;
JAVATools.writelog("采购平台删除sql"+sql);
rs.execute(sql);
boolean flag = false;
while(rs.next()){
String zt = rs.getString("zt");
if(Objects.equals("1",zt)){
flag = true;
}
}
if(flag){
return flag;
}else{
String deleteSsql = "delete from uf_cgxq where id ="+ids;
JAVATools.writelog("采购平台删除deleteSsql"+deleteSsql);
rs.execute(deleteSsql);
return flag;
}
}
@Override
public Boolean scrapPurchase(String id) {
//select isstopped from workflow_requestbase where isstopped is not null
//select * from workflow_currentoperator where requestid = 5788792 and iscomplete = 1
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String table = pb.getPropName("tycgsq_table");
String tycgrwd= pb.getPropName("tycgrwd_tablename");
Boolean acomplete = isComplete(table, id,"_dt4");
Boolean bcomplete = isComplete(tycgrwd, id,"_dt5");
JAVATools.writelog("废弃acomplete"+acomplete);
JAVATools.writelog("废弃bcomplete"+bcomplete);
if(acomplete || bcomplete ){
return true;
}else{
String sql = " update uf_cgxq set zt = 2 where id ="+id;
JAVATools.writelog("废弃sql"+sql);
rs.execute(sql);
return false;
}
}
@Override
public void recovery(String id) {
RecordSet rs = new RecordSet();
String sql = " update uf_cgxq set zt = 1 where id ="+id;
JAVATools.writelog("采购平台恢复"+sql);
rs.execute(sql);
}
@Override
public boolean getWorkFlowByJmid(String billid) {
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String tycgsqTable = pb.getPropName("tycgsq_table");
String tycgrwdTablename = pb.getPropName("tycgrwd_tablename");
String tycgsqRequestid = getRequestidByBillId(tycgsqTable,Integer.parseInt(billid),"_dt4");
JAVATools.writelog("校验发起招标请示的按钮tycgsqRequestid"+tycgsqRequestid);
String tycgrwdRequestid = getRequestidByBillId(tycgrwdTablename,Integer.parseInt(billid),"_dt5");
JAVATools.writelog("校验发起招标请示的按钮tycgrwdRequestid"+tycgrwdRequestid);
CheckComplete check = new CheckComplete();
if(check.isComplete(tycgsqRequestid)&&check.isComplete(tycgrwdRequestid)){
return true;
}else{
return false;
}
}
@Override
public String triggerWorkflow(String userId,String billId) {
RecordSet rs = new RecordSet();
PropBean pb = new PropBean();
String sql = "select * from uf_cgxq where id = "+billId;
rs.execute(sql);
if(rs.next()){
String xmmc = rs.getString("xmmc");
String cgxmbh = rs.getString("xmbh");
String cglb = rs.getString("xmlb");
HashMap<String, String> map = new HashMap<>();
map.put("cgxmmc",xmmc);
map.put("cgxmbh",cgxmbh);
map.put("cglb",cglb);
map.put("cgxmc",billId);
String requestNmae = "合同起草信息预设-"+xmmc;
map.put("bt",requestNmae);
map.put("ngr",userId);
Map<String, String> hrm = getHrm(userId);
map.put("szbm",hrm.get("departmentid"));
map.put("szjg",hrm.get("supdepid"));
map.put("jjcd","0");
map.put("lxfs",hrm.get("phone"));
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm");
map.put("ngrq",format.format(new Date()));
String htysxxWorkflowId = pb.getPropName("htysxxWorkflowId");//合同预设id
String requestId = WorkflowCreateByRequestMap(userId, htysxxWorkflowId, requestNmae, "0", map);
return requestId;
}
return "";
}
public Map<String,String> getHrm(String ngr){
HashMap<String, String> result = new HashMap<>();
RecordSet rs = new RecordSet();
String hrmSql = "select * from hrmresource where id = "+ngr;
rs.execute(hrmSql);
rs.next();
String departmentid = rs.getString("departmentid");
result.put("phone",rs.getString("mobile"));
result.put("departmentid",departmentid);
String deptSql = "select * from hrmdepartment where id = "+departmentid;
rs.execute(deptSql);
rs.next();
result.put("supdepid",rs.getString("supdepid"));
return result;
}
/**
*
* @Title: WorkflowCreateByMainTableMap
* @param @param creatorId Id
* @param @param workflowId Id
* @param @param requestName
* @param @param IsNextFlow
* @param @param requestMap Map<fieldname,fieldvalue>=<,>
* @param @return
* @return String
* @throws
*/
public String WorkflowCreateByRequestMap(String creatorId ,String workflowId ,String requestName ,String IsNextFlow,Map<String,String> requestMainMap)
{
BaseBean bs = new BaseBean();
bs.writeLog("-----创建流程传递的参数个数--------");
bs.writeLog("creatorId:"+creatorId);
bs.writeLog("workflowId:"+workflowId);
bs.writeLog("requestName:"+requestName);
bs.writeLog("IsNextFlow:"+IsNextFlow);
String requestid = "";
RequestInfo requestInfo = new RequestInfo();
requestInfo.setCreatorid(creatorId);//创建人Id
requestInfo.setWorkflowid(workflowId);//工作流Id
requestInfo.setDescription(requestName);//请求标题
if(!"".equals(IsNextFlow))
{
requestInfo.setIsNextFlow(IsNextFlow);
}
//主表字段
MainTableInfo mainTableInfo = new MainTableInfo();
Property[] propertyArray = new Property[requestMainMap.size()];
int p = 0;
for (Map.Entry<String, String> entry : requestMainMap.entrySet())
{
propertyArray[p] = new Property();
propertyArray[p].setName(Util.null2String(entry.getKey()));
propertyArray[p].setValue(Util.null2String(entry.getValue()));
bs.writeLog("\r\n---p="+p+"---Key="+entry.getKey()+"---Value="+entry.getValue());
p++;
}
bs.writeLog("-----创建流程传递的参数个数p="+p);
mainTableInfo.setProperty(propertyArray);
requestInfo.setMainTableInfo(mainTableInfo);
RequestService service = new RequestService();
try {
//流程
try {
requestid = service.createRequest(requestInfo);//创建请求id
} catch (Exception e) {
bs.writeLog("======="+e.getMessage());
}
//String userId = requestInfo.getLastoperator();//请求最后的操作者
//记录日志
StringBuffer sbf = new StringBuffer("\r\n-----xwd创建工作流记录日志开始");
WorkflowComInfo wfcif =new WorkflowComInfo();
RequestComInfo rcif = new RequestComInfo();
ResourceComInfo rscif = new ResourceComInfo();
sbf.append("\r\n-----姓名:"+rscif.getLastname(rcif.getRequestCreater(requestid)));
sbf.append("\r\n-----时间:"+rcif.getRequestCreateTime(requestid));
sbf.append("\r\n-----创建流程:"+wfcif.getWorkflowname(workflowId));
sbf.append("\r\n-----请求:"+rcif.getRequestname(requestid));
sbf.append("\r\n-----请求:"+requestid);
sbf.append("\r\n-----创建工作流记录日志结束");
bs.writeLog(sbf.toString());
System.out.println(""+sbf.toString());
} catch (Exception e) {
bs.writeLog("错误:" + e);
System.out.println("错误:" + e);
}
return requestid;
}
private String getRequestidByBillId(String table, int billid, String dt) {
RecordSet rs = new RecordSet();
String sql = "select * from "+table+dt+" where xmid = "+billid;
rs.execute(sql);
if(rs.next()){
String mainid = rs.getString("mainid");
String mainSql = "select requestid from "+table+" where id = "+mainid;
rs.execute(mainSql);
if(rs.next()){
return rs.getString("requestid");
}
}
return "";
}
/**
*
* @param table
* @param id
* @return
*/
public Boolean isComplete(String table, String id,String dt) {
RecordSet rs = new RecordSet();
RecordSet mainRs = new RecordSet();
RecordSet stopRs = new RecordSet();
RecordSet completeRs = new RecordSet();
String sql = "select * from "+table+dt+" where xmid = "+id;
rs.execute(sql);
ArrayList<String> list = new ArrayList<>();
//这个flag用来判断是有流程没有流程不可以废弃
while(rs.next()){
String mainid = rs.getString("mainid");
String mainSql = "select * from " + table+ " where id = "+mainid;
mainRs.execute(mainSql);
mainRs.next();
String requestid = mainRs.getString("requestid");
String stopSql = "select a.isremark,a.iscomplete ,b.isstopped from workflow_currentoperator a right join workflow_requestbase b " +
"on a.requestid = b.requestid where a.requestid = "+requestid;
completeRs.execute(stopSql);
ArrayList<Integer> completes = new ArrayList<>();
while (completeRs.next()){
String iscomplete = completeRs.getString("iscomplete");
String isstopped = completeRs.getString("isstopped");
if(Objects.equals(iscomplete,"1")){
completes.add(1);
} else if(Objects.equals(isstopped,"1")){
completes.add(1);
}else{
completes.add(0);
}
}
List<Integer> collect = completes.stream().filter((item) -> {
return item > 0;
}).collect(Collectors.toList());
if(collect.size()>0){
list.add("1");
}else{
list.add("0");
}
}
Iterator<String> iterator = list.iterator();
while(iterator.hasNext()){
String next = iterator.next();
if(Objects.equals(next,"0")){
return true;
}
}
// if(!flag){
// return true;
// }else{
// return false;
// }
return false;
}
}

@ -0,0 +1,154 @@
package com.engine.htxc.cgglpt.web;
import com.alibaba.fastjson.JSONObject;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.cgglpt.service.CgglptService;
import com.engine.htxc.cgglpt.service.impl.CgglptServiceImpl;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
public class CgglptAction {
public CgglptService getCgglptService (){
return ServiceUtil.getService(CgglptServiceImpl.class);
}
/**
*
* @param request
* @param response
* @return
*/
@GET
@Path("/allowDelete")
@Produces({MediaType.TEXT_PLAIN})
public String allowDelete(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String ids = request.getParameter("ids");
boolean b = getCgglptService().allowDelete(ids);
map.put("code",200);
map.put("msg","success");
map.put("data",b);
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
/**
*
* @param request
* @param response
* @return
*/
@GET
@Path("/scrapPurchase")
@Produces({MediaType.TEXT_PLAIN})
public String scrapPurchase(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String id = request.getParameter("id");
Boolean aBoolean = getCgglptService().scrapPurchase(id);
map.put("code",200);
map.put("msg","success");
map.put("data",aBoolean);
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
/**
*
* @param request
* @param response
* @return
*/
@GET
@Path("/recovery")
@Produces({MediaType.TEXT_PLAIN})
public String recovery(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String id = request.getParameter("id");
getCgglptService().recovery(id);
map.put("code",200);
map.put("msg","success");
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
/**
* id
*/
@GET
@Path("/getWorkFlowByJmid")
@Produces({MediaType.TEXT_PLAIN})
public String getWorkFlowByJmid(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String id = request.getParameter("id");
boolean flag = getCgglptService().getWorkFlowByJmid(id);
map.put("code",200);
map.put("msg","success");
map.put("data",flag);
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
/**
*
*/
@GET
@Path("/triggerWorkflow")
@Produces({MediaType.TEXT_PLAIN})
public String triggerWorkflow(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String userId = request.getParameter("userId");
String billId = request.getParameter("billId");
String requestId = getCgglptService().triggerWorkflow(userId, billId);
map.put("code",200);
map.put("msg","success");
map.put("data",requestId);
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
/**
* 使1
*/
@GET
@Path("/fsUpdateDt1")
@Produces({MediaType.TEXT_PLAIN})
public String fsUpdateDt1(@Context HttpServletRequest request, @Context HttpServletResponse response){
HashMap<String, Object> map = new HashMap<>();
try{
String userId = request.getParameter("userId");
String billId = request.getParameter("billId");
String requestId = getCgglptService().triggerWorkflow(userId, billId);
map.put("code",200);
map.put("msg","success");
map.put("data",requestId);
}catch (Exception e){
map.put("code",500);
map.put("msg",e.getMessage());
}
return JSONObject.toJSONString(map);
}
}

@ -0,0 +1,72 @@
package com.engine.htxc.common;
import com.alibaba.fastjson.JSON;
/**
* @Title: ecology-9
* @Company:
* @author: K1810039
* @version: 1.0
* @CreateDate: 2022-09-21 17:51
* @Description:
* @ModifyLog:
**/
public class EcologyResponseDTO<T> {
public static final String SUCCESS_CODE = "0";
public static final String FAIL_CODE = "-1";
public EcologyResponseDTO(String code, String msg, T data){
this.code=code;
this.msg=msg;
this.data=data;
}
public static <T> EcologyResponseDTO<T> success(T data){
return new EcologyResponseDTO(SUCCESS_CODE,"success",data);
}
public static String successJson(Object data){
return JSON.toJSONString(new EcologyResponseDTO(SUCCESS_CODE,"success",data));
}
public static String failJson(String msg){
return JSON.toJSONString(new EcologyResponseDTO(FAIL_CODE,msg,null));
}
private String code;
private String msg;
private T data;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
@Override
public String toString() {
return "EcologyResponseDTO{" +
"code='" + code + '\'' +
", msg='" + msg + '\'' +
", data=" + data +
'}';
}
}

@ -0,0 +1,19 @@
package com.engine.htxc.common;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2917:03
* @Description:
* @ModifyLog:
**/
public class ParamValidException extends RuntimeException{
public ParamValidException(){
}
public ParamValidException(String msg){
super(msg);
}
}

@ -0,0 +1,55 @@
package com.engine.htxc.common;
import org.apache.http.HttpStatus;
import java.util.HashMap;
import java.util.Map;
/**
*
*/
public class R extends HashMap<String, Object> {
private static final long serialVersionUID = 1L;
public R() {
put("code", 200);
put("success",true);
}
public static R error() {
return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, "内部错误,请联系管理员");
}
public static R error(String msg) {
return error(HttpStatus.SC_INTERNAL_SERVER_ERROR, msg);
}
public static R error(int code, String msg) {
R r = new R();
r.put("code", code);
r.put("msg", msg);
r.put("success",false);
return r;
}
public static R ok(String msg) {
R r = new R();
r.put("msg", msg);
return r;
}
public static R ok(Map<String, Object> map) {
R r = new R();
r.putAll(map);
return r;
}
public static R ok() {
return new R();
}
@Override
public R put(String key, Object value) {
super.put(key, value);
return this;
}
}

@ -0,0 +1,72 @@
package com.engine.htxc.common.dto;
import com.alibaba.fastjson.JSON;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2915:23
* @Description:
* @ModifyLog:
**/
public class EcologyCommonResponseDTO<T> {
public static final String SUCCESS_CODE = "0";
public static final String FAIL_CODE = "-1";
public EcologyCommonResponseDTO(String code,String msg,T data){
this.code=code;
this.msg=msg;
this.data=data;
}
public static <T> EcologyCommonResponseDTO<T> success(T data){
return new EcologyCommonResponseDTO(SUCCESS_CODE,"success",data);
}
public static String successJson(Object data){
return JSON.toJSONString(new EcologyCommonResponseDTO(SUCCESS_CODE,"success",data));
}
public static String failJson(String msg){
return JSON.toJSONString(new EcologyCommonResponseDTO(FAIL_CODE,msg,null));
}
private String code;
private String msg;
private T data;
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public T getData() {
return data;
}
public void setData(T data) {
this.data = data;
}
@Override
public String toString() {
return "EcologyCommonResponseDTO{" +
"code='" + code + '\'' +
", msg='" + msg + '\'' +
", data=" + data +
'}';
}
}

@ -0,0 +1,62 @@
package com.engine.htxc.commonutil.base;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import javax.servlet.http.HttpServletRequest;
import java.io.IOException;
/**
* @author xf
* @version 1.0.0
* @ClassName RequestJSsonUtil.java
* @createTime 20211130 16:18:00
*/
public class RequestJsonUtil {
public static JSONObject getRequestJsonObject(HttpServletRequest req) throws IOException {
String value = getRequestJsonString(req);
return JSONObject.parseObject(value);
}
public static JSONArray getRequestJsonArrray(HttpServletRequest req) throws IOException {
String value = getRequestJsonString(req);
return JSONArray.parseArray(value);
}
public static String getRequestJsonString(HttpServletRequest req) throws IOException {
String value = req.getMethod();
return value.equals("GET") ? (new String(req.getQueryString().getBytes("iso-8859-1"), "utf-8")).replaceAll("%22", "\"") : getRequestPostStr(req);
}
public static byte[] getRequestPostBytes(HttpServletRequest req) throws IOException {
int lenth = req.getContentLength();
if (lenth < 0) {
return null;
} else {
byte[] bytes = new byte[lenth];
int count;
for(int i = 0; i < lenth; i += count) {
count = req.getInputStream().read(bytes, i, lenth - i);
if (count == -1) {
break;
}
}
return bytes;
}
}
public static String getRequestPostStr(HttpServletRequest req) throws IOException {
byte[] value = getRequestPostBytes(req);
String encoding = req.getCharacterEncoding();
if (encoding == null) {
encoding = "UTF-8";
}
return new String(value, encoding);
}
}

@ -0,0 +1,100 @@
package com.engine.htxc.commonutil.dao;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import weaver.interfaces.htsc.GlobatTools.Uploadcory;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName FileDao.java
* @createTime 20220701 09:43:00
*/
public class FileDao {
public List<Map<String,Object>> getFileInfo(List<Map<String,Object>> doclist){
List <Map<String,Object>> list=new ArrayList<>();
if(doclist==null || doclist.isEmpty()){
return list;
}
List<String> docidslist=new ArrayList<>();
doclist.forEach((Map<String,Object> map)->{
String docid=Util.null2String(map.get("docid"));
if(!StringUtils.isBlank(docid)){
docidslist.add(docid);
}
});
if( docidslist.isEmpty()){
return list;
}
String sql2="select t.docid,t.imagefileid,t.imagefilename,dt.doccreatedate as operatedate,dt.doccreatetime as operatetime,tf.imagefiletype,tf.filesize " +
" from docimagefile t join imagefile tf on t.imagefileid=tf.imagefileid " +
" join docdetail dt on t.docid=dt.id where " +
"t.docid in ("+docidslist.stream().map(item->"'"+item+"'").collect(Collectors.joining(","))+")";
List<Map<String,Object>> data= JAVATools.GetTableToListMap(sql2,null);
if(data==null || data.size()<=0){
return list;
}
data.forEach((Map<String,Object> map2)->{
Map<String,Integer> map= Uploadcory.coryfile(Util.null2String(map2.get("docid")));
if(map!=null && map.size()>0){
Map<String,Object> returnmap=new HashMap<>(8);
String docid =Util.null2String(map.get("docid"));
String imagefileid =Util.null2String(map.get("imagefileid"));
returnmap.put("docid",docid);
returnmap.put("imagefileid",imagefileid);
returnmap.put("imagefilename",Util.null2String(map2.get("imagefilename")));
returnmap.put("operatedate",Util.null2String(map2.get("operatedate")));
returnmap.put("operatetime",Util.null2String(map2.get("operatetime")));
returnmap.put("imagefiletype",Util.null2String(map2.get("imagefiletype")));
returnmap.put("filesize",Util.null2String(map2.get("filesize")));
returnmap.put("docimagefile",Util.null2String(map2.get("docimagefile")));
list.add(returnmap);
}
});
return list;
}
public List<Map<String,Object>> getNotcoryFileInfo(List<String> docidslist){
List <Map<String,Object>> list=new ArrayList<>();
if(docidslist==null || docidslist.size()<=0){
return list;
}
String sql2="select t.docid,t.imagefileid,t.imagefilename,t.operatedate,t.operatetime,tf.imagefiletype,tf.filesize from docimagefile t join imagefile tf on t.imagefileid=tf.imagefileid where " +
"t.docid in ("+docidslist.stream().map(item->"'"+item+"'").collect(Collectors.joining(","))+")";
List<Map<String,Object>> data= JAVATools.GetTableToListMap(sql2,null);
if(data==null || data.size()<=0){
return list;
}
data.forEach((Map<String,Object> map)->{
if(map!=null && map.size()>0){
Map<String,Object> returnmap=new HashMap<>(8);
String docid =Util.null2String(map.get("docid"));
String imagefileid =Util.null2String(map.get("imagefileid"));
returnmap.put("docid",docid);
returnmap.put("imagefileid",imagefileid);
returnmap.put("imagefilename",Util.null2String(map.get("imagefilename")));
returnmap.put("operatedate",Util.null2String(map.get("operatedate")));
returnmap.put("operatetime",Util.null2String(map.get("operatetime")));
returnmap.put("imagefiletype",Util.null2String(map.get("imagefiletype")));
returnmap.put("filesize",Util.null2String(map.get("filesize")));
returnmap.put("docimagefile",Util.null2String(map.get("docimagefile")));
list.add(returnmap);
}
});
return list;
}
}

@ -0,0 +1,593 @@
package com.engine.htxc.commonutil.db;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.engine.htxc.commonutil.log.CustomizeLog;
import com.engine.integration.util.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.Util;
/**
* <p>
* JAVATool/p>
* <p>
*
* </p>
*
* @author K1810015
* @version 1.0.0
* @ClassName DbTools.java
* @createTime 20220408 14:46:00
*/
public class DbTools {
private RecordSet rs = new RecordSet();
private RecordSet rsupdate = new RecordSet();
private RecordSet rsinsert = new RecordSet();
private RecordSet redelete = new RecordSet();
public String dbpk = "id";
/**
* <p>
* requestname
* </p>
*
* @title getRequesName
* @author K1810015
* @updateTime 2022/4/8 14:49
* @throws
*/
public String getRequesName(Map<String, Object> map) {
String value = "";
if (map == null || map.size() <= 0) {
return value;
}
String requestid = Util.null2String(map.get("requestid"));
if (StringUtils.isBlank(requestid)) {
return value;
}
String sql = " select requestname from workflow_requestbase where requestid=?";
Map<String, Object> mapvalue = getsqltomap(sql, requestid);
if (mapvalue == null || mapvalue.size() <= 0) {
return value;
}
return Util.null2String(mapvalue.get("requestname"));
}
/**
* <p>
* requestid
* </p>
*
* @title gettablename
* @author K1810015
* @param requestid
* requestid
* @updateTime 2022/4/25 10:47
*/
public String getTableName(String requestid) {
if (StringUtils.isBlank(requestid)) {
return "";
}
String sql = " select abs(t.formid) as formid \n" + " from workflow_base t\n"
+ " inner join workflow_requestbase l on l.workflowid = t.id\n" + " where l.requestid=" + requestid + "";
rs.execute(sql);
String formid = "formtable_main_";
if (rs.next()) {
formid = formid + com.weaver.general.Util.getIntValues(rs.getString("formid"));
}
return formid;
}
/**
* <p>
* nodenumberid
* </p>
*
* @title getNodeunnumberToid
* @author K1810015
* @updateTime 2022/8/15 10:07
* @throws
*/
public String getNodeunnumberToid(String nodeunnumber) {
if (StringUtils.isBlank(nodeunnumber)) {
return "";
}
String sql = " select id from workflow_nodebase where unnumber=?";
return getsqlonevalue(sql, nodeunnumber);
}
public String getRequestidByRequestMark(String requestMark) {
RecordSet rs = new RecordSet();
String requestid = "";
if (org.apache.commons.lang.StringUtils.isNotEmpty(requestMark)) {
String sql = "select requestid from workflow_requestbase where requestMark = '" + requestMark + "'";
rs.executeQuery(sql);
if (rs.next()) {
requestid = Util.null2String(rs.getString("requestid"));
}
}
return requestid;
}
public String getFormmodeidToTable(String formid){
if(StringUtils.isBlank(formid)){
return "";
}
String sql=" select wb.tablename from modeinfo m inner join workflow_bill wb on m.formid=wb.id where m.id=?";
return this.getsqlonevalue(sql,formid);
}
public String getFormidToTable(String formid){
if(StringUtils.isBlank(formid)){
return "";
}
String sql="select tablename from workflow_bill where id=?";
return this.getsqlonevalue(sql,formid);
}
/**
* <p>
* requestid
* </p>
*
* @title getUnnumberToTablename
* @author K1810015
* @param unnumber
* @updateTime 2022/4/25 10:47
* @throws
*/
public String getUnnumberToTablename(String unnumber) {
if (StringUtils.isBlank(unnumber)) {
return "";
}
String sql =
" select abs(t.formid) as formid " + " from workflow_base t " + " where t.unnumber='" + unnumber + "'";
String formid = "formtable_main_";
return (formid + getsqlonevalue(sql, (Object)null));
}
//获取主表的number
public String getmainunnumber(String reqid) {
String sql = " select t.unnumber as unnumber \n" +
" from workflow_base t\n" +
" inner join workflow_requestbase l on l.workflowid = t.id\n" +
" where rownum=1 and l.requestid=" + reqid + "";
String unnumber = getsqlonevalue(sql);
return unnumber;
}
/**
* <p>
* sqllist
* </p>
*
* @title getsqltolist
* @author K1810015
* @param sql
* sql
* @param value
*
* @updateTime 2022/8/17 21:17
*/
public List<Map<String, Object>> getSqlToList(String sql, Object... value) {
List<Map<String, Object>> listreturn = new ArrayList<>();
if (value == null || value.length <= 0 || value.length <= 0 || value[0] == null
|| StringUtils.isBlank(Util.null2String(value))) {
rs.execute(sql);
} else {
rs.executeQuery(sql, value);
}
while (rs.next()) {
Map<String, Object> map = new HashMap<>(1);
String[] colnums = rs.getColumnName();
for (String colnumvalue : colnums) {
map.put(colnumvalue.toLowerCase(), rs.getString(colnumvalue));
}
listreturn.add(map);
}
return listreturn;
}
/**
* <p>
* requestfieldlist
* </p>
*
* @title getRequestidToMap
* @author K1810015
* @param requestid
* @param fieldlist
* @updateTime 2022/8/17 21:49
*/
public Map<String, Object> getRequestidToMap(String requestid, List<String> fieldlist) {
Map<String, Object> map = new HashMap<>(1);
if (StringUtils.isBlank(requestid)) {
return map;
}
String tablename = getTableName(requestid);
if (StringUtils.isBlank(tablename)) {
return map;
}
String fieldvalue = "*";
if (fieldlist != null && fieldlist.size() > 0) {
if (!fieldlist.contains(dbpk)) {
fieldlist.add(dbpk);
}
fieldvalue = fieldlist.stream().collect(Collectors.joining(","));
}
String sql = "select " + fieldvalue + " from " + tablename + " where requestid=?";
map = getsqltomap(sql, requestid);
return map;
}
/**
* <p>
* requestfieldlist-
* </p>
*
* @title getRequestidToMapList
* @author K1810015
* @param requestid
* @param fieldlist
* @updateTime 2022/8/17 21:49
*/
public List<Map<String, Object>> getRequestidToMapList(String requestid, List<String> fieldlist, int detailnumber) {
List<Map<String, Object>> list = new ArrayList<>();
if (StringUtils.isBlank(requestid) || detailnumber < 0) {
return list;
}
String tablename = getTableName(requestid);
if (StringUtils.isBlank(tablename)) {
return list;
}
String fieldvalue = "*";
if (fieldlist != null && fieldlist.size() > 0) {
if (!fieldlist.contains(dbpk)) {
fieldlist.add(dbpk);
}
fieldvalue = fieldlist.stream().collect(Collectors.joining(","));
}
String sql = "select " + fieldvalue + " from " + tablename + "_dt" + detailnumber
+ " where mainid in (select id from " + tablename + " where requestid=?)";
list = getSqlToList(sql, requestid);
return list;
}
/**
* <p>
* sql
* </p>
* <p>
* ps:
* </p>
*
* @title getsqltomap
* @author K1810015
* @param sql
* @param value
* @updateTime 2022/8/17 21:26
*/
public Map<String, Object> getsqltomap(String sql, Object... value) {
Map<String, Object> map = new HashMap<>(1);
if (value == null || value.length <= 0 || value[0] == null || StringUtils.isBlank(Util.null2String(value))) {
rs.execute(sql);
} else {
rs.executeQuery(sql, value);
}
if (rs.next()) {
String[] colnums = rs.getColumnName();
for (String colnumvalue : colnums) {
map.put(colnumvalue.toLowerCase(), rs.getString(colnumvalue));
}
}
return map;
}
/**
* <p>
* rs
* </p>
*
* @title gettabletomap
* @author K1810015
* @updateTime 2022/8/22 20:33
*/
public Map<String, Object> gettabletomap(String tablename, Map<String, String> wheremap) {
Map<String, Object> mapnew = new HashMap<>(1);
if (StringUtils.isBlank(tablename) || wheremap == null || wheremap.size() <= 0) {
return mapnew;
}
List<String> wherekey = new ArrayList<>();
wheremap.entrySet().forEach(key -> {
wherekey.add(key.getKey() + "='" + key.getValue() + "'");
});
String sql =
" select * from " + tablename + " where 1=1 and " + wherekey.stream().collect(Collectors.joining(" and "));
mapnew = this.getsqltomap(sql, (Object)null);
return mapnew;
}
/**
* <p>
* request
* </p>
*
* @title gettableall
* @author K1810015
* @param requestid
* requestid
* @param detailid
*
* @updateTime 2022/8/17 21:24
*/
public List<Map<String, Object>> gettableall(String requestid, int detailid) {
List<Map<String, Object>> list = new ArrayList<>();
if (StringUtils.isBlank(requestid)) {
return list;
}
String tablename = getTableName(requestid);
if (StringUtils.isBlank(tablename)) {
return list;
}
String sql = "select * from " + tablename + " where 1=1 and requestid='" + requestid + "'";
if (detailid > 0) {
sql = "select * from " + tablename + "_dt" + detailid + " where mainid in (" + "select id from " + tablename
+ " where 1=1 and requestid='" + requestid + "' )";
}
list = getSqlToList(sql);
return list;
}
/**
* <p>
* sql
* </p>
*
* @title getsqlonevalue
* @author K1810015
* @updateTime 2022/8/17 21:06
*/
public String getsqlonevalue(String sql, Object... value) {
String retvalue = "";
if (value == null || value.length <= 0 || value[0] == null || StringUtils.isBlank(Util.null2String(value))) {
rs.execute(sql);
} else {
rs.executeQuery(sql, value);
}
if (rs.next()) {
String[] colnums = rs.getColumnName();
if (colnums.length > 0) {
retvalue = Util.null2String(rs.getString(colnums[0]));
}
}
return retvalue;
}
/**
* <p>
*
* </p>
*
* @title gettablefeild
* @author K1810015
* @param requestid
* @param field
* @updateTime 2022/7/15 10:40
* @throws
*/
public String getTableField(String requestid, String field) {
if (StringUtils.isBlank(requestid)) {
return "";
}
String tablename = getTableName(requestid);
if (StringUtils.isBlank(tablename)) {
return "";
}
String sql = "select " + field + " from " + tablename + " where 1=1 and requestid='" + requestid + "'";
Map<String, Object> retmap = getsqltomap(sql);
if (retmap == null || retmap.size() <= 0) {
return "";
}
return Util.null2String(retmap.get(field));
}
/**
* <p>
*
* </p>
*
* @title insert
* @author K1810015
* @param tablename
* @param setmap
* @updateTime 2022/8/17 22:00
*/
public boolean insert(String tablename, Map<String, String> setmap) {
if (StringUtils.isBlank(tablename) || setmap == null || setmap.size() <= 0) {
return false;
}
List<String> setkey = new ArrayList<>();
List<String> setvalue = new ArrayList<>();
setmap.entrySet().forEach(key -> {
setkey.add(key.getKey());
setvalue.add(key.getValue());
});
String sql = " insert into " + tablename + "(" + setkey.stream().collect(Collectors.joining(",")) + ") values("
+ setkey.stream().map(item -> "?").collect(Collectors.joining(",")) + ")";
return rsinsert.executeUpdate(sql, new Object[] {setvalue});
}
/**
* ,MapMap
*
* @title updateSql
* @author K1810015
* @param tablename
* @param setmap
* @param wheremap
* @updateTime 2022/8/17 22:01
*/
public boolean updateSql(String tablename, Map<String, String> setmap, Map<String, String> wheremap) {
if (StringUtils.isBlank(tablename) || setmap == null || setmap.size() <= 0 || wheremap == null
|| wheremap.size() <= 0) {
return false;
}
List<String> setkey = new ArrayList<>();
List<String> setvalue = new ArrayList<>();
List<String> wherekey = new ArrayList<>();
setmap.entrySet().forEach(key -> {
setkey.add(key.getKey() + "=?");
setvalue.add(key.getValue());
});
if (setkey.isEmpty()) {
return false;
}
wheremap.entrySet().forEach(key -> {
wherekey.add(key.getKey() + "='" + key.getValue() + "'");
});
if (wherekey.isEmpty()) {
return false;
}
String sql = "update " + tablename + " set " + setkey.stream().collect(Collectors.joining(","))
+ " where 1=1 and " + wherekey.stream().collect(Collectors.joining(" and "));
return rsupdate.executeUpdate(sql, new Object[] {setvalue});
}
/**
* <p>
* sql()
* </p>
*
* @title execteSql
* @author K1810015
* @param sql
* @param value
* @updateTime 2022/8/17 22:05
*/
public boolean execteSql(String sql, Object... value) {
boolean flag = false;
if (value == null || value.length <= 0 || value[0] == null || StringUtils.isBlank(Util.null2String(value))) {
flag = rs.execute(sql);
} else {
flag = rs.executeQuery(sql, value);
}
return flag;
}
/**
* ,Mappkey <br/>
* wherelist
*
* @title updateAllSql
* @author K1810015
* @param tablename
* @param setmap
* @param pkey
* @updateTime 2022/8/17 22:01
*/
public boolean updateAllSql(String tablename, Map<String, String> setmap, String pkey, List<String> wherelist) {
if (StringUtils.isBlank(tablename) || setmap == null || setmap.size() <= 0 || wherelist == null
|| wherelist.size() <= 0) {
return false;
}
List<String> setkey = new ArrayList<>();
List<String> setvalue = new ArrayList<>();
setmap.entrySet().forEach(key -> {
setkey.add(key.getKey() + "=?");
setvalue.add(key.getValue());
});
if (setkey.isEmpty()) {
return false;
}
String sql = "update " + tablename + " set " + setkey.stream().collect(Collectors.joining(","))
+ " where 1=1 and " + pkey + " in ("
+ wherelist.stream().map(item -> "\'" + item + "\'").collect(Collectors.joining(",")) + ")";
CustomizeLog.printLog("sql:" + sql);
return rsupdate.executeUpdate(sql, new Object[] {setvalue});
}
/**
* ,MapMap
*
* @title insertAllSql
* @author K1810015
* @param tablename
* @param setlist
* @updateTime 2022/8/17 22:01
*/
public boolean insertAllSql(String tablename, List<Map<String, String>> setlist) {
if (StringUtils.isBlank(tablename) || setlist == null || setlist.size() <= 0) {
return false;
}
List<String> sqlvalue = new ArrayList<>();
setlist.forEach((setmaptemp) -> {
Map<String, String> setmap = (HashMap)setmaptemp;
List<String> setkey = new ArrayList<>();
List<String> setvalue = new ArrayList<>();
setmap.entrySet().forEach(key -> {
setkey.add(key.getKey());
setvalue.add(key.getValue());
});
sqlvalue
.add(" insert into " + tablename + "(" + setkey.stream().collect(Collectors.joining(",")) + ") values("
+ setvalue.stream().map(item -> "'" + item + "'").collect(Collectors.joining(",")) + ");");
});
rsinsert.executeUpdate(sqlvalue.stream().collect(Collectors.joining()));
return true;
}
/**
* ,MapMap
*
* @title delete
* @author K1810015
* @param tablename
* @param wheremap
* @updateTime 2022/8/17 22:01
*/
public boolean delete(String tablename, Map<String, Object> wheremap) {
if (StringUtils.isBlank(tablename) || wheremap == null || wheremap.size() <= 0) {
return false;
}
String sql = "delete from " + tablename + " where 1=1 and ";
List<String> wherekey = new ArrayList<>();
List<String> wherevalue = new ArrayList<>();
wheremap.entrySet().forEach(key -> {
wherekey.add(key.getKey() + "=?");
wherevalue.add(Util.null2String(key.getValue()));
});
sql += wherekey.stream().collect(Collectors.joining("and"));
return redelete.executeUpdate(sql, wherevalue.stream().distinct().collect(Collectors.joining(",")));
}
public int ifExist(String sql) {
rs.executeQuery(sql);
if (rs.next()){
int num = rs.getInt("num");
return num;
}
return 0;
}
}

@ -0,0 +1,419 @@
package com.engine.htxc.commonutil.db;
import com.alibaba.fastjson.JSON;
import com.engine.htsc.payment.util.PayUtil;
import com.engine.integration.util.StringUtils;
import com.google.common.base.CaseFormat;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetTrans;
import weaver.general.Util;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import java.lang.reflect.Field;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 15:40
* @Description:
* @ModifyLog:
**/
public class EntityCrudUtil {
public static final String PKEY = "id";
private static final Logger logger= LoggerFactory.getLogger(EntityCrudUtil.class);
/**
* id 1
*/
public static final int SYSTEM_USER_ID = 1;
/**
* 0
*/
private static final int DEFAULT_CREATER_TYPE = 0;
public static SqlContext getSqlContext(String tablename, Object entity, Class<?> entityClass){
List<String> columns=new ArrayList<>();
List<Object> values=new ArrayList<>();
List<String> allColumns=new ArrayList<>();
getColumnsAndValues(entity,true,entityClass,columns,values,allColumns);
return new SqlContext(tablename,columns,values,allColumns);
}
public static boolean transInsert(RecordSetTrans rst, String tablename, Object entity, Class<?> entityClass) throws Exception {
if(StringUtils.isBlank(tablename) || entity==null){
return false;
}
final SqlContext sqlContext = getSqlContext(tablename, entity, entityClass);
final String sql = buildInsertSql(sqlContext);
logger.info("sql:[{}]",sql);
logger.info("param:[{}]", JSON.toJSONString(sqlContext.getValues()));
if(sqlContext.getValues().isEmpty()){
return false;
}
return rst.executeUpdate(sql,sqlContext.getValues().toArray());
}
public static String buildInsertSql(SqlContext sqlContext){
return " insert into "+sqlContext.getTableName() +"("+ sqlContext.getColumns().stream().map(EntityCrudUtil::camalCase2underscore).collect(Collectors.joining(",")) +") values("+String.join(",",Collections.nCopies(sqlContext.getValues().size(),"?"))+")";
}
/**
*
* @param tablename
* @param entity
* @param entityClass
* @return
*/
public static boolean insertEntity(String tablename, Object entity, Class<?> entityClass){
if(StringUtils.isBlank(tablename) || entity==null){
return false;
}
final SqlContext sqlContext = getSqlContext(tablename, entity, entityClass);
if(sqlContext.getValues().isEmpty()){
return false;
}
final RecordSet rs = new RecordSet();
return rs.executeUpdate(buildInsertSql(sqlContext),sqlContext.getValues());
}
private static String getMethodName(String str) {
char[] cs=str.toCharArray();
cs[0]-=32;
return String.valueOf(cs);
}
private static void getColumnsAndValues(Object entity, boolean ignoreNull, Class<?> entityClass, List<String> columns, List<Object> values, List<String> allColumns) {
Arrays.stream(entityClass.getDeclaredFields()).forEach(field -> {
//获取值
final Method method;
try {
method = entityClass.getMethod("get"+getMethodName(field.getName()));
final Object value = method.invoke(entity);
if(!ignoreNull||value!=null){
//获取列
columns.add(field.getName());
values.add(value);
}
allColumns.add(field.getName());
} catch (NoSuchMethodException|InvocationTargetException|IllegalAccessException e) {
logger.error("获取列失败",e);
}
});
}
/**
* id
* @param tablename
* @param clazz
* @param entity
* @return
*/
public Boolean deleteById(String tablename,Class<?> clazz,Object entity){
if (StringUtils.isBlank(tablename)) {
return false;
}
try {
String id = Util.null2String(clazz.getMethod("get" + getMethodName(PKEY)).invoke(entity));
if (StringUtils.isBlank(id)) {
return false;
}
Map<String, String> wheremap = new HashMap<>(1);
wheremap.put(PKEY, id);
return JAVATools.deletesql(tablename, wheremap);
} catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException e) {
logger.error("deleteById error:",e);
}
return false;
}
/**
* id
* @param tablename
* @param clazz
* @param entity
* @return
*/
public Boolean updateById(String tablename,Class<?> clazz,Object entity) {
if(StringUtils.isBlank(tablename)){
return false;
}
try {
Field[] fields = clazz.getDeclaredFields();
String id = Util.null2String(clazz.getMethod("get" + getMethodName(PKEY)).invoke(entity));
if (StringUtils.isBlank(id)) {
return false;
}
Map<String, String> fieldMap = new HashMap<>(5);
Map<String, String> whereMap = new HashMap<>(1);
for (Field f : fields) {
Method m = clazz.getMethod("get" + getMethodName(f.getName()));
if (PKEY.equals(f.getName())) {
if (!StringUtils.isBlank(Util.null2String(m.invoke(entity)))) {
whereMap.put(f.getName(), Util.null2String(m.invoke(entity)));
}
} else if (m.invoke(entity) != null) {
fieldMap.put(f.getName(), Util.null2String(m.invoke(entity)));
}
}
return fieldMap.size() > 0 && whereMap.size() == 1 && JAVATools.Updatesql(fieldMap, tablename, whereMap);
} catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
logger.error("updateById error:",e);
}
return false;
}
/**
* id
* @param tablename
* @param id
* @param clazz
* @return
*/
public Object selectById(String tablename,String id,Class<?> clazz){
if (StringUtils.isBlank(tablename)) {
return null;
}
try {
Object result = clazz.newInstance();
Map<String, String> wheremap = new HashMap<>(1);
wheremap.put(PKEY, id);
Map<String, Object> tablemap = JAVATools.gettablevalue(tablename, wheremap);
Field[] methodsarray = clazz.getDeclaredFields();
Arrays.stream(methodsarray).forEach(f -> {
try {
Method m = clazz.getMethod("set" + getMethodName(f.getName()), f.getType());
if (tablemap.get(f.getName()) != null) {
if (Integer.class.isAssignableFrom(f.getType())) {
if (!StringUtils.isBlank(Util.null2String(tablemap.get(f.getName())))) {
Integer strvaluex = Util.getIntValue(Util.null2String(tablemap.get(f.getName())));
m.invoke(result, strvaluex);
}
} else if (String.class.isAssignableFrom(f.getType())) {
String strvalue = Util.null2String(tablemap.get(f.getName()));
m.invoke(result, strvalue);
}
}
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
logger.error("selectById error:",e);
}
});
return result;
} catch (InstantiationException | IllegalAccessException e) {
logger.error("selectById error:",e);
}
return null;
}
/**
* id
* @param uuid
* @return
*/
public static int getModeDataIdByUuid(String tableName,String uuid){
final RecordSet recordSet = new RecordSet();
recordSet.executeQuery("select id from "+tableName+" where modeuuid=? ", uuid);
if(recordSet.next()){
return recordSet.getInt("id");
}
return -1;
}
/**
*
* @param uuid
* @return
*/
public static int getModeDataIdByUuid(RecordSetTrans rst,String tableName,String uuid) throws Exception {
rst.executeQuery("select id from "+tableName+" where modeuuid=? ", uuid);
if (rst.next()) {
return rst.getInt("id");
}
return -1;
}
public static <T> T createModeBaseAttributes(String modeTableName,Class<T> clazz){
try {
final T t = clazz.newInstance();
return buildModeBaseAttributes(modeTableName,t,clazz);
} catch (InstantiationException | IllegalAccessException e) {
logger.error("创建mode对象错误",e);
}
return null;
}
public static <T> T buildModeBaseAttributes(String modeTableName, T modeEntity, Class<T> clazz){
final int modeId = PayUtil.getFormModeIdByCubeName(modeTableName);
final LocalDateTime now = LocalDateTime.now();
final Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
Object value;
final String name = field.getName();
switch (name.toLowerCase()){
case "formmodeid":
value=modeId;
break;
case "modedatacreater":
value= SYSTEM_USER_ID;
break;
case "modedatacreatertype":
value=DEFAULT_CREATER_TYPE;
break;
case "modedatacreatedate":
value= now.format(DateTimeFormatter.ISO_LOCAL_DATE);
break;
case "modedatacreatetime":
value= now.format(DateTimeFormatter.ofPattern("HH:mm:ss"));
break;
case "modeuuid":
value= UUID.randomUUID().toString();
break;
default:
continue;
}
try {
final Method setter = clazz.getMethod(getSetterMethodName(name),field.getType());
setter.invoke(modeEntity,value);
} catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) {
logger.error("构建mode公共属性错误",e);
}
}
return modeEntity;
}
private static String getSetterMethodName(String feildName) {
return "set"+getMethodName(feildName);
}
public static <T> T selectOne(String tableName,T entity,Class<T> clazz){
final List<T> list = selectListByEntity(tableName, entity, clazz);
if(list.size()==1){
return list.get(0);
}
logger.error("查询单条数据出错");
return null;
}
/**
* ,javabean
* @param tableName
* @param entity
* @param clazz
* @param <T>
* @return
*/
public static <T> List<T> selectListByEntity(String tableName,T entity,Class<T> clazz){
final SqlContext sqlContext = getSqlContext(tableName, entity, clazz);
String sql=buildSelectSql(sqlContext);
return selectList(sql,clazz,sqlContext.getValues());
}
public static <T> List<T> selectListWithOrderSql(String tableName,String orderSql,T entity,Class<T> clazz){
final SqlContext sqlContext = getSqlContext(tableName, entity, clazz);
String sql= buildOrderSql(orderSql, sqlContext);
final List<Object> params = sqlContext.getValues();
return selectList(sql, clazz, params);
}
private static String buildOrderSql(String orderSql, SqlContext sqlContext) {
return buildSelectSql(sqlContext)+" "+orderSql;
}
/**
* ,javabean
* sql
* @param sql
* @param entity
* @param clazz
* @param <T>
* @return
*/
public static <T> List<T> selectListBySql(String sql,T entity,Class<T> clazz){
final SqlContext sqlContext = getSqlContext("", entity, clazz);
final List<Object> params = sqlContext.getValues();
return selectList(sql, clazz, params);
}
public static <T> List<T> selectList(String sql, Class<T> clazz, List<Object> params) {
logger.info("sql:[{}]",sql);
logger.info("values:[{}]", params);
if(params.isEmpty()){
logger.warn("查询条件参数为空");
}
final RecordSet recordSet = new RecordSet();
recordSet.executeQuery(sql, params.toArray());
List<T> resultList=new ArrayList<>();
while (recordSet.next()){
try {
T result = convert2JavaBean(clazz, recordSet);
resultList.add(result);
} catch (InstantiationException | IllegalAccessException | NoSuchMethodException | InvocationTargetException e) {
logger.error("selectByEntity error:",e);
}
}
return resultList;
}
private static <T> T convert2JavaBean(Class<T> clazz, RecordSet recordSet) throws InstantiationException, IllegalAccessException, NoSuchMethodException, InvocationTargetException {
T result = clazz.newInstance();
Field[] methodsArray = clazz.getDeclaredFields();
for (Field f : methodsArray) {
Method m = clazz.getMethod("set" + getMethodName(f.getName()), f.getType());
final String value = recordSet.getString(f.getName().toUpperCase());
if (Integer.class.isAssignableFrom(f.getType())) {
if (!StringUtils.isBlank(value)) {
Integer strvaluex = Util.getIntValue(value);
m.invoke(result, strvaluex);
}
} else if (String.class.isAssignableFrom(f.getType())) {
m.invoke(result, value);
}
}
return result;
}
private static String buildSelectSql(SqlContext sqlContext) {
String sql="select "+ sqlContext.getAllColumns().stream().map(colomn->camalCase2underscore(colomn)).collect(Collectors.joining(",")) +" from "+sqlContext.getTableName()+" ";
if(sqlContext.getValues().isEmpty()){
return sql;
}
sql+=" where " + sqlContext.getColumns().stream().map(column -> camalCase2underscore(column) + "=?").collect(Collectors.joining(" and "));
return sql;
}
/**
*
* @param selected
* @return
*/
public static String camalCase2underscore(String selected){
return CaseFormat.LOWER_CAMEL.to(CaseFormat.LOWER_UNDERSCORE,selected);
}
}

@ -0,0 +1,61 @@
package com.engine.htxc.commonutil.db;
import java.util.List;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2612:56
* @Description:
* @ModifyLog:
**/
public class SqlContext {
private List<String> allColumns;
private List<String> columns;
private List<Object> values;
private String tableName;
public SqlContext(String tableName,List<String> columns,List<Object> values,List<String> allColumns){
this.tableName=tableName;
this.columns=columns;
this.values=values;
this.allColumns=allColumns;
}
public List<String> getAllColumns() {
return allColumns;
}
public void setAllColumns(List<String> allColumns) {
this.allColumns = allColumns;
}
public List<String> getColumns() {
return columns;
}
public void setColumns(List<String> columns) {
this.columns = columns;
}
public List<Object> getValues() {
return values;
}
public void setValues(List<Object> values) {
this.values = values;
}
public String getTableName() {
return tableName;
}
public void setTableName(String tableName) {
this.tableName = tableName;
}
}

@ -0,0 +1,35 @@
package com.engine.htxc.commonutil.dept;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.integration.util.StringUtils;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName DeptTools.java
* @createTime 20220826 19:07:00
*/
public class DeptTools {
public DeptTools() {
}
private static DbTools dbtools=new DbTools();
public static List<String> getidtocode(String deptids){
List<String> list=new ArrayList<>();
if(StringUtils.isBlank(deptids)){
return list;
}
String sql="select wm_concat_old(departmentcode) as departmentcode from hrmdepartment where id in ("+ Arrays.stream(deptids.split(",")).distinct().collect(Collectors.joining(","))+")";
String value=dbtools.getsqlonevalue(sql);
if(StringUtils.isBlank(value)){
return list;
}
return Arrays.stream(value.split(",")).collect(Collectors.toList());
}
}

@ -0,0 +1,335 @@
package com.engine.htxc.commonutil.fileutil;
import cn.hutool.core.date.DateTime;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.engine.htxc.commonutil.dao.FileDao;
import weaver.conn.RecordSet;
import weaver.docs.category.SecCategoryComInfo;
import weaver.docs.docs.DocComInfo;
import weaver.docs.docs.DocImageManager;
import weaver.docs.docs.DocManager;
import weaver.docs.docs.DocViewer;
import weaver.general.BaseBean;
import weaver.general.TimeUtil;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.hrm.resource.ResourceComInfo;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import weaver.wechat.util.Utils;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName FileUtil.java
* @createTime 20220701 09:35:00
*/
public class FileUtil {
public FileDao filedao=new FileDao();
/**
* @title getfilelinfo
* @author K1810015
* @updateTime 2022/7/1 9:41
* @Remark
* @throws
*/
public JSONArray getfilelinfo(User user, List retdoclist) {
if(retdoclist==null && retdoclist.size()<=0 ){
return null;
}
List<Map<String,Object>> list = filedao.getFileInfo(retdoclist);
if(list==null || list.size()<=0){
return null;
}
List<String> doclist=new ArrayList<>();
JSONArray jsonarrayall=new JSONArray();
list.forEach((Map<String,Object> returnmap)->{
JSONObject jsonObject=new JSONObject();
int size=Util.getIntValue(Util.null2String(returnmap.get("filesize")));
String filesize="1K";
String docid=Util.null2String(returnmap.get("docid"));
String imagefilename= Util.null2String(returnmap.get("imagefilename"));
if(size>0){
int sizevalue=size/1024;
if(sizevalue>0){
filesize=sizevalue+"K";
}
}
try {
String filelink = "/spa/document/index2file.jsp?f_weaver_belongto_userid=" + user.getUID() + "&f_weaver_belongto_usertype=0&id=" + docid + "&imagefileId=" + imagefilename + "&isFromAccessory=true&isrequest=1&requestid=-1&desrequestid=-1&authStr=undefined&authSignatureStr=undefined";
String loadlink = "/weaver/weaver.file.FileDownload?fileid=" + docid + "&download=1&requestid=-1&desrequestid=-1&authStr=undefined&authSignatureStr=undefined&f_weaver_belongto_userid=" + user.getUID() + "&f_weaver_belongto_usertype=0";
jsonObject.put("appID", "");
jsonObject.put("fileID", docid);
jsonObject.put("fileid", docid);
jsonObject.put("filelink", filelink);
jsonObject.put("fileExtendName", imagefilename.split("\\.")[imagefilename.split("\\.").length-1]);
jsonObject.put("filesize", filesize);
jsonObject.put("filename", imagefilename);
jsonObject.put("imagefileid", Util.null2String(returnmap.get("imagefileid")));
jsonObject.put("imgSrc", "/images/filetypeicons/pdf_wev8.png");
jsonObject.put("isImg", false);
jsonObject.put("loadlink", loadlink);
jsonObject.put("operatedate", Util.null2String(returnmap.get("operatedate")));
jsonObject.put("operatetime", Util.null2String(returnmap.get("operatetime")));
jsonObject.put("showDelete", true);
jsonObject.put("size", size);
jsonObject.put("uploaddate", Util.null2String(returnmap.get("operatedate")) + " "+Util.null2String(returnmap.get("operatetime")) );
jsonObject.put("userid", 0);
jsonObject.put("username", "文档中心");
jsonObject.put("versionCount", "v1");
JSONArray jsonArray=new JSONArray();
jsonArray.add(jsonObject);
doclist.add(docid);
JSONObject value1=new JSONObject();
value1.put("value",doclist.stream().collect(Collectors.joining(",")));
JSONObject filedatas=new JSONObject();
filedatas.put("filedatas",jsonArray);
value1.put("specialobj",filedatas);
jsonarrayall.add(value1);
}catch (Exception exo){
}
});
return jsonarrayall;
}
public JSONArray getdocimagefileinfo(User user, List retdoclist) {
if(retdoclist==null && retdoclist.size()<=0 ){
return null;
}
List<Map<String,Object>> list = filedao.getNotcoryFileInfo(retdoclist);
if(list==null || list.size()<=0){
return null;
}
JSONArray jsonarrayall=new JSONArray();
list.forEach((Map<String,Object> returnmap)->{
JSONObject jsonObject=new JSONObject();
int size=Util.getIntValue(Util.null2String(returnmap.get("filesize")));
String filesize="1K";
String docid=Util.null2String(returnmap.get("docid"));
String imagefilename= Util.null2String(returnmap.get("imagefilename"));
if(size>0){
int sizevalue=size/1024;
if(sizevalue>0){
filesize=sizevalue+"K";
}
}
try {
String filelink = "/spa/document/index2file.jsp?f_weaver_belongto_userid=" + user.getUID() + "&f_weaver_belongto_usertype=0&id=" + docid + "&imagefileId=" + imagefilename + "&isFromAccessory=true&isrequest=1&requestid=-1&desrequestid=-1&authStr=undefined&authSignatureStr=undefined";
String loadlink = "/weaver/weaver.file.FileDownload?fileid=" + docid + "&download=1&requestid=-1&desrequestid=-1&authStr=undefined&authSignatureStr=undefined&f_weaver_belongto_userid=" + user.getUID() + "&f_weaver_belongto_usertype=0";
jsonObject.put("appID", "");
jsonObject.put("fileID", docid);
jsonObject.put("fileid", docid);
jsonObject.put("filelink", filelink);
jsonObject.put("filesize", filesize);
jsonObject.put("filename", imagefilename);
jsonObject.put("fileExtendName", imagefilename.split("\\.")[imagefilename.split("\\.").length-1]);
jsonObject.put("imagefileid", Util.null2String(returnmap.get("imagefileid")));
jsonObject.put("imgSrc", "/images/filetypeicons/pdf_wev8.png");
jsonObject.put("isImg", false);
jsonObject.put("loadlink", loadlink);
jsonObject.put("operatedate", DateTime.now().toString("yyyy-MM-dd"));
jsonObject.put("operatetime", DateTime.now().toString("hh:mm:ss"));
jsonObject.put("showDelete", true);
jsonObject.put("size", size);
jsonObject.put("uploaddate", DateTime.now().toString("yyyy-MM-dd") + " "+DateTime.now().toString("hh:mm:ss") );
jsonObject.put("userid", 0);
jsonObject.put("username", "文档中心");
jsonObject.put("versionCount", "v1");
jsonarrayall.add(jsonObject);
}catch (Exception exo){
}
});
return jsonarrayall;
}
/**
* @title createdocdetail
* @author K1810015
* @updateTime 2022/3/11 15:04
* @Remark docdetail
* @throws
*/
public static int createdocdetail(Map<String,Object> map){
String title= Utils.null2String(map.get("title"));
String body=Utils.null2String(map.get("body"));
int creater=Utils.getIntValue(Utils.null2String(map.get("creater")),0);
String rq=Utils.null2String(map.get("rq"));
String docextendname=Utils.null2String(map.get("docextendname"));
int maincategory=Utils.getIntValue(Utils.null2String(map.get("maincategory")),0);
int subcategory=Utils.getIntValue(Utils.null2String(map.get("subcategory")),0);
int seccategory=Utils.getIntValue(Utils.null2String(map.get("seccategory")),0);
int doctype=Utils.getIntValue(Utils.null2String(map.get("doctype")),0);
RecordSet rs = new RecordSet();
BaseBean bs = new BaseBean();
try{
int docLanguage = 7 ;
int sec = seccategory;
ResourceComInfo r = new ResourceComInfo();
int departmentid = Integer.parseInt(r.getDepartmentID(creater+""));
bs.writeLog("departmentid:"+departmentid);
SecCategoryComInfo secCategoryComInfo=new SecCategoryComInfo();
DocComInfo docComInfo=new DocComInfo();
DocManager docManager=new DocManager();
DocViewer docViewer=new DocViewer();
String nowTime= TimeUtil.getOnlyCurrentTimeString();
String pubishdate = rq;
String publishtime = nowTime;
RecordSet recordSet = new RecordSet();
int newDocId = docManager.getNextDocId(recordSet);
docManager.setId(newDocId);
docManager.setDocsubject(title);
docManager.setMaincategory(maincategory);
docManager.setSubcategory(subcategory);
docManager.setSeccategory(sec);
docManager.setLanguageid(docLanguage);
docManager.setDocstatus("1");
docManager.setDoccreaterid(creater);
docManager.setDocdepartmentid(departmentid);
docManager.setDocCreaterType("1");
docManager.setUsertype("1");
docManager.setOwnerid(creater);
docManager.setOwnerType("1");
docManager.setDoclastmoduserid(creater);
docManager.setDocLastModUserType("1");
docManager.setDoccreatedate(pubishdate);
docManager.setDoclastmoddate(pubishdate);
docManager.setDoccreatetime(publishtime);
docManager.setDoclastmodtime(publishtime);
docManager.setDoclangurage(docLanguage);
docManager.setKeyword(title);
docManager.setIsapprover("0");
docManager.setIsreply("");
docManager.setDocreplyable("1");
docManager.setAccessorycount(1);
docManager.setParentids(newDocId+"");
docManager.setOrderable(secCategoryComInfo.getSecOrderable(seccategory)+"");
docManager.setUserid(1);
docManager.setDocCode("");
docManager.setDocEditionId(docManager.getNextEditionId(recordSet));
docManager.setDocEdition(1);
docManager.setDoccontent(body);
docManager.setDocType(doctype);
docManager.setDocextendname(docextendname);
docManager.AddDocInfo();
docComInfo.addDocInfoCache("" + newDocId);
docViewer.setDocShareByDoc("" + newDocId);
docManager.AddShareInfo();
return newDocId;
} catch(Exception e){
e.printStackTrace();
return -1;
}
}
/**
* @title createdocimagefile
* @author K1810015
* @updateTime 2022/3/11 15:04
* @Remark docimagefile
* @throws
*/
public static void createdocimagefile(Map<String,Object> map){
DocImageManager imgManger = new DocImageManager();
String docid= Utils.null2String(map.get("docid"));
String imagefileid=Utils.null2String(map.get("imagefileid"));
String imagefilename=Utils.null2String(map.get("imagefilename"));
String ext=Utils.null2String(map.get("docextendname"));
int versionid=Utils.getIntValue(Utils.null2String(map.get("imagefilename")),0);
int operateruserid=Utils.getIntValue(Utils.null2String(map.get("operateruserid")),0);
String operatedate=Utils.null2String(map.get("operatedate"));
String operatetime=Utils.null2String(map.get("operatetime"));
if (ext.equalsIgnoreCase("doc")) {
imgManger.setDocfiletype("3");
} else if (ext.equalsIgnoreCase("xls")) {
imgManger.setDocfiletype("4");
} else if (ext.equalsIgnoreCase("ppt")) {
imgManger.setDocfiletype("5");
} else if (ext.equalsIgnoreCase("wps")) {
imgManger.setDocfiletype("6");
} else if (ext.equalsIgnoreCase("docx")) {
imgManger.setDocfiletype("7");
} else if (ext.equalsIgnoreCase("xlsx")) {
imgManger.setDocfiletype("8");
} else if (ext.equalsIgnoreCase("pptx")) {
imgManger.setDocfiletype("9");
} else if (ext.equalsIgnoreCase("et")) {
imgManger.setDocfiletype("10");
} else {
imgManger.setDocfiletype("2");
}
imgManger.setDocid(Util.getIntValue(docid, 0));
imgManger.setImagefileid(Util.getIntValue(imagefileid, 0));
imgManger.setImagefilename(imagefilename);
imgManger.setimagefilewidth(0);
imgManger.setImagefileheight(0);
imgManger.setIsextfile("1");
imgManger.setImagefielsize(0);
imgManger.setVersionId(versionid);
imgManger.setOperatedate(operatedate);
imgManger.setOperatetime(operatetime);
imgManger.setOperateuserid(operateruserid);
imgManger.AddDocImageInfo();
}
/**
* @title createimagefile
* @author K1810015
* @updateTime 2022/3/11 15:05
* @Remark imagefile
* @throws
*/
public static void createimagefile(Map<String,Object> map){
String tablename = "imagefile";
String imagefileid = Utils.null2String(map.get("imagefileid"));
String imagefiletype = Utils.null2String(map.get("imagefiletype"));
String filesize = Utils.null2String(map.get("filesize"));
String imagefilename= Utils.null2String(map.get("imagefilename"));
String aescode=Utils.null2String(map.get("aescode"));
String tokenkey=Utils.null2String(map.get("tokenkey"));
String ftpconfigid=Utils.null2String(map.get("ftpconfigid"));
String isaesencrypt=Utils.null2String(map.get("isaesencrypt"));
String imagefileused=Utils.null2String(map.get("imagefileused"));
String iszip=Utils.null2String(map.get("iszip"));
String filerealpath=Utils.null2String(map.get("filerealpath"));
Map<String, String> filemap = new HashMap<>(11);
filemap.put("imagefileid", imagefileid);
filemap.put("imagefilename", imagefilename);
filemap.put("imagefiletype", imagefiletype);
filemap.put("imagefileused",imagefileused);
filemap.put("filerealpath",filerealpath);
filemap.put("iszip", iszip);
filemap.put("fileSize", filesize);
filemap.put("tokenkey",tokenkey);
filemap.put("aescode",aescode);
filemap.put("ftpconfigid",ftpconfigid);
filemap.put("isaesencrypt",isaesencrypt);
JAVATools.Excetesql(filemap, tablename);
}
}

@ -0,0 +1,202 @@
package com.engine.htxc.commonutil.fileutil;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.integration.util.StringUtils;
import com.engine.odoc.util.DocUtil;
import org.apache.http.client.methods.CloseableHttpResponse;
import org.apache.http.util.EntityUtils;
import weaver.conn.RecordSet;
import weaver.docs.docs.VersionIdUpdate;
import weaver.docs.qc969424.util.QC969424RequestBaseUtil;
import weaver.docs.qc969424.util.QC969424SyncauthRequestUtil;
import weaver.docs.qc969424.util.QC969424Util;
import weaver.general.TimeUtil;
import weaver.general.Util;
import javax.ws.rs.WebApplicationException;
import java.io.*;
import java.util.HashMap;
import java.util.Map;
import java.util.zip.ZipInputStream;
/**
* @author K1810015
* @version 1.0.0
* @ClassName GatewayUtil.java
* @createTime 20220623 11:22:00
* @Reamrk
*/
public class GatewayUtil {
private static DbTools dbtools=new DbTools();
public static String sendGateway(int imagefileid,String imagefilename){
String value="";
if( imagefileid<=0){
return "";
}
Map<String,Object> retmap= getImageFile(Util.null2String(imagefileid));
String realfilepath= Util.null2String(retmap.get("filerealpath"));
String iszip= Util.null2String(retmap.get("iszip"));
RecordSet rs = new RecordSet();
CloseableHttpResponse clresponse=null;
InputStream inputStream = null;
ZipInputStream zipInputStream = null;
try{
String upload = QC969424Util.getPV("upload");
String systemNo = QC969424Util.getPV("systemNo");
String url = upload+"/"+systemNo;
QC969424RequestBaseUtil qc = new QC969424RequestBaseUtil();
if (realfilepath != null && !"".equals(realfilepath))
{
File file = new File(realfilepath);
if(!file.exists())
{
throw new WebApplicationException(404);
}
if ("1".equals(iszip)) {
zipInputStream = new ZipInputStream(new FileInputStream(file));
if (zipInputStream.getNextEntry() != null) {
inputStream = new BufferedInputStream(zipInputStream);
}
} else {
inputStream = new BufferedInputStream(new FileInputStream(file));
}
clresponse= qc.doUpload(url,imagefilename,inputStream);
int statusCode = clresponse.getStatusLine().getStatusCode();
if(statusCode == 200)
{
String res = EntityUtils.toString(clresponse.getEntity());
if(!"".equals(res)){
String sql = " update imagefile set fileid=? where imagefileid=?";
rs.executeUpdate(sql,new Object[]{res,imagefileid});
value=res;
}
}
zipInputStream.close();
inputStream.close();;
//释放链接
clresponse.close();
}
}catch (Exception e) {
e.printStackTrace();
}finally {
try {
if(inputStream !=null){
inputStream.close();
}
} catch (IOException e) {
e.printStackTrace();
}
try {
if(clresponse !=null){
clresponse.close();
}
} catch (IOException e) {
e.printStackTrace();
}
}
return value;
}
public static Map<String,Object> getImageFile(String imagefileid){
String sql="select * from imagefile where imagefileid=?";
if(StringUtils.isBlank(imagefileid)){
return null;
}
return new DbTools().getsqltomap(sql,imagefileid);
}
public static String getWayToDocId(String fileid,String filename,int olddocid){
if(StringUtils.isBlank(fileid) || StringUtils.isBlank(filename) || olddocid<0){
return "";
}
int imagefileid=getWayToImageFileId(fileid,filename);
int newdocid=DocUtil.createDocFromAnother(olddocid);
if(imagefileid<0 || newdocid<0){
return "";
}
String docextendname="pdf";
if(filename.split(".").length>0){
docextendname=filename.split(".")[filename.split(".").length-1];
}
VersionIdUpdate versionIdUpdate = new VersionIdUpdate();
int versionid = versionIdUpdate.getVersionNewId();
Map<String,Object> docimagefilemap=new HashMap<>(5);
docimagefilemap.put("docid",newdocid);
docimagefilemap.put("imagefileid",imagefileid);
docimagefilemap.put("imagefilename",filename);
docimagefilemap.put("docextendname",docextendname);
docimagefilemap.put("versionid",versionid);
String operatedate = TimeUtil.getCurrentDateString();
String operatetime =TimeUtil.getOnlyCurrentTimeString();
docimagefilemap.put("operatedate",operatedate);
docimagefilemap.put("operatetime",operatetime);
docimagefilemap.put("uploaddate",operatedate+" "+operatetime);
FileUtil.createdocimagefile(docimagefilemap);
//关联操作
docLinkImageFile(newdocid,imagefileid,filename,fileid);
return Util.null2String(newdocid);
}
public static int getWayToImageFileId(String fileid,String filename){
int value=-1;
if(StringUtils.isBlank(fileid) || StringUtils.isBlank(filename)){
return value;
}
String token ="";
InputStream is=null;
boolean bool = QC969424Util.openQc969424();
if (bool) {
try {
QC969424RequestBaseUtil qC969424RequestBaseUtil = new QC969424RequestBaseUtil();
token = QC969424Util.getToken();
if (token == null || "".equals(token)) {
token= qC969424RequestBaseUtil.getToken();
}
QC969424SyncauthRequestUtil qC969424SyncauthRequestUtil = new QC969424SyncauthRequestUtil();
is = qC969424SyncauthRequestUtil.download(fileid);
if(is!=null){
value = DocUtil.saveImageFile(is, filename, "");
is.close();
}
}catch (Exception e){
}
}
return value;
}
private static void docLinkImageFile(int newdocid,int imagefileid,String imagefilename,String fileid){
if(newdocid<0 || imagefileid<=0 || StringUtils.isBlank(imagefilename) || StringUtils.isBlank(fileid)){
return ;
}
Map<String,String> docset=new HashMap<>(2);
docset.put("imagefileid",Util.null2String(imagefileid));
docset.put("imagefilename",imagefilename);
Map<String,String> docwhere=new HashMap<>(1);
docwhere.put("docid",Util.null2String(newdocid));
dbtools.updateSql("docimagefile",docset,docwhere);
//跟新imagefile
Map<String,String> imagefileset=new HashMap<>(1);
imagefileset.put("fileid",fileid);
Map<String,String> imagefilewhere=new HashMap<>(1);
imagefilewhere.put("imagefileid",Util.null2String(imagefileid));
dbtools.updateSql("imagefile",imagefileset,imagefilewhere);
//跟新docdetail
Map<String,String> docdetailset=new HashMap<>(1);
docdetailset.put("doctype","1");
Map<String,String> docdetailwhere=new HashMap<>(1);
docdetailwhere.put("id",Util.null2String(newdocid));
dbtools.updateSql("docdetail",docdetailset,docdetailwhere);
}
}

@ -0,0 +1,38 @@
package com.engine.htxc.commonutil.log;
import cn.hutool.core.date.DateTime;
import org.apache.log4j.Logger;
import weaver.general.BaseBean;
/**
* <p>log</p>
* @author K1810015
* @version 1.0.0
* @ClassName CustomizeLog.java
* @createTime 20220715 10:49:00
*/
public class CustomizeLog {
private CustomizeLog() {
}
public static void printLog(String value){
BaseBean bs =new BaseBean();
try {
Throwable throwable = new Throwable();
String classname = throwable.getStackTrace()[1].getClassName();
String methoadname = throwable.getStackTrace()[1].getMethodName();
String datetime=DateTime.now().toString("yyyy-MM-dd hh:mm:ss");
String logvalue=classname+"["+methoadname+"]"+":"+datetime+" "+value;
bs.writeLog(logvalue);
Logger.getLogger(CustomizeLog.class.getName()).info(logvalue);
}catch (Exception e){
/**
* @remark
*/
bs.writeLog(value);
}
}
}

@ -0,0 +1,60 @@
package com.engine.htxc.commonutil.ret;
import org.json.JSONObject;
/**
* <p></p>
* @author K1810015
* @version 1.0.0
* @ClassName Creturn.java
* @createTime 20220815 10:33:00
*/
public class Creturn {
/**
* @title Ok
* @author K1810015
* @updateTime 2022/8/15 10:40
* @Remark
*/
public static String Ok(String value){
JSONObject jsonobject=new JSONObject();
try {
jsonobject.put("status", "200");
jsonobject.put("data", value);
}catch (Exception e){
}
return jsonobject.toString();
}
/**
* @title Ok
* @author K1810015
* @updateTime 2022/8/15 10:40
* @Remark
*/
public static String Ok(boolean value){
JSONObject jsonobject=new JSONObject();
try {
jsonobject.put("status", "200");
jsonobject.put("data", value);
}catch (Exception e){
}
return jsonobject.toString();
}
public static String Fail(String value){
JSONObject jsonobject=new JSONObject();
try {
jsonobject.put("status", "400");
jsonobject.put("msg", value);
}catch (Exception e){
}
return jsonobject.toString();
}
}

@ -0,0 +1,26 @@
package com.engine.htxc.commonutil.type;
/**
* <p></p>
* ps:"yyyy-MM-dd" or "yyyy-MM-dd hh:mm:ss"
* @author K1810015
* @version 1.0.0
* @ClassName DateEnum.java
* @createTime 20220819 17:08:00
*/
public enum DateEnum {
ShortSuffix("yyyy-MM-dd"),
LongSuffix("yyyy-MM-dd hh:mi:ss");
private DateEnum(final String value) {
this.value=value;
}
public String getValue() {
return value;
}
private final String value;
}

@ -0,0 +1,40 @@
package com.engine.htxc.commonutil.user;
import com.api.formmode.page.util.Util;
import com.engine.htxc.commonutil.db.DbTools;
import weaver.hrm.User;
import java.io.Serializable;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName UserNew.java
* @createTime 20220624 11:11:00
*/
public class UserHt extends User implements Serializable {
public String getWorkcode() {
return workcode;
}
public void setWorkcode(String workcode) {
this.workcode = workcode;
}
public String workcode="";
public UserHt(int id){
super(id);
Map<String,Object> map= getmain(Util.null2String(id));
if(map==null || map.size()<=0){
return ;
}
setWorkcode(Util.null2String(map.get("workcode")));
}
private Map<String,Object> getmain(String id){
String sql=" select * from hrmresource where id=?";
return new DbTools().getsqltomap(sql,id);
}
}

@ -0,0 +1,43 @@
package com.engine.htxc.commonutil.user;
import com.api.formmode.page.util.Util;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.integration.util.StringUtils;
import weaver.hrm.User;
import java.io.Serializable;
import java.text.MessageFormat;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* <p></p>
* @author K1810015
* @version 1.0.0
* @ClassName UserNew.java
* @createTime 20220624 11:11:00
*/
public class UserTools {
private UserTools() {
}
private static String fileids="*";
private static DbTools dbtools=new DbTools();
public static List<Map<String,Object>> getUserInfo(String ids,String fileidvalue){
List<Map<String,Object>> list=new ArrayList<>();
if(StringUtils.isBlank(ids)){
return list;
}
if(!StringUtils.isBlank(fileidvalue)){
fileids=fileidvalue;
}
String sql="select {0} from hrmresource where id in ({1})";
return dbtools.getSqlToList(MessageFormat.format(sql,fileids,ids),(Object)null);
}
}

@ -0,0 +1,60 @@
package com.engine.htxc.commonutil.workflow;
import java.util.Map;
/**
* <p></p>
* @author K1810015
* @version 1.0.0
* @className CreateWkType.java
* @reateTime 20220715 15:00:00
*/
public class CreateWkType {
public String creatorId;
public String workflowId;
public String requestName;
public String isNextFlow;
public Map<String,String> requestMainMap;
public String getCreatorId() {
return creatorId;
}
public void setCreatorId(String creatorId) {
this.creatorId = creatorId;
}
public String getWorkflowId() {
return workflowId;
}
public void setWorkflowId(String workflowId) {
this.workflowId = workflowId;
}
public String getRequestName() {
return requestName;
}
public void setRequestName(String requestName) {
this.requestName = requestName;
}
public String getIsNextFlow() {
return isNextFlow;
}
public void setIsNextFlow(String isNextFlow) {
this.isNextFlow = isNextFlow;
}
public Map<String, String> getRequestMainMap() {
return requestMainMap;
}
public void setRequestMainMap(Map<String, String> requestMainMap) {
this.requestMainMap = requestMainMap;
}
}

@ -0,0 +1,179 @@
package com.engine.htxc.commonutil.workflow;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.commonutil.log.CustomizeLog;
import com.engine.integration.util.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.TimeUtil;
import weaver.general.Util;
import weaver.hrm.resource.ResourceComInfo;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import weaver.soa.workflow.request.MainTableInfo;
import weaver.soa.workflow.request.Property;
import weaver.soa.workflow.request.RequestInfo;
import weaver.soa.workflow.request.RequestService;
import weaver.workflow.request.RequestComInfo;
import weaver.workflow.workflow.WorkflowComInfo;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.function.Consumer;
/**
* <p></p>
* @author K1810015
* @version 1.0.0
* @ClassName WorkflowCreate.java
* @createTime 20220711 15:07:00
*/
public class WorkflowCreate extends BaseBean {
public WorkflowCreate() {
super();
}
private final DbTools dbtools=new DbTools();
public CreateWkType createWkType;
public String requestid = "";
private int maxlength=4000;
/**
* <p>WorkflowCreate</p>
* @title createWkType
* @author K1810015
* @updateTime 2022/8/17 20:00
*/
public static WorkflowCreate createWorkflow(Consumer<CreateWkType> consumer) {
WorkflowCreate workflowCreate=new WorkflowCreate();
workflowCreate.createWkType=new CreateWkType();
consumer.accept(workflowCreate.createWkType);
return workflowCreate;
}
/**
* <p></p>
* @title workflowCreateByRequestMap
* @author K1810015
* @updateTime 2022/8/17 20:06
*/
public WorkflowCreate workflowCreateByRequestMap()
{
if(createWkType==null ){
requestid= "-1";
return this;
}
RequestInfo requestInfo = new RequestInfo();
//创建人
requestInfo.setCreatorid(createWkType.creatorId);
//工作流Id
requestInfo.setWorkflowid(createWkType.workflowId);
//请求标题
requestInfo.setDescription(createWkType.requestName);
//是否提交到下一节点
if(StringUtils.isBlank(createWkType.isNextFlow))
{
requestInfo.setIsNextFlow("0");
}else{
requestInfo.setIsNextFlow(createWkType.isNextFlow);
}
//主表字段
MainTableInfo mainTableInfo = new MainTableInfo();
Property[] propertyArray = new Property[createWkType.requestMainMap.size()];
int p = 0;
for (Entry<String, String> entry : createWkType.requestMainMap.entrySet())
{
propertyArray[p] = new Property();
propertyArray[p].setName(Util.null2String(entry.getKey()));
propertyArray[p].setValue(Util.null2String(entry.getValue()));
writeLog("\r\n---p="+p+"---Key="+entry.getKey()+"---Value="+entry.getValue());
p++;
}
writeLog("-----创建流程传递的参数个数p="+p);
mainTableInfo.setProperty(propertyArray);
requestInfo.setMainTableInfo(mainTableInfo);
RequestService service = new RequestService();
try {
requestid = service.createRequest(requestInfo);
StringBuilder sbf = new StringBuilder("\r\n-----xwd创建工作流记录日志开始");
WorkflowComInfo wfcif =new WorkflowComInfo();
RequestComInfo rcif = new RequestComInfo();
ResourceComInfo rscif = new ResourceComInfo();
sbf.append("\r\n-----姓名:"+rscif.getLastname(rcif.getRequestCreater(requestid)));
sbf.append("\r\n-----时间:"+rcif.getRequestCreateTime(requestid));
sbf.append("\r\n-----创建流程:"+wfcif.getWorkflowname(createWkType.workflowId));
sbf.append("\r\n-----请求:"+rcif.getRequestname(requestid));
sbf.append("\r\n-----请求:"+requestid);
sbf.append("\r\n-----创建工作流记录日志结束");
CustomizeLog.printLog(sbf.toString());
} catch (Exception e) {
CustomizeLog.printLog("error:"+createWkType.toString());
}
return this;
}
/**
* <p></p>
* @title workflowCreatelist
* @author K1810015
* @param detailNo
* @param detailist (List)
* @updateTime 2022/8/17 20:08
*/
public WorkflowCreate workflowCreatelist(String detailNo, List< Map<String,String>> detailist)
{
if("".equals(detailNo)||detailist.isEmpty()){
return this;
}
String detailname= JAVATools.getdetailtable(requestid,detailNo);
String mainid= JAVATools.getMaintableid(requestid);
for ( Map<String,String> detailmap:detailist) {
excetesqlvoid(detailmap,detailname,mainid);
}
return this;
}
/**
* <p></p>
* @title excetesqlvoid
* @author K1810015
* @updateTime 2022/8/17 20:46
*/
private void excetesqlvoid( Map<String,String> mapvalue,String table,String mainid) {
mapvalue.put("mainid",mainid);
CustomizeLog.printLog("table"+table+"mapvalue:"+mapvalue.toString());
dbtools.insert(table,mapvalue);
}
/**
*<p></p>
* @title lengthmax
* @author K1810015
* @param value
* @updateTime 2022/8/17 19:41
*/
public String lengthmax(String value){
if(StringUtils.isBlank(value))
{
return "";
}
if(value.length()>=maxlength){
value=value.substring(0,maxlength-1);
}
return value;
}
}

@ -0,0 +1,298 @@
package com.engine.htxc.contract.cmd;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.common.util.ServiceUtil;
import com.engine.core.interceptor.CommandContext;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.commonutil.dept.DeptTools;
import com.engine.htxc.workflow.select.service.WorkflowSelectService;
import com.engine.htxc.workflow.select.service.impl.WorkflowSelectServiceImpl;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* <p></p>
*
* @author K1810015
* @version 1.0.0
* @ClassName workflowNextJudgeCmd.java
* @createTime 20220826 14:43:00
*/
public class WorkflowNextJudgeCmd extends AbstractCommonCommand<Map<String, Object>> {
public WorkflowNextJudgeCmd(Map<String, Object> params, User user) {
this.user = user;
this.params = params;
}
@Override
public BizLogContext getLogContext() {
return null;
}
DbTools dbtools=new DbTools();
public String jwfk="1";
Map<String,Object> mainmap=new HashMap<>();
Map<String,Object> flagmap=new HashMap<>();
List<String> moneylist=new ArrayList<>();
List<Map<String,Object>> detail1list=new ArrayList<>();
List<Map<String,Object>> detail2list=new ArrayList<>();
List<Map<String,Object>> detail4list=new ArrayList<>();
public Double moneysum=0D;
public PropBean pb=new PropBean();
private WorkflowSelectService workflowSelectService=
ServiceUtil.getService(WorkflowSelectServiceImpl.class);
@Override
public Map<String, Object> execute(CommandContext commandContext) {
Map<String,Object> result=new HashMap<>(2);
result.put("flag",false);
String requestid= Util.null2String(params.get("requestid"));
if(StringUtils.isBlank(requestid)){
return result;
}
mainmap=dbtools.getRequestidToMap(requestid,new ArrayList<>());
detail2list=dbtools.getRequestidToMapList(requestid,new ArrayList<>(),2);
detail1list=dbtools.getRequestidToMapList(requestid,new ArrayList<>(),1);
detail4list=dbtools.getRequestidToMapList(requestid,new ArrayList<>(),4);
detail4list.forEach((item)->{
if(!StringUtils.isBlank(Util.null2String(item.get("htzje")))){
moneylist.add(Util.null2String(item.get("htzje")));
}
if(!StringUtils.isBlank(Util.null2String(item.get("jwfk"))) && "0".equals(Util.null2String(item.get("jwfk")))){
jwfk="0";
}
});
moneysum= moneylist.stream().collect(Collectors.summingDouble(num->Util.getDoubleValue(num)));
flagmap.put("requestid",requestid);
flagmap.put("deptid","");
flagmap.put("isfreenode","1");
// 送财税管理岗(有金额合同&境外付款:是)满足条件展示并必送
if(!todofinanceflag()){
result.put("msg","3");
return result;
}
// 送预算管理岗(有合同金额&境外付款:否)满足条件展示并必送
if(!todobudgetflag())
{
result.put("msg","4");
return result;
}
// 送净资本分析员(合同金额>数字字典配置金额)满足条件展示并必送
if(!todoNetAssetsflag()){
result.put("msg","5");
return result;
}
// // 送合同审核员审批(必送节点)
if(!todoauditflag()){
result.put("msg","6");
return result;
}
//送金融产品代销岗审核(拟稿部门:资产托管部&印章:代销金融产品业务专业章)满足条件展示并必送
if(!todoFinancialproductflag()){
result.put("msg","7");
return result;
}
// 送工会主席审核(拟稿部门:党群||会签部门包含党群且送会签)
if(!todoUnionpresident()){
result.put("msg","8");
return result;
}
//送派驻纪检监察组审核(会签部门不为空)满足条件展示并必送
if(!todoMonitoringTeamflag()){
result.put("msg","9");
return result;
}
// 送执行秘书
if(!todoexecutiveSecretaryflag()){
result.put("msg","10");
return result;
}
result.put("flag",true);
return result;
}
/**
* <p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:04
*/
public boolean todofinanceflag(){
if(!"0".equals(jwfk) || moneysum<=0D){
return true;
}
flagmap.put("nodenumber","zbhtsp_csglg");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:11
*/
public boolean todobudgetflag() {
if(!"1".equals(jwfk) || moneysum<=0D){
return true;
}
flagmap.put("nodenumber","zbhtsp_ysglg");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoNetAssetsflag() {
Double vlaue=Util.getDoubleValue(new PropBean().getPropName("contract.datadicconfigamout"));
if(moneysum<vlaue){
return true;
}
flagmap.put("nodenumber","zbhtsp_jzbfxy");
return workflowSelectService.getnodeflag(flagmap);
// workflowSelectService.getnodeflag();
}
/**
* <p></p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoauditflag() {
flagmap.put("nodenumber","zbhtsp_htshy");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p></p>
* @title todoFinancialproductflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoFinancialproductflag() {
String deptid=Util.null2String(this.mainmap.get("szbm"));
String yz=Util.null2String(this.mainmap.get("yz"));
String jrcpyz=Util.null2String(pb.getPropName("eseal.code.jrcpyz"));
String jrcpbcode=Util.null2String(pb.getPropName("dept.code.cgtgb"));
if(StringUtils.isBlank(deptid) || StringUtils.isBlank(yz)){
return true;
}
List<String> deptcodelist=DeptTools.getidtocode(deptid);
if(!yz.equals(jrcpyz) || !deptcodelist.contains(jrcpbcode)){
return true;
}
flagmap.put("nodenumber","zbhtsp_jrcpdxg");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p></p>
* @title todoUnionpresident
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoUnionpresident() {
String deptid=Util.null2String(this.mainmap.get("szbm"));
String jrcpbcode=Util.null2String(pb.getPropName("dept.code.tq"));
if(StringUtils.isBlank(deptid) || StringUtils.isBlank(jrcpbcode)){
return true;
}
List<String> deptcodelist=DeptTools.getidtocode(deptid);
List<String> hqbmlistcodelist=DeptTools.getidtocode(deptid);
List<String> hqbmlist=new ArrayList<>();
if(detail2list!=null && !detail2list.isEmpty()){
detail2list.stream().forEach((item)->{
if(!StringUtils.isBlank(Util.null2String(item.get("hqbm")))){
hqbmlist.add(Util.null2String(item.get("hqbm")));
}
});
hqbmlistcodelist=DeptTools.getidtocode(hqbmlist.stream().distinct().collect(Collectors.joining(",")));
}
if(!deptcodelist.contains(jrcpbcode) && !hqbmlistcodelist.contains(jrcpbcode)){
return true;
}
flagmap.put("nodenumber","zbhtsp_ghzx");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoMonitoringTeamflag() {
if(detail2list!=null && detail2list.isEmpty()){
return true;
}
flagmap.put("nodenumber","zbhtsp_pzjjjcz");
return workflowSelectService.getnodeflag(flagmap);
}
/**
* <p></p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoexecutiveSecretaryflag() {
String ldsp=Util.null2String(this.mainmap.get("ldsp2"));
if(StringUtils.isBlank(ldsp)){
return true;
}
flagmap.put("nodenumber","zbhtsp_ldsp");
flagmap.put("userid",ldsp);
boolean flag= workflowSelectService.getnodeflag(flagmap);
flagmap.remove("userid");
if(flag){
flagmap.put("nodenumber","zbhtsp_zxmsg");
return workflowSelectService.getnodeflag(flagmap);
}
return flag;
}
/**
* <p></p></p>
* @title todofinanceflag
* @author K1810015
* @updateTime 2022/8/26 15:13
*/
public boolean todoesealflag() {
flagmap.put("nodenumber","zbhtsp_yy");
return workflowSelectService.getnodeflag(flagmap);
}
}

@ -0,0 +1,43 @@
package com.engine.htxc.contract.customsearch;
import java.util.*;
import lombok.extern.slf4j.Slf4j;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.formmode.customjavacode.AbstractCustomSqlConditionJavaCode;
/**
*
*
*
* class
* class
* java
* @author Administrator
*
*/
@Slf4j
public class CustomSearchTemplate extends AbstractCustomSqlConditionJavaCode {
/**
* SQL
* @param param
* param()
* user
*
* @return
* : t1.a = '1' and t1.b = '3' and t1.c like '%22%'
* t1
*/
public String generateSqlCondition(Map<String, Object> param) throws Exception {
User user = (User)param.get("user");
int usrId = user.getUID();
String sqlCondition = "t1.scbs != 1 and !(t1.zt = '7' and t1.modedatacreater !="+usrId+")";
log.info(sqlCondition);
return sqlCondition;
}
}

@ -0,0 +1,138 @@
package com.engine.htxc.contract.dao;
import com.engine.htxc.commonutil.db.EntityCrudUtil;
import com.engine.htxc.contract.dto.SecretLevelEnum;
import com.engine.htxc.contract.entity.CghtMainEntity;
import com.engine.htxc.contract.entity.UfHtqcDt1;
import com.engine.htxc.contract.entity.UfHtqcDt3;
import com.engine.htxc.contract.entity.UfHtqcDt4;
import com.engine.htxc.contract.number.entity.Uf_ContractNoAggr;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetTrans;
import weaver.formmode.setup.ModeRightInfo;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:00
* @Description: dao
* @ModifyLog:
**/
public class CghtDao {
private static final Logger logger= LoggerFactory.getLogger(CghtDao.class);
/**
* 0
*/
public static final int YYZT_0 = 0;
/**
* 0
*/
public static final String SL_0 = "0";
public static final String BHSJE_DEFAULT = "0.00";
public static final String UF_HTQC = "uf_htqc";
public static CghtMainEntity insertCghtqcMain(Uf_ContractNoAggr contractNo, CghtMainEntity cghtMainEntity){
//构造默认值
EntityCrudUtil.buildModeBaseAttributes(UF_HTQC,cghtMainEntity,CghtMainEntity.class);
buildDefaultCghtValue(cghtMainEntity);
final RecordSetTrans rst = new RecordSetTrans();
rst.setAutoCommit(false);
//插入数据
try {
EntityCrudUtil.transInsert(rst,UF_HTQC,cghtMainEntity,CghtMainEntity.class);
final int mainId = EntityCrudUtil.getModeDataIdByUuid(rst,UF_HTQC, cghtMainEntity.getModeuuid());
logger.info("----合同起草主表[uf_htqc] id:[{}] ",mainId);
if (mainId<0) {
throw new RuntimeException("插入主表[uf_htqc]数据失败");
}
cghtMainEntity.setId(mainId);
logger.info("合同信息保存成功,保存合同编号");
contractNo.setMbid(String.valueOf(cghtMainEntity.getId()));
EntityCrudUtil.transInsert(rst,"uf_contractnoaggr",contractNo,Uf_ContractNoAggr.class);
//插入明细表数据
insertDetails(rst, mainId);
//权限重构
logger.info("权限重构");
ModeRightInfo ModeRightInfo = new ModeRightInfo();
ModeRightInfo.setNewRight(true);
ModeRightInfo.editModeDataShare(cghtMainEntity.getQcr(), cghtMainEntity.getFormmodeid(), mainId);
rst.commit();
logger.info("插入数据成功,数据提交");
return cghtMainEntity;
} catch (Exception e) {
logger.error("插入数据失败,数据回滚",e);
rst.rollback();
}finally {
rst.setAutoCommit(true);
}
return null;
}
private static void insertDetails(RecordSetTrans rst, int mainId) throws Exception {
//明细表1
logger.info("插入明细表数据");
final UfHtqcDt1 ufHtqcDt1 = new UfHtqcDt1();
ufHtqcDt1.setYyzt(YYZT_0);
ufHtqcDt1.setMainid(mainId);
if(!EntityCrudUtil.transInsert(rst,"uf_htqc_dt1", ufHtqcDt1,UfHtqcDt1.class)){
throw new RuntimeException("插入明细表[uf_htqc_dt1]数据失败");
}
//明细表3
final UfHtqcDt3 ufHtqcDt3 = new UfHtqcDt3();
ufHtqcDt3.setYyzt(YYZT_0);
ufHtqcDt3.setMainid(mainId);
if(!EntityCrudUtil.transInsert(rst,"uf_htqc_dt3",ufHtqcDt3,UfHtqcDt3.class)){
throw new RuntimeException("插入明细表[uf_htqc_dt3]]数据失败");
}
////明细表4
final UfHtqcDt4 ufHtqcDt4 = new UfHtqcDt4();
ufHtqcDt4.setSl(SL_0);
ufHtqcDt4.setMainid(mainId);
ufHtqcDt4.setBhsje(BHSJE_DEFAULT);
if(!EntityCrudUtil.transInsert(rst,"uf_htqc_dt4",ufHtqcDt4,UfHtqcDt4.class)){
throw new RuntimeException("插入明细表[uf_htqc_dt4]数据失败");
}
}
private static CghtMainEntity buildDefaultCghtValue(CghtMainEntity cghtMainEntity){
LocalDateTime now = LocalDateTime.now();
cghtMainEntity.setQcrq(now.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")));
cghtMainEntity.setSfwdsf("0");
cghtMainEntity.setSfxjwfk(1);
cghtMainEntity.setDqbb(1);
cghtMainEntity.setHtjexz(0);
cghtMainEntity.setSfsw(1);
cghtMainEntity.setBz(0);
cghtMainEntity.setZt(0);
cghtMainEntity.setSfsymbfb(0);
cghtMainEntity.setBmdj(SecretLevelEnum.NORMAL_BUSINESS_SECRET.ordinal());
cghtMainEntity.setSflx(1);
cghtMainEntity.setHtxz(0);
cghtMainEntity.setModedatacreater(cghtMainEntity.getQcr());
cghtMainEntity.setFhtlx(getParentCategory(cghtMainEntity.getHtlx()));
return cghtMainEntity;
}
public static String getParentCategory(String category){
final RecordSet rs=new RecordSet();
rs.executeQuery("select s.SJFL from uf_type_of_contract s where s.BZSM=?",category);
if(rs.next()){
return rs.getString(1);
}
return "";
}
}

@ -0,0 +1,280 @@
package com.engine.htxc.contract.dao;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.commonutil.db.EntityCrudUtil;
import com.engine.htxc.contract.dto.CounterPartyDTO;
import com.engine.htxc.contract.dto.UserDeptInfoDTO;
import com.engine.htxc.contract.entity.UfOtcdertra;
import com.engine.htxc.contract.entity.UserEntity;
import com.engine.integration.util.StringUtils;
import lombok.extern.slf4j.Slf4j;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetTrans;
import java.util.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:02
* @Description: dao
* @ModifyLog:
**/
@Slf4j
public class ContractDao {
public static final DbTools dbtools=new DbTools();
/**
*
* @param codes
* @return
*/
public static List<String> selectCounterPartyByCertCode(List<String> codes){
if(codes==null||codes.isEmpty()){
return Collections.emptyList();
}
String sql="select dsfbm from uf_dsfgl t,uf_dsfgl_dt1 d where d.mainid=t.id and d.zjhm in ('"+ String.join("','", codes) +"')";
final RecordSet recordSet = new RecordSet();
recordSet.executeQuery(sql);
List<String> result=new ArrayList<>();
while (recordSet.next()){
result.add(recordSet.getString("dsfbm"));
}
return result;
}
/**
* id
* @param uuid
* @return
*/
public static int getDataIdByUuid(RecordSetTrans rst,String uuid) throws Exception {
rst.executeQuery("select id from UF_OTCDERTRA where modeuuid=? ", uuid);
if (rst.next()) {
return rst.getInt("id");
}
return -1;
}
public static Map<String, String> getUserByWorkcodeAndDeptCode(String workcode, String deptCode){
String sql="select r.id as userid,r.lastname as username,r.telephone as telephone,r.email as email,r.departmentid as departmentid,r.workcode as workcode,d.departmentname as departmentname ,d.departmentcode as departmentcode from HRMRESOURCE r,hrmdepartment d where r.departmentid=d.id and workcode=? and DEPARTMENTCODE=? ";
final RecordSet rs = new RecordSet();
final Map<String, String> result = new HashMap<>();
rs.executeQuery(sql,workcode,deptCode);
if (rs.next()) {
for (String s : rs.getColumnName()) {
result.put(s,rs.getString(s));
}
}
return result;
}
/**
*
* @param userDeptInfoDTOS
* @return
*/
public static List<UserEntity> getUsersByWorkcodeAndDeptCodeList(List<UserDeptInfoDTO> userDeptInfoDTOS) {
String sql="select w.jobtitlecode as jobcode,r.loginid,r.id as userid,r.lastname as username,r.telephone as telephone,r.email as email,r.departmentid as departmentid,r.workcode as workcode,d.departmentname as departmentname ,d.departmentcode as departmentcode from HRMRESOURCE r,hrmdepartment d,hrmjobtitles w where r.departmentid=d.id and w.id=r.jobtitle and (workcode,DEPARTMENTCODE) in (%s)";
sql = String.format(sql, String.join(",", Collections.nCopies(userDeptInfoDTOS.size(), "(?,?)")));
List<Object> params=new ArrayList<>(userDeptInfoDTOS.size()*2);
for (UserDeptInfoDTO userDeptInfoDTO : userDeptInfoDTOS) {
params.add(userDeptInfoDTO.getUserCode());
params.add(userDeptInfoDTO.getDeptCode());
}
return EntityCrudUtil.selectList(sql,UserEntity.class,params);
}
/**
*
* @param deptId
* @return
*/
public static String getDeptAbbrByDeptId(int deptId){
RecordSet rs = new RecordSet();
// 获取部门id
String sql = "select docnumabbreviation from hrmdepartmentdefined where deptid=?";
rs.executeQuery(sql,deptId);
if (rs.next()) {
return rs.getString("docnumabbreviation");
}
return "";
}
/**
*
* @param deptAbbr
* @param year
* @param prefix
* @return
*/
public static int getMaxNum(String deptAbbr, String year, String prefix) {
final RecordSet rs = new RecordSet();
rs.executeQuery("select max(zzbh)+1 as zzbh from uf_ContractNoAggr where qz=? and year=? and zzjgjc=?", prefix, year, deptAbbr);
if(rs.next()){
return Math.max(rs.getInt("zzbh"),1);
}else{
return -1;
}
}
public static void updateUfOtcdertraFiles(RecordSetTrans rst, UfOtcdertra contractMain) throws Exception {
rst.executeUpdate("update uf_otcdertra set htzw=?,htfj=? where id=? ", contractMain.getHtzw(), contractMain.getHtfj(), contractMain.getId());
}
public static boolean checkTemplateNo(String templateNo){
final RecordSet rs = new RecordSet();
rs.executeQuery(" SELECT count(b.id) c FROM docimagefile a ,uf_wdzx b,imagefile c ,uf_wdzx_dt1 d where a.imagefileid=b.wj and a.imagefileid=c.imagefileid and b.id=d.mainid and d.zt=1 and b.mbbh=?",templateNo);
if(rs.next()){
return rs.getInt("c")>0;
}
return false;
}
public static List<Integer> findCounterparty(List<CounterPartyDTO> counterPartyDTOS){
String sql="select a.id from uf_dsfgl a , uf_dsfgl_dt1 b where b.mainid=a.id and (b.zjlx,b.zjhm) in (%s)";
sql = String.format(sql, String.join(",", Collections.nCopies(counterPartyDTOS.size(), "(?,?)")));
List<String> params=new ArrayList<>(counterPartyDTOS.size()*2);
for (CounterPartyDTO counterPartyDTO : counterPartyDTOS) {
params.add(counterPartyDTO.getCertType());
params.add(counterPartyDTO.getCertNo());
}
final RecordSet rs = new RecordSet();
rs.executeQuery(sql,params);
List<Integer> result=new ArrayList<>();
while (rs.next()){
result.add(rs.getInt("id"));
}
return result;
}
public static List<String> findContractSeal(List<String> seals){
String sql="select id from uf_ContractSeal where yzbh in (%s)";
sql=String.format(sql, String.join(",", Collections.nCopies(seals.size(), "?")));
final RecordSet rs = new RecordSet();
rs.executeQuery(sql,seals);
List<String> result=new ArrayList<>();
while (rs.next()){
result.add(rs.getString("id"));
}
return result;
}
public static boolean checkCategory(String categeryId) {
final RecordSet rs = new RecordSet();
rs.executeQuery("select count(id) c from uf_type_of_contract where bzsm=?",categeryId);
if(rs.next()){
return rs.getInt(1)>0;
}
return false;
}
/**
*
* @title getSealNocount
* @author K1810015
* @updateTime 2022/9/2 17:23
*/
public static String getSealCount(String tablename,String htbh){
if(StringUtils.isBlank(tablename) && StringUtils.isBlank(htbh)){
return "";
}
String sql="select wm_concat_old(yz) as yz from "+ tablename+" where 1=1 and htbh in ("+ Arrays.stream(htbh.split(",")).map(item->"\'"+item+"\'").collect(Collectors.joining(","))+")";
return dbtools.getsqlonevalue(sql);
}
/**
* jobCodejobCodejobCode
* @param userDeptInfoDTOS
* @return
*/
public static List<UserEntity> getUsersByWorkcodeAndJobCodeList(List<UserDeptInfoDTO> userDeptInfoDTOS){
final List<UserEntity> users = getUsersByWorkcodeAndDeptCodeList(userDeptInfoDTOS);
//按工号收集用户
Map<String, List<UserEntity>> userMap = getUserMap(users);
//按工号收集岗位
Map<String, String> userJobCodeMap = getUserJobCodeMap(userDeptInfoDTOS);
return getUserEntityList(userJobCodeMap, userMap);
}
private static Map<String, String> getUserJobCodeMap(List<UserDeptInfoDTO> userDeptInfoDTOS) {
Map<String,String> userJobCodeMap=new HashMap<>();
for (UserDeptInfoDTO userDeptInfoDTO : userDeptInfoDTOS) {
userJobCodeMap.put(userDeptInfoDTO.getUserCode(),userDeptInfoDTO.getJobCode());
}
return userJobCodeMap;
}
private static Map<String, List<UserEntity>> getUserMap(List<UserEntity> users) {
Map<String,List<UserEntity>> userMap=new HashMap<>();
for (UserEntity user : users) {
List<UserEntity> userAccountList = userMap.get(user.getWorkcode());
if(null== userAccountList){
userAccountList= new ArrayList<>();
userMap.put(user.getWorkcode(),userAccountList);
}
userAccountList.add(user);
}
return userMap;
}
private static List<UserEntity> getUserEntityList(Map<String, String> userJobCodeMap, Map<String, List<UserEntity>> userMap) {
//根据工号和部门查询 查到单个账号直接选择多个账号若传有jobCode根据jobCode查询没有jobCode默认选主岗 ,若该部门没有主岗多个都是兼岗都不取 校验时报错
List<UserEntity> userEntityList=new ArrayList<>();
for (Map.Entry<String, List<UserEntity>> userEntry : userMap.entrySet()) {
final List<UserEntity> userEntities = userEntry.getValue();
//单个直接取
if(userEntities.size()==1){
userEntityList.add(userEntities.get(0));
}else{
log.info("工号[{}]查到[{}]个账号",userEntry.getKey(),userEntities.size());
//多个账号若有jobCode根据jobCode查询没有传jobCode选择主岗 否则出错
UserEntity userEntity = findUserWithJobCodeOrMajorPosition(userEntry.getKey(),userEntities, userJobCodeMap);
if(null!=userEntity){
userEntityList.add(userEntity);
}else{
log.error("工号[{}]查询账号出错",userEntry.getKey());
}
}
}
return userEntityList;
}
private static UserEntity findUserWithJobCodeOrMajorPosition(String userCode,List<UserEntity> userEntities, Map<String,String> userJobCodeMap) {
final String jobCode = userJobCodeMap.get(userCode);
if(!StringUtils.isBlank(jobCode)){
log.info("工号[{}]传入岗位:[{}]",userCode,jobCode);
for (UserEntity userEntity : userEntities) {
if(userEntity.getJobCode().equals(jobCode)){
return userEntity;
}
}
}
log.info("工号[{}]查询主岗",userCode);
//没有传jobCode选择主岗
return findMajorPositionUser(userEntities);
}
private static UserEntity findMajorPositionUser(List<UserEntity> userEntities) {
for (UserEntity userEntity : userEntities) {
//工号和登录号相等是主岗
if(userEntity.getWorkcode().equals(userEntity.getLoginid())){
return userEntity;
}
}
return null;
}
}

@ -0,0 +1,82 @@
package com.engine.htxc.contract.dao;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.contract.util.ContractUtil;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import java.util.HashMap;
import java.util.Map;
/**
* <p></p>
* @author K1810015
* @version 1.0.0
* @ClassName ContractModeDao.java
* @createTime 20220831 20:33:00
*/
public class ContractModeDao {
private DbTools dbtools=new DbTools();
public Map<String,Object> modemap=new HashMap<>();
public String modeid="";
public String modetable="";
/**
*
* */
private boolean flag=false;
public ContractModeDao(String htlx,String id) {
inittable(htlx);
if(!flag || StringUtils.isBlank(id)){
return ;
}
Map<String,String> wheremap=new HashMap<>();
wheremap.put("id",id);
modemap=dbtools.gettabletomap(modetable,wheremap);
}
public ContractModeDao(String htlx,String htbh,String htbb) {
inittable(htlx);
if(!flag || StringUtils.isBlank(htbh) || StringUtils.isBlank(htbb)){
return ;
}
Map<String,String> wheremap=new HashMap<>();
wheremap.put("htbh",htbh);
wheremap.put("dqbb",htbb);
modemap=dbtools.gettabletomap(modetable,wheremap);
if(modemap!=null && !modemap.isEmpty()){
modeid= Util.null2String(modemap.get("id"));
}
}
public boolean updateMode(Map<String,String> setmap){
if(!flag){
return false;
}
if(setmap==null || setmap.isEmpty()){
return false;
}
if(StringUtils.isBlank(modeid) || StringUtils.isBlank(modetable)){
return false;
}
Map<String,String> wheremap=new HashMap<>(1);
wheremap.put("id",modeid);
return dbtools.updateSql(modetable,setmap,wheremap);
}
private void inittable(String htlx){
if(StringUtils.isBlank(htlx) ){
return ;
}
modetable= ContractUtil.getContractTableName(htlx);
if(!StringUtils.isBlank(modetable)){
flag=true;
}
}
}

@ -0,0 +1,53 @@
package com.engine.htxc.contract.dao;
import com.engine.htxc.contract.entity.UfProduct;
import com.engine.htxc.contract.entity.UfProductCounterParty;
import org.apache.commons.lang.StringUtils;
import weaver.conn.RecordSet;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2315:55
* @Description: dao
* @ModifyLog:
**/
public class ProductDao {
public static UfProduct selectProductByProductId(String productId){
if (StringUtils.isEmpty(productId)) {
return null;
}
String sql="select id,requestid,productid,productname from uf_product where productid=?";
final RecordSet recordSet = new RecordSet();
recordSet.executeQuery(sql,productId);
if(recordSet.next()){
return null;
}
final UfProduct ufProduct = new UfProduct();
ufProduct.setId(recordSet.getInt("id"));
ufProduct.setProductname(recordSet.getString("productname"));
ufProduct.setProductid(recordSet.getString("productid"));
return ufProduct;
}
public static UfProductCounterParty selectUfProductCounterpartyByProductid(String productid){
if(StringUtils.isBlank(productid)){
return null;
}
String sql="select id,requestid,productid,socialcreditcode from uf_prodcontrelation where productid=?";
final RecordSet recordSet = new RecordSet();
recordSet.executeQuery(sql,productid);
final boolean next = recordSet.next();
if(!next){
return null;
}
final UfProductCounterParty ufProductCounterParty = new UfProductCounterParty();
ufProductCounterParty.setId(recordSet.getInt("id"));
ufProductCounterParty.setRequestid(recordSet.getInt("requestid"));
ufProductCounterParty.setProductid(recordSet.getString("productid"));
ufProductCounterParty.setSocialcreditcode(recordSet.getString("socialcreditcode"));
return ufProductCounterParty;
}
}

@ -0,0 +1,21 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:10
* @Description:
* @ModifyLog:
**/
public enum ConcerningForeignEnum {
/**
*
*/
CONCERNING_FOREIGN,
/**
*
*/
NO_CONCERNING_FOREIGN
}

@ -0,0 +1,183 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
import java.util.List;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:39
* @Description:
* @ModifyLog:
**/
public class ContractDetailDTO implements Serializable {
/**
*
*/
private String contractName;
/**
*
*/
private List<CounterPartyDTO> counterPartyList;
/**
*
*/
private List<String> productCodeList;
/**
*
*/
private List<ContractFileDTO> mainFileList;
/**
*
*/
private List<ContractFileDTO> attachedFileList;
/**
*
*/
private List<String> seals;
/**
*
*
*/
private String contractComment;
/**
* LOCAL /NORMAL /EXAMPLE
*
*/
private String textSource;
/**
* 使
*
*/
private String unusedTextReason;
/**
*
*/
private String userCode;
/**
*
*/
private String userDeptCode;
/**
*
*/
private String templateNo;
public String getContractName() {
return contractName;
}
public void setContractName(String contractName) {
this.contractName = contractName;
}
public List<CounterPartyDTO> getCounterPartyList() {
return counterPartyList;
}
public void setCounterPartyList(List<CounterPartyDTO> counterPartyList) {
this.counterPartyList = counterPartyList;
}
public List<String> getProductCodeList() {
return productCodeList;
}
public void setProductCodeList(List<String> productCodeList) {
this.productCodeList = productCodeList;
}
public List<ContractFileDTO> getMainFileList() {
return mainFileList;
}
public void setMainFileList(List<ContractFileDTO> mainFileList) {
this.mainFileList = mainFileList;
}
public List<ContractFileDTO> getAttachedFileList() {
return attachedFileList;
}
public void setAttachedFileList(List<ContractFileDTO> attachedFileList) {
this.attachedFileList = attachedFileList;
}
public List<String> getSeals() {
return seals;
}
public void setSeals(List<String> seals) {
this.seals = seals;
}
public String getContractComment() {
return contractComment;
}
public void setContractComment(String contractComment) {
this.contractComment = contractComment;
}
public String getTextSource() {
return textSource;
}
public void setTextSource(String textSource) {
this.textSource = textSource;
}
public String getUnusedTextReason() {
return unusedTextReason;
}
public void setUnusedTextReason(String unusedTextReason) {
this.unusedTextReason = unusedTextReason;
}
public String getUserCode() {
return userCode;
}
public void setUserCode(String userCode) {
this.userCode = userCode;
}
public String getUserDeptCode() {
return userDeptCode;
}
public void setUserDeptCode(String userDeptCode) {
this.userDeptCode = userDeptCode;
}
public String getTemplateNo() {
return templateNo;
}
public void setTemplateNo(String templateNo) {
this.templateNo = templateNo;
}
@Override
public String toString() {
return "ContractDetailDTO{" + "contractName='" + contractName + '\'' + ", counterPartyList=" + counterPartyList
+ ", productCodeList=" + productCodeList + ", mainFileList=" + mainFileList + ", attachedFileList="
+ attachedFileList + ", seals=" + seals + ", contractComment='" + contractComment + '\'' + ", textSource='"
+ textSource + '\'' + ", unusedTextReason='" + unusedTextReason + '\'' + ", userCode='" + userCode + '\''
+ ", userDeptCode='" + userDeptCode + '\'' + ", templateNo='" + templateNo + '\'' + '}';
}
}

@ -0,0 +1,123 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:40
* @Description:
* @ModifyLog:
**/
public class ContractFileDTO implements Serializable {
/**
*
*/
private String fileName;
/**
*
*/
private String fileId;
/**
*
*/
private String suffix;
/**
* ,,,
*/
private String sealMethod;
/**
* ,,
*/
private String esealMethod;
/**
* ,
*/
private String printBothSide;
/**
* :
*/
private Integer printCount;
/**
* :
*/
private Integer physicalSealCount;
public String getFileName() {
return fileName;
}
public void setFileName(String fileName) {
this.fileName = fileName;
}
public String getFileId() {
return fileId;
}
public void setFileId(String fileId) {
this.fileId = fileId;
}
public String getSuffix() {
return suffix;
}
public void setSuffix(String suffix) {
this.suffix = suffix;
}
public String getSealMethod() {
return sealMethod;
}
public void setSealMethod(String sealMethod) {
this.sealMethod = sealMethod;
}
public String getEsealMethod() {
return esealMethod;
}
public void setEsealMethod(String esealMethod) {
this.esealMethod = esealMethod;
}
public String getPrintBothSide() {
return printBothSide;
}
public void setPrintBothSide(String printBothSide) {
this.printBothSide = printBothSide;
}
public Integer getPrintCount() {
return printCount;
}
public void setPrintCount(Integer printCount) {
this.printCount = printCount;
}
public Integer getPhysicalSealCount() {
return physicalSealCount;
}
public void setPhysicalSealCount(Integer physicalSealCount) {
this.physicalSealCount = physicalSealCount;
}
@Override
public String toString() {
return "ContractFileDTO{" + "fileName='" + fileName + '\'' + ", fileId='" + fileId + '\'' + ", suffix='"
+ suffix + '\'' + ", sealMethod='" + sealMethod + '\'' + ", esealMethod='" + esealMethod + '\''
+ ", printBothSide='" + printBothSide + '\'' + ", printCount=" + printCount + ", physicalSealCount="
+ physicalSealCount + '}';
}
}

@ -0,0 +1,20 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:14
* @Description: ,
* @ModifyLog:
**/
public enum ContractNatureEnum {
/**
*
*/
MAIN_CONTRACT,
/**
*
*/
SUPPLEMENTARY_AGREEMENT
}

@ -0,0 +1,177 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
import java.util.List;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:40
* @Description:
* @ModifyLog:
**/
public class ContractProcessDTO implements Serializable {
/**
*
*/
private String sysCode;
/**
*
*/
private String moduleCode;
/**
*
*/
private List<ContractDetailDTO> contractList;
/**
*
*/
private String processTitle;
/**
*
*/
private String userCode;
/**
*
*/
private String userDeptCode;
/**
*
*/
private String telephone;
/**
*
*/
private String contractCategoryId;
/**
* id
*/
private List<UserDeptInfoDTO> noticeReaderIds;
/**
*
*/
private List<UserDeptInfoDTO> internalAuditIds;
/**
*
*/
private List<UserDeptInfoDTO> deptHeadIds;
/**
*
*/
private Boolean autoSealFlag;
public String getSysCode() {
return sysCode;
}
public void setSysCode(String sysCode) {
this.sysCode = sysCode;
}
public String getModuleCode() {
return moduleCode;
}
public void setModuleCode(String moduleCode) {
this.moduleCode = moduleCode;
}
public String getProcessTitle() {
return processTitle;
}
public void setProcessTitle(String processTitle) {
this.processTitle = processTitle;
}
public String getUserCode() {
return userCode;
}
public void setUserCode(String userCode) {
this.userCode = userCode;
}
public String getUserDeptCode() {
return userDeptCode;
}
public void setUserDeptCode(String userDeptCode) {
this.userDeptCode = userDeptCode;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
public String getContractCategoryId() {
return contractCategoryId;
}
public void setContractCategoryId(String contractCategoryId) {
this.contractCategoryId = contractCategoryId;
}
public List<UserDeptInfoDTO> getNoticeReaderIds() {
return noticeReaderIds;
}
public void setNoticeReaderIds(List<UserDeptInfoDTO> noticeReaderIds) {
this.noticeReaderIds = noticeReaderIds;
}
public List<UserDeptInfoDTO> getInternalAuditIds() {
return internalAuditIds;
}
public void setInternalAuditIds(List<UserDeptInfoDTO> internalAuditIds) {
this.internalAuditIds = internalAuditIds;
}
public List<UserDeptInfoDTO> getDeptHeadIds() {
return deptHeadIds;
}
public void setDeptHeadIds(List<UserDeptInfoDTO> deptHeadIds) {
this.deptHeadIds = deptHeadIds;
}
public List<ContractDetailDTO> getContractList() {
return contractList;
}
public void setContractList(List<ContractDetailDTO> contractList) {
this.contractList = contractList;
}
public Boolean getAutoSealFlag() {
return autoSealFlag;
}
public void setAutoSealFlag(Boolean autoSealFlag) {
this.autoSealFlag = autoSealFlag;
}
@Override
public String toString() {
return "ContractProcessDTO{" + "sysCode='" + sysCode + '\'' + ", moduleCode='" + moduleCode + '\''
+ ", contractList=" + contractList + ", processTitle='" + processTitle + '\'' + ", userCode='" + userCode
+ '\'' + ", userDeptCode='" + userDeptCode + '\'' + ", telephone='" + telephone + '\''
+ ", contractCategoryId='" + contractCategoryId + '\'' + ", noticeReaderIds=" + noticeReaderIds
+ ", internalAuditIds=" + internalAuditIds + ", deptHeadIds=" + deptHeadIds + ", autoSealFlag="
+ autoSealFlag + '}';
}
}

@ -0,0 +1,31 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:16
* @Description:
* @ModifyLog:
**/
public enum ContractStatusEnum {
//0草稿
DRAFT,
//1待审批
TO_APPROVE,
//2审批中
APPROVING,
//3待签订
TO_SIGN,
//4已签订
SIGN_FINISH,
//5废弃中
DISCARDING,
//6已废弃
DISCARD_FINISH,
//7履约中
PERFORMING,
//8履约完成,
PERFORM_FINISH
}

@ -0,0 +1,46 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:40
* @Description:
* @ModifyLog:
**/
public class CounterPartyDTO implements Serializable {
/**
*
*/
private String certType;
/**
*
*/
private String certNo;
public String getCertType() {
return certType;
}
public void setCertType(String certType) {
this.certType = certType;
}
public String getCertNo() {
return certNo;
}
public void setCertNo(String certNo) {
this.certNo = certNo;
}
@Override
public String toString() {
return "CounterPartyDTO{" + "certType='" + certType + '\'' + ", certNo='" + certNo + '\'' + '}';
}
}

@ -0,0 +1,38 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/9/6 9:48
* @Description:
* @ModifyLog:
**/
public enum CurrencyEnum {
/**
CNY
*/
CNY,
/**
* HKD
*/
HKD,
/**
* USD
*/
USD,
/**
* EUR
*/
EUR,
/**
* GBP
*/
GBP,
/**
* JPY
*/
JPY
}

@ -0,0 +1,31 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:41
* @Description:
* @ModifyLog:
**/
public enum EsealMethodEnum {
// 电子件,防伪打印件,对手方电子件,双方在线签署
/**
*
*/
E_FILE,
/**
*
*/
RXF_FILE,
/**
*
*/
OPPOSITE_E_FILE,
/**
* 线
*/
ONLINE_SIGN
}

@ -0,0 +1,22 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2914:33
* @Description:
* @ModifyLog:
**/
public enum ModuleCodeEnum {
/**
*
*/
NORMAL,
/**
* 线
*/
ONLINE
}

@ -0,0 +1,22 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:41
* @Description:
* @ModifyLog:
**/
public enum PrintSideEnum {
// 单面打印,双面打印
/**
*
*/
SINGLE,
/**
*
*/
BOTH
}

@ -0,0 +1,45 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:41
* @Description:
* @ModifyLog:
**/
public class ProcessInfoDTO implements Serializable {
/**
* id
*/
private String requestId;
/**
*
*/
private String workflowNo;
public String getRequestId() {
return requestId;
}
public void setRequestId(String requestId) {
this.requestId = requestId;
}
public String getWorkflowNo() {
return workflowNo;
}
public void setWorkflowNo(String workflowNo) {
this.workflowNo = workflowNo;
}
@Override
public String toString() {
return "ProcessInfoDTO{" + "requestId='" + requestId + '\'' + ", workflowNo='" + workflowNo + '\'' + '}';
}
}

@ -0,0 +1,97 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 16:57
* @Description:
* @ModifyLog:
**/
public class ProductCounterPartyDTO implements Serializable {
/**
*
*/
private String productName;
/**
*
*/
private String productCode;
/**
*
*/
private String certType;
/**
*
*/
private String certNo;
/**
*
*/
private String counterPartyName;
/**
*
*/
private String counterPartyType;
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public String getProductCode() {
return productCode;
}
public void setProductCode(String productCode) {
this.productCode = productCode;
}
public String getCertType() {
return certType;
}
public void setCertType(String certType) {
this.certType = certType;
}
public String getCertNo() {
return certNo;
}
public void setCertNo(String certNo) {
this.certNo = certNo;
}
public String getCounterPartyName() {
return counterPartyName;
}
public void setCounterPartyName(String counterPartyName) {
this.counterPartyName = counterPartyName;
}
public String getCounterPartyType() {
return counterPartyType;
}
public void setCounterPartyType(String counterPartyType) {
this.counterPartyType = counterPartyType;
}
@Override
public String toString() {
return "ProductCounterPartyDTO{" + "productName='" + productName + '\'' + ", productCode='" + productCode + '\''
+ ", certType='" + certType + '\'' + ", certNo='" + certNo + '\'' + ", counterPartyName='"
+ counterPartyName + '\'' + ", counterPartyType='" + counterPartyType + '\'' + '}';
}
}

@ -0,0 +1,18 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2317:07
* @Description:
* @ModifyLog:
**/
public enum ProductCounterpartyEnum {
CREATE_SUCCESS,
PRODUCT_EXIST,
COUNTERPARTY_EXIST,
PRODUCT_COUNTERPARTY_EXIST,
PRODUCT_OTHER_COUNTERPARTY_EXIST
}

@ -0,0 +1,45 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:18
* @Description: DTO
* @ModifyLog:
**/
public class ProductInfoDTO implements Serializable {
/**
*
*/
private String productName;
/**
* id;
*/
private String productId;
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public String getProductId() {
return productId;
}
public void setProductId(String productId) {
this.productId = productId;
}
@Override
public String toString() {
return "ProductInfoDTO{" + "productName='" + productName + '\'' + ", productId='" + productId + '\'' + '}';
}
}

@ -0,0 +1,30 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:43
* @Description:
* @ModifyLog:
**/
public enum SealMethodEnum {
// 电子用印,物理用印,物理和电子,不用印
/**
*
*/
E_SEAL,
/**
*
*/
PHYSIC_SEAL,
/**
*
*/
E_PHYSIC_SEAL,
/**
*
*/
NO_SEAL
}

@ -0,0 +1,19 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:19
* @Description: ,,,
* @ModifyLog:
**/
public enum SecretLevelEnum {
NORMAL_BUSINESS_SECRET,
CORE_BUSINESS_SECRET,
EXTERNAL_PUBLIC,
INTERNAL_PUBLIC,
}

@ -0,0 +1,26 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/23 10:43
* @Description:
* @ModifyLog:
**/
public enum TextSourceEnum {
/**
*
*/
LOCAL,
/**
*
*/
STANDARD,
/**
*
*/
EXAMPLE
}

@ -0,0 +1,25 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:21
* @Description:   
* @ModifyLog:
**/
public enum UrgencyEum {
/**
*
*/
NORMAL,
/**
*
*/
URGENT,
/**
*
*/
EXTRA_URGENT
}

@ -0,0 +1,21 @@
package com.engine.htxc.contract.dto;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:22
* @Description: 使
* @ModifyLog:
**/
public enum UseTextEnum {
/**
* 使
*/
USE_TEXT,
/**
* 使
*/
NO_TEXT
}

@ -0,0 +1,48 @@
package com.engine.htxc.contract.dto;
import java.io.Serializable;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2913:30
* @Description:
* @ModifyLog:
**/
public class UserDeptInfoDTO implements Serializable {
private String userCode;
private String deptCode;
private String jobCode;
public String getUserCode() {
return userCode;
}
public void setUserCode(String userCode) {
this.userCode = userCode;
}
public String getDeptCode() {
return deptCode;
}
public void setDeptCode(String deptCode) {
this.deptCode = deptCode;
}
public String getJobCode() {
return jobCode;
}
public void setJobCode(String jobCode) {
this.jobCode = jobCode;
}
@Override
public String toString() {
return "UserDeptInfoDTO{" + "userCode='" + userCode + '\'' + ", deptCode='" + deptCode + '\'' + ", jobCode='"
+ jobCode + '\'' + '}';
}
}

@ -0,0 +1,932 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:23
* @Description: Entity
* @ModifyLog:
**/
public class CghtMainEntity {
private Integer id;
private Integer requestid;
private Integer sfsymbfb;
private String htmc;
private Integer bmdj;
private Integer formmodeid;
private Integer modedatacreater;
private Integer modedatacreatertype;
private String modedatacreatedate;
private String modedatacreatetime;
private Integer modedatamodifier;
private String modedatamodifydatetime;
private String modeuuid;
private Integer sfsw;
private Integer htjexz;
private Integer bz;
private String htjedx;
private Integer sflx;
private Integer sffs;
private Integer sfxjwfk;
private String wdsfyy;
private Integer zt;
private String htbh;
private String htlx;
private Integer htzwbj;
private Integer htxz;
private String htdsf;
private String htzje;
private String zhrmb;
private String sfwdsf;
private String glht;
private Integer qcbm;
private Integer qcjg;
private String htzw;
private String htzwfzzd;
private String htfj;
private String htfjfzzd;
private String beizhu;
private String syyhsxm;
private String htzwdzyyj;
private String htfjdzyyj;
private String fhtlx;
private String fid;
private String bgjlbd;
private Integer fpxz;
private String sh;
private String htlxwb;
private Integer bzhlz;
private String jshjje;
private String xzfb;
private Integer jsbz;
private String sfktj;
private String wsymbyy;
private String qcrq;
private Integer htsplcrequestid;
private Integer yyjgdzt;
private Integer dqbb;
private String yyjdbs;
private String cyyz;
private Integer qcr;
private String symblj;
private String syscode;
private String modulecode;
private Integer lkrqsfytsyq;
private String tsyqms;
private String yyrq;
private String htqsj;
private String fzyy;
private String fzrq;
private String htgdj;
private String jsgdrq;
private String ndgdrq;
private String gdbz;
private Integer gdlx;
private String lyks;
private String lyjs;
private String lyjh;
private Integer mqyfje;
private Integer htyfje;
private Integer fkqs;
private Integer sfymqlyrq;
private String gllc;
private Integer yjlyscdwt;
private String xgcgx;
private String glqsxx;
private String glfzxx;
private String glgdxx;
private String gllyxx;
private Integer dfkje;
private String yfkbl;
private String htspr;
private String yz;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getRequestid() {
return requestid;
}
public void setRequestid(Integer requestid) {
this.requestid = requestid;
}
public Integer getSfsymbfb() {
return sfsymbfb;
}
public void setSfsymbfb(Integer sfsymbfb) {
this.sfsymbfb = sfsymbfb;
}
public String getHtmc() {
return htmc;
}
public void setHtmc(String htmc) {
this.htmc = htmc;
}
public Integer getBmdj() {
return bmdj;
}
public void setBmdj(Integer bmdj) {
this.bmdj = bmdj;
}
public Integer getFormmodeid() {
return formmodeid;
}
public void setFormmodeid(Integer formmodeid) {
this.formmodeid = formmodeid;
}
public Integer getModedatacreater() {
return modedatacreater;
}
public void setModedatacreater(Integer modedatacreater) {
this.modedatacreater = modedatacreater;
}
public Integer getModedatacreatertype() {
return modedatacreatertype;
}
public void setModedatacreatertype(Integer modedatacreatertype) {
this.modedatacreatertype = modedatacreatertype;
}
public String getModedatacreatedate() {
return modedatacreatedate;
}
public void setModedatacreatedate(String modedatacreatedate) {
this.modedatacreatedate = modedatacreatedate;
}
public String getModedatacreatetime() {
return modedatacreatetime;
}
public void setModedatacreatetime(String modedatacreatetime) {
this.modedatacreatetime = modedatacreatetime;
}
public Integer getModedatamodifier() {
return modedatamodifier;
}
public void setModedatamodifier(Integer modedatamodifier) {
this.modedatamodifier = modedatamodifier;
}
public String getModedatamodifydatetime() {
return modedatamodifydatetime;
}
public void setModedatamodifydatetime(String modedatamodifydatetime) {
this.modedatamodifydatetime = modedatamodifydatetime;
}
public String getModeuuid() {
return modeuuid;
}
public void setModeuuid(String modeuuid) {
this.modeuuid = modeuuid;
}
public Integer getSfsw() {
return sfsw;
}
public void setSfsw(Integer sfsw) {
this.sfsw = sfsw;
}
public Integer getHtjexz() {
return htjexz;
}
public void setHtjexz(Integer htjexz) {
this.htjexz = htjexz;
}
public Integer getBz() {
return bz;
}
public void setBz(Integer bz) {
this.bz = bz;
}
public String getHtjedx() {
return htjedx;
}
public void setHtjedx(String htjedx) {
this.htjedx = htjedx;
}
public Integer getSflx() {
return sflx;
}
public void setSflx(Integer sflx) {
this.sflx = sflx;
}
public Integer getSffs() {
return sffs;
}
public void setSffs(Integer sffs) {
this.sffs = sffs;
}
public Integer getSfxjwfk() {
return sfxjwfk;
}
public void setSfxjwfk(Integer sfxjwfk) {
this.sfxjwfk = sfxjwfk;
}
public String getWdsfyy() {
return wdsfyy;
}
public void setWdsfyy(String wdsfyy) {
this.wdsfyy = wdsfyy;
}
public Integer getZt() {
return zt;
}
public void setZt(Integer zt) {
this.zt = zt;
}
public String getHtbh() {
return htbh;
}
public void setHtbh(String htbh) {
this.htbh = htbh;
}
public String getHtlx() {
return htlx;
}
public void setHtlx(String htlx) {
this.htlx = htlx;
}
public Integer getHtzwbj() {
return htzwbj;
}
public void setHtzwbj(Integer htzwbj) {
this.htzwbj = htzwbj;
}
public Integer getHtxz() {
return htxz;
}
public void setHtxz(Integer htxz) {
this.htxz = htxz;
}
public String getHtdsf() {
return htdsf;
}
public void setHtdsf(String htdsf) {
this.htdsf = htdsf;
}
public String getHtzje() {
return htzje;
}
public void setHtzje(String htzje) {
this.htzje = htzje;
}
public String getZhrmb() {
return zhrmb;
}
public void setZhrmb(String zhrmb) {
this.zhrmb = zhrmb;
}
public String getSfwdsf() {
return sfwdsf;
}
public void setSfwdsf(String sfwdsf) {
this.sfwdsf = sfwdsf;
}
public String getGlht() {
return glht;
}
public void setGlht(String glht) {
this.glht = glht;
}
public Integer getQcbm() {
return qcbm;
}
public void setQcbm(Integer qcbm) {
this.qcbm = qcbm;
}
public Integer getQcjg() {
return qcjg;
}
public void setQcjg(Integer qcjg) {
this.qcjg = qcjg;
}
public String getHtzw() {
return htzw;
}
public void setHtzw(String htzw) {
this.htzw = htzw;
}
public String getHtzwfzzd() {
return htzwfzzd;
}
public void setHtzwfzzd(String htzwfzzd) {
this.htzwfzzd = htzwfzzd;
}
public String getHtfj() {
return htfj;
}
public void setHtfj(String htfj) {
this.htfj = htfj;
}
public String getHtfjfzzd() {
return htfjfzzd;
}
public void setHtfjfzzd(String htfjfzzd) {
this.htfjfzzd = htfjfzzd;
}
public String getBeizhu() {
return beizhu;
}
public void setBeizhu(String beizhu) {
this.beizhu = beizhu;
}
public String getSyyhsxm() {
return syyhsxm;
}
public void setSyyhsxm(String syyhsxm) {
this.syyhsxm = syyhsxm;
}
public String getHtzwdzyyj() {
return htzwdzyyj;
}
public void setHtzwdzyyj(String htzwdzyyj) {
this.htzwdzyyj = htzwdzyyj;
}
public String getHtfjdzyyj() {
return htfjdzyyj;
}
public void setHtfjdzyyj(String htfjdzyyj) {
this.htfjdzyyj = htfjdzyyj;
}
public String getFhtlx() {
return fhtlx;
}
public void setFhtlx(String fhtlx) {
this.fhtlx = fhtlx;
}
public String getFid() {
return fid;
}
public void setFid(String fid) {
this.fid = fid;
}
public String getBgjlbd() {
return bgjlbd;
}
public void setBgjlbd(String bgjlbd) {
this.bgjlbd = bgjlbd;
}
public Integer getFpxz() {
return fpxz;
}
public void setFpxz(Integer fpxz) {
this.fpxz = fpxz;
}
public String getSh() {
return sh;
}
public void setSh(String sh) {
this.sh = sh;
}
public String getHtlxwb() {
return htlxwb;
}
public void setHtlxwb(String htlxwb) {
this.htlxwb = htlxwb;
}
public Integer getBzhlz() {
return bzhlz;
}
public void setBzhlz(Integer bzhlz) {
this.bzhlz = bzhlz;
}
public String getJshjje() {
return jshjje;
}
public void setJshjje(String jshjje) {
this.jshjje = jshjje;
}
public String getXzfb() {
return xzfb;
}
public void setXzfb(String xzfb) {
this.xzfb = xzfb;
}
public Integer getJsbz() {
return jsbz;
}
public void setJsbz(Integer jsbz) {
this.jsbz = jsbz;
}
public String getSfktj() {
return sfktj;
}
public void setSfktj(String sfktj) {
this.sfktj = sfktj;
}
public String getWsymbyy() {
return wsymbyy;
}
public void setWsymbyy(String wsymbyy) {
this.wsymbyy = wsymbyy;
}
public String getQcrq() {
return qcrq;
}
public void setQcrq(String qcrq) {
this.qcrq = qcrq;
}
public Integer getHtsplcrequestid() {
return htsplcrequestid;
}
public void setHtsplcrequestid(Integer htsplcrequestid) {
this.htsplcrequestid = htsplcrequestid;
}
public Integer getYyjgdzt() {
return yyjgdzt;
}
public void setYyjgdzt(Integer yyjgdzt) {
this.yyjgdzt = yyjgdzt;
}
public Integer getDqbb() {
return dqbb;
}
public void setDqbb(Integer dqbb) {
this.dqbb = dqbb;
}
public String getYyjdbs() {
return yyjdbs;
}
public void setYyjdbs(String yyjdbs) {
this.yyjdbs = yyjdbs;
}
public String getCyyz() {
return cyyz;
}
public void setCyyz(String cyyz) {
this.cyyz = cyyz;
}
public Integer getQcr() {
return qcr;
}
public void setQcr(Integer qcr) {
this.qcr = qcr;
}
public String getSymblj() {
return symblj;
}
public void setSymblj(String symblj) {
this.symblj = symblj;
}
public String getSyscode() {
return syscode;
}
public void setSyscode(String syscode) {
this.syscode = syscode;
}
public String getModulecode() {
return modulecode;
}
public void setModulecode(String modulecode) {
this.modulecode = modulecode;
}
public Integer getLkrqsfytsyq() {
return lkrqsfytsyq;
}
public void setLkrqsfytsyq(Integer lkrqsfytsyq) {
this.lkrqsfytsyq = lkrqsfytsyq;
}
public String getTsyqms() {
return tsyqms;
}
public void setTsyqms(String tsyqms) {
this.tsyqms = tsyqms;
}
public String getYyrq() {
return yyrq;
}
public void setYyrq(String yyrq) {
this.yyrq = yyrq;
}
public String getHtqsj() {
return htqsj;
}
public void setHtqsj(String htqsj) {
this.htqsj = htqsj;
}
public String getFzyy() {
return fzyy;
}
public void setFzyy(String fzyy) {
this.fzyy = fzyy;
}
public String getFzrq() {
return fzrq;
}
public void setFzrq(String fzrq) {
this.fzrq = fzrq;
}
public String getHtgdj() {
return htgdj;
}
public void setHtgdj(String htgdj) {
this.htgdj = htgdj;
}
public String getJsgdrq() {
return jsgdrq;
}
public void setJsgdrq(String jsgdrq) {
this.jsgdrq = jsgdrq;
}
public String getNdgdrq() {
return ndgdrq;
}
public void setNdgdrq(String ndgdrq) {
this.ndgdrq = ndgdrq;
}
public String getGdbz() {
return gdbz;
}
public void setGdbz(String gdbz) {
this.gdbz = gdbz;
}
public Integer getGdlx() {
return gdlx;
}
public void setGdlx(Integer gdlx) {
this.gdlx = gdlx;
}
public String getLyks() {
return lyks;
}
public void setLyks(String lyks) {
this.lyks = lyks;
}
public String getLyjs() {
return lyjs;
}
public void setLyjs(String lyjs) {
this.lyjs = lyjs;
}
public String getLyjh() {
return lyjh;
}
public void setLyjh(String lyjh) {
this.lyjh = lyjh;
}
public Integer getMqyfje() {
return mqyfje;
}
public void setMqyfje(Integer mqyfje) {
this.mqyfje = mqyfje;
}
public Integer getHtyfje() {
return htyfje;
}
public void setHtyfje(Integer htyfje) {
this.htyfje = htyfje;
}
public Integer getFkqs() {
return fkqs;
}
public void setFkqs(Integer fkqs) {
this.fkqs = fkqs;
}
public Integer getSfymqlyrq() {
return sfymqlyrq;
}
public void setSfymqlyrq(Integer sfymqlyrq) {
this.sfymqlyrq = sfymqlyrq;
}
public String getGllc() {
return gllc;
}
public void setGllc(String gllc) {
this.gllc = gllc;
}
public Integer getYjlyscdwt() {
return yjlyscdwt;
}
public void setYjlyscdwt(Integer yjlyscdwt) {
this.yjlyscdwt = yjlyscdwt;
}
public String getXgcgx() {
return xgcgx;
}
public void setXgcgx(String xgcgx) {
this.xgcgx = xgcgx;
}
public String getGlqsxx() {
return glqsxx;
}
public void setGlqsxx(String glqsxx) {
this.glqsxx = glqsxx;
}
public String getGlfzxx() {
return glfzxx;
}
public void setGlfzxx(String glfzxx) {
this.glfzxx = glfzxx;
}
public String getGlgdxx() {
return glgdxx;
}
public void setGlgdxx(String glgdxx) {
this.glgdxx = glgdxx;
}
public String getGllyxx() {
return gllyxx;
}
public void setGllyxx(String gllyxx) {
this.gllyxx = gllyxx;
}
public Integer getDfkje() {
return dfkje;
}
public void setDfkje(Integer dfkje) {
this.dfkje = dfkje;
}
public String getYfkbl() {
return yfkbl;
}
public void setYfkbl(String yfkbl) {
this.yfkbl = yfkbl;
}
public String getHtspr() {
return htspr;
}
public void setHtspr(String htspr) {
this.htspr = htspr;
}
public String getYz() {
return yz;
}
public void setYz(String yz) {
this.yz = yz;
}
}

File diff suppressed because it is too large Load Diff

@ -0,0 +1,181 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:24
* @Description:
* @ModifyLog:
**/
public class Docimagefile {
private Integer id;
private Integer docid;
private Integer imagefileid;
private String imagefilename;
private String imagefiledesc;
private Integer imagefilewidth;
private Integer imagefileheight;
private Integer imagefielsize;
private String docfiletype;
private Integer versionid;
private String versiondetail;
private String isextfile;
private String hasusedtemplet;
private Integer signaturecount;
private Integer operateuserid;
private String operatedate;
private String operatetime;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getDocid() {
return docid;
}
public void setDocid(Integer docid) {
this.docid = docid;
}
public Integer getImagefileid() {
return imagefileid;
}
public void setImagefileid(Integer imagefileid) {
this.imagefileid = imagefileid;
}
public String getImagefilename() {
return imagefilename;
}
public void setImagefilename(String imagefilename) {
this.imagefilename = imagefilename;
}
public String getImagefiledesc() {
return imagefiledesc;
}
public void setImagefiledesc(String imagefiledesc) {
this.imagefiledesc = imagefiledesc;
}
public Integer getImagefilewidth() {
return imagefilewidth;
}
public void setImagefilewidth(Integer imagefilewidth) {
this.imagefilewidth = imagefilewidth;
}
public Integer getImagefileheight() {
return imagefileheight;
}
public void setImagefileheight(Integer imagefileheight) {
this.imagefileheight = imagefileheight;
}
public Integer getImagefielsize() {
return imagefielsize;
}
public void setImagefielsize(Integer imagefielsize) {
this.imagefielsize = imagefielsize;
}
public String getDocfiletype() {
return docfiletype;
}
public void setDocfiletype(String docfiletype) {
this.docfiletype = docfiletype;
}
public Integer getVersionid() {
return versionid;
}
public void setVersionid(Integer versionid) {
this.versionid = versionid;
}
public String getVersiondetail() {
return versiondetail;
}
public void setVersiondetail(String versiondetail) {
this.versiondetail = versiondetail;
}
public String getIsextfile() {
return isextfile;
}
public void setIsextfile(String isextfile) {
this.isextfile = isextfile;
}
public String getHasusedtemplet() {
return hasusedtemplet;
}
public void setHasusedtemplet(String hasusedtemplet) {
this.hasusedtemplet = hasusedtemplet;
}
public Integer getSignaturecount() {
return signaturecount;
}
public void setSignaturecount(Integer signaturecount) {
this.signaturecount = signaturecount;
}
public Integer getOperateuserid() {
return operateuserid;
}
public void setOperateuserid(Integer operateuserid) {
this.operateuserid = operateuserid;
}
public String getOperatedate() {
return operatedate;
}
public void setOperatedate(String operatedate) {
this.operatedate = operatedate;
}
public String getOperatetime() {
return operatetime;
}
public void setOperatetime(String operatetime) {
this.operatetime = operatetime;
}
}

@ -0,0 +1,291 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:25
* @Description:
* @ModifyLog:
**/
public class ImagefileEntity {
private Integer imagefileid;
private String imagefilename;
private String imagefiletype;
private Integer imagefileused;
private String filerealpath;
private String iszip;
private String isencrypt;
private String filesize;
private Integer downloads;
private String miniimgpath;
private String imgsize;
private String isftp;
private Integer ftpconfigid;
private Integer isaesencrypt;
private String aescode;
private String tokenkey;
private String storagestatus;
private String comefrom;
private Integer objid;
private String objotherpara;
private String delfilerealpath;
private Integer mainimagefile;
private String fileid;
private Integer secretlevel;
private String secretvalidity;
private Integer sensitiveWtype;
private String sensitiveWtime;
private byte[] imagefile;
public Integer getImagefileid() {
return imagefileid;
}
public void setImagefileid(Integer imagefileid) {
this.imagefileid = imagefileid;
}
public String getImagefilename() {
return imagefilename;
}
public void setImagefilename(String imagefilename) {
this.imagefilename = imagefilename;
}
public String getImagefiletype() {
return imagefiletype;
}
public void setImagefiletype(String imagefiletype) {
this.imagefiletype = imagefiletype;
}
public Integer getImagefileused() {
return imagefileused;
}
public void setImagefileused(Integer imagefileused) {
this.imagefileused = imagefileused;
}
public String getFilerealpath() {
return filerealpath;
}
public void setFilerealpath(String filerealpath) {
this.filerealpath = filerealpath;
}
public String getIszip() {
return iszip;
}
public void setIszip(String iszip) {
this.iszip = iszip;
}
public String getIsencrypt() {
return isencrypt;
}
public void setIsencrypt(String isencrypt) {
this.isencrypt = isencrypt;
}
public String getFilesize() {
return filesize;
}
public void setFilesize(String filesize) {
this.filesize = filesize;
}
public Integer getDownloads() {
return downloads;
}
public void setDownloads(Integer downloads) {
this.downloads = downloads;
}
public String getMiniimgpath() {
return miniimgpath;
}
public void setMiniimgpath(String miniimgpath) {
this.miniimgpath = miniimgpath;
}
public String getImgsize() {
return imgsize;
}
public void setImgsize(String imgsize) {
this.imgsize = imgsize;
}
public String getIsftp() {
return isftp;
}
public void setIsftp(String isftp) {
this.isftp = isftp;
}
public Integer getFtpconfigid() {
return ftpconfigid;
}
public void setFtpconfigid(Integer ftpconfigid) {
this.ftpconfigid = ftpconfigid;
}
public Integer getIsaesencrypt() {
return isaesencrypt;
}
public void setIsaesencrypt(Integer isaesencrypt) {
this.isaesencrypt = isaesencrypt;
}
public String getAescode() {
return aescode;
}
public void setAescode(String aescode) {
this.aescode = aescode;
}
public String getTokenkey() {
return tokenkey;
}
public void setTokenkey(String tokenkey) {
this.tokenkey = tokenkey;
}
public String getStoragestatus() {
return storagestatus;
}
public void setStoragestatus(String storagestatus) {
this.storagestatus = storagestatus;
}
public String getComefrom() {
return comefrom;
}
public void setComefrom(String comefrom) {
this.comefrom = comefrom;
}
public Integer getObjid() {
return objid;
}
public void setObjid(Integer objid) {
this.objid = objid;
}
public String getObjotherpara() {
return objotherpara;
}
public void setObjotherpara(String objotherpara) {
this.objotherpara = objotherpara;
}
public String getDelfilerealpath() {
return delfilerealpath;
}
public void setDelfilerealpath(String delfilerealpath) {
this.delfilerealpath = delfilerealpath;
}
public Integer getMainimagefile() {
return mainimagefile;
}
public void setMainimagefile(Integer mainimagefile) {
this.mainimagefile = mainimagefile;
}
public String getFileid() {
return fileid;
}
public void setFileid(String fileid) {
this.fileid = fileid;
}
public Integer getSecretlevel() {
return secretlevel;
}
public void setSecretlevel(Integer secretlevel) {
this.secretlevel = secretlevel;
}
public String getSecretvalidity() {
return secretvalidity;
}
public void setSecretvalidity(String secretvalidity) {
this.secretvalidity = secretvalidity;
}
public Integer getSensitiveWtype() {
return sensitiveWtype;
}
public void setSensitiveWtype(Integer sensitiveWtype) {
this.sensitiveWtype = sensitiveWtype;
}
public String getSensitiveWtime() {
return sensitiveWtime;
}
public void setSensitiveWtime(String sensitiveWtime) {
this.sensitiveWtime = sensitiveWtime;
}
public byte[] getImagefile() {
return imagefile;
}
public void setImagefile(byte[] imagefile) {
this.imagefile = imagefile;
}
}

@ -0,0 +1,721 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:25
* @Description:
* @ModifyLog:
**/
public class UfDsfgl {
private Integer id;
private Integer requestid;
private String dsfmc;
private Integer dsflx;
private String zjhm;
private Integer formmodeid;
private Integer modedatacreater;
private Integer modedatacreatertype;
private String modedatacreatedate;
private String modedatacreatetime;
private Integer modedatamodifier;
private String modedatamodifydatetime;
private String modeuuid;
private String frxm;
private String frsfzhm;
private Integer zczb;
private String gsclsj;
private String gszcdz;
private String lxfs;
private String dsfbm;
private Integer zt;
private Integer ly;
private String zjgxsj;
private Integer khlx;
private String lxdh;
private String email;
private String jgmc;
private String dz;
private String sqqsdb;
private String bgms;
private String bgdz;
private String xm;
private String dsfdwmc;
private Integer szjg;
private Integer szbm;
private String lhyysm;
private String zfyysm;
private String hfyysm;
private String jglx;
private String lxr;
private String gljg;
private String ssxy;
private String sxyysm;
private String fbsxyysm;
private String scyysm;
private String sxyysmsx;
private Integer scbs;
private String khwyid;
private Integer sfwyxtjzjh;
private String cjywx;
private String xgywx;
private String ywm;
private String ywjc;
private String yzbm;
private String zwm;
private String zwjc;
private String tyshxydmyyzz;
private String clrq;
private String zzjgdm;
private String gszch;
private String xymc;
private String gszwmc;
private String bgjlbd;
private String jglxr;
private String kycecifid;
private String yjcxxx;
private Integer jgcrmsclj;
private String zhtbsj;
private String khytfl;
private String fid;
private Integer dqbb;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getRequestid() {
return requestid;
}
public void setRequestid(Integer requestid) {
this.requestid = requestid;
}
public String getDsfmc() {
return dsfmc;
}
public void setDsfmc(String dsfmc) {
this.dsfmc = dsfmc;
}
public Integer getDsflx() {
return dsflx;
}
public void setDsflx(Integer dsflx) {
this.dsflx = dsflx;
}
public String getZjhm() {
return zjhm;
}
public void setZjhm(String zjhm) {
this.zjhm = zjhm;
}
public Integer getFormmodeid() {
return formmodeid;
}
public void setFormmodeid(Integer formmodeid) {
this.formmodeid = formmodeid;
}
public Integer getModedatacreater() {
return modedatacreater;
}
public void setModedatacreater(Integer modedatacreater) {
this.modedatacreater = modedatacreater;
}
public Integer getModedatacreatertype() {
return modedatacreatertype;
}
public void setModedatacreatertype(Integer modedatacreatertype) {
this.modedatacreatertype = modedatacreatertype;
}
public String getModedatacreatedate() {
return modedatacreatedate;
}
public void setModedatacreatedate(String modedatacreatedate) {
this.modedatacreatedate = modedatacreatedate;
}
public String getModedatacreatetime() {
return modedatacreatetime;
}
public void setModedatacreatetime(String modedatacreatetime) {
this.modedatacreatetime = modedatacreatetime;
}
public Integer getModedatamodifier() {
return modedatamodifier;
}
public void setModedatamodifier(Integer modedatamodifier) {
this.modedatamodifier = modedatamodifier;
}
public String getModedatamodifydatetime() {
return modedatamodifydatetime;
}
public void setModedatamodifydatetime(String modedatamodifydatetime) {
this.modedatamodifydatetime = modedatamodifydatetime;
}
public String getModeuuid() {
return modeuuid;
}
public void setModeuuid(String modeuuid) {
this.modeuuid = modeuuid;
}
public String getFrxm() {
return frxm;
}
public void setFrxm(String frxm) {
this.frxm = frxm;
}
public String getFrsfzhm() {
return frsfzhm;
}
public void setFrsfzhm(String frsfzhm) {
this.frsfzhm = frsfzhm;
}
public Integer getZczb() {
return zczb;
}
public void setZczb(Integer zczb) {
this.zczb = zczb;
}
public String getGsclsj() {
return gsclsj;
}
public void setGsclsj(String gsclsj) {
this.gsclsj = gsclsj;
}
public String getGszcdz() {
return gszcdz;
}
public void setGszcdz(String gszcdz) {
this.gszcdz = gszcdz;
}
public String getLxfs() {
return lxfs;
}
public void setLxfs(String lxfs) {
this.lxfs = lxfs;
}
public String getDsfbm() {
return dsfbm;
}
public void setDsfbm(String dsfbm) {
this.dsfbm = dsfbm;
}
public Integer getZt() {
return zt;
}
public void setZt(Integer zt) {
this.zt = zt;
}
public Integer getLy() {
return ly;
}
public void setLy(Integer ly) {
this.ly = ly;
}
public String getZjgxsj() {
return zjgxsj;
}
public void setZjgxsj(String zjgxsj) {
this.zjgxsj = zjgxsj;
}
public Integer getKhlx() {
return khlx;
}
public void setKhlx(Integer khlx) {
this.khlx = khlx;
}
public String getLxdh() {
return lxdh;
}
public void setLxdh(String lxdh) {
this.lxdh = lxdh;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getJgmc() {
return jgmc;
}
public void setJgmc(String jgmc) {
this.jgmc = jgmc;
}
public String getDz() {
return dz;
}
public void setDz(String dz) {
this.dz = dz;
}
public String getSqqsdb() {
return sqqsdb;
}
public void setSqqsdb(String sqqsdb) {
this.sqqsdb = sqqsdb;
}
public String getBgms() {
return bgms;
}
public void setBgms(String bgms) {
this.bgms = bgms;
}
public String getBgdz() {
return bgdz;
}
public void setBgdz(String bgdz) {
this.bgdz = bgdz;
}
public String getXm() {
return xm;
}
public void setXm(String xm) {
this.xm = xm;
}
public String getDsfdwmc() {
return dsfdwmc;
}
public void setDsfdwmc(String dsfdwmc) {
this.dsfdwmc = dsfdwmc;
}
public Integer getSzjg() {
return szjg;
}
public void setSzjg(Integer szjg) {
this.szjg = szjg;
}
public Integer getSzbm() {
return szbm;
}
public void setSzbm(Integer szbm) {
this.szbm = szbm;
}
public String getLhyysm() {
return lhyysm;
}
public void setLhyysm(String lhyysm) {
this.lhyysm = lhyysm;
}
public String getZfyysm() {
return zfyysm;
}
public void setZfyysm(String zfyysm) {
this.zfyysm = zfyysm;
}
public String getHfyysm() {
return hfyysm;
}
public void setHfyysm(String hfyysm) {
this.hfyysm = hfyysm;
}
public String getJglx() {
return jglx;
}
public void setJglx(String jglx) {
this.jglx = jglx;
}
public String getLxr() {
return lxr;
}
public void setLxr(String lxr) {
this.lxr = lxr;
}
public String getGljg() {
return gljg;
}
public void setGljg(String gljg) {
this.gljg = gljg;
}
public String getSsxy() {
return ssxy;
}
public void setSsxy(String ssxy) {
this.ssxy = ssxy;
}
public String getSxyysm() {
return sxyysm;
}
public void setSxyysm(String sxyysm) {
this.sxyysm = sxyysm;
}
public String getFbsxyysm() {
return fbsxyysm;
}
public void setFbsxyysm(String fbsxyysm) {
this.fbsxyysm = fbsxyysm;
}
public String getScyysm() {
return scyysm;
}
public void setScyysm(String scyysm) {
this.scyysm = scyysm;
}
public String getSxyysmsx() {
return sxyysmsx;
}
public void setSxyysmsx(String sxyysmsx) {
this.sxyysmsx = sxyysmsx;
}
public Integer getScbs() {
return scbs;
}
public void setScbs(Integer scbs) {
this.scbs = scbs;
}
public String getKhwyid() {
return khwyid;
}
public void setKhwyid(String khwyid) {
this.khwyid = khwyid;
}
public Integer getSfwyxtjzjh() {
return sfwyxtjzjh;
}
public void setSfwyxtjzjh(Integer sfwyxtjzjh) {
this.sfwyxtjzjh = sfwyxtjzjh;
}
public String getCjywx() {
return cjywx;
}
public void setCjywx(String cjywx) {
this.cjywx = cjywx;
}
public String getXgywx() {
return xgywx;
}
public void setXgywx(String xgywx) {
this.xgywx = xgywx;
}
public String getYwm() {
return ywm;
}
public void setYwm(String ywm) {
this.ywm = ywm;
}
public String getYwjc() {
return ywjc;
}
public void setYwjc(String ywjc) {
this.ywjc = ywjc;
}
public String getYzbm() {
return yzbm;
}
public void setYzbm(String yzbm) {
this.yzbm = yzbm;
}
public String getZwm() {
return zwm;
}
public void setZwm(String zwm) {
this.zwm = zwm;
}
public String getZwjc() {
return zwjc;
}
public void setZwjc(String zwjc) {
this.zwjc = zwjc;
}
public String getTyshxydmyyzz() {
return tyshxydmyyzz;
}
public void setTyshxydmyyzz(String tyshxydmyyzz) {
this.tyshxydmyyzz = tyshxydmyyzz;
}
public String getClrq() {
return clrq;
}
public void setClrq(String clrq) {
this.clrq = clrq;
}
public String getZzjgdm() {
return zzjgdm;
}
public void setZzjgdm(String zzjgdm) {
this.zzjgdm = zzjgdm;
}
public String getGszch() {
return gszch;
}
public void setGszch(String gszch) {
this.gszch = gszch;
}
public String getXymc() {
return xymc;
}
public void setXymc(String xymc) {
this.xymc = xymc;
}
public String getGszwmc() {
return gszwmc;
}
public void setGszwmc(String gszwmc) {
this.gszwmc = gszwmc;
}
public String getBgjlbd() {
return bgjlbd;
}
public void setBgjlbd(String bgjlbd) {
this.bgjlbd = bgjlbd;
}
public String getJglxr() {
return jglxr;
}
public void setJglxr(String jglxr) {
this.jglxr = jglxr;
}
public String getKycecifid() {
return kycecifid;
}
public void setKycecifid(String kycecifid) {
this.kycecifid = kycecifid;
}
public String getYjcxxx() {
return yjcxxx;
}
public void setYjcxxx(String yjcxxx) {
this.yjcxxx = yjcxxx;
}
public Integer getJgcrmsclj() {
return jgcrmsclj;
}
public void setJgcrmsclj(Integer jgcrmsclj) {
this.jgcrmsclj = jgcrmsclj;
}
public String getZhtbsj() {
return zhtbsj;
}
public void setZhtbsj(String zhtbsj) {
this.zhtbsj = zhtbsj;
}
public String getKhytfl() {
return khytfl;
}
public void setKhytfl(String khytfl) {
this.khytfl = khytfl;
}
public String getFid() {
return fid;
}
public void setFid(String fid) {
this.fid = fid;
}
public Integer getDqbb() {
return dqbb;
}
public void setDqbb(Integer dqbb) {
this.dqbb = dqbb;
}
}

@ -0,0 +1,273 @@
package com.engine.htxc.contract.entity;
public class UfHtqcDt1 {
private Integer id;
private Integer mainid;
private String cz;
private Integer sfyy;
private String scsj;
private String qrwlyy;
private Integer yyzt;
private String yyhwj;
private String wjmc;
private String zpdfhwj;
private Integer dzjyyzt;
private Integer fwjyyzt;
private Integer yyfs;
private Integer dzyyfs;
private Integer dsmdy;
private String fwdyfs;
private String wlyyfs;
private String qrdzyy;
private String yyid;
private String yyfswb;
private String wfqssj;
private String sfqssj;
private Integer qszt;
private String yyqksm;
private String wfyyj;
private String yqxdyr;
private String dsf;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getMainid() {
return mainid;
}
public void setMainid(Integer mainid) {
this.mainid = mainid;
}
public String getCz() {
return cz;
}
public void setCz(String cz) {
this.cz = cz;
}
public Integer getSfyy() {
return sfyy;
}
public void setSfyy(Integer sfyy) {
this.sfyy = sfyy;
}
public String getScsj() {
return scsj;
}
public void setScsj(String scsj) {
this.scsj = scsj;
}
public String getQrwlyy() {
return qrwlyy;
}
public void setQrwlyy(String qrwlyy) {
this.qrwlyy = qrwlyy;
}
public Integer getYyzt() {
return yyzt;
}
public void setYyzt(Integer yyzt) {
this.yyzt = yyzt;
}
public String getYyhwj() {
return yyhwj;
}
public void setYyhwj(String yyhwj) {
this.yyhwj = yyhwj;
}
public String getWjmc() {
return wjmc;
}
public void setWjmc(String wjmc) {
this.wjmc = wjmc;
}
public String getZpdfhwj() {
return zpdfhwj;
}
public void setZpdfhwj(String zpdfhwj) {
this.zpdfhwj = zpdfhwj;
}
public Integer getDzjyyzt() {
return dzjyyzt;
}
public void setDzjyyzt(Integer dzjyyzt) {
this.dzjyyzt = dzjyyzt;
}
public Integer getFwjyyzt() {
return fwjyyzt;
}
public void setFwjyyzt(Integer fwjyyzt) {
this.fwjyyzt = fwjyyzt;
}
public Integer getYyfs() {
return yyfs;
}
public void setYyfs(Integer yyfs) {
this.yyfs = yyfs;
}
public Integer getDzyyfs() {
return dzyyfs;
}
public void setDzyyfs(Integer dzyyfs) {
this.dzyyfs = dzyyfs;
}
public Integer getDsmdy() {
return dsmdy;
}
public void setDsmdy(Integer dsmdy) {
this.dsmdy = dsmdy;
}
public String getFwdyfs() {
return fwdyfs;
}
public void setFwdyfs(String fwdyfs) {
this.fwdyfs = fwdyfs;
}
public String getWlyyfs() {
return wlyyfs;
}
public void setWlyyfs(String wlyyfs) {
this.wlyyfs = wlyyfs;
}
public String getQrdzyy() {
return qrdzyy;
}
public void setQrdzyy(String qrdzyy) {
this.qrdzyy = qrdzyy;
}
public String getYyid() {
return yyid;
}
public void setYyid(String yyid) {
this.yyid = yyid;
}
public String getYyfswb() {
return yyfswb;
}
public void setYyfswb(String yyfswb) {
this.yyfswb = yyfswb;
}
public String getWfqssj() {
return wfqssj;
}
public void setWfqssj(String wfqssj) {
this.wfqssj = wfqssj;
}
public String getSfqssj() {
return sfqssj;
}
public void setSfqssj(String sfqssj) {
this.sfqssj = sfqssj;
}
public Integer getQszt() {
return qszt;
}
public void setQszt(Integer qszt) {
this.qszt = qszt;
}
public String getYyqksm() {
return yyqksm;
}
public void setYyqksm(String yyqksm) {
this.yyqksm = yyqksm;
}
public String getWfyyj() {
return wfyyj;
}
public void setWfyyj(String wfyyj) {
this.wfyyj = wfyyj;
}
public String getYqxdyr() {
return yqxdyr;
}
public void setYqxdyr(String yqxdyr) {
this.yqxdyr = yqxdyr;
}
public String getDsf() {
return dsf;
}
public void setDsf(String dsf) {
this.dsf = dsf;
}
}

@ -0,0 +1,263 @@
package com.engine.htxc.contract.entity;
public class UfHtqcDt3 {
private Integer id;
private Integer mainid;
private String wjmc;
private String cz;
private Integer sfyy;
private String scsj;
private String qrwlyy;
private Integer yyzt;
private String yyhwj;
private String zpdfhwj;
private Integer dzjyyzt;
private Integer fwjyyzt;
private Integer yyfs;
private Integer dzyyfs;
private Integer dsmdy;
private String fwdyfs;
private String wlyyfs;
private String qrdzyy;
private String yyid;
private String yyfswb;
private String wfqssj;
private String sfqssj;
private Integer qszt;
private String yyqksm;
private String yqxdyr;
private String dsf;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getMainid() {
return mainid;
}
public void setMainid(Integer mainid) {
this.mainid = mainid;
}
public String getWjmc() {
return wjmc;
}
public void setWjmc(String wjmc) {
this.wjmc = wjmc;
}
public String getCz() {
return cz;
}
public void setCz(String cz) {
this.cz = cz;
}
public Integer getSfyy() {
return sfyy;
}
public void setSfyy(Integer sfyy) {
this.sfyy = sfyy;
}
public String getScsj() {
return scsj;
}
public void setScsj(String scsj) {
this.scsj = scsj;
}
public String getQrwlyy() {
return qrwlyy;
}
public void setQrwlyy(String qrwlyy) {
this.qrwlyy = qrwlyy;
}
public Integer getYyzt() {
return yyzt;
}
public void setYyzt(Integer yyzt) {
this.yyzt = yyzt;
}
public String getYyhwj() {
return yyhwj;
}
public void setYyhwj(String yyhwj) {
this.yyhwj = yyhwj;
}
public String getZpdfhwj() {
return zpdfhwj;
}
public void setZpdfhwj(String zpdfhwj) {
this.zpdfhwj = zpdfhwj;
}
public Integer getDzjyyzt() {
return dzjyyzt;
}
public void setDzjyyzt(Integer dzjyyzt) {
this.dzjyyzt = dzjyyzt;
}
public Integer getFwjyyzt() {
return fwjyyzt;
}
public void setFwjyyzt(Integer fwjyyzt) {
this.fwjyyzt = fwjyyzt;
}
public Integer getYyfs() {
return yyfs;
}
public void setYyfs(Integer yyfs) {
this.yyfs = yyfs;
}
public Integer getDzyyfs() {
return dzyyfs;
}
public void setDzyyfs(Integer dzyyfs) {
this.dzyyfs = dzyyfs;
}
public Integer getDsmdy() {
return dsmdy;
}
public void setDsmdy(Integer dsmdy) {
this.dsmdy = dsmdy;
}
public String getFwdyfs() {
return fwdyfs;
}
public void setFwdyfs(String fwdyfs) {
this.fwdyfs = fwdyfs;
}
public String getWlyyfs() {
return wlyyfs;
}
public void setWlyyfs(String wlyyfs) {
this.wlyyfs = wlyyfs;
}
public String getQrdzyy() {
return qrdzyy;
}
public void setQrdzyy(String qrdzyy) {
this.qrdzyy = qrdzyy;
}
public String getYyid() {
return yyid;
}
public void setYyid(String yyid) {
this.yyid = yyid;
}
public String getYyfswb() {
return yyfswb;
}
public void setYyfswb(String yyfswb) {
this.yyfswb = yyfswb;
}
public String getWfqssj() {
return wfqssj;
}
public void setWfqssj(String wfqssj) {
this.wfqssj = wfqssj;
}
public String getSfqssj() {
return sfqssj;
}
public void setSfqssj(String sfqssj) {
this.sfqssj = sfqssj;
}
public Integer getQszt() {
return qszt;
}
public void setQszt(Integer qszt) {
this.qszt = qszt;
}
public String getYyqksm() {
return yyqksm;
}
public void setYyqksm(String yyqksm) {
this.yyqksm = yyqksm;
}
public String getYqxdyr() {
return yqxdyr;
}
public void setYqxdyr(String yqxdyr) {
this.yqxdyr = yqxdyr;
}
public String getDsf() {
return dsf;
}
public void setDsf(String dsf) {
this.dsf = dsf;
}
}

@ -0,0 +1,63 @@
package com.engine.htxc.contract.entity;
public class UfHtqcDt4 {
private Integer id;
private Integer mainid;
private String sl;
private String bhsje;
private String jshjje;
private String htslz;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getMainid() {
return mainid;
}
public void setMainid(Integer mainid) {
this.mainid = mainid;
}
public String getSl() {
return sl;
}
public void setSl(String sl) {
this.sl = sl;
}
public String getBhsje() {
return bhsje;
}
public void setBhsje(String bhsje) {
this.bhsje = bhsje;
}
public String getJshjje() {
return jshjje;
}
public void setJshjje(String jshjje) {
this.jshjje = jshjje;
}
public String getHtslz() {
return htslz;
}
public void setHtslz(String htslz) {
this.htslz = htslz;
}
}

@ -0,0 +1,742 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:26
* @Description:
* @ModifyLog:
**/
public class UfOtcdertra {
private Integer id;
private Integer requestid;
private String htlx;
private Integer sfsymbfb;
private String xzfb;
private String htmc;
private String sfwdsf;
private Integer bmdj;
private Integer sfsw;
private Integer htjexz;
private String htzje;
private Integer bz;
private String htjedx;
private Integer zhrmb;
private Integer sflx;
private Integer sffs;
private Integer sfxjwfk;
private String cgfwxxxx;
private String wdsfyy;
private Integer zt;
private String htbh;
private String bhsje;
private String syyhsxm;
private String wsymbyy;
private Integer htzwbj;
private Integer htxz;
private Integer htslz;
private Integer qcbm;
private Integer qcjg;
private Integer dqbb;
private String htzw;
private String htzwfzzd;
private String htfj;
private String htfjfzzd;
private String beizhu;
private String htzwdzyyj;
private String htfjdzyyj;
private String fhtlx;
private String zscqgs;
private String fid;
private String bgjlbd;
private Integer fpxz;
private String sh;
private String htlxwb;
private Integer bzhlz;
private Integer htsplcrequestid;
private Integer jshjje;
private Integer jsbz;
private String sfktj;
private String qcrq;
private Integer yyjgdzt;
private String cgxgbm;
private String yyjdbs;
private String cyyz;
private Integer formmodeid;
private Integer modedatacreater;
private Integer modedatacreatertype;
private String modedatacreatedate;
private String modedatacreatetime;
private Integer modedatamodifier;
private String modedatamodifydatetime;
private String modeuuid;
private Integer qcr;
private String syscode;
private String modulecode;
private String htxgcp;
private Integer gdlx;
private Integer yspfl;
private String htdsf;
private String htspr;
private String glht;
private String yz;
private Integer autosealflag;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getRequestid() {
return requestid;
}
public void setRequestid(Integer requestid) {
this.requestid = requestid;
}
public String getHtlx() {
return htlx;
}
public void setHtlx(String htlx) {
this.htlx = htlx;
}
public Integer getSfsymbfb() {
return sfsymbfb;
}
public void setSfsymbfb(Integer sfsymbfb) {
this.sfsymbfb = sfsymbfb;
}
public String getXzfb() {
return xzfb;
}
public void setXzfb(String xzfb) {
this.xzfb = xzfb;
}
public String getHtmc() {
return htmc;
}
public void setHtmc(String htmc) {
this.htmc = htmc;
}
public String getSfwdsf() {
return sfwdsf;
}
public void setSfwdsf(String sfwdsf) {
this.sfwdsf = sfwdsf;
}
public Integer getBmdj() {
return bmdj;
}
public void setBmdj(Integer bmdj) {
this.bmdj = bmdj;
}
public Integer getSfsw() {
return sfsw;
}
public void setSfsw(Integer sfsw) {
this.sfsw = sfsw;
}
public Integer getHtjexz() {
return htjexz;
}
public void setHtjexz(Integer htjexz) {
this.htjexz = htjexz;
}
public String getHtzje() {
return htzje;
}
public void setHtzje(String htzje) {
this.htzje = htzje;
}
public Integer getBz() {
return bz;
}
public void setBz(Integer bz) {
this.bz = bz;
}
public String getHtjedx() {
return htjedx;
}
public void setHtjedx(String htjedx) {
this.htjedx = htjedx;
}
public Integer getZhrmb() {
return zhrmb;
}
public void setZhrmb(Integer zhrmb) {
this.zhrmb = zhrmb;
}
public Integer getSflx() {
return sflx;
}
public void setSflx(Integer sflx) {
this.sflx = sflx;
}
public Integer getSffs() {
return sffs;
}
public void setSffs(Integer sffs) {
this.sffs = sffs;
}
public Integer getSfxjwfk() {
return sfxjwfk;
}
public void setSfxjwfk(Integer sfxjwfk) {
this.sfxjwfk = sfxjwfk;
}
public String getCgfwxxxx() {
return cgfwxxxx;
}
public void setCgfwxxxx(String cgfwxxxx) {
this.cgfwxxxx = cgfwxxxx;
}
public String getWdsfyy() {
return wdsfyy;
}
public void setWdsfyy(String wdsfyy) {
this.wdsfyy = wdsfyy;
}
public Integer getZt() {
return zt;
}
public void setZt(Integer zt) {
this.zt = zt;
}
public String getHtbh() {
return htbh;
}
public void setHtbh(String htbh) {
this.htbh = htbh;
}
public String getBhsje() {
return bhsje;
}
public void setBhsje(String bhsje) {
this.bhsje = bhsje;
}
public String getSyyhsxm() {
return syyhsxm;
}
public void setSyyhsxm(String syyhsxm) {
this.syyhsxm = syyhsxm;
}
public String getWsymbyy() {
return wsymbyy;
}
public void setWsymbyy(String wsymbyy) {
this.wsymbyy = wsymbyy;
}
public Integer getHtzwbj() {
return htzwbj;
}
public void setHtzwbj(Integer htzwbj) {
this.htzwbj = htzwbj;
}
public Integer getHtxz() {
return htxz;
}
public void setHtxz(Integer htxz) {
this.htxz = htxz;
}
public Integer getHtslz() {
return htslz;
}
public void setHtslz(Integer htslz) {
this.htslz = htslz;
}
public Integer getQcbm() {
return qcbm;
}
public void setQcbm(Integer qcbm) {
this.qcbm = qcbm;
}
public Integer getQcjg() {
return qcjg;
}
public void setQcjg(Integer qcjg) {
this.qcjg = qcjg;
}
public Integer getDqbb() {
return dqbb;
}
public void setDqbb(Integer dqbb) {
this.dqbb = dqbb;
}
public String getHtzw() {
return htzw;
}
public void setHtzw(String htzw) {
this.htzw = htzw;
}
public String getHtzwfzzd() {
return htzwfzzd;
}
public void setHtzwfzzd(String htzwfzzd) {
this.htzwfzzd = htzwfzzd;
}
public String getHtfj() {
return htfj;
}
public void setHtfj(String htfj) {
this.htfj = htfj;
}
public String getHtfjfzzd() {
return htfjfzzd;
}
public void setHtfjfzzd(String htfjfzzd) {
this.htfjfzzd = htfjfzzd;
}
public String getBeizhu() {
return beizhu;
}
public void setBeizhu(String beizhu) {
this.beizhu = beizhu;
}
public String getHtzwdzyyj() {
return htzwdzyyj;
}
public void setHtzwdzyyj(String htzwdzyyj) {
this.htzwdzyyj = htzwdzyyj;
}
public String getHtfjdzyyj() {
return htfjdzyyj;
}
public void setHtfjdzyyj(String htfjdzyyj) {
this.htfjdzyyj = htfjdzyyj;
}
public String getFhtlx() {
return fhtlx;
}
public void setFhtlx(String fhtlx) {
this.fhtlx = fhtlx;
}
public String getZscqgs() {
return zscqgs;
}
public void setZscqgs(String zscqgs) {
this.zscqgs = zscqgs;
}
public String getFid() {
return fid;
}
public void setFid(String fid) {
this.fid = fid;
}
public String getBgjlbd() {
return bgjlbd;
}
public void setBgjlbd(String bgjlbd) {
this.bgjlbd = bgjlbd;
}
public Integer getFpxz() {
return fpxz;
}
public void setFpxz(Integer fpxz) {
this.fpxz = fpxz;
}
public String getSh() {
return sh;
}
public void setSh(String sh) {
this.sh = sh;
}
public String getHtlxwb() {
return htlxwb;
}
public void setHtlxwb(String htlxwb) {
this.htlxwb = htlxwb;
}
public Integer getBzhlz() {
return bzhlz;
}
public void setBzhlz(Integer bzhlz) {
this.bzhlz = bzhlz;
}
public Integer getHtsplcrequestid() {
return htsplcrequestid;
}
public void setHtsplcrequestid(Integer htsplcrequestid) {
this.htsplcrequestid = htsplcrequestid;
}
public Integer getJshjje() {
return jshjje;
}
public void setJshjje(Integer jshjje) {
this.jshjje = jshjje;
}
public Integer getJsbz() {
return jsbz;
}
public void setJsbz(Integer jsbz) {
this.jsbz = jsbz;
}
public String getSfktj() {
return sfktj;
}
public void setSfktj(String sfktj) {
this.sfktj = sfktj;
}
public String getQcrq() {
return qcrq;
}
public void setQcrq(String qcrq) {
this.qcrq = qcrq;
}
public Integer getYyjgdzt() {
return yyjgdzt;
}
public void setYyjgdzt(Integer yyjgdzt) {
this.yyjgdzt = yyjgdzt;
}
public String getCgxgbm() {
return cgxgbm;
}
public void setCgxgbm(String cgxgbm) {
this.cgxgbm = cgxgbm;
}
public String getYyjdbs() {
return yyjdbs;
}
public void setYyjdbs(String yyjdbs) {
this.yyjdbs = yyjdbs;
}
public String getCyyz() {
return cyyz;
}
public void setCyyz(String cyyz) {
this.cyyz = cyyz;
}
public Integer getFormmodeid() {
return formmodeid;
}
public void setFormmodeid(Integer formmodeid) {
this.formmodeid = formmodeid;
}
public Integer getModedatacreater() {
return modedatacreater;
}
public void setModedatacreater(Integer modedatacreater) {
this.modedatacreater = modedatacreater;
}
public Integer getModedatacreatertype() {
return modedatacreatertype;
}
public void setModedatacreatertype(Integer modedatacreatertype) {
this.modedatacreatertype = modedatacreatertype;
}
public String getModedatacreatedate() {
return modedatacreatedate;
}
public void setModedatacreatedate(String modedatacreatedate) {
this.modedatacreatedate = modedatacreatedate;
}
public String getModedatacreatetime() {
return modedatacreatetime;
}
public void setModedatacreatetime(String modedatacreatetime) {
this.modedatacreatetime = modedatacreatetime;
}
public Integer getModedatamodifier() {
return modedatamodifier;
}
public void setModedatamodifier(Integer modedatamodifier) {
this.modedatamodifier = modedatamodifier;
}
public String getModedatamodifydatetime() {
return modedatamodifydatetime;
}
public void setModedatamodifydatetime(String modedatamodifydatetime) {
this.modedatamodifydatetime = modedatamodifydatetime;
}
public String getModeuuid() {
return modeuuid;
}
public void setModeuuid(String modeuuid) {
this.modeuuid = modeuuid;
}
public Integer getQcr() {
return qcr;
}
public void setQcr(Integer qcr) {
this.qcr = qcr;
}
public String getSyscode() {
return syscode;
}
public void setSyscode(String syscode) {
this.syscode = syscode;
}
public String getModulecode() {
return modulecode;
}
public void setModulecode(String modulecode) {
this.modulecode = modulecode;
}
public String getHtxgcp() {
return htxgcp;
}
public void setHtxgcp(String htxgcp) {
this.htxgcp = htxgcp;
}
public Integer getGdlx() {
return gdlx;
}
public void setGdlx(Integer gdlx) {
this.gdlx = gdlx;
}
public Integer getYspfl() {
return yspfl;
}
public void setYspfl(Integer yspfl) {
this.yspfl = yspfl;
}
public String getHtdsf() {
return htdsf;
}
public void setHtdsf(String htdsf) {
this.htdsf = htdsf;
}
public String getHtspr() {
return htspr;
}
public void setHtspr(String htspr) {
this.htspr = htspr;
}
public String getGlht() {
return glht;
}
public void setGlht(String glht) {
this.glht = glht;
}
public String getYz() {
return yz;
}
public void setYz(String yz) {
this.yz = yz;
}
public Integer getAutosealflag() {
return autosealflag;
}
public void setAutosealflag(Integer autosealflag) {
this.autosealflag = autosealflag;
}
}

@ -0,0 +1,241 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 21:26
* @Description:
* @ModifyLog:
**/
public class UfOtcdertraDt {
private Integer id;
private Integer mainid;
private String wjmc;
private String cz;
private Integer sfyy;
private String scsj;
private String qrwlyy;
private Integer yyzt;
private String yyhwj;
private String zpdfhwj;
private Integer dzjyyzt;
private Integer fwjyyzt;
private Integer yyfs;
private Integer dzyyfs;
private Integer dsmdy;
private String fwdyfs;
private String wlyyfs;
private String qrdzyy;
private String yyid;
private String yyfswb;
private String dsf;
private String yyqksm;
private String yqxdyr;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getMainid() {
return mainid;
}
public void setMainid(Integer mainid) {
this.mainid = mainid;
}
public String getWjmc() {
return wjmc;
}
public void setWjmc(String wjmc) {
this.wjmc = wjmc;
}
public String getCz() {
return cz;
}
public void setCz(String cz) {
this.cz = cz;
}
public Integer getSfyy() {
return sfyy;
}
public void setSfyy(Integer sfyy) {
this.sfyy = sfyy;
}
public String getScsj() {
return scsj;
}
public void setScsj(String scsj) {
this.scsj = scsj;
}
public String getQrwlyy() {
return qrwlyy;
}
public void setQrwlyy(String qrwlyy) {
this.qrwlyy = qrwlyy;
}
public Integer getYyzt() {
return yyzt;
}
public void setYyzt(Integer yyzt) {
this.yyzt = yyzt;
}
public String getYyhwj() {
return yyhwj;
}
public void setYyhwj(String yyhwj) {
this.yyhwj = yyhwj;
}
public String getZpdfhwj() {
return zpdfhwj;
}
public void setZpdfhwj(String zpdfhwj) {
this.zpdfhwj = zpdfhwj;
}
public Integer getDzjyyzt() {
return dzjyyzt;
}
public void setDzjyyzt(Integer dzjyyzt) {
this.dzjyyzt = dzjyyzt;
}
public Integer getFwjyyzt() {
return fwjyyzt;
}
public void setFwjyyzt(Integer fwjyyzt) {
this.fwjyyzt = fwjyyzt;
}
public Integer getYyfs() {
return yyfs;
}
public void setYyfs(Integer yyfs) {
this.yyfs = yyfs;
}
public Integer getDzyyfs() {
return dzyyfs;
}
public void setDzyyfs(Integer dzyyfs) {
this.dzyyfs = dzyyfs;
}
public Integer getDsmdy() {
return dsmdy;
}
public void setDsmdy(Integer dsmdy) {
this.dsmdy = dsmdy;
}
public String getFwdyfs() {
return fwdyfs;
}
public void setFwdyfs(String fwdyfs) {
this.fwdyfs = fwdyfs;
}
public String getWlyyfs() {
return wlyyfs;
}
public void setWlyyfs(String wlyyfs) {
this.wlyyfs = wlyyfs;
}
public String getQrdzyy() {
return qrdzyy;
}
public void setQrdzyy(String qrdzyy) {
this.qrdzyy = qrdzyy;
}
public String getYyid() {
return yyid;
}
public void setYyid(String yyid) {
this.yyid = yyid;
}
public String getYyfswb() {
return yyfswb;
}
public void setYyfswb(String yyfswb) {
this.yyfswb = yyfswb;
}
public String getDsf() {
return dsf;
}
public void setDsf(String dsf) {
this.dsf = dsf;
}
public String getYyqksm() {
return yyqksm;
}
public void setYyqksm(String yyqksm) {
this.yyqksm = yyqksm;
}
public String getYqxdyr() {
return yqxdyr;
}
public void setYqxdyr(String yqxdyr) {
this.yqxdyr = yqxdyr;
}
}

@ -0,0 +1,59 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2316:02
* @Description:
* @ModifyLog:
**/
public class UfProduct {
private Integer id;
private String productid;
private String productname;
private Integer requestid;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getProductid() {
return productid;
}
public void setProductid(String productid) {
this.productid = productid;
}
public String getProductname() {
return productname;
}
public void setProductname(String productname) {
this.productname = productname;
}
public Integer getRequestid() {
return requestid;
}
public void setRequestid(Integer requestid) {
this.requestid = requestid;
}
@Override
public String toString() {
return "UfProduct{" +
"id=" + id +
", productid='" + productid + '\'' +
", productname='" + productname + '\'' +
", requestid=" + requestid +
'}';
}
}

@ -0,0 +1,61 @@
package com.engine.htxc.contract.entity;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2316:31
* @Description:
* @ModifyLog:
**/
public class UfProductCounterParty{
private Integer id;
private Integer requestid;
private String productid;
private String socialcreditcode;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getRequestid() {
return requestid;
}
public void setRequestid(Integer requestid) {
this.requestid = requestid;
}
public String getProductid() {
return productid;
}
public void setProductid(String productid) {
this.productid = productid;
}
public String getSocialcreditcode() {
return socialcreditcode;
}
public void setSocialcreditcode(String socialcreditcode) {
this.socialcreditcode = socialcreditcode;
}
@Override
public String toString() {
return "UfProductCounterParty{" +
"id=" + id +
", requestid=" + requestid +
", productid='" + productid + '\'' +
", socialcreditcode='" + socialcreditcode + '\'' +
'}';
}
}

@ -0,0 +1,26 @@
package com.engine.htxc.contract.entity;
import lombok.Data;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/9/2617:01
* @Description:
* @ModifyLog:
**/
@Data
public class UserEntity {
private String loginid;
private Integer userid;
private String username;
private String telephone;
private String email;
private Integer departmentid;
private String workcode;
private String departmentname;
private String departmentcode;
private String jobCode;
}

@ -0,0 +1,17 @@
package com.engine.htxc.contract.mapper;
import com.engine.htxc.contract.entity.UfDsfgl;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;
import java.util.List;
public interface CounterPartyMapper {
@Select({"<script> ",
"select t.id,dsflx,dsfmc,frxm,frsfzhm,lxdh,email,d.zjhm,dsfbm,d.zjlx from uf_dsfgl t,uf_dsfgl_dt1 d where d.mainid=t.id and d.zjhm in " ,
"<foreach item='item' index='index' collection='items' open='(' separator=',' close=')'>",
"#{item}",
"</foreach>",
"</script>"})
List<UfDsfgl> selectCounterPartyByCertCode(@Param("items") List<String> certCodes);
}

@ -0,0 +1,56 @@
package com.engine.htxc.contract.modeaction;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.contract.service.ContractService;
import com.engine.htxc.contract.service.impl.ContractServiceImpl;
import com.google.common.collect.Maps;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.soa.workflow.request.RequestInfo;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractdoctopdfAction.java
* @createTime 20220729 13:44:00
*/
public class SaveBankInfoToCounterpartyAction extends AbstractModeExpandJavaCodeNew {
private DbTools dbtools=new DbTools();
private ContractService getService() {
return ServiceUtil.getService(ContractServiceImpl.class);
}
@Override
public Map<String, String> doModeExpand(Map<String, Object> param) {
Map<String, String> result = new HashMap<String, String>();
try {
User user = (User)param.get("user");
int billid = -1;//数据id
int modeid = -1;//模块id
RequestInfo requestInfo = (RequestInfo)param.get("RequestInfo");
if(requestInfo!=null){
billid = Util.getIntValue(requestInfo.getRequestid());
modeid = Util.getIntValue(requestInfo.getWorkflowid());
if(billid>0&&modeid>0){
String tableName = dbtools.getFormmodeidToTable(String.valueOf(modeid))+"_dt2";
String sql = "select htdsf,yxzh,khx from "+tableName+" where mainid="+billid;
List<Map<String, Object>> dataList = dbtools.getSqlToList(sql);
Map<String, Object> data = Maps.newHashMap();
data.put("data",dataList);
Map<String,Object> map = getService().saveBankInfoToCounterparty(data);
}
}
} catch (Exception e) {
result.put("errmsg",e.getMessage());
result.put("flag", "false");
}
return result;
}
}

@ -0,0 +1,48 @@
package com.engine.htxc.contract.modeexpand;
import com.engine.htxc.contract.util.RecordChangeVersion;
import org.apache.log4j.Logger;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.soa.workflow.request.RequestInfo;
import java.util.HashMap;
import java.util.Map;
public class RecordcontractCreationVersionExpand extends AbstractModeExpandJavaCodeNew {
/**
*
* @param param
* param()
* user
* importtype () 1 2,3(int)param.get("importtype")
* ()a=1param.get("a")
* b=2,param.get("b")
* @return
*/
public Map<String, String> doModeExpand(Map<String, Object> param) {
Map<String, String> result = new HashMap<String, String>();
try {
Logger.getLogger(this.getClass().getName()).info("扩展接口参数param :"+param);
int billid = -1;//数据id
int modeid = -1;//模块id
RequestInfo requestInfo = (RequestInfo)param.get("RequestInfo");
if(requestInfo!=null){
billid = Util.getIntValue(requestInfo.getRequestid());
modeid = Util.getIntValue(requestInfo.getWorkflowid());
if(billid>0&&modeid>0){
//------请在下面编写业务逻辑代码------
RecordChangeVersion.recordChangeVersion(billid,"uf_htqc");
}
}
} catch (Exception e) {
result.put("errmsg",e.getMessage());
result.put("flag", "false");
}
return result;
}
}

@ -0,0 +1,208 @@
package com.engine.htxc.contract.number.cmd;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.engine.common.biz.AbstractCommonCommand;
import com.engine.common.entity.BizLogContext;
import com.engine.core.interceptor.CommandContext;
import com.engine.htxc.contract.number.config.NumberConfig;
import com.engine.htxc.contract.number.entity.Uf_ContractNoAggr;
import com.engine.htxc.contract.number.entity.Uf_ContractNoAggrUtil;
import com.engine.integration.util.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.htsc.GlobatTools.DBTools;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import java.util.HashMap;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractNumberCmd.java
* @createTime 20220608 14:24:00
*/
public class ContractNumberCmd extends AbstractCommonCommand<Map<String, Object>> {
public ContractNumberCmd(Map<String, Object> params, User user) {
this.params = params;
this.user = user;
}
@Override
public BizLogContext getLogContext() {
return null;
}
@Override
public Map<String, Object> execute(CommandContext commandContext) {
String billid= Util.null2String(this.params.get("billid"));
Map<String,Object> maintable=gethtqcmap(billid);
Map<String,Object> retmap=new HashMap();
if(maintable==null || maintable.size()<=0){
return null;
}
boolean iscreate=false;
String htlx=Util.null2String(maintable.get("htlx"));
String deptid=Util.null2String(this.user.getUserDepartment());
Uf_ContractNoAggr uf_contractNoAggr = Uf_ContractNoAggrUtil.getmodeluf_contractnoaggr(billid);
if(uf_contractNoAggr==null || StringUtils.isBlank(uf_contractNoAggr.getId())){
iscreate=true;
uf_contractNoAggr=new Uf_ContractNoAggr();
}
if(!iscreate){
String modehtlx=Util.null2String(uf_contractNoAggr.getHtlx());
if(modehtlx.equals(htlx)){
retmap.put("data",true);
return retmap;
}
}
NumberConfig numberconfig= (NumberConfig)this.params.get("numberconfig");
String year= DateUtil.format(DateTime.now(),"yyyy");
String month=DateUtil.format(DateTime.now(),"MM");
String day=DateUtil.format(DateTime.now(),"dd");
Map<String,Object> deptmap= getdeptname(deptid);
String deptmark=Util.null2String(deptmap.get("docnumabbreviation"));
Map<String,Object> maxnomap=new HashMap<>();
maxnomap.put("year",year);
maxnomap.put("deptname",deptmark);
maxnomap.put("prefix",numberconfig.prefix);
if(!iscreate && !StringUtils.isBlank(uf_contractNoAggr.getId())){
maxnomap.put("id",uf_contractNoAggr.getId());
}
Integer maxno=getmaxno(maxnomap);
if(maxno<=0){
maxno=numberconfig.firstNo;
}else{
maxno+=1;
}
maxno=numbernofilter(maxno,numberconfig.positionNo);
if(maxno<0){
return null;
}
try {
uf_contractNoAggr.setDay(day);
uf_contractNoAggr.setMonth(month);
uf_contractNoAggr.setYear(year);
uf_contractNoAggr.setZzbh(maxno);
uf_contractNoAggr.setZzjgjc(deptmark);
uf_contractNoAggr.setQz(numberconfig.prefix);
uf_contractNoAggr.setMbid(billid);
uf_contractNoAggr.setHtlx(htlx);
if(StringUtils.isBlank(uf_contractNoAggr.getId())){
uf_contractNoAggr.create();
}else{
uf_contractNoAggr.updata();
}
StringBuilder mark = new StringBuilder(maxno + "");
while (mark.length() < numberconfig.length) {
mark.insert(0, "0");
}
String htlxvalue="";
if(!StringUtils.isBlank(htlx)){
htlxvalue=htlx.split("-").length>1?htlx.split("-")[htlx.split("-").length-1]:"";
}
boolean flag=updatemodel(billid,numberconfig.prefix+deptmark+year+month+day+htlxvalue+mark);
retmap.put("data",flag);
return retmap;
}catch (Exception ex){
}
return null;
}
public boolean updatemodel(String billid,String htbh){
if(StringUtils.isBlank(billid) || StringUtils.isBlank(htbh)){
return false;
}
Map<String,String> setmap=new HashMap<>();
setmap.put("htbh",htbh);
Map<String,String> wheremap=new HashMap<>();
wheremap.put("id",billid);
return JAVATools.Updatesql(setmap,"uf_htqc",wheremap);
}
public Map<String,Object> gethtqcmap(String billid){
if(StringUtils.isBlank(billid)){
return null;
}
String sql="select htlx from uf_htqc where id=?";
return DBTools.getsqltomap(sql,billid);
}
/**
* @title numbernofilter
* @author K1810015
* @updateTime 2022/6/10 9:58
* @Remark
* @throws
*/
public Integer numbernofilter(int numberno,String positionNo){
if((","+positionNo+",").indexOf(","+numberno+",")<0){
return numberno;
}
boolean flag=true;
int sum=0;
while(flag&&sum<10000){
numberno+=1;
if((","+positionNo+",").indexOf(","+numberno+",")<0){
flag =false;
}
}
if(flag){
return -1;
}
return numberno;
}
/**
* @title getmaxno
* @author K1810015
* @updateTime 2022/6/9 15:29
* @Remark
* @throws
*/
public Integer getmaxno(Map<String,Object> map){
String year=Util.null2String(map.get("year"));
String deptname=Util.null2String(map.get("deptname"));
String prefix=Util.null2String(map.get("prefix"));
String id=Util.null2String(map.get("id"));
Map<String,Object> retmap=null;
if(StringUtils.isBlank(id)){
String sql="select max(zzbh) as zzbh from uf_ContractNoAggr where qz=? and year=? and zzjgjc=? ";
retmap=DBTools.getsqltomap(sql,prefix,year,deptname);
}else{
String sql="select zzbh-1 as zzbh from uf_ContractNoAggr where id=?";
retmap=DBTools.getsqltomap(sql,id);
}
if(retmap==null || retmap.size()<=0){
return -1;
}
int maxno =Util.getIntValue(Util.null2String(retmap.get("zzbh")),-1);
return maxno;
}
/**
* @title getdeptname
* @author K1810015
* @updateTime 2022/6/9 15:08
* @Remark
* @throws
*/
public Map<String,Object> getdeptname(String deptid){
RecordSet rs=new RecordSet();
if(StringUtils.isBlank(deptid)){
return null;
}
String sql="select * from hrmdepartmentdefined where 1=1 and deptid=?" ;
return DBTools.getsqltomap(sql,deptid);
}
}

@ -0,0 +1,20 @@
package com.engine.htxc.contract.number.config;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractConfig.java
* @createTime 20220608 14:09:00
*/
public class NumberConfig {
public int length=5;
public String positionNo="";
public int firstNo=1;
public String prefix="";
}

@ -0,0 +1,119 @@
package com.engine.htxc.contract.number.entity;
import weaver.interfaces.htsc.GlobatTools.TableUtils;
/**
* @author K1810015
* @version 1.0.0
* @ClassName Uf_ContractNoAggr.java
* @createTime 20220609 14:43:00
*/
public class Uf_ContractNoAggr extends TableUtils {
public String qz;
public String getQz() {
return qz;
}
public void setQz(String qz) {
this.qz = qz;
}
public String getYear() {
return year;
}
public void setYear(String year) {
this.year = year;
}
public String getMonth() {
return month;
}
public void setMonth(String month) {
this.month = month;
}
public String getDay() {
return day;
}
public void setDay(String day) {
this.day = day;
}
public String getZzjgjc() {
return zzjgjc;
}
public void setZzjgjc(String zzjgjc) {
this.zzjgjc = zzjgjc;
}
public String getHtflbh() {
return htflbh;
}
public void setHtflbh(String htflbh) {
this.htflbh = htflbh;
}
public String year;
public String month;
public String day;
public String zzjgjc;
public String htflbh;
public String getMbid() {
return mbid;
}
public void setMbid(String mbid) {
this.mbid = mbid;
}
public String getHtlx() {
return htlx;
}
public void setHtlx(String htlx) {
this.htlx = htlx;
}
public String mbid;
public String htlx;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String id;
public Integer getZzbh() {
return zzbh;
}
public void setZzbh(Integer zzbh) {
this.zzbh = zzbh;
}
public Integer zzbh;
@Override
public String toString() {
return "Uf_ContractNoAggr{" +
"qz='" + qz + '\'' +
", year='" + year + '\'' +
", month='" + month + '\'' +
", day='" + day + '\'' +
", zzjgjc='" + zzjgjc + '\'' +
", htflbh='" + htflbh + '\'' +
", zzbh='" + zzbh + '\'' +
'}';
}
}

@ -0,0 +1,43 @@
package com.engine.htxc.contract.number.entity;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.interfaces.htsc.GlobatTools.DBTools;
import weaver.interfaces.htsc.GlobatTools.TableUtils;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName Uf_ContractNoAggr.java
* @createTime 20220609 14:43:00
*/
public class Uf_ContractNoAggrUtil extends TableUtils {
public static Uf_ContractNoAggr getmodeluf_contractnoaggr(String modeid){
String sql="select id from Uf_ContractNoAggr where 1=1 and mbid=?";
Map<String,Object> map=DBTools.getsqltomap(sql,modeid);
if(map==null || map.size()<=0){
return null;
}
String id= Util.null2String(map.get("id"));
if(StringUtils.isBlank(id)){
return null;
}
try{
Uf_ContractNoAggr uf_contractNoAggr=(Uf_ContractNoAggr) new Uf_ContractNoAggr().select(id);
if(uf_contractNoAggr==null){
return null;
}
if(StringUtils.isBlank(uf_contractNoAggr.getId())){
return null;
};
return uf_contractNoAggr;
}catch (Exception e){
}
return null;
}
}

@ -0,0 +1,16 @@
package com.engine.htxc.contract.number.service;
import weaver.hrm.User;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractNumberService.java
* @createTime 20220608 14:20:00
*/
public interface ContractNumberService {
public Boolean createNumber(Map<String,Object> map, User user);
}

@ -0,0 +1,94 @@
package com.engine.htxc.contract.number.service.impl;
import com.engine.htsc.seal.web.RedisTools;
import com.engine.htxc.contract.number.cmd.ContractNumberCmd;
import com.engine.htxc.contract.number.config.NumberConfig;
import com.engine.htxc.contract.number.service.ContractNumberService;
import com.engine.core.impl.Service;
import com.engine.integration.util.StringUtils;
import redis.clients.jedis.Jedis;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.htsc.comInfo.PropBean;
import weaver.wechat.util.Utils;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractNumberServiceImpl.java
* @createTime 20220608 14:20:00
*/
public class ContractNumberServiceImpl extends Service implements ContractNumberService {
private PropBean pb=new PropBean();
private BaseBean bs=new BaseBean();
@Override
public Boolean createNumber(Map<String, Object> map, User user) {
if(map==null || map.size()<=0 ){
return false;
}
NumberConfig numberConfig=new NumberConfig();
//先去取外部的变量因素
String firstno= Utils.null2String(pb.getPropName("contract.firstno"));
String positionno= Utils.null2String(pb.getPropName("contract.positionno"));
String prefix=Utils.null2String(pb.getPropName("contract.prefix"));
if(StringUtils.isBlank(prefix)){
return false;
}
numberConfig.prefix=prefix;
if(!StringUtils.isBlank(positionno)){
numberConfig.positionNo=positionno;
}
if(!StringUtils.isBlank(firstno)){
int isum=Util.getIntValue(firstno,-1);
if(isum>0){
numberConfig.firstNo=isum;
}
}
map.put("numberconfig",numberConfig);
//重置配置 config文件
String deptid=Util.null2String(user.getUserDepartment());
// Jedis jedis = RedisTools.GetJedis();
// String rediskey = "dept"+deptid+"_redis_key";
boolean flag=false;
Map<String,Object> retmap= new ContractNumberCmd(map,user).execute(null);
String value="";
if(retmap!=null && retmap.size()>0){
value=Util.null2String(retmap.get("data"));
}
if("true".equals(value)){
flag= true;
}
// try{
// int counts=0;
// int expireTime=Util.getIntValue(Util.null2String(pb.getPropName("RedisExpiretime")));
// boolean redisfalg=RedisTools.TryGetDistributedLock(jedis,rediskey,deptid,expireTime);
// bs.writeLog("redis开始状态:"+redisfalg+",deptid:"+deptid);
// while (redisfalg==false && counts<10) {
// Thread.sleep(500);
// counts++;
// redisfalg=RedisTools.TryGetDistributedLock(jedis,rediskey,deptid,expireTime);
// }
// bs.writeLog("redis结束状态:"+redisfalg+",deptid:"+deptid);
// }catch (Exception e){
// bs.writeLog(rediskey+"保存失败"+e.getMessage());
// }finally {
// bs.writeLog(rediskey+"解锁开始");
// RedisTools.releaseDistributedLock(jedis,rediskey,deptid);
// bs.writeLog(rediskey+"解锁结束");
// bs.writeLog(rediskey+"释放锁开始");
// jedis.close();
// bs.writeLog(rediskey+"释放锁结束");
// }
return flag;
}
}

@ -0,0 +1,8 @@
package com.engine.htxc.contract.service;
import java.util.Map;
public interface ContractListService {
Map<String,Object> deleteData(Map<String,Object> paramMap);
}

@ -0,0 +1,99 @@
package com.engine.htxc.contract.service;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.engine.htxc.contract.dto.ContractProcessDTO;
import com.engine.htxc.contract.dto.ProcessInfoDTO;
import com.engine.htxc.contract.entity.CghtMainEntity;
import weaver.hrm.User;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractService.java
* @createTime 20220701 09:59:00
*/
public interface ContractService {
/**
* <p></p>
* @title getfileinfo
* @author K1810015
* @updateTime 2022/9/5 10:51
*/
public JSONArray getfileinfo(User user,Map<String, Object> map);
/**
* <p></p>
* @title getdocimagefileinfo
* @author K1810015
* @updateTime 2022/9/5 10:52
*/
public JSONArray getdocimagefileinfo(User user,Map<String, Object> map);
/**
* <p></p>
* @title updateStatus
* @author K1810015
* @updateTime 2022/9/5 10:51
*/
public boolean updateStatus(User user,Map<String,Object> map);
public boolean updateContractenType(User user,Map<String,Object> map);
/**
* <p></p>
* @title unLinkMode
* @author K1810015
* @updateTime 2022/9/5 10:51
*/
public String unLinkMode(User user,Map<String,Object> map);
/**
* <p></p>
* @title linkMode
* @author K1810015
* @updateTime 2022/9/5 10:50
*/
public String linkMode(User user,Map<String,Object> map);
/**
* <p></p>
* @title WorkflowNextJudge
* @author K1810015
* @updateTime 2022/8/26 14:37
*/
public String workflowNextJudge(User user,Map<String,Object> map);
public String guidePages(User user,Map<String,Object> map);
/**
* <p></p>
* @title todosealname
* @author K1810015
* @updateTime 2022/9/5 10:47
*/
public String todosealname(User user,Map<String,Object> map);
/**
* 稿
* @param cghtMainEntity
* @return
*/
CghtMainEntity createCghtqc(CghtMainEntity cghtMainEntity);
/**
*
* @param user
* @param contractProcessDTO
* @return
*/
ProcessInfoDTO startContractProcess(User user, ContractProcessDTO contractProcessDTO);
Map<String,Object> saveBankInfoToCounterparty(Map<String,Object> paramMap);
}

@ -0,0 +1,16 @@
package com.engine.htxc.contract.service;
import weaver.hrm.User;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractUpdateWfService.java
* @createTime 20220812 11:31:00
*/
public interface ContractUpdateWfService {
public void updateworkflow(Map<String,Object> map, User user);
}

@ -0,0 +1,21 @@
package com.engine.htxc.contract.service;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractdoctopdfService.java
* @createTime 20220729 13:50:00
*/
public interface ContractdoctopdfService {
/**
* <p>docdpf</p>
* @title doctopdf
* @author K1810015
* @updateTime 2022/7/31 23:15
* @throws
*/
public void doctopdf(Map<String,Object> map);
}

@ -0,0 +1,8 @@
package com.engine.htxc.contract.service;
import java.util.Map;
public interface CounterpartyService {
Map<String,Object> getRoleName(Map<String, Object> map);
}

@ -0,0 +1,23 @@
package com.engine.htxc.contract.service;
import com.engine.htxc.contract.dto.ProductCounterPartyDTO;
import com.engine.htxc.contract.dto.ProductCounterpartyEnum;
import weaver.hrm.User;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2315:15
* @Description:
* @ModifyLog:
**/
public interface ProductCounterpartyService {
/**
*
* @param user
* @param productCounterParty
*/
ProductCounterpartyEnum addProductCounterParty(User user, ProductCounterPartyDTO productCounterParty);
}

@ -0,0 +1,65 @@
package com.engine.htxc.contract.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.contract.service.ContractListService;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
public class ContractListServiceImpl extends Service implements ContractListService {
private DbTools dbtools=new DbTools();
private PropBean pb=new PropBean();
@Override
public Map<String, Object> deleteData(Map<String, Object> paramMap) {
String ids = paramMap.get("ids") == null? "":paramMap.get("ids").toString();
Map<String ,Object> apiData = Maps.newHashMap();
List<String> errorHtbhs = Lists.newArrayList();
apiData.put("code","200");
try {
String sql = "select count(0) num from UF_CONTRACTLIST where zt!=0 and htbh in ("+ids+")";
int num = dbtools.ifExist(sql);
if (num > 0){ //删除的数据中有不是草稿的数据
apiData.put("code","400");
apiData.put("message","只能删除草稿状态的数据");
return apiData;
}
//获得表单id及对应的billid
String billIdSql = "select formidd,bid,htbh from UF_CONTRACTLIST where htbh in ("+ids+")";
List<Map<String, Object>> list = dbtools.getSqlToList(billIdSql);
Map<String, List<Map<String, Object>>> collect = list.stream().collect(Collectors.groupingBy(e -> e.get("formidd").toString()));
collect.entrySet().forEach(e -> {
String formid = e.getKey();
String tableName = dbtools.getFormidToTable(formid);
String billids = "";
String htbh = "";
for (Map<String, Object> map : e.getValue()){
billids = billids + map.get("bid") +",";
htbh = htbh + map.get("htbh")+",";
}
htbh = htbh.substring(0,htbh.length()-1);
billids = billids.substring(0,billids.length()-1);
String deleteSql = "delete from "+tableName+" where id in ("+billids+")";
boolean result = dbtools.execteSql(deleteSql);
if (!result){
errorHtbhs.add(htbh);
}
});
}catch (Exception e){
apiData.put("code","400");
apiData.put("message",e.getMessage());
}
if (errorHtbhs.size() >0){
apiData.put("code","400");
apiData.put("message","删除失败");
apiData.put("errorData",errorHtbhs);
}
return apiData;
}
}

@ -0,0 +1,775 @@
package com.engine.htxc.contract.service.impl;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.engine.common.util.ServiceUtil;
import com.engine.core.impl.Service;
import com.engine.htxc.common.R;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.commonutil.base.BaseUtil;
import com.engine.htxc.commonutil.db.EntityCrudUtil;
import com.engine.htxc.commonutil.fileutil.FileUtil;
import com.engine.htxc.commonutil.log.CustomizeLog;
import com.engine.htxc.contract.cmd.WorkflowNextJudgeCmd;
import com.engine.htxc.contract.dao.CghtDao;
import com.engine.htxc.contract.dao.ContractDao;
import com.engine.htxc.contract.dao.ContractModeDao;
import com.engine.htxc.contract.dto.*;
import com.engine.htxc.contract.entity.*;
import com.engine.htxc.contract.number.entity.Uf_ContractNoAggr;
import com.engine.htxc.contract.service.ContractService;
import static com.engine.htxc.workflow.create.business.contract.init.ContractSignType.Archived;
import com.engine.htxc.contract.util.ContractUtil;
import com.engine.htxc.eseal.service.EsealService;
import com.engine.htxc.eseal.service.impl.EsealServiceImpl;
import com.engine.htxc.workflow.create.autotrigger.contract.service.impl.AutoApprovalServiceImpl;
import com.engine.htxc.workflow.create.autotrigger.contract.vo.AutoApproval;
import com.engine.integration.util.StringUtils;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.conn.RecordSetTrans;
import weaver.docs.docs.DocIdUpdate;
import weaver.docs.docs.DocImageManager;
import weaver.docs.docs.ImageFileIdUpdate;
import weaver.docs.docs.VersionIdUpdate;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.htsc.GlobatTools.DBTools;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractServiceImpl.java
* @createTime 20220701 09:59:00
*/
public class ContractServiceImpl extends Service implements ContractService {
private static final Logger logger= LoggerFactory.getLogger(ContractServiceImpl.class);
public static final int DEFAULT_DOCLANGURAGE = 7;
/**
*
*/
public static final int DEFAULT_MAINCATEGORY = -1;
/**
*
*/
public static final int DEFAULT_SUBCATEGORY = -1;
/**
*
*/
public static final String LKRQSFYTSYQ_DEFAULT = "0";
/**
*
*/
public static final String IS_NOT_ZIP = "0";
public static final int SFXJWFK_NO = 1;
public static final String SFWDSF_DEFAULT = "0";
public static final String BHSJE_DEFAULT = "0.00";
private final DbTools dbtools=new DbTools();
private PropBean pb=new PropBean();
private EsealService esealService=ServiceUtil.getService(EsealServiceImpl.class);
@Override
public JSONArray getfileinfo(User user, Map<String, Object> map) {
String contractmode= Util.null2String(map.get("contractmode"));
if(StringUtils.isBlank(contractmode)){
return null;
}
String sql="select wj as docid,mbmc as filename from uf_wdzx where mbbh in (?)";
List<Map<String,Object>> retlist= DBTools.getsqltolist(sql,contractmode);
if(retlist==null || retlist.size()<=0){
return null;
}
JSONArray jsonArray= new FileUtil().getfilelinfo(user,retlist);
return jsonArray;
}
@Override
public JSONArray getdocimagefileinfo(User user, Map<String, Object> map) {
JSONArray jsonarray=new JSONArray();
String docids= Util.null2String(map.get("docids"));
if(StringUtils.isBlank(docids)){
return jsonarray;
}
jsonarray= new FileUtil().getdocimagefileinfo(user, Arrays.stream(docids.split(",")).collect(Collectors.toList()));
return jsonarray;
}
@Override
public boolean updateStatus(User user, Map<String, Object> map) {
String formid = Util.null2String(map.get("formid"));
String id = Util.null2String(map.get("id"));
if (StringUtils.isBlank(id) || StringUtils.isBlank(formid)) {
return false;
}
Map<String, String> setmap = new HashMap<>(1);
setmap.put("yyjgdzt", Util.null2String(Archived.getValue()));
String tablename = dbtools.getFormmodeidToTable(formid);
if (StringUtils.isBlank(tablename)) {
return false;
}
Map<String, String> wheremap = new HashMap<>(1);
wheremap.put("id", id);
return dbtools.updateSql(tablename, setmap, wheremap);
}
@Override
public boolean updateContractenType(User user, Map<String, Object> map) {
String gdlx = Util.null2String(map.get("gdlx"));
String gdbz = Util.null2String(map.get("gdbz"));
String formid = Util.null2String(map.get("formid"));
String id = Util.null2String(map.get("id"));
if (StringUtils.isBlank(id) || StringUtils.isBlank(formid) || StringUtils.isBlank(gdlx)) {
return false;
}
Map<String, String> setmap = new HashMap<>(1);
setmap.put("gdlx", gdlx);
if (!StringUtils.isBlank(gdbz)) {
setmap.put("gdbz", gdbz);
}
String tablename = dbtools.getFormmodeidToTable(formid);
if (StringUtils.isBlank(tablename)) {
return false;
}
Map<String, String> wheremap = new HashMap<>(1);
wheremap.put("id", id);
return dbtools.updateSql(tablename, setmap, wheremap);
}
@Override
public String linkMode(User user, Map<String, Object> map) {
String requestid=Util.null2String(map.get("requestid"));
if(StringUtils.isBlank(requestid)){
return JSON.toJSONString(R.error("参数有误"));
}
List<Map<String,Object>> detail=dbtools.getRequestidToMapList(requestid,null,4);
if(detail==null && detail.size()<=0){
return JSON.toJSONString(R.error("数据有误"));
}
Map<String,String> setmap=new HashMap<>(2);
setmap.put("htsplcrequestid",requestid);
setmap.put("zt","2");
detail.forEach((item)->{
Map<String,Object> detailmap=(HashMap<String,Object>)item;
String htbh=Util.null2String(detailmap.get("htbh"));
String htbb=Util.null2String(detailmap.get("htbb"));
String htlx=Util.null2String(detailmap.get("htlx"));
if(!StringUtils.isBlank(htbb) && !StringUtils.isBlank(htbh) && !StringUtils.isBlank(htlx)){
//做删除操作
ContractModeDao contractModeDao=new ContractModeDao(htlx,htbh,htbb);
if(!StringUtils.isBlank(contractModeDao.modeid)){
contractModeDao.updateMode(setmap);
}
}
});
return JSON.toJSONString(R.ok("已关联!"));
}
@Override
public String unLinkMode(User user, Map<String, Object> map) {
String requestid=Util.null2String(map.get("requestid"));
if(StringUtils.isBlank(requestid)){
return JSON.toJSONString(R.error("参数有误"));
}
List<Map<String,Object>> detail=dbtools.getRequestidToMapList(requestid,null,4);
if(detail==null && detail.size()<=0){
return JSON.toJSONString(R.error("数据有误"));
}
Map<String,String> setmap=new HashMap<>(2);
setmap.put("htsplcrequestid","");
setmap.put("zt","0");
detail.forEach((item)->{
Map<String,Object> detailmap=(HashMap<String,Object>)item;
String htbh=Util.null2String(detailmap.get("htbh"));
String htbb=Util.null2String(detailmap.get("htbb"));
String htlx=Util.null2String(detailmap.get("htlx"));
if(!StringUtils.isBlank(htbb) && !StringUtils.isBlank(htbh) && !StringUtils.isBlank(htlx)){
//做删除操作
ContractModeDao contractModeDao=new ContractModeDao(htlx,htbh,htbb);
if(contractModeDao!=null){
contractModeDao.updateMode(setmap);
}
}
});
return JSON.toJSONString(R.ok("已删除!"));
}
@Override
public String workflowNextJudge(User user, Map<String, Object> map) {
String requestid=Util.null2String(map.get("requestid"));
if(StringUtils.isBlank(requestid)){
return JSON.toJSONString(R.error("参数有误"));
}
CustomizeLog.printLog("参看参数:"+requestid+"userid"+user.toString());
Map<String,Object> retmap= new WorkflowNextJudgeCmd(map,user).execute(null);
if(retmap==null || retmap.isEmpty()){
return(JSON.toJSONString(R.error("参数有误"))) ;
}
if((boolean)retmap.get("flag")==true){
return JSON.toJSONString( R.ok("true"));
}
return JSON.toJSONString(R.error(Util.null2String(retmap.get("msg"))));
}
@Override
public String guidePages(User user, Map<String, Object> map) {
String htbhs=Util.null2String(map.get("htbhs"));
Map<String,Object> res=new HashMap<>(2);
if(StringUtils.isBlank(htbhs)){
return JSON.toJSONString(R.error("参数有误"));
}
String condition = Arrays.stream(htbhs.split(",")).distinct().map((item)->"\'"+item+"\'").collect(Collectors.joining(","));
String validSql = " select wm_concat_old(distinct htlx) htlx from uf_contractlist where htbh in ("+condition+") ";
String htlx= dbtools.getsqlonevalue(validSql,null);
if(StringUtils.isBlank(htlx)){
return JSON.toJSONString(R.error("查询结果集有误"));
}
Integer count=htlx.split(",").length;
res.put("htlx",htlx);
res.put("count",count);
if(count!=1) {
return JSON.toJSONString( R.ok(res));
}
//查询合同所有附件
List<String> fjlist=new ArrayList<>();
// by wf 添加印章字段、常用印章字段
List<String> ztlist=new ArrayList<>();
List<String> yzlist=new ArrayList<>();
List<String> cyyzlist=new ArrayList<>();
String configSql = " select a.jmbd maintable,b.jmbd dttable,fjzd from uf_htspckhtqcpzb a, uf_htspckhtqcpzb_dt1 b " +
" where a.id=b.mainid and htfl='"+htlx+"'";
List configlist=dbtools.getSqlToList(configSql,null);
if(configlist==null &&configlist.size()<=0){
//查询结果
return JSON.toJSONString(R.error("配置文件有误"));
}
configlist.forEach((item)->{
Map<String,Object> configmap=(HashMap<String,Object>)item;
String maintable = Util.null2String(configmap.get("maintable"));
String dttable = Util.null2String(configmap.get("dttable"));
String fjzd = Util.null2String(configmap.get("fjzd"));
String fjSql = " select wm_concat_old("+fjzd+") as "+fjzd+" from "+maintable+" a,"+dttable+" b where a.id=b.mainid and htbh in("+condition+")";
String filevalue= dbtools.getsqlonevalue(fjSql);
if(!StringUtils.isBlank(filevalue)){
fjlist.add(Arrays.stream(filevalue.split(",")).distinct().collect(Collectors.joining(",")));
}
String yzSql = " select yz,cyyz,zt from "+maintable+" where htbh in("+condition+")";
List<Map<String,Object>> signlist= dbtools.getSqlToList(yzSql);
if (signlist!=null &&signlist.size()>0) {
signlist.forEach((signmap)->{
yzlist.add(Util.null2String(signmap.get("yz")));
cyyzlist.add(Util.null2String(signmap.get("cyyz")));
ztlist.add(Util.null2String(signmap.get("zt")));
});
}
});
boolean flag= true;
if(!ztlist.isEmpty()){
flag= ztlist.stream().allMatch(item->(",0,6,").indexOf(","+item+",")>=0);
}
res.put("flag",flag);
res.put("htfj",fjlist.stream().distinct().collect(Collectors.joining(",")));
res.put("yz", Arrays.stream(yzlist.stream().collect(Collectors.joining(",")).split(",")).distinct().collect(Collectors.joining(",")) );
res.put("cyyz",Arrays.stream(cyyzlist.stream().collect(Collectors.joining(",")).split(",")).distinct().collect(Collectors.joining(",")));
return JSON.toJSONString( R.ok(res));
}
@Override
public String todosealname(User user, Map<String, Object> map){
String htlx=Util.null2String(map.get("htlx"));
String htbh=Util.null2String(map.get("htbh"));
String tablename= ContractUtil.getContractTableName(htlx);
if(StringUtils.isBlank(tablename)){
return JSON.toJSONString(R.error("参数有误"));
}
String signcount= ContractDao.getSealCount(tablename,htbh);
if(StringUtils.isBlank(signcount)){
return JSON.toJSONString(R.error("查询数据有误"));
}
Map<String,Object> esealwhere=new HashMap<>(1);
esealwhere.put("sealno",signcount);
List<Map<String,Object>> list= esealService.getSealNoToName(esealwhere,user);
Map<String,Object> retlist=new HashMap<>(1);
retlist.put("data",list);
return JSON.toJSONString(R.ok(retlist));
}
@Override
public CghtMainEntity createCghtqc(CghtMainEntity cghtMainEntity) {
//类型加前缀
cghtMainEntity.setHtlx(addCategoryPrefix(pb, cghtMainEntity.getHtlx()));
//生成合同编号
Uf_ContractNoAggr contractNo = getContractNoObj(cghtMainEntity.getQcbm(),cghtMainEntity.getHtlx());
final String htbh = genContractNo(contractNo);
logger.info("合同编号:[{}]",htbh);
cghtMainEntity.setHtbh(htbh);
//插入采购合同起草主表 明细表
CghtDao.insertCghtqcMain(contractNo,cghtMainEntity);
return cghtMainEntity;
}
@Override
public ProcessInfoDTO startContractProcess(final User user, ContractProcessDTO contractProcessDTO) {
final List<ContractDetailDTO> contractList = contractProcessDTO.getContractList();
if(null==contractList||contractList.isEmpty()){
logger.error("合同详情为空");
return null;
}
logger.info("创建合同数:[{}]",contractList.size());
final Map<String, String> userInfoMap = ContractDao.getUserByWorkcodeAndDeptCode(contractProcessDTO.getUserCode(), contractProcessDTO.getUserDeptCode());
RecordSetTrans rst=new RecordSetTrans();
rst.setAutoCommit(false);
try {
//拟搞人信息
//保存合同详情
List<String> contractCodeList=saveContractDetailList(user, contractProcessDTO, userInfoMap, contractList, rst);
//发起流程
logger.info("合同数据草稿创建完成,发起流程");
final int requestId = startProcess(contractProcessDTO, userInfoMap, contractCodeList);
logger.info("合同创建处理结束流程requestId[{}]",requestId);
if(requestId<0){
throw new RuntimeException("发起流程失败");
}
final ProcessInfoDTO processInfoDTO = new ProcessInfoDTO();
processInfoDTO.setRequestId(String.valueOf(requestId));
processInfoDTO.setWorkflowNo(String.join(",", contractCodeList));
rst.commit();
logger.info("流程发起成功合同数据已commit");
return processInfoDTO;
} catch (Exception e) {
logger.error("发起流程出错,数据回滚",e);
rst.rollback();
}finally {
rst.setAutoCommit(true);
}
return null;
}
private List<String> saveContractDetailList(User user, ContractProcessDTO contractProcessDTO, Map<String, String> userInfoMap, List<ContractDetailDTO> contractList, RecordSetTrans rst) throws Exception {
//收集合同编号
List<String> contractCodeList=new ArrayList<>();
for (ContractDetailDTO contractDetailDTO : contractList) {
//主表数据
//插入合同主表数据
logger.info("创建合同主表数据:[{}]",contractDetailDTO.getContractName());
final UfOtcdertra contractMain = setContractMainData(contractProcessDTO, userInfoMap, contractDetailDTO, pb);
//生成合同编号
Uf_ContractNoAggr contractNo = getContractNoObj(Integer.valueOf(userInfoMap.get("DEPARTMENTID")),contractMain.getHtlx());
final String htbh = genContractNo(contractNo);
logger.info("生成合同编号:[{}]",htbh);
//收集合同编号
contractCodeList.add(htbh);
contractMain.setHtbh(htbh);
//保存合同数据
EntityCrudUtil.transInsert(rst,"uf_otcdertra",contractMain,UfOtcdertra.class);
//查询合同id
final int dataId = ContractDao.getDataIdByUuid(rst,contractMain.getModeuuid());
contractMain.setId(dataId);
//关联合同编号记录
contractNo.setMbid(Util.null2String(dataId));
//插入合同编号组合
EntityCrudUtil.transInsert(rst,"uf_contractnoaggr",contractNo,Uf_ContractNoAggr.class);
//插入正文文件信息 UF_OTCDERTRA_DT1
logger.info("创建合同正文数:[{}]",contractDetailDTO.getMainFileList().size());
final List<String> mainfileids = createAttachFiles(user, rst, contractDetailDTO, contractMain, "uf_otcdertra_dt1");
//保存合同正文id 到主表
contractMain.setHtzw(String.join(",",mainfileids));
//插入附件文件信息 UF_OTCDERTRA_DT3 附件可以为空
if(null!=contractDetailDTO.getAttachedFileList()){
logger.info("创建合同附件数:[{}]",contractDetailDTO.getAttachedFileList().size());
final List<String> attachFiles = createAttachFiles(user, rst, contractDetailDTO, contractMain, "uf_otcdertra_dt3");
//保存合同附件id 到主表
contractMain.setHtfj(String.join(",",attachFiles));
}
//更新主表正文和附件字段
ContractDao.updateUfOtcdertraFiles(rst, contractMain);
logger.info("权限重构:[{}]",dataId);
//权限重构
modeRight(contractMain);
}
return contractCodeList;
}
private void modeRight(UfOtcdertra contractMain) {
ModeRightInfo modeRightInfo = new ModeRightInfo();
modeRightInfo.setNewRight(true);
modeRightInfo.editModeDataShare(contractMain.getQcr(), contractMain.getFormmodeid(), contractMain.getId());
}
private List<String> createAttachFiles(User user, RecordSetTrans rst, ContractDetailDTO contractDetailDTO, UfOtcdertra contractMain, String tableName) throws Exception {
List<String> fileIds=new ArrayList<>();
for (ContractFileDTO contractFileDTO : contractDetailDTO.getMainFileList()) {
logger.info("合同文件名称:[{}]",contractFileDTO.getFileName());
//插入docdetail
final Docdetail docdetail = insertDocDetail(rst, contractFileDTO);
fileIds.add(String.valueOf(docdetail.getId()));
//插入imagefile
final ImagefileEntity imagefile = insertImagefile(rst, contractFileDTO);
//插入docimagefile
insertDocImagefile(user, rst, contractFileDTO, docdetail, imagefile);
insertUfOtcdertraDt(rst, contractMain, tableName, contractFileDTO, docdetail);
}
return fileIds;
}
private void insertUfOtcdertraDt(RecordSetTrans rst, UfOtcdertra contractMain, String tableName, ContractFileDTO contractFileDTO, Docdetail docdetail) throws Exception {
final UfOtcdertraDt attachFileEnty = new UfOtcdertraDt();
attachFileEnty.setMainid(contractMain.getId());
//wjmc 文件名称
attachFileEnty.setWjmc(String.valueOf(docdetail.getId()));
//yyfs 用印方式
attachFileEnty.setYyfs(SealMethodEnum.valueOf(contractFileDTO.getSealMethod()).ordinal());
//dzyyfs 电子用印方式
attachFileEnty.setDzyyfs(EsealMethodEnum.valueOf(contractFileDTO.getEsealMethod()).ordinal());
//dsmdy 单双面打印
attachFileEnty.setDsmdy(PrintSideEnum.valueOf(contractFileDTO.getPrintBothSide()).ordinal());
//fwdyfs/wlyyfs "防伪打印份数/
//物理用印份数"
attachFileEnty.setFwdyfs(Util.null2String(contractFileDTO.getPrintCount()));
attachFileEnty.setWlyyfs(Util.null2String(contractFileDTO.getPrintCount()));
//用印状态默认0
attachFileEnty.setYyzt(0);
EntityCrudUtil.transInsert(rst, tableName,attachFileEnty,UfOtcdertraDt.class);
}
//文档索引不可回滚
private Docdetail insertDocDetail(RecordSetTrans rst, ContractFileDTO contractFileDTO) throws Exception {
//插入docdetail
final Docdetail docdetail = new Docdetail();
docdetail.setDocsubject(contractFileDTO.getFileName());
docdetail.setDocextendname(contractFileDTO.getSuffix());
docdetail.setDoclangurage(DEFAULT_DOCLANGURAGE);
docdetail.setMaincategory(DEFAULT_MAINCATEGORY);
final PropBean propBean = new PropBean();
docdetail.setSeccategory(Integer.valueOf(propBean.getPropName("contract.jc.seccategory")));
docdetail.setSubcategory(DEFAULT_SUBCATEGORY);
int docId = new DocIdUpdate().getDocNewId();
if (docId<0) {
logger.error("获取 Docdetail id失败");
throw new RuntimeException("获取 Docdetail id失败");
}
docdetail.setId(docId);
logger.info("Docdetail id:[{}]",docdetail.getId());
EntityCrudUtil.transInsert(rst,"docdetail",docdetail,Docdetail.class);
return docdetail;
}
private void insertDocImagefile(User user, RecordSetTrans rst, ContractFileDTO contractFileDTO, Docdetail docdetail, ImagefileEntity imagefile) throws Exception {
Docimagefile docimagefile=new Docimagefile();
docimagefile.setDocid(docdetail.getId());
docimagefile.setImagefileid(imagefile.getImagefileid());
docimagefile.setImagefilename(contractFileDTO.getFileName());
docimagefile.setIsextfile("1");
final LocalDateTime now = LocalDateTime.now();
docimagefile.setOperatedate(now.format(DateTimeFormatter.ISO_LOCAL_DATE));
docimagefile.setOperatetime(now.format(DateTimeFormatter.ofPattern("HH:mm:ss")));
docimagefile.setOperateuserid(user.getUID());
final DocImageManager docImageManager = new DocImageManager();
int docimageId = docImageManager.getNextDocImageFileId();
if(docimageId<0){
throw new RuntimeException("获取 Docimagefile id 失败");
}
docimagefile.setId(docimageId);
logger.info("Docimagefile id:[{}]",docimagefile.getId());
int versionId = new VersionIdUpdate().getVersionNewId();
docimagefile.setVersionid(versionId);
logger.info("Docimagefile versionid:[{}]",docimagefile.getId());
EntityCrudUtil.transInsert(rst,"DocImageFile",docimagefile,Docimagefile.class);
}
private ImagefileEntity insertImagefile(RecordSetTrans rst, ContractFileDTO contractFileDTO) throws Exception {
final ImagefileEntity imagefile = new ImagefileEntity();
int imagefileId=new ImageFileIdUpdate().getImageFileNewId();
if(imagefileId<0){
throw new RuntimeException("获取imagefileId失败");
}
logger.info("imagefile id:[{}]",imagefileId);
imagefile.setImagefileid(imagefileId);
imagefile.setImagefilename(contractFileDTO.getFileName());
imagefile.setFileid(contractFileDTO.getFileId());
imagefile.setImagefiletype("application/octet-stream");
imagefile.setIszip(IS_NOT_ZIP);
EntityCrudUtil.transInsert(rst,"imagefile",imagefile, ImagefileEntity.class);
return imagefile;
}
/**
*
* @param contractProcessDTO
* @param userInfo
* @param contractDetailDTO
* @param pb
* @return
*/
private UfOtcdertra setContractMainData(ContractProcessDTO contractProcessDTO, Map<String,String> userInfo, ContractDetailDTO contractDetailDTO, PropBean pb) {
//建模主表
final UfOtcdertra contractMain = EntityCrudUtil.createModeBaseAttributes("uf_otcdertra", UfOtcdertra.class);
//设置默认值
//币种bz默认=0 人民币
contractMain.setBz(CurrencyEnum.CNY.ordinal());
//不含税金额 bhsje 默认=0.00
contractMain.setBhsje(BHSJE_DEFAULT);
//向境外收付款sfxjwfk默认=1
contractMain.setSfxjwfk(SFXJWFK_NO);
//无明确对手方sfwdsf 默认=0
contractMain.setSfwdsf(SFWDSF_DEFAULT);
contractMain.setModedatacreater(Integer.valueOf(userInfo.get("USERID")));
//htmc 合同名称
contractMain.setHtmc(contractDetailDTO.getContractName());
//htdsf 合同对手方
final List<CounterPartyDTO> counterPartyList = contractDetailDTO.getCounterPartyList();
final List<String> idCardList = counterPartyList.stream().map(CounterPartyDTO::getCertNo).collect(Collectors.toList());
final List<String> codeList = ContractDao.selectCounterPartyByCertCode(idCardList);
contractMain.setHtdsf(String.join(",", codeList));
//bmdj 保密等级
contractMain.setBmdj(SecretLevelEnum.NORMAL_BUSINESS_SECRET.ordinal());
//htlx 合同类型
if(StringUtils.isBlank(contractProcessDTO.getContractCategoryId())){
contractMain.setHtlx(pb.getPropName("contract.jc.categoryId"));
}else{
contractMain.setHtlx(addCategoryPrefix(pb, contractProcessDTO.getContractCategoryId()));
}
//qcbm 起草部门
contractMain.setQcbm(Integer.valueOf(userInfo.get("DEPARTMENTID")));
//qcr 起草人
contractMain.setQcr(Integer.valueOf(userInfo.get("USERID")));
//qcrq 起草日期
contractMain.setQcrq(LocalDateTime.now().format(DateTimeFormatter.ISO_LOCAL_DATE));
//htjexz 合同金额性质
contractMain.setHtjexz(AmountTypeEnum.NO_AMOUNT.ordinal());
//sfsw 是否涉外
contractMain.setSfsw(ConcerningForeignEnum.NO_CONCERNING_FOREIGN.ordinal());
//htxz 合同性质
contractMain.setHtxz(ContractNatureEnum.MAIN_CONTRACT.ordinal());
//beizhu 备注
contractMain.setBeizhu(contractDetailDTO.getContractComment());
//yz 印章
//查询印章是否存在
contractMain.setYz(String.join(",", contractDetailDTO.getSeals()));
//sfsymbfb 是否使用模板范本
final String textSource = contractDetailDTO.getTextSource();
if(TextSourceEnum.LOCAL.name().equals(textSource)){
contractMain.setSfsymbfb(UseTextEnum.NO_TEXT.ordinal());
}else{
contractMain.setSfsymbfb(UseTextEnum.USE_TEXT.ordinal());
}
//wsymbyy 未使用模板原因
contractMain.setWsymbyy(contractDetailDTO.getUnusedTextReason());
//dqbb 当前版本
contractMain.setDqbb(Util.getIntValue(pb.getPropName("contract.currentVersion"),1));
//zt 合同状态
contractMain.setZt(ContractStatusEnum.DRAFT.ordinal());
//autoSealFlag 字段用印
contractMain.setAutosealflag(contractProcessDTO.getAutoSealFlag()?1:0);
return contractMain;
}
private String genContractNo(Uf_ContractNoAggr contractNo) {
return contractNo.getQz()+ contractNo.getZzjgjc()+ contractNo.getYear()+ contractNo.getMonth()+ contractNo.getDay()+String.format("%05d", contractNo.getZzbh());
}
/**
*
* @param deptId
* @param htlx
* @return
*/
private Uf_ContractNoAggr getContractNoObj(int deptId,String htlx) {
final String deptAbbr = ContractDao.getDeptAbbrByDeptId(deptId);
final DateTime now = DateTime.now();
String year= DateUtil.format(now,"yyyy");
String month=DateUtil.format(now,"MM");
String day=DateUtil.format(now,"dd");
final String prefix = pb.getPropName("contract.prefix");
final int zzbh = ContractDao.getMaxNum(deptAbbr, year, prefix);
Uf_ContractNoAggr contractNo=new Uf_ContractNoAggr();
contractNo.setDay(day);
contractNo.setMonth(month);
contractNo.setYear(year);
contractNo.setZzbh(zzbh);
contractNo.setZzjgjc(deptAbbr);
contractNo.setQz(prefix);
contractNo.setHtlx(htlx);
return contractNo;
}
/**
*
*
* {
* "requestnam": "流程标题",
* "creatorid": "拟稿人",
* "szbm": "所在部门",
* "szjg": "所在机构",
* "jjcd": "缓急程度",
* "lxfs": "联系方式",
* "ngrq": "拟稿时间",
* "nbsh": "内部审核",
* "bmld": "部门领导",
* "sqjh": "授权简化",
* "qttzyddx": "通知阅读对象",
* "shfs": "审核方式:默认0",
* "lkrqsfytsyq": "落款日期是否有特殊要求 = 否",
* "xzhtlb": "选择合同列表,DAS创建建模表成功后存合同编码",
* "yz": "印章"
* }
* @param contractProcessDTO
* @param contractCodeList
* @return
*/
private int startProcess(ContractProcessDTO contractProcessDTO, Map<String,String> userInfo, List<String> contractCodeList) {
Set<String> sealSet=new HashSet<>();
contractProcessDTO.getContractList().forEach(contractDetailDTO -> sealSet.addAll(contractDetailDTO.getSeals()));
AutoApproval autoApproval=new AutoApproval();
autoApproval.setCreatorid(userInfo.get("USERID"));
autoApproval.setRequestname(contractProcessDTO.getProcessTitle());
autoApproval.setSzbm(userInfo.get("DEPARTMENTID"));
autoApproval.setSzjg(BaseUtil.getusertoszjg(userInfo.get("USERID")));
//紧急程度默认0
autoApproval.setJjcd(String.valueOf(UrgencyEum.NORMAL.ordinal()));
autoApproval.setLxfs(contractProcessDTO.getTelephone());
autoApproval.setNgrq(LocalDateTime.now().format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm")));
//内部审核
if(contractProcessDTO.getInternalAuditIds()!=null&&!contractProcessDTO.getInternalAuditIds().isEmpty()){
autoApproval.setNbsh(ContractDao.getUsersByWorkcodeAndJobCodeList(contractProcessDTO.getInternalAuditIds()).stream().map(user->Util.null2String(user.getUserid())).collect(Collectors.joining(",")));
}
//部门领导
if(null!=contractProcessDTO.getDeptHeadIds()&&!contractProcessDTO.getDeptHeadIds().isEmpty()){
autoApproval.setBmld(ContractDao.getUsersByWorkcodeAndJobCodeList(contractProcessDTO.getDeptHeadIds()).stream().map(user->Util.null2String(user.getUserid())).collect(Collectors.joining(",")));
}
//授权简化
autoApproval.setSqjh(Util.null2String(AuthoritySimplifyEnum.NO_SIMPLIFY.ordinal()));
//通知阅读
if(null!=contractProcessDTO.getNoticeReaderIds()&&!contractProcessDTO.getNoticeReaderIds().isEmpty()){
autoApproval.setQttzyddx(ContractDao.getUsersByWorkcodeAndJobCodeList(contractProcessDTO.getNoticeReaderIds()).stream().map(user->Util.null2String(user.getUserid())).collect(Collectors.joining(",")));
}
//审核方式 默认1 并发
autoApproval.setShfs(String.valueOf(ApprovalWayEnum.PARALLEL.ordinal()));
//落款日期默认0
autoApproval.setLkrqsfytsyq(LKRQSFYTSYQ_DEFAULT);
autoApproval.setXzhtlb(String.join(",", contractCodeList));
if(StringUtils.isBlank(contractProcessDTO.getContractCategoryId())){
autoApproval.setHtlx(pb.getPropName("contract.jc.categoryId"));
}else{
autoApproval.setHtlx(addCategoryPrefix(pb, contractProcessDTO.getContractCategoryId()));
}
autoApproval.setYz(String.join(",", sealSet));
return ServiceUtil.getService(AutoApprovalServiceImpl.class).create(autoApproval);
}
private String addCategoryPrefix(PropBean pb, String contractCategoryId) {
return pb.getPropName("contract.jc.categoryPrefix") + "_" + contractCategoryId;
}
@Override
public Map<String, Object> saveBankInfoToCounterparty(Map<String, Object> paramMap) {
List<Map<String,Object>> data =(List<Map<String,Object>>)paramMap.get("data");
Map<String ,Object> apiData = Maps.newHashMap();
apiData.put("code","200");
List<String> errorData = Lists.newArrayList();
String sql = "select id from uf_dsfgl where dsfbm=? and scbs!=1 and fid is null";
try {
data.forEach(e -> {
String htdsf = e.get("htdsf") == null?"":e.get("htdsf").toString();
String yhzh = e.get("yxzh") == null?"":e.get("yxzh").toString();
String khh = e.get("khx") == null?"":e.get("khx").toString();
if (!"".equals(htdsf)){
List<Map<String, Object>> idList = dbtools.getSqlToList(sql,htdsf);
if (idList.size() > 0){
String mainid = idList.get(0).get("id").toString();
String ifexistSql = "select count(0) num from uf_dsfgl_dt2 where mainid ="+mainid+" and yxzh="+yhzh;
int num = dbtools.ifExist(ifexistSql);
//当银行账户不存在时不存在时才插入新数据
if (num == 0){
Map<String, String> map = Maps.newHashMap();
map.put("htdsf",htdsf);
map.put("yxzh",yhzh);
map.put("khx",khh);
map.put("mainid",mainid);
boolean result = dbtools.insert("uf_dsfgl_dt2",map);
if (!result){
errorData.add(yhzh);
}
}
}
}
});
}catch (Exception e){
apiData.put("code","400");
apiData.put("message",e.getMessage());
}
if (errorData.size() > 0){
apiData.put("code","400");
apiData.put("message","添加失败");
apiData.put("errorData",errorData);
}
return apiData;
}
}

@ -0,0 +1,97 @@
package com.engine.htxc.contract.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.commonutil.base.BaseUtil;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.contract.service.ContractUpdateWfService;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.util.*;
import java.util.stream.Collectors;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractUpdateWfServiceImpl.java
* @createTime 20220812 11:32:00
*/
public class ContractUpdateWfServiceImpl extends Service implements ContractUpdateWfService {
private DbTools dbtools=new DbTools();
private PropBean pb=new PropBean();
private String wktablename="";
private String modetablename="";
@Override
public void updateworkflow(Map<String, Object> map, User user) {
this.modetablename = Util.null2String(map.get("tablename"));
String billid = Util.null2String(map.get("billid"));
String sql="select htbh,yz from "+modetablename+" where id=?";
Map<String,Object> mapvalue= dbtools.getsqltomap(sql,billid);
if(mapvalue==null || mapvalue.size()<=0){
return ;
}
String htbh=Util.null2String(mapvalue.get("htbh"));
String yz=Util.null2String(mapvalue.get("yz"));
if(StringUtils.isBlank(htbh)){
return ;
}
getwktablename();
List<Map<String,Object>> maplist=getwktableall(htbh);
if(maplist.size()<=0){
return ;
}
maplist.forEach((item)->{
String id=Util.null2String(item.get("id"));
String xzhtlb=Util.null2String(item.get("xzhtlb"));
String yzoldvalue=Util.null2String(item.get("yz"));
String yznewvalue=yz;
if(!StringUtils.isBlank(id) && !StringUtils.isBlank(xzhtlb)){
if(xzhtlb.split(",").length>1){
yznewvalue=getmodeesealall(modetablename,xzhtlb);
}
if(!BaseUtil.stringcompare(yznewvalue,yzoldvalue)){
Map<String,String> setmap=new HashMap<>();
setmap.put("yz", Arrays.stream(yznewvalue.split(",")).distinct().collect(Collectors.joining(",")));
Map<String,String> wheremap=new HashMap<>();
wheremap.put("id",id);
dbtools.updateSql(this.wktablename,setmap,wheremap);
};
}
});
}
private List<Map<String,Object>> getwktableall(String htbh){
List<Map<String,Object>> listmap=new ArrayList<>();
if(StringUtils.isBlank(htbh)){
return listmap;
}
if(StringUtils.isBlank(this.wktablename)){
return listmap;
}
String sql="select id,yz,xzhtlb from "+this.wktablename+" where instr(','||xzhtlb||',',',"+htbh+",')>0";
return dbtools.getSqlToList(sql);
}
private void getwktablename(){
String number=pb.getPropName("contract.approval.unnumber");
this.wktablename=dbtools.getUnnumberToTablename(number);
}
private String getmodeesealall(String tablename,String htbh){
if(StringUtils.isBlank(tablename) || StringUtils.isBlank(htbh)){
return "";
}
String sql="select wm_concat_old(yz) as yz from "+tablename+" where htbh in ("+
Arrays.stream(htbh.split(",")).distinct().filter(Objects::nonNull).map((item)->"\'"+item+"'").collect(Collectors.joining(","))
+")";
return dbtools.getsqlonevalue(sql);
}
}

@ -0,0 +1,85 @@
package com.engine.htxc.contract.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.commonutil.fileutil.GatewayUtil;
import com.engine.htxc.contract.service.ContractdoctopdfService;
import com.engine.integration.util.StringUtils;
import weaver.general.Util;
import weaver.wps.doccenter.convert.DocTypeConvert;
import weaver.wps.doccenter.utils.Tools;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* <p>docpdf</p>
* @author K1810015
* @version 1.0.0
* @ClassName ContractdoctopdfServiceimpl.java
* @createTime 20220729 13:50:00
*/
public class ContractdoctopdfServiceImpl extends Service implements ContractdoctopdfService {
private DbTools dbTools=new DbTools();
private String inerttablename="uf_htqc_dt5";
public String detaillist="1,3";
@Override
public void doctopdf(Map<String,Object> map) {
String billid= Util.null2String(map.get("billid"));
if(StringUtils.isBlank(billid)){
return ;
}
Arrays.stream(detaillist.split(",")).forEach((item)->{
List<Map<String,Object>> listmap= gettablemap(billid,item);
if(listmap!=null && listmap.size()>0){
listmap.forEach((Map<String,Object> retmap)->{
// String wjmcvalue=Util.null2String(retmap.get("wjmc"));
String imagefilename=Util.null2String(retmap.get("imagefilename"));
String imagefileid=Util.null2String(retmap.get("imagefileid"));
Map<String,String> pdfmap = new HashMap(5);
String oldimagefilenamepdf = (!Tools.isEmptyOrNull(imagefilename) && imagefilename.contains(".") ? imagefilename.substring(0, imagefilename.lastIndexOf(".")) : imagefilename) + ".pdf";
pdfmap.put("imagefileid", imagefileid + "");
pdfmap.put("fromMould","ecology");
pdfmap.put("fileName", imagefilename);
pdfmap.put("targetFileFormat", "PDF");
pdfmap.put("targetFilename", oldimagefilenamepdf);
DocTypeConvert convertDocToPdf = new DocTypeConvert(this.user);
int newimagefileid= convertDocToPdf.convertDocType(pdfmap);
if(newimagefileid>0){
String fileid=GatewayUtil.sendGateway(newimagefileid,oldimagefilenamepdf);
if(!StringUtils.isBlank(fileid)) {
Map<String, String> wheremap = new HashMap<>(4);
wheremap.put("mainid", billid);
wheremap.put("wgid", fileid);
wheremap.put("imagefileid", imagefileid);
wheremap.put("newimagefileid", Util.null2String(newimagefileid));
wheremap.put("name",oldimagefilenamepdf);
dbTools.insert(inerttablename, wheremap);
}
}
});
}
});
}
public List gettablemap(String mainid,String detailid){
if(StringUtils.isBlank(mainid) || StringUtils.isBlank(detailid) ){
return null;
}
String sql="select wjmc,d.imagefileid ,d.imagefilename ,dt5.imagefileid old_image from uf_htqc_dt"+detailid+" t " +
"left join docimagefile d on t.wjmc=d.docid " +
"left join uf_htqc_dt5 dt5 on d.imagefileid=dt5.imagefileid " +
"where t.mainid='"+mainid+"' and (dt5.imagefileid is null or dt5.imagefileid !=d.imagefileid ) ";
return new DbTools().getSqlToList(sql);
}
}

@ -0,0 +1,35 @@
package com.engine.htxc.contract.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.commonutil.db.DbTools;
import com.engine.htxc.contract.service.CounterpartyService;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import java.util.List;
import java.util.Map;
@Slf4j
public class CounterpartyServiceImpl extends Service implements CounterpartyService {
private DbTools dbTools=new DbTools();
@Override
public Map<String, Object> getRoleName(Map<String, Object> map) {
Map<String,Object> apidatas = Maps.newHashMap();
try {
String userId = map.get("userId") ==null ? "":map.get("userId").toString();
String sql = "select b.rolesmark,c.lastname,a.roleid,c.id from hrmrolemembers a,hrmroles b,hrmresource c where a.roleid=b.id and a.resourceid=c.id and c.id=?";
List<Map<String,Object>> dataList = dbTools.getSqlToList(sql,userId);
apidatas.put("code","200");
apidatas.put("data",dataList);
apidatas.put("userid",userId);
}catch (Exception e){
log.error("get rolename fail [{}]", e);
apidatas.put("code","400");
apidatas.put("message",e.getMessage());
}
return apidatas;
}
}

@ -0,0 +1,87 @@
package com.engine.htxc.contract.service.impl;
import com.engine.core.impl.Service;
import com.engine.htxc.commonutil.db.EntityCrudUtil;
import com.engine.htxc.contract.dao.ContractDao;
import com.engine.htxc.contract.dao.ProductDao;
import com.engine.htxc.contract.dto.ProductCounterPartyDTO;
import com.engine.htxc.contract.dto.ProductCounterpartyEnum;
import com.engine.htxc.contract.entity.UfDsfgl;
import com.engine.htxc.contract.entity.UfProduct;
import com.engine.htxc.contract.entity.UfProductCounterParty;
import com.engine.htxc.contract.service.ProductCounterpartyService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.hrm.User;
import java.util.ArrayList;
import java.util.List;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2315:35
* @Description:
* @ModifyLog:
**/
public class ProductCounterpartyServiceImpl extends Service implements ProductCounterpartyService {
private static final Logger logger= LoggerFactory.getLogger(ProductCounterpartyServiceImpl.class);
@Override
public ProductCounterpartyEnum addProductCounterParty(User user, ProductCounterPartyDTO productCounterParty) {
// 插入产品关系
//根据产品编码查对手方和产品关系表 判断是否和对手方编码一致
ProductCounterpartyEnum result=ProductCounterpartyEnum.CREATE_SUCCESS;
final UfProductCounterParty ufProductCounterParty = ProductDao.selectUfProductCounterpartyByProductid(productCounterParty.getProductCode());
if(null!=ufProductCounterParty){
if(null!=ufProductCounterParty.getSocialcreditcode()&&ufProductCounterParty.getSocialcreditcode().equals(productCounterParty.getCertNo())){
logger.info("产品已存在和该对手方关系");
result= ProductCounterpartyEnum.PRODUCT_COUNTERPARTY_EXIST;
}else{
logger.error("产品已存在和其他对手方关系");
result= ProductCounterpartyEnum.PRODUCT_OTHER_COUNTERPARTY_EXIST;
}
return result;
}
final String certNo = productCounterParty.getCertNo();
final List<String> usccList = new ArrayList<>();
usccList.add(certNo);
final List<String> cpList = ContractDao.selectCounterPartyByCertCode(usccList);
// 不存在对手方 创建对手方
if(cpList.isEmpty()){
logger.info("对手方不存在,新建对手方");
final UfDsfgl ufDsfgl = EntityCrudUtil.createModeBaseAttributes("uf_dsfgl", UfDsfgl.class);
ufDsfgl.setModedatacreater(user.getUID());
ufDsfgl.setDsfmc(productCounterParty.getCounterPartyName());
ufDsfgl.setDqbb(1);
EntityCrudUtil.insertEntity("uf_dsfgl",ufDsfgl,UfDsfgl.class);
}else{
result=ProductCounterpartyEnum.COUNTERPARTY_EXIST;
}
UfProduct ufProduct = ProductDao.selectProductByProductId(productCounterParty.getProductCode());
if(null==ufProduct){
logger.info("产品信息不存在,新建产品");
final UfProduct ufProduct1 = new UfProduct();
ufProduct1.setProductid(productCounterParty.getProductCode());
ufProduct1.setProductname(productCounterParty.getProductName());
EntityCrudUtil.insertEntity("uf_product",ufProduct1,UfProduct.class);
}else{
if(ProductCounterpartyEnum.COUNTERPARTY_EXIST==result){
result=ProductCounterpartyEnum.PRODUCT_COUNTERPARTY_EXIST;
}else{
result =ProductCounterpartyEnum.PRODUCT_EXIST;
}
}
logger.info("创建产品对手方关系 productid=[{}],socialcreditcode=[{}]",productCounterParty.getProductCode(),productCounterParty.getProductName());
final UfProductCounterParty ufProductCounterParty1 = new UfProductCounterParty();
ufProductCounterParty1.setSocialcreditcode(productCounterParty.getCertNo());
ufProductCounterParty1.setProductid(productCounterParty.getProductCode());
EntityCrudUtil.insertEntity("uf_prodcontrelation",ufProductCounterParty1,UfProductCounterParty.class);
return result;
}
}

@ -0,0 +1,380 @@
package com.engine.htxc.contract.util;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.hrm.definedfield.HrmFieldManager;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ContractUtil {
private ContractUtil(){
}
/**
*
* @param tablename
* @return
*/
public static Map<String, Map<String,String>> getTableFieldInfo(String tablename){
return getTableFieldInfo(tablename,0);
}
/**
*
* @param tablename
* @param dtnum
* @return
*/
public static Map<String,Map<String,String>> getTableFieldInfo(String tablename,int dtnum){
Map<String,Map<String,String>> infoMap = new HashMap<>();
RecordSet rs = new RecordSet();
String fieldsSql = " select b.* from workflow_bill a,workflow_billfield b " +
" where a.id=b.billid and a.tablename=? ";
if(dtnum>0){
String dtname = tablename+"_dt"+dtnum;
fieldsSql += " and detailtable = '"+dtname+"' ";
}else{
fieldsSql += " and detailtable is null ";
}
rs.executeQuery(fieldsSql,tablename);
while(rs.next()){
String fieldid = Util.null2String(rs.getString("id"));
String fieldname = Util.null2String(rs.getString("fieldname")).toLowerCase();
String fielddbtype = Util.null2String(rs.getString("fielddbtype"));
String fieldhtmltype = Util.null2String(rs.getString("fieldhtmltype"));
String type = Util.null2String(rs.getString("type"));
Map<String,String> item = new HashMap<>();
item.put("fieldid",fieldid);
item.put("fieldname",fieldname);
item.put("fielddbtype",fielddbtype);
item.put("fieldhtmltype",fieldhtmltype);
item.put("type",type);
infoMap.put(fieldname,item);
}
return infoMap;
}
/**
*
* @param htlb
* @return
*/
public static JSONArray getParams(String htlb, String tableName){
RecordSet rs = new RecordSet();
JSONArray paramArr = new JSONArray();
String condition = String.format("'%s'", StringUtils.join(htlb.split(","),"','"));
String sql = " select t.* from " +
"(select row_number() over(partition by htbh order by dqbb desc) rn,c.* " +
" from ( select htbh,dqbb,sjfl,a.htlx from "+tableName+" a,uf_type_of_contract b " +
" where substr(a.htlx,instr(a.htlx,'_')+1) =b.htlxbm " +
" and a.htbh in("+condition+") " +
" ) c " +
") t where t.rn=1 ";
rs.execute(sql);
while (rs.next()){
String htbh = Util.null2String(rs.getString("htbh"));
String version = Util.null2String(rs.getString("dqbb"));
String sjfl = Util.null2String(rs.getString("sjfl"));
String htlx = Util.null2String(rs.getString("htlx"));
JSONObject paramObj = new JSONObject();
paramObj.put("htbh",htbh);
paramObj.put("version",version);
paramObj.put("fhtfl",sjfl);
paramObj.put("htlx",htlx);
paramArr.add(paramObj);
}
return paramArr;
}
/**
*
* @param htlx
* @return
*/
public static String getContractTableName(String htlx){
return getContractTableName(htlx,-1);
}
/**
*
* @param htlx
* @param type
* @return
*/
public static String getContractTableName(String htlx,int type){
String tableName = "";
String configSql = "select jmbd from uf_htspckhtqcpzb where htfl=? ";
if(type>=0){
configSql = " select b.jmbd from uf_htspckhtqcpzb a,uf_htspckhtqcpzb_dt1 b where a.id=b.mainid and htfl=? and zslb="+type;
}
RecordSet rs = new RecordSet();
rs.executeQuery(configSql,htlx);
if(rs.next()){
tableName = Util.null2String(rs.getString("jmbd")) ;
}
return tableName;
}
/**
*
* @param fieldInfo
* @param fieldvalue
* @param user
*
* @return
*/
public static String getFieldValue(Map<String,String> fieldInfo, String fieldvalue, User user){
String fieldid = fieldInfo.get("fieldid");
String fiedlddbtype = fieldInfo.get("fielddbtype");
String fieldhtmltype = fieldInfo.get("fieldhtmltype");
String detailtype = fieldInfo.get("type");
String showValue = fieldvalue;
try{
if("5".equals(fieldhtmltype)){
// 查询选择框的所有可以选择的值
RecordSet rs = new RecordSet();
rs.executeQuery("select selectvalue,selectname from workflow_SelectItem where cancel=0 and fieldid =? and selectvalue=? ",new Object[]{fieldid,fieldvalue});
if (rs.next()) {
showValue = Util.null2String(rs.getString("selectname"));
}
}else if("6".equals(fieldhtmltype)){
//doc类型
if(fieldvalue.length()>0){
RecordSet rs = new RecordSet();
rs.executeQuery("select docid,imagefileid, imagefilename from docimagefile where docid=? order by versionid desc ",fieldvalue);
if (rs.next()) {
String docid = rs.getString("docid");
String imagefileid = rs.getString("imagefileid");
String imagefilename = rs.getString("imagefilename");
showValue = docid+","+imagefileid+","+imagefilename;
}
}
}else if("3".equals(fieldhtmltype) && fieldvalue.length()>0){
HrmFieldManager hrmFieldManager = new HrmFieldManager();
showValue = hrmFieldManager.getFieldvalue(user, fiedlddbtype, Util.getIntValue(fieldid), Util.getIntValue(fieldhtmltype), Util.getIntValue(detailtype), fieldvalue, 0);
}
}catch (Exception e){
new BaseBean().writeLog(e);
}
return showValue;
}
/**
*
* @param htbh
* @param htlx
* @param user
* @return
*/
public static Map<String,Object> getContractMainData(String htbh,String htlx,User user){
Map<String,Object> htitem = new HashMap<String,Object>();
RecordSet rs = new RecordSet();
String configSql = " select jmbd,htxxzszd from uf_htspckhtqcpzb where htfl=? ";
rs.executeQuery(configSql,htlx);
if(rs.next()){
//表单名
String jmbd = Util.null2String(rs.getString("jmbd"));
//表单字段
String htxxzszd = Util.null2String(rs.getString("htxxzszd"));
String baseInfoSql = " select * from (select "+htxxzszd+" from "+jmbd+" where htbh=? order by dqbb desc ) where rownum=1 ";
Map<String,Map<String,String>> mainTableFieldInfo = ContractUtil.getTableFieldInfo(jmbd,0);
rs.executeQuery(baseInfoSql,htbh);
if(rs.next()){
String[] columns = rs.getColumnName();
for(int i=0;i<columns.length;i++){
String fieldname = columns[i].toLowerCase();
String fieldvalue = Util.null2String(rs.getString(fieldname));
htitem.put(fieldname,fieldvalue);
if(!"id".equals(fieldname)){
Map<String,String> fieldInfo = mainTableFieldInfo.get(fieldname);
String showname = getFieldValue(fieldInfo,fieldvalue,user);
htitem.put(fieldname+"span",showname);
}
}
}
}
return htitem;
}
/**
*
* @param htlx
* @param mainid id
* @param type
* @param user
* @return
*/
public static List<Map<String,Object>> getContractFileData(String htlx, int mainid, int type, User user){
List<Map<String,Object>> dataList = new ArrayList<>();
RecordSet rs = new RecordSet();
RecordSet rs2 = new RecordSet();
String configSql = " select zslbms,b.jmbd,htxxmxzszd from uf_htspckhtqcpzb a,uf_htspckhtqcpzb_dt1 b " +
"where a.id=b.mainid and htfl=? and zslb=? ";
rs.executeQuery(configSql,new Object[]{htlx,type});
if(rs.next()) {
String jmbd = Util.null2String(rs.getString("jmbd"));
String htxxmxzszd = Util.null2String(rs.getString("htxxmxzszd"));
String mainTable = jmbd.substring(0,jmbd.lastIndexOf("_"));
int dtnum = Integer.parseInt(jmbd.substring(jmbd.lastIndexOf("dt")+2));
Map<String,Map<String,String>> dtFieldInfo = getTableFieldInfo(mainTable,dtnum);
String dataSql = " select "+htxxmxzszd+" from "+jmbd+" where mainid=? order by yyfs ";
rs2.executeQuery(dataSql,mainid);
String[] columns = rs2.getColumnName();
while (rs2.next()){
Map<String, Object> item = new HashMap<String, Object>();
for (int i = 0; i < columns.length; i++) {
String fieldname = columns[i].toLowerCase();
String fieldvalue = Util.null2String(rs2.getString(fieldname));
item.put(fieldname, fieldvalue);
//id字段不处理
if("id".equals(fieldname)){
continue;
}
//用印后文件字段可能包含多个文件单独处理
if("yyhwj".equals(fieldname)){
if(StringUtils.isNotBlank(fieldvalue)){
List<Map<String,Object>> esealFileList = getEsealFile(fieldname,fieldvalue,dtFieldInfo,user);
item.put(fieldname+"Obj", esealFileList);
}
continue;
}
addFieldShowName(item,fieldname,fieldvalue,dtFieldInfo,user);
}
dataList.add(item);
}
}
return dataList;
}
/**
*
* @param item
* @param fieldname
* @param fieldvalue
* @param tableField
* @param user
* @return
*/
public static Map<String, Object> addFieldShowName(Map<String, Object> item,String fieldname,String fieldvalue,Map<String,Map<String,String>> tableField, User user){
Map<String, String> fieldInfo = tableField.get(fieldname);
String showname = getFieldValue(fieldInfo, fieldvalue,user);
String fieldhtmltype = fieldInfo.get("fieldhtmltype");
if ("6".equals(fieldhtmltype) && !"".equals(showname)) {
String[] docInfo = showname.split(",");
if (docInfo.length == 3) {
item.put("docid", docInfo[0]);
item.put("imagefileid", docInfo[1]);
item.put("imagefilename", docInfo[2]);
}
}else if("3".equals(fieldhtmltype) && !"".equals(showname)){
String[] fieldvalues = Util.splitString(fieldvalue, ",");
String[] fieldshownames = Util.splitString(showname, ",");
List<Map<String, Object>> replaceDatas = new ArrayList<Map<String, Object>>();
for(int j=0; fieldvalues!=null&&j<fieldvalues.length;j++){
if(fieldvalues.length != fieldshownames.length){
break;
}
if(Util.null2String(fieldshownames[j]).length()==0){
continue;
}
Map<String, Object> replaceData = new HashMap<String, Object>();
replaceData.put("id", fieldvalues[j]);
replaceData.put("name", fieldshownames[j]);
replaceDatas.add(replaceData);
}
item.put(fieldname + "span", showname);
item.put(fieldname + "Obj",replaceDatas);
}else {
item.put(fieldname + "span", showname);
}
return item;
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220823 10:36:12
* @param: [fieldname, fieldvalue, tableField, user]
* @return: java.util.List<java.util.Map<java.lang.String,java.lang.Object>>
**/
public static List<Map<String,Object>> getEsealFile(String fieldname, String fieldvalue,Map<String,Map<String,String>> tableField,User user){
List<Map<String,Object>> esealFileList = new ArrayList<>();
Map<String, String> fieldInfo = tableField.get(fieldname);
String[] sealFileIds = fieldvalue.split(",");
for(int i=0;i<sealFileIds.length;i++){
String showname = getFieldValue(fieldInfo, sealFileIds[i],user);
if(!"".equals(showname)){
String[] docInfo = showname.split(",");
if (docInfo.length == 3) {
Map<String,Object> fileMap = new HashMap<>();
fileMap.put("docid", docInfo[0]);
fileMap.put("imagefileid", docInfo[1]);
fileMap.put("imagefilename", docInfo[2]);
esealFileList.add(fileMap);
}
}
}
return esealFileList;
}
/**
*
* @param htlx
* @return
*/
public static String getViewUrl(String htlx){
return getViewUrl(htlx,"0");
}
/**
*
* @param htlx
* @return
*/
public static String getViewUrl(String htlx,String ismobile){
String viewUrl = "";
RecordSet rs = new RecordSet();
String configSql = " select jmckmburl,mobiledydjmckurl from uf_htspckhtqcpzb where htfl=? ";
rs.executeQuery(configSql,htlx);
if(rs.next()){
viewUrl = Util.null2String(rs.getString("jmckmburl"));
if("1".equals(ismobile)){
viewUrl = Util.null2String(rs.getString("mobiledydjmckurl"));
}
}
return viewUrl;
}
public static String getEditUrl(String wfunnumber,String htlx,String nodeunnumber){
String editUrl = "";
RecordSet rs = new RecordSet();
String configSql = " select jmmburl from uf_contapprtemp where lc=? and htlx=? and lcjd=? ";
rs.executeQuery(configSql,new Object[]{wfunnumber,htlx,nodeunnumber});
if(rs.next()){
editUrl = Util.null2String(rs.getString("jmmburl"));
}
return editUrl;
}
}

@ -0,0 +1,99 @@
package com.engine.htxc.contract.util;
import weaver.conn.RecordSet;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
public class RecordChangeFieldLog {
/**
*
* @param tableName
* @param conditionMap
* @param dataMap
* @throws Exception
*/
public static void recordChange(String tableName, Map<String, String> conditionMap, Map<String, Object> dataMap) throws Exception {
String id = conditionMap.get("id");//数据id
String selectParam = "";
String columnName = "";
String formId = conditionMap.get("formId");//表单id
String modeId = conditionMap.get("modeId");//模块id
String userId = conditionMap.get("userId");//操作人用户id
String primaryName = conditionMap.get("primaryName");//表的主键名称
String operateType = conditionMap.get("operateType");//操作类型 1新建 2修改 3删除 4查看 5:状态变更
String viewtype = conditionMap.get("viewtype");//0主表1从表
String operateName = "";
switch (operateType){
case "1":
operateName="新建";
break;
case "2":
operateName="修改";
break;
case "3":
operateName="删除";
break;
case "5":
operateName="状态变更";
break;
}
for (Map.Entry<String, Object> entry : dataMap.entrySet()) {
selectParam = selectParam + entry.getKey().toLowerCase() + ",";
columnName = columnName + "'"+entry.getKey().toLowerCase() +"'"+ ",";
}
selectParam=selectParam.substring(0,selectParam.length()-1);
columnName=columnName.substring(0,columnName.length()-1);
RecordSet rs = new RecordSet();
//查询老数据sql
String oldValueSql = "select "+selectParam + " from "+tableName+" where "+primaryName+" in ("+id+")";
String[] columns = selectParam.split(",");
Map<String,String> oldMap = new HashMap<>(); //老数据map
rs.executeQuery(oldValueSql);
if (rs.next()){
for (String column :columns){
if ("1".equals(operateType)){//当为新建时
oldMap.put(column,"");
}else {
oldMap.put(column,rs.getString(column));
}
}
}
//查询字段ID方法
String fieldSql = "select id,fieldname from workflow_billfield where billid="+formId+" and fieldname in ("+columnName+")";
if (viewtype != null){
fieldSql = fieldSql + " and viewtype="+viewtype;
}
rs.executeQuery(fieldSql);
Map<String,String> fieldMap = new HashMap<>();
while (rs.next()){
fieldMap.put(rs.getString("fieldname"),rs.getString("id"));
}
//插入Modeviewlog_82507语句
String uuid = UUID.randomUUID().toString();
SimpleDateFormat sdf2 = new SimpleDateFormat("yyyy-MM-dd&HH:mm:ss");
String[] date = sdf2.format(new Date()).split("&");
String insertModeviewsql = "insert into Modeviewlog_"+modeId+"(relatedid,relatedname,operatetype,operatedesc,operateuserid,operatedate,operatetime,clientaddress)values(?,?,?,?,?,?,?,?)";
Object[] params = {id,"-",operateType,operateName,userId,date[0],date[1],uuid};
boolean bool = rs.executeUpdate(insertModeviewsql,params);
//查询viewlogId
String viewLogIdsql = "select id from Modeviewlog_"+modeId +" where clientaddress='"+uuid+"'";
String viewLogId = "";
rs.executeQuery(viewLogIdsql);
if (rs.next()){
viewLogId = rs.getString("id");
}
String insertModelog = "insert into modelogfielddetail (viewlogid,fieldid,fieldvalue,prefieldvalue,modeid) values(?,?,?,?,?)";
for (Map.Entry<String,String> oldEntry:oldMap.entrySet()){
if (fieldMap.get(oldEntry.getKey()) != null && !"".equals(fieldMap.get(oldEntry.getKey()))){
Object[] modelogParams = {viewLogId,fieldMap.get(oldEntry.getKey()),dataMap.get(oldEntry.getKey().toUpperCase()),oldEntry.getValue(),modeId};
boolean result = rs.executeUpdate(insertModelog,modelogParams);
}
}
}
}

@ -0,0 +1,94 @@
package com.engine.htxc.contract.util;
import weaver.conn.RecordSet;
import weaver.general.BaseBean;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
public class RecordChangeVersion {
private static BaseBean bb = new BaseBean();
/**
*
* @param billid id
* @param tableName
* @throws Exception
*/
public static void recordChangeVersion(int billid,String tableName)throws Exception{
String querySql = "select * from "+tableName+" where id="+billid;
Map<String,Object> dataMap = new HashMap<>();
RecordSet rs = new RecordSet();
rs.executeQuery(querySql);
if (rs.next()){
String[] columNames = rs.getColumnName();
for (String str : columNames){
dataMap.put(str,rs.getString(str));
}
}
PropBean pb = new PropBean();
String counterpartySnapshotmodeid = pb.getPropName("contractCreationSnapshotmodeid");
dataMap.put("FORMMODEID",counterpartySnapshotmodeid);
dataMap.put("FID",billid);
String uuid = UUID.randomUUID().toString();
dataMap.put("MODEUUID",uuid);
int dqbb = Integer.valueOf(dataMap.get("DQBB").toString());
dqbb = dqbb+1;
String names="";
String values="";
for (Map.Entry entry :dataMap.entrySet()){
names = names + entry.getKey() +",";
values = values +"'"+entry.getValue()+"'" +",";
};
//插入快照版本并修改主记录的当前版本
names = names.substring(0,names.length()-1);
values = values.substring(0,values.length()-1);
String insertSql = "insert into "+tableName+" ("+names+") values ("+values+")";
bb.writeLog("插入语句 insertSql:"+insertSql);
rs.executeUpdate("update "+tableName+" set DQBB = ? where id=?", dqbb,billid);
rs.executeUpdate(insertSql);
//查询快照版本billid
rs.executeQuery("select id from "+tableName+" where modeuuid=?",uuid);
if (rs.next()){
String id = rs.getString("id");
//插入明细表1
insertDetail(tableName+"_dt1",id,billid);
//插入明细表2
insertDetail(tableName+"_dt2",id,billid);
//插入明细表3
insertDetail(tableName+"_dt3",id,billid);
}
}
public static void insertDetail(String tableName,String id,int billid){
RecordSet rs = new RecordSet();
//插入明细表
String detail1Sql = "select * from "+tableName+" where mainid=?";
//获取主记录明细表数据
rs.executeQuery(detail1Sql,billid);
while (rs.next()){
Map<String,Object> detail1Map = new HashMap<>();
String[] columNames = rs.getColumnName();
for (String str : columNames){
detail1Map.put(str,rs.getString(str));
}
detail1Map.put("MAINID",id);
String names="";
String values="";
for (Map.Entry entry :detail1Map.entrySet()){
names = names + entry.getKey() +",";
values = values +"'"+entry.getValue()+"'" +",";
};
names = names.substring(0,names.length()-1);
values = values.substring(0,values.length()-1);
//插入快照的明细表
String insertSql = "insert into "+tableName+" ("+names+") values ("+values+")";
bb.writeLog("插入明细表"+tableName+":"+insertSql);
rs.executeUpdate(insertSql);
}
}
}

@ -0,0 +1,300 @@
package com.engine.htxc.contract.web;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.engine.common.util.ParamUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.apprchalink.contract.service.ContractLinkService;
import com.engine.htxc.apprchalink.contract.service.impl.ContractLinkServiceImpl;
import com.engine.htxc.common.ParamValidException;
import com.engine.htxc.common.R;
import com.engine.htxc.common.dto.EcologyCommonResponseDTO;
import com.engine.htxc.commonutil.base.RequestJsonUtil;
import com.engine.htxc.contract.dto.*;
import com.engine.htxc.contract.service.ContractService;
import com.engine.htxc.contract.service.impl.ContractServiceImpl;
import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @author K1810015
* @version 1.0.0
* @ClassName ContractAction.java
* @createTime 20220701 09:56:00
*/
public class ContractAction {
private static final Logger logger= LoggerFactory.getLogger(ContractAction.class);
private ContractService getService() {
return ServiceUtil.getService(ContractServiceImpl.class);
}
ContractLinkService contractLinkService=
ServiceUtil.getService(ContractLinkServiceImpl.class);
@POST
@Path("/getdocmodeinfo")
@Produces({MediaType.TEXT_PLAIN})
public String getdocmodeinfo(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
User user = HrmUserVarify.getUser(request, response);
JSONArray jsonarray= getService().getfileinfo(user, ParamUtil.request2Map(request));
return JAVATools.Apiretrun("200",jsonarray);
} catch (Exception e) {
e.printStackTrace();
return JAVATools.Apiretrun("400","error");
}
}
@POST
@Path("/getdocimagefileinfo")
@Produces({MediaType.TEXT_PLAIN})
public String getdocimagefileinfo(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
User user = HrmUserVarify.getUser(request, response);
JSONArray jsonarray= getService().getdocimagefileinfo(user, ParamUtil.request2Map(request));
return JAVATools.Apiretrun("200",jsonarray);
} catch (Exception e) {
e.printStackTrace();
return JAVATools.Apiretrun("400","error");
}
}
@POST
@Path("/contractuser")
@Produces({MediaType.TEXT_PLAIN})
public String contractuser(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
JSONObject jsonobj = RequestJsonUtil.getRequestJsonObject(request);
if(jsonobj==null || jsonobj.size()<=0){
retjson.put("status", "400");
retjson.put("error", "参数有误");
return retjson.toJSONString();
}
JSONObject jsonObject = contractLinkService.getnextuser(jsonobj);
if (jsonObject != null) {
retjson.put("status", "200");
retjson.put("data", jsonObject);
} else {
retjson.put("status", "400");
retjson.put("error", "参数有误");
}
return retjson.toJSONString();
}catch (Exception e){
retjson.put("status", "400");
retjson.put("error", "参数有误");
return retjson.toJSONString();
}
}
@POST
@Path("/updatestatus")
@Produces({MediaType.TEXT_PLAIN})
public String updatestatus(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
boolean flag= getService().updateStatus(user,ParamUtil.request2Map(request));
return JSONObject.toJSONString(R.ok(Util.null2String(flag)));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
/**
* <p></p>
* @title workflowNextJudge
* @author K1810015
* @updateTime 2022/8/26 17:42
*/
@POST
@Path("/workflowNextJudge")
@Produces({MediaType.TEXT_PLAIN})
public String workflowNextJudge(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
return getService().workflowNextJudge(user,ParamUtil.request2Map(request));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
@POST
@Path("/updateContractenType")
@Produces({MediaType.TEXT_PLAIN})
public String updateContractenType(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
boolean flag= getService().updateContractenType(user,ParamUtil.request2Map(request));
return JSONObject.toJSONString(R.ok(Util.null2String(flag)));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
@POST
@Path("/startContractProcess")
@Produces({MediaType.TEXT_PLAIN})
public String startContractProcess(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
User user = HrmUserVarify.getUser(request, response);
final String contractDataJson = Util.null2String(request.getParameter("contractData"));
logger.info("传入合同流程数据:[{}]",contractDataJson);
final ContractProcessDTO contractProcessDTO = JSON.parseObject(contractDataJson, ContractProcessDTO.class);
new ContractProcessValidator(contractProcessDTO).validate();
final ProcessInfoDTO processInfoDTO = getService().startContractProcess(user, contractProcessDTO);
logger.info("返回数据:[{}]",processInfoDTO);
if(processInfoDTO==null){
return EcologyCommonResponseDTO.failJson("流程发起失败");
}
return EcologyCommonResponseDTO.successJson(processInfoDTO);
}catch (ParamValidException | IllegalArgumentException e){
logger.error("参数校验失败",e);
return EcologyCommonResponseDTO.failJson("参数校验失败:"+e.getMessage());
}catch (Exception e){
logger.error("发起合同流程失败",e);
}
return EcologyCommonResponseDTO.failJson("流程发起失败");
}
/**
*
* @param request
* @param response
* @return
*/
@POST
@Path("/saveBankInfoToCounterparty")
@Produces({MediaType.TEXT_PLAIN})
public String saveBankInfoToCounterparty(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try {
Map<String, Object> paramMap = ParamUtil.request2Map(request);
String dataString = paramMap.get("data")==null?"":paramMap.get("data").toString();
List<Map> dataList = JSON.parseArray(dataString,Map.class);
Map<String, Object> data = Maps.newHashMap();
data.put("data",dataList);
return JSON.toJSONString(getService().saveBankInfoToCounterparty(data));
}catch (Exception e){
logger.error("保存异常",e);
}
return JAVATools.Apiretrun("-1", "保存合同起草的开户行等信息到对手方明细表中失败");
}
/**
* <p></p>
* @title linkMode
* @author K1810015
* @updateTime 2022/8/31 19:54
*/
@POST
@Path("/linkmode")
@Produces({MediaType.TEXT_PLAIN})
public String linkmode(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
return getService().linkMode(user,ParamUtil.request2Map(request));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
/**
* <p></p>
* @title linkMode
* @author K1810015
* @updateTime 2022/8/31 19:54
*/
@POST
@Path("/unlinkmode")
@Produces({MediaType.TEXT_PLAIN})
public String unlinkmode(@Context HttpServletRequest request, @Context HttpServletResponse response){
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
return getService().unLinkMode(user,ParamUtil.request2Map(request));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
/**
* <p></p>
* @title guidePages
* @author K1810015
* @updateTime 2022/9/1 15:28
*/
@POST
@Path("/guidePages")
@Produces({MediaType.TEXT_PLAIN})
public String guidePages(@Context HttpServletRequest request, @Context HttpServletResponse response) {
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
return getService().guidePages(user,ParamUtil.request2Map(request));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
/**
* <p></p>
* @title guidePages
* @author K1810015
* @updateTime 2022/9/1 15:28
*/
@POST
@Path("/todosealname")
@Produces({MediaType.TEXT_PLAIN})
public String todosealname(@Context HttpServletRequest request, @Context HttpServletResponse response) {
JSONObject retjson = new JSONObject();
try {
User user = HrmUserVarify.getUser(request, response);
return getService().todosealname(user,ParamUtil.request2Map(request));
}catch (Exception e){
return JSONObject.toJSONString(R.error("msg"));
}
}
}

@ -0,0 +1,373 @@
package com.engine.htxc.contract.web;
import com.alibaba.fastjson.JSON;
import com.engine.htsc.workflow.util.WorkflowUtil;
import com.engine.htxc.common.R;
import com.engine.htxc.contract.util.ContractUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @Author : wanxq
* @Date : 2022052709:43:26
* @Version : 1.0
* @Description :
**/
public class ContractApprovalAction {
private static final Logger LOG = LoggerFactory.getLogger(ContractApprovalAction.class);
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220712 17:08:44
* @param: [request, response]
* @return: java.lang.String
**/
@POST
@Path("/contractstatus/update")
@Produces({MediaType.TEXT_PLAIN})
public String updateContractStatus(@Context HttpServletRequest request, @Context HttpServletResponse response) {
String contractids = Util.null2String(request.getParameter("contractids"));
String zt = Util.null2String(request.getParameter("zt"));
try {
String updateSql = " update uf_htqc set zt="+zt+" where id in("+contractids+") ";
RecordSet rs = new RecordSet();
boolean result = rs.execute(updateSql);
if(result){
return JSON.toJSONString(R.ok());
}else {
return JSON.toJSONString(R.error("合同状态更新失败"));
}
} catch (Exception e) {
LOG.error("更新合同状态出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220726 13:24:12
* @param: [request, response]
* @return: java.lang.String
**/
@POST
@Path("/updateWfContractFile")
@Produces({MediaType.TEXT_PLAIN})
public String updateWfContractFile(@Context HttpServletRequest request, @Context HttpServletResponse response) {
String fileids = Util.null2String(request.getParameter("fileids"));
String requestid = Util.null2String(request.getParameter("requestid"));
try {
RecordSet rs = new RecordSet();
String tableName = WorkflowUtil.getTableName(requestid);
String updateSql = " update "+tableName+" set htfj=? where requestid=? ";
boolean result = rs.executeUpdate(updateSql,new Object[]{fileids,requestid});
if(result){
return JSON.toJSONString(R.ok());
}else {
return JSON.toJSONString(R.error("更新合同附件失败"));
}
} catch (Exception e) {
LOG.error("更新合同附件出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220727 13:51:33
* @param: [request, response]
* @return: java.lang.String
**/
@GET
@Path("/contract/getEditUrl")
@Produces({MediaType.TEXT_PLAIN})
public String getEditUrl(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> apidatas = new HashMap<>();
int requestid = Util.getIntValue(request.getParameter("requestid"));
int nodeid = Util.getIntValue(request.getParameter("nodeid"));
int wfuserid = Util.getIntValue(request.getParameter("f_weaver_belongto_userid"));
String wfunnumber = Util.null2String(request.getParameter("wfunnumber"));
String nodeunnumber = Util.null2String(request.getParameter("nodeunnumber"));
String htlx = Util.null2String(request.getParameter("htlx"));
RecordSet rs = new RecordSet();
Map<String,Object> data = new HashMap<>();
data.put("hasRight", false);
data.put("isEdit", false);
//判断是否是流程当前节点参与人
String url = "";
String sql = " select 1 from workflow_currentoperator where requestid=? and nodeid=? and userid=? ";
try {
rs.executeQuery(sql,new Object[]{requestid,nodeid,wfuserid});
if(rs.next() || requestid<0){
url = ContractUtil.getEditUrl(wfunnumber,htlx,nodeunnumber);
data.put("hasRight", true);
data.put("isEdit", true);
}
//如果无权限编辑或者未找到配置的编辑地址,默认查看地址
if("".equals(url)){
url = ContractUtil.getViewUrl(htlx);
}
data.put("url",url);
apidatas.put("data", data);
return JSON.toJSONString(R.ok(apidatas));
} catch (Exception e) {
LOG.error("获取合同编辑地址出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220727 15:42:06
* @param: [request, response]
* @return: java.lang.String
**/
@GET
@Path("/contract/getViewUrl")
@Produces({MediaType.TEXT_PLAIN})
public String getViewUrl(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String, Object> apidatas = new HashMap<>();
String htlx = Util.null2String(request.getParameter("htlx"));
String ismobile = Util.null2String(request.getParameter("ismobile"),"0");
try {
String viewUrl = ContractUtil.getViewUrl(htlx,ismobile);
apidatas.put("url", viewUrl);
return JSON.toJSONString(R.ok(apidatas));
} catch (Exception e) {
LOG.error("获取合同合查看地址出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220728 10:11:48
* @param: [request, response]
* @return: java.lang.String
**/
@POST
@Path("/contract/updateSealSetting")
@Produces({MediaType.TEXT_PLAIN})
public String updateSealSetting(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> apidatas = new HashMap<>();
int dataid = Util.getIntValue(request.getParameter("dataid"));
int mainid = Util.getIntValue(request.getParameter("mainid"));
String htlx = Util.null2String(request.getParameter("htlx"));
int type = Util.getIntValue(request.getParameter("type"));
String yyfs = Util.null2String(request.getParameter("yyfs"));
String dzyyfs = Util.null2String(request.getParameter("dzyyfs"));
String dsmdy = Util.null2String(request.getParameter("dsmdy"));
String yqxdyr = Util.null2String(request.getParameter("yqxdyr"));
String fwdyfs = Util.null2String(request.getParameter("fwdyfs"));
String wlyyfs = Util.null2String(request.getParameter("wlyyfs"));
String yyfswb = Util.null2String(request.getParameter("yyfswb"));
String yyqksm = Util.null2String(request.getParameter("yyqksm"));
try {
RecordSet rs = new RecordSet();
String jmbd = ContractUtil.getContractTableName(htlx,type);
String updateSql = " update "+jmbd+" set yyfs=?,dzyyfs=?"+
",dsmdy=?,yqxdyr=?,fwdyfs=?,wlyyfs=?,yyfswb=?,yyqksm=? where id=? ";
boolean result = rs.executeUpdate(updateSql,new Object[]{yyfs,dzyyfs,dsmdy,yqxdyr,fwdyfs,wlyyfs,yyfswb,yyqksm,dataid});
if(result){
List<Map<String,Object>> docData = ContractUtil.getContractFileData(htlx,mainid,type,user);
apidatas.put("docData", docData);
return JSON.toJSONString(R.ok(apidatas));
}else {
return JSON.toJSONString(R.error("更新用印方式失败"));
}
} catch (Exception e) {
LOG.error("更新用印方式出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220728 09:34:15
* @param: [request, response]
* @return: java.lang.String
**/
@POST
@Path("/contract/updateQrwlyyStatus")
@Produces({MediaType.TEXT_PLAIN})
public String updateQrwlyyStatus(@Context HttpServletRequest request, @Context HttpServletResponse response) {
int dataid = Util.getIntValue(request.getParameter("dataid"));
String htlx = Util.null2String(request.getParameter("htlx"));
int type = Util.getIntValue(request.getParameter("type"));
String qrwlyy = Util.null2String(request.getParameter("qrwlyy"));
try {
RecordSet rs = new RecordSet();
String jmbd = ContractUtil.getContractTableName(htlx,type);
String updateSql = " update "+jmbd+" set qrwlyy=? where id=? ";
boolean result = rs.executeUpdate(updateSql,new Object[]{qrwlyy,dataid});
if(result){
return JSON.toJSONString(R.ok());
}else {
return JSON.toJSONString(R.error("更新确认物理用印状态失败"));
}
} catch (Exception e) {
LOG.error("更新确认物理用印状态出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220728 16:17:44
* @param: [request, response]
* @return: java.lang.String
**/
@POST
@Path("/contract/batchBrushSealWay")
@Produces({MediaType.TEXT_PLAIN})
public String batchBrushSealWay(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> apidatas = new HashMap<>();
int dataid = Util.getIntValue(request.getParameter("dataid"));
int mainid = Util.getIntValue(request.getParameter("mainid"));
String htlx = Util.null2String(request.getParameter("htlx"));
int type = Util.getIntValue(request.getParameter("type"));
String needBrushDataIds = Util.null2String(request.getParameter("needBrushDataIds"));
try {
RecordSet rs = new RecordSet();
String jmbd = ContractUtil.getContractTableName(htlx,type);
String updateSql = " update "+jmbd+" a set (a.yyfs, a.dzyyfs,a.dsmdy,a.yqxdyr,a.fwdyfs,a.wlyyfs,a.yyfswb) = " +
" (select b.yyfs, b.dzyyfs,b.dsmdy,b.yqxdyr,b.fwdyfs,b.wlyyfs,b.yyfswb from "+jmbd+" b where b.id=?) where a.id in("+needBrushDataIds+") ";
boolean result = rs.executeUpdate(updateSql,new Object[]{dataid});
if(result){
List<Map<String,Object>> files = ContractUtil.getContractFileData(htlx,mainid,type,user);
apidatas.put("files", files);
return JSON.toJSONString(R.ok(apidatas));
}else {
return JSON.toJSONString(R.error("批量刷新用印方式失败"));
}
} catch (Exception e) {
LOG.error("批量刷新用印方式出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220718 15:13:13
* @param: [request, response]
* @return: java.lang.String
**/
@GET
@Path("/contract/file")
@Produces({MediaType.TEXT_PLAIN})
public String getContractFileData(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> apidatas = new HashMap<>();
int mainid = Util.getIntValue(request.getParameter("mainid"));
String htlx = Util.null2String(request.getParameter("htlx"));
int type = Util.getIntValue(request.getParameter("type"));
try {
List<Map<String,Object>> files = ContractUtil.getContractFileData(htlx,mainid,type,user);
apidatas.put("files", files);
return JSON.toJSONString(R.ok(apidatas));
} catch (Exception e) {
LOG.error("查询合同附件出错:",e);
return JSON.toJSONString(R.error());
}
}
/**
* @description:
* @version: 1.0
* @author: wanxq
* @date: 20220718 10:20:42
* @param: [request, response]
* @return: java.lang.String
**/
@GET
@Path("/contractinfo")
@Produces({MediaType.TEXT_PLAIN})
public String getContractInfo(@Context HttpServletRequest request, @Context HttpServletResponse response) {
User user = HrmUserVarify.getUser(request, response);
Map<String, Object> apidatas = new HashMap<>();
String htlb = Util.null2String(request.getParameter("htlb"));
String htlx = Util.null2String(request.getParameter("htlx"));
String[] htbhs = htlb.split(",");
List<Map<String,Object>> dataList = new ArrayList<>();
try {
for(int i=0;i<htbhs.length;i++){
String htbh = htbhs[i];
Map<String,Object> contractData = ContractUtil.getContractMainData(htbh,htlx,user);
if(contractData.size()>0){
int mainid = Integer.parseInt((String) contractData.get("id"));
List<Map<String,Object>> docData = ContractUtil.getContractFileData(htlx,mainid,0,user);
contractData.put("docInfo",docData);
List<Map<String,Object>> attatchData = ContractUtil.getContractFileData(htlx,mainid,1,user);
contractData.put("attachInfo",attatchData);
dataList.add(contractData);
}
}
apidatas.put("dataList",dataList);
return JSON.toJSONString(R.ok(apidatas));
} catch (Exception e) {
LOG.error("查询合同信息出错:",e);
return JSON.toJSONString(R.error());
}
}
}

@ -0,0 +1,55 @@
package com.engine.htxc.contract.web;
import com.alibaba.fastjson.JSON;
import com.engine.common.util.ParamUtil;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.contract.dto.ContractProcessDTO;
import com.engine.htxc.contract.dto.ProcessInfoDTO;
import com.engine.htxc.contract.service.ContractListService;
import com.engine.htxc.contract.service.impl.ContractListServiceImpl;
import com.engine.htxc.contract.service.impl.ContractServiceImpl;
import com.google.common.collect.Maps;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.conn.RecordSet;
import weaver.general.Util;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.Map;
/**
* @Title: ecology-9
* @Company:
* @author: K1810036
* @version: 1.0
* @CreateDate: 2022/8/26
* @Description: action
* @ModifyLog:
**/
public class ContractListAction {
private static final Logger logger= LoggerFactory.getLogger(ContractListAction.class);
private ContractListService contractListService = ServiceUtil.getService(ContractListServiceImpl.class);
@POST
@Path("/deleteListData")
@Produces({MediaType.TEXT_PLAIN})
public String deleteListData(@Context HttpServletRequest request, @Context HttpServletResponse response) {
Map<String,Object> apiData = Maps.newHashMap();
try {
Map<String, Object> paramMap = ParamUtil.request2Map(request);
return JSON.toJSONString(contractListService.deleteData(paramMap));
}catch (Exception e){
logger.error("删除异常",e);
}
return JAVATools.Apiretrun("-1", "删除数据失败");
}
}

@ -0,0 +1,236 @@
package com.engine.htxc.contract.web;
import com.engine.htxc.common.ParamValidException;
import com.engine.htxc.contract.dao.ContractDao;
import com.engine.htxc.contract.dto.*;
import com.engine.htxc.contract.entity.UserEntity;
import com.engine.integration.util.StringUtils;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.interfaces.htsc.comInfo.PropBean;
import java.util.List;
import java.util.Map;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/9/29:59
* @Description:
* @ModifyLog:
**/
public class ContractProcessValidator {
private static final Logger logger= LoggerFactory.getLogger(ContractProcessValidator.class);
/**
*
*/
public static final int MAX_FILE_COUNT = 100;
private ContractProcessDTO contractProcessDTO;
public ContractProcessValidator(ContractProcessDTO contractProcessDTO){
this.contractProcessDTO=contractProcessDTO;
}
public void validate() throws ParamValidException {
logger.info("调用系统:[{}]",contractProcessDTO.getSysCode());
//校验 ContractProcessDTO
if (StringUtils.isBlank(contractProcessDTO.getSysCode())) {
throw new ParamValidException("sysCode参数不能为空");
}
//流程标题
if(StringUtils.isBlank(contractProcessDTO.getProcessTitle())){
throw new ParamValidException("流程标题不能为空");
}
//合同详情列表
if(null==contractProcessDTO.getContractList()||contractProcessDTO.getContractList().isEmpty()){
throw new ParamValidException("合同列表不能为空");
}
//必填true自动用印false非自动用印。
//自动用印为true必须传模板id遍历合同列表判断只要有一个不包含模板id抛异常
validateAutoSeal();
//拟稿人工号
if (StringUtils.isBlank(contractProcessDTO.getUserCode())) {
throw new ParamValidException("拟稿人工号为空");
}
//拟稿人部门
if(StringUtils.isBlank(contractProcessDTO.getUserDeptCode())){
throw new ParamValidException("拟稿人部门为空");
}
final Map<String, String> user = ContractDao.getUserByWorkcodeAndDeptCode(contractProcessDTO.getUserCode(), contractProcessDTO.getUserDeptCode());
if(user.isEmpty()||StringUtils.isBlank(user.get("USERID"))){
throw new ParamValidException("拟搞人不存在");
}
//校验合同类型
if(StringUtils.isBlank(contractProcessDTO.getContractCategoryId())){
throw new ParamValidException("合同类型不能为空");
}
final PropBean propBean = new PropBean();
if(!ContractDao.checkCategory(propBean.getPropName("contract.jc.categoryPrefix")+"_"+contractProcessDTO.getContractCategoryId())){
throw new ParamValidException("合同类型不存在");
}
//校验审批人员
validateProcessApprovers();
//校验 合同详情 ContractDetailDTO
validateContractDetail();
}
private void validateProcessApprovers() {
//通知阅读人员 默认主岗
final List<UserDeptInfoDTO> noticeReaderIds = contractProcessDTO.getNoticeReaderIds();
if(null!= noticeReaderIds &&!noticeReaderIds.isEmpty()){
final List<UserEntity> noticeReaders = ContractDao.getUsersByWorkcodeAndJobCodeList(noticeReaderIds);
if(noticeReaders.size()!= noticeReaderIds.size()){
throw new ParamValidException("通知阅读人员有误");
}
}
//内部审核人员
final List<UserDeptInfoDTO> internalAuditIds = contractProcessDTO.getInternalAuditIds();
if(null!= internalAuditIds &&!internalAuditIds.isEmpty()){
final List<UserEntity> internalUsers = ContractDao.getUsersByWorkcodeAndJobCodeList(internalAuditIds);
if(internalUsers.size()!= internalAuditIds.size()){
throw new ParamValidException("内部审核人员有误");
}
}
//部门领导
final List<UserDeptInfoDTO> deptHeadIds = contractProcessDTO.getDeptHeadIds();
if(null!= deptHeadIds &&!deptHeadIds.isEmpty()){
final List<UserEntity> headers = ContractDao.getUsersByWorkcodeAndJobCodeList(deptHeadIds);
if(headers.size()!= deptHeadIds.size()){
throw new ParamValidException("部门领导人员有误");
}
}
}
private void validateAutoSeal() {
if(contractProcessDTO.getAutoSealFlag()){
for (ContractDetailDTO contractDetailDTO : contractProcessDTO.getContractList()) {
final String templateNo = contractDetailDTO.getTemplateNo();
if(StringUtils.isBlank(templateNo)){
throw new ParamValidException("合同名称:"+contractDetailDTO.getContractName()+" 自动用印,模板编号不能为空");
}
if(!ContractDao.checkTemplateNo(templateNo)){
throw new ParamValidException("合同名称:"+contractDetailDTO.getContractName()+" 模板编号查不到对应模板id");
}
}
}
}
private void validateContractDetail() {
//是否普通合同或在线合同校验
final ModuleCodeEnum moduleCodeEnum = ModuleCodeEnum.valueOf(contractProcessDTO.getModuleCode());
for (ContractDetailDTO contractDetailDTO : contractProcessDTO.getContractList()) {
//contractName
if(StringUtils.isBlank(contractDetailDTO.getContractName())){
throw new ParamValidException("合同名称不能为空");
}
//校验对手方
validateCounterparty(contractDetailDTO.getCounterPartyList());
//产品编码
validateProductCode(moduleCodeEnum, contractDetailDTO.getProductCodeList());
//合同正文校验
if(null==contractDetailDTO.getMainFileList()||contractDetailDTO.getMainFileList().isEmpty()){
throw new ParamValidException("合同正文不能为空");
}
validateContractMainFile(contractDetailDTO.getMainFileList());
//合同附件校验 合同附件可以为空
if(null!=contractDetailDTO.getAttachedFileList()){
validateContractMainFile(contractDetailDTO.getAttachedFileList());
}
//合同印章校验
validateContractSeals(contractDetailDTO.getSeals());
//合同起草人工号 暂时复制流程拟稿人
//合同起草人部门 暂时复制流程拟稿人
//合同备注
//文本来源
TextSourceEnum.valueOf(contractDetailDTO.getTextSource());
//未使用范本原因
if(TextSourceEnum.LOCAL.name().equals(contractDetailDTO.getTextSource())&&StringUtils.isBlank(contractDetailDTO.getTextSource())){
throw new ParamValidException("本地上传,未使用范本原因不能为空");
}
}
}
private void validateProductCode(ModuleCodeEnum moduleCodeEnum,final List<String> productCodeList) {
if(moduleCodeEnum ==ModuleCodeEnum.ONLINE){
if(null== productCodeList || productCodeList.isEmpty()){
throw new ParamValidException("产品编码不能为空");
}
final List<String> dsfbmList = ContractDao.selectCounterPartyByCertCode(productCodeList);
if(dsfbmList.isEmpty()){
throw new ParamValidException("产品无关联对手方信息");
}
//查出关联关系个数少于产品个数
if(dsfbmList.size()< productCodeList.size()){
throw new ParamValidException("部分产品无关联对手方");
}
final String flag = dsfbmList.get(0);
if (StringUtils.isBlank(flag)) {
throw new ParamValidException("产品关联对手方错误");
}
//校验对手方是否同一个
for (String dsfbm : dsfbmList) {
if(!flag.equals(dsfbm)){
throw new ParamValidException("关联对手方编码不唯一");
}
}
}
}
private void validateContractSeals(List<String> seals) {
if(null!= seals&&!seals.isEmpty()){
final List<String> contractSeal = ContractDao.findContractSeal(seals);
if(contractSeal.size()!= seals.size()){
throw new ParamValidException("印章校验失败");
}
}
}
private void validateContractMainFile(List<ContractFileDTO> mainFileList) {
//单个合同文件数量限制 HTO-14585
if(mainFileList.size()> MAX_FILE_COUNT){
throw new ParamValidException("合同文件超过最大文件数"+MAX_FILE_COUNT);
}
for (ContractFileDTO contractFileDTO : mainFileList) {
//文件名称
if(StringUtils.isBlank(contractFileDTO.getFileName())){
throw new ParamValidException("文件名称不能为空");
}
//存储网关文件id
if(StringUtils.isBlank(contractFileDTO.getFileId())){
throw new ParamValidException("文件id不能为空");
}
//文件后缀
if(StringUtils.isBlank(contractFileDTO.getSuffix())){
throw new ParamValidException("文件后缀不能为空");
}
}
}
private void validateCounterparty(List<CounterPartyDTO> counterPartyList) {
//证件类型
//证件号
final List<Integer> counterparty = ContractDao.findCounterparty(counterPartyList);
if(counterparty.size()!=counterPartyList.size()){
throw new ParamValidException("校验对手方失败");
}
}
}

@ -0,0 +1,59 @@
package com.engine.htxc.contract.web;
import com.alibaba.fastjson.JSONObject;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.contract.service.CounterpartyService;
import com.engine.htxc.contract.service.impl.CounterpartyServiceImpl;
import com.google.common.collect.Maps;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.general.BaseBean;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
import java.util.Map;
/**
* @author K1810036
* @version 1.0.0
* @ClassName CounterpartyAction.java
* @createTime 20220905 09:56:00
*/
@Slf4j
public class CounterpartyAction {
private static final Logger logger= LoggerFactory.getLogger(CounterpartyAction.class);
private CounterpartyService getService() {
return ServiceUtil.getService(CounterpartyServiceImpl.class);
}
@POST
@Path("/getRoleName")
@Produces({MediaType.TEXT_PLAIN})
public String getRoleName(@Context HttpServletRequest request, @Context HttpServletResponse response) {
HashMap<String, Object> apidatas = new HashMap<>();
BaseBean bb = new BaseBean();
try {
User user = HrmUserVarify.getUser(request, response);
int userId = user.getUID();
Map<String,Object> paramMap = Maps.newHashMap();
paramMap.put("userId",userId);
return JSONObject.toJSONString(getService().getRoleName(paramMap));
} catch (Exception e) {
log.error("get rolename fail [{}]", e);
return JAVATools.Apiretrun("400","error");
}
}
}

@ -0,0 +1,59 @@
package com.engine.htxc.contract.web;
import com.alibaba.fastjson.JSON;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.common.dto.EcologyCommonResponseDTO;
import com.engine.htxc.contract.dto.ProductCounterPartyDTO;
import com.engine.htxc.contract.dto.ProductCounterpartyEnum;
import com.engine.htxc.contract.service.ProductCounterpartyService;
import com.engine.htxc.contract.service.impl.ProductCounterpartyServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.general.Util;
import weaver.hrm.HrmUserVarify;
import weaver.hrm.User;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/2315:19
* @Description: action
* @ModifyLog:
**/
public class ProductCounterpartyAction {
private static final Logger logger= LoggerFactory.getLogger(ProductCounterpartyAction.class);
private ProductCounterpartyService productCounterpartyService=ServiceUtil.getService(ProductCounterpartyServiceImpl.class);
@POST
@Path("/addProductCounterParty")
@Produces({MediaType.TEXT_PLAIN})
public String addProductCounterParty(@Context HttpServletRequest request, @Context HttpServletResponse response) {
try{
User user = HrmUserVarify.getUser(request, response);
final String productCounterPartyJson = Util.null2String(request.getParameter("productCounterParty"));
logger.info("传入合同流程数据:[{}]",productCounterPartyJson);
final ProductCounterPartyDTO productCounterParty = JSON.parseObject(productCounterPartyJson, ProductCounterPartyDTO.class);
ProductCounterpartyEnum result=productCounterpartyService.addProductCounterParty(user,productCounterParty);
logger.info("添加产品对手方结果:[{}]",result);
if(result==ProductCounterpartyEnum.PRODUCT_OTHER_COUNTERPARTY_EXIST){
return EcologyCommonResponseDTO.failJson(ProductCounterpartyEnum.PRODUCT_OTHER_COUNTERPARTY_EXIST.name());
}
return EcologyCommonResponseDTO.successJson(result.name());
}catch (Exception e){
logger.error("创建产品对手方发生异常",e);
}
return EcologyCommonResponseDTO.failJson("创建产品对手方发生错误");
}
}

@ -0,0 +1,68 @@
package com.engine.htxc.document;
import com.alibaba.fastjson.JSON;
import com.engine.common.util.ServiceUtil;
import com.engine.htxc.document.service.impl.DocTemplateServiceImpl;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import weaver.hrm.HrmUserVarify;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.core.Context;
import javax.ws.rs.core.MediaType;
import java.util.HashMap;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.Stream;
/**
* @Title: ecology-9
* @Company:
* @author: K1810050
* @version: 1.0
* @CreateDate: 2022/8/18 18:06
* @Description: action
* @ModifyLog:
**/
public class DocTemplateAction {
private static final Logger logger= LoggerFactory.getLogger(DocTemplateAction.class);
private DocTemplateServiceImpl docTemplateService(){
return ServiceUtil.getService(DocTemplateServiceImpl.class);
}
/**
* id
* @param req
* @param rep id
* @return
*/
@GET
@Path("/getSgFileidByTemplateNos")
@Produces({MediaType.APPLICATION_JSON})
public String getSgFileidByTemplateNo(@Context HttpServletRequest req, @Context HttpServletResponse rep){
HrmUserVarify.getUser(req, rep);
String templateNos = req.getParameter("templateNos");
logger.info("传入模板编号: [{}]",templateNos);
try {
List result = docTemplateService().getSgFileIdByTemplateNos(Stream.of(templateNos.split(",")).collect(Collectors.toList()));
HashMap<String, Object> map = new HashMap<>();
map.put("code", 200);
map.put("msg", "success");
map.put("data", result);
return JSON.toJSONString(map);
}catch (Exception e){
logger.error("查询模板信息失败",e);
}
return JAVATools.Apiretrun("400","查询文档失败");
}
}

@ -0,0 +1,27 @@
package com.engine.htxc.document.dao;
import weaver.interfaces.htsc.GlobatTools.JAVATools;
import java.util.Collections;
import java.util.List;
/**
* @author K1810050
*/
public class DocTemplateDao {
public static List findSgFileIdByTemplateNos(List<String> templateNos){
if(null==templateNos||templateNos.isEmpty()){
return Collections.emptyList();
}
String sql = " SELECT " +
" c.fileid,b.mbbh,b.mbmc,b.yqsyxt,b.bb as bbh" +
" FROM " +
" docimagefile a ,uf_wdzx b,imagefile c " +
" where " +
" a.docid=b.wj and a.imagefileid=c.imagefileid and b.zt=1 and b.mbbh in ('" +
String.join("','", templateNos) +
"' )";
return JAVATools.GetTableToListMap(sql, null);
}
}

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save