#NJYCJT-2# 二开代码,单点、定时器、扩展页面等接口开发

main
shilei 1 year ago
parent ff2d965137
commit f52a1d3af0

@ -0,0 +1,113 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util"%>
<%@ page import="weaver.hrm.User" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="java.security.Key" %>
<%@ page import="javax.crypto.Cipher" %>
<%@ page import="javax.crypto.spec.IvParameterSpec" %>
<%@ page import="java.util.Base64" %>
<%@ page import="javax.crypto.spec.DESKeySpec" %>
<%@ page import="javax.crypto.SecretKeyFactory" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
<%@ page import="java.net.URLEncoder" %>
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page"/>
<%
String erphost = "http://cs.njycjt.com:9060";
String pageUrl = "/PubPlatform/Nav/Home/Default.aspx";
/**
* 偏移变量固定占8位字节
*/
String IV_PARAMETER = "njy(cjt(";
/**
* 密钥算法
*/
String ALGORITHM = "DES";
/**
* 加密/解密算法-工作模式-填充模式
*/
String CIPHER_ALGORITHM = "DES/CBC/PKCS5Padding";
/**
* 默认编码
*/
String CHARSET = "UTF-8";
String password = IV_PARAMETER ;
String msg = "" ;
String jumpUrl = "" ;
User user = HrmUserVarify.getUser (request,response);
if(user !=null){
String userid = user.getUID()+"";
String workcode = ResourceComInfo.getWorkcode(userid);
if(StringUtils.isNotBlank(password) && password.length()>=8){
if(StringUtils.isNotBlank(workcode)){
String encryptUser = encrypt(password,workcode,CHARSET,ALGORITHM,CIPHER_ALGORITHM,IV_PARAMETER);
long currentTimeMillis = System.currentTimeMillis();
long currentTimeSeconds = currentTimeMillis / 1000;
String encryptTime = encrypt(password,Util.null2String(currentTimeSeconds),CHARSET,ALGORITHM,CIPHER_ALGORITHM,IV_PARAMETER);
String encodeUser = URLEncoder.encode(encryptUser,"UTF-8");
String encodeTime = URLEncoder.encode(encryptTime,"UTF-8");
String encodePageUrl = URLEncoder.encode(pageUrl,"UTF-8");
jumpUrl = erphost+"/PubPlatform/Nav/Login/SSO/Login?UserCode="+encodeUser+"&PageUrl="+encodePageUrl+"&iat="+encodeTime;
}else{
msg = "获取当前用户工号为空";
}
}else{
msg = "加密秘钥为空或者秘钥少于8位";
}
}else{
msg = "获取当前用户为空";
}
if(StringUtils.isNotBlank(jumpUrl)){
response.sendRedirect(jumpUrl);
}
%>
<script type="text/javascript" src="<%=weaver.general.GCONST.getContextPath()%>/cloudstore/resource/pc/jquery/jquery.min.js"></script>
<script>
// window.location.href=viewUrl+"&returnUrl="+window.encodeURIComponent(returnUrl);
jQuery(document).ready(function () {
var msg = "<%=msg %>";
var jumpUrl = "<%=jumpUrl %>";
if(jumpUrl =="" && msg !=""){
alert(msg);
}
});
</script>
<%!
/**
* DES加密字符串
*
* @param password 加密密码长度不能够小于8位
* @param data 待加密字符串
* @return 加密后内容
*/
public String encrypt(String password, String data,String CHARSET,String ALGORITHM,String CIPHER_ALGORITHM,String IV_PARAMETER) {
String encrtptData = "" ;
if (StringUtils.isNotBlank(data)){
try {
DESKeySpec dks = new DESKeySpec(password.getBytes(CHARSET));
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM);
Key secretKey = keyFactory.generateSecret(dks);
Cipher cipher = Cipher.getInstance(CIPHER_ALGORITHM);
IvParameterSpec iv = new IvParameterSpec(IV_PARAMETER.getBytes(CHARSET));
cipher.init(Cipher.ENCRYPT_MODE, secretKey, iv);
byte[] bytes = cipher.doFinal(data.getBytes(CHARSET));
//JDK1.8及以上可直接使用Base64JDK1.7及以下可以使用BASE64Encoder
//Android平台可以使用android.util.Base64
encrtptData = new String(Base64.getEncoder().encode(bytes));
} catch (Exception e) {
e.printStackTrace();
}
}
return encrtptData ;
}
%>

@ -0,0 +1,90 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="weaver.general.BaseBean" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
<%@ page import="java.nio.charset.StandardCharsets" %>
<%@ page import="javax.crypto.spec.SecretKeySpec" %>
<%@ page import="javax.xml.bind.DatatypeConverter" %>
<%@ page import="java.security.NoSuchAlgorithmException" %>
<%@ page import="java.security.InvalidKeyException" %>
<%@ page import="javax.crypto.*" %>
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page"/>
<%
BaseBean bb = new BaseBean();
String host = "https://mip.beta.myspacex.cn/yczg/fw/OA_SSO_Login";
String secretKey = "httpsoanjycjtcom";
String msg = "" ;
String jumpUrl = "" ;
User user = HrmUserVarify.getUser (request,response);
try{
if(user !=null){
String userid = user.getUID()+"";
String workcode = ResourceComInfo.getWorkcode(userid);
if(StringUtils.isNotBlank(workcode) && StringUtils.isNotBlank(secretKey)){
String token = encryptAES(secretKey,workcode);
jumpUrl = host+"?Token="+token ;
}else{
msg = "获取当前用户工号为空";
}
}else{
msg = "获取当前用户为空";
}
}catch (Exception e){
}
if(StringUtils.isNotBlank(jumpUrl)){
response.sendRedirect(jumpUrl);
}
%>
<script type="text/javascript" src="<%=weaver.general.GCONST.getContextPath()%>/cloudstore/resource/pc/jquery/jquery.min.js"></script>
<script>
// window.location.href=viewUrl+"&returnUrl="+window.encodeURIComponent(returnUrl);
jQuery(document).ready(function () {
var msg = "<%=msg %>";
var jumpUrl = "<%=jumpUrl %>";
if(jumpUrl =="" && msg !=""){
alert(msg);
}
});
</script>
<%!
/**
* AES加密字符串
* @return 加密后内容
*/
public String encryptAES(String password,String data) {
String ALGORITHM = "AES";
String encrtptData = "" ;
try {
byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey); // 初始化加密器
byte[] encryptedBytes = cipher.doFinal(data.getBytes());
encrtptData = DatatypeConverter.printHexBinary(encryptedBytes);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
}catch (InvalidKeyException e) {
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
e.printStackTrace();
} catch (BadPaddingException e) {
e.printStackTrace();
}
return encrtptData ;
}
%>

@ -0,0 +1,21 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="weaver.interfaces.njycjt.mode.UpdateZjjhzxsj_ModeExpand" %>
<jsp:useBean id="bb" class="weaver.general.BaseBean"/>
<%
JSONObject dataJson = new JSONObject();
try{
UpdateZjjhzxsj_ModeExpand updateZjjhzxsj_ModeExpand = new UpdateZjjhzxsj_ModeExpand();
updateZjjhzxsj_ModeExpand.updateZjjhzxsjData();
}catch (Exception e){
dataJson.put("code",500);
}
dataJson.put("code",200);
%>
<%=dataJson.toJSONString() %>

@ -0,0 +1,90 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util,weaver.conn.RecordSet" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="java.nio.charset.StandardCharsets" %>
<%@ page import="javax.crypto.spec.SecretKeySpec" %>
<%@ page import="javax.xml.bind.DatatypeConverter" %>
<%@ page import="java.security.NoSuchAlgorithmException" %>
<%@ page import="java.security.InvalidKeyException" %>
<%@ page import="javax.crypto.*" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page"/>
<%
String secretKey = "httpsoanjycjtcom";
User user = HrmUserVarify.getUser (request,response);
RecordSet rs = new RecordSet();
String pcurlsrc = "";
String userid = user.getUID()+"";
String workcode = ResourceComInfo.getWorkcode(userid);
String tododataid = request.getParameter("tododataid");
String isremark = request.getParameter("isremark");
if( "0".equals(isremark) || "8".equals(isremark)){
rs.executeQuery("select * from ofs_todo_data where id = ?",tododataid);
rs.next();
pcurlsrc = Util.null2String(rs.getString("pcurlsrc"));
}else{
rs.executeQuery("select * from ofs_done_data where id = ?",tododataid);
rs.next();
pcurlsrc = Util.null2String(rs.getString("pcurlsrc"));
}
String token = "";
if(StringUtils.isNotBlank(workcode)){
token = encryptAES(secretKey,workcode);
}
if(StringUtils.isNotBlank(token)){
if(pcurlsrc.contains("#")) {
String[] split = pcurlsrc.split("#");
if(split[0].contains("?")){
pcurlsrc = split[0] + "&Token=" + token + "#" + split[1];
}else{
pcurlsrc = split[0] + "?Token=" + token + "#" + split[1];
}
}else if(pcurlsrc.contains("?")){
pcurlsrc = pcurlsrc + "&Token=" + token ;
}else{
pcurlsrc = pcurlsrc + "?Token=" + token ;
}
}
%>
<script type="text/javascript">
location.replace('<%=pcurlsrc%>');
</script>
<%!
/**
* AES加密字符串
* @return 加密后内容
*/
public String encryptAES(String password,String data) {
String ALGORITHM = "AES";
String encrtptData = "" ;
try {
byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey); // 初始化加密器
byte[] encryptedBytes = cipher.doFinal(data.getBytes());
encrtptData = DatatypeConverter.printHexBinary(encryptedBytes);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
}catch (InvalidKeyException e) {
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
e.printStackTrace();
} catch (BadPaddingException e) {
e.printStackTrace();
}
return encrtptData ;
}
%>

@ -0,0 +1,90 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.general.Util,weaver.conn.RecordSet" %>
<%@ page import="weaver.hrm.HrmUserVarify" %>
<%@ page import="weaver.hrm.User" %>
<%@ page import="java.nio.charset.StandardCharsets" %>
<%@ page import="javax.crypto.spec.SecretKeySpec" %>
<%@ page import="javax.xml.bind.DatatypeConverter" %>
<%@ page import="java.security.NoSuchAlgorithmException" %>
<%@ page import="java.security.InvalidKeyException" %>
<%@ page import="javax.crypto.*" %>
<%@ page import="org.apache.commons.lang3.StringUtils" %>
<jsp:useBean id="ResourceComInfo" class="weaver.hrm.resource.ResourceComInfo" scope="page"/>
<%
String secretKey = "httpsoanjycjtcom";
User user = HrmUserVarify.getUser (request,response);
RecordSet rs = new RecordSet();
String pcurlsrc = "";
String userid = user.getUID()+"";
String workcode = ResourceComInfo.getWorkcode(userid);
String tododataid = request.getParameter("tododataid");
String isremark = request.getParameter("isremark");
if( "0".equals(isremark) || "8".equals(isremark)){
rs.executeQuery("select * from ofs_todo_data where id = ?",tododataid);
rs.next();
pcurlsrc = Util.null2String(rs.getString("pcurlsrc"));
}else{
rs.executeQuery("select * from ofs_done_data where id = ?",tododataid);
rs.next();
pcurlsrc = Util.null2String(rs.getString("pcurlsrc"));
}
String token = "";
if(StringUtils.isNotBlank(workcode)){
token = encryptAES(secretKey,workcode);
}
if(StringUtils.isNotBlank(token)){
if(pcurlsrc.contains("#")) {
String[] split = pcurlsrc.split("#");
if(split[0].contains("?")){
pcurlsrc = split[0] + "&Token=" + token + "#" + split[1];
}else{
pcurlsrc = split[0] + "?Token=" + token + "#" + split[1];
}
}else if(pcurlsrc.contains("?")){
pcurlsrc = pcurlsrc + "&Token=" + token ;
}else{
pcurlsrc = pcurlsrc + "?Token=" + token ;
}
}
%>
<script type="text/javascript">
location.replace('<%=pcurlsrc%>');
</script>
<%!
/**
* AES加密字符串
* @return 加密后内容
*/
public String encryptAES(String password,String data) {
String ALGORITHM = "AES";
String encrtptData = "" ;
try {
byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, secretKey); // 初始化加密器
byte[] encryptedBytes = cipher.doFinal(data.getBytes());
encrtptData = DatatypeConverter.printHexBinary(encryptedBytes);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
} catch (NoSuchPaddingException e) {
e.printStackTrace();
}catch (InvalidKeyException e) {
e.printStackTrace();
} catch (IllegalBlockSizeException e) {
e.printStackTrace();
} catch (BadPaddingException e) {
e.printStackTrace();
}
return encrtptData ;
}
%>

@ -0,0 +1,76 @@
<%@ page language="java" contentType="text/html; charset=UTF-8" %>
<%@ page import="weaver.conn.RecordSet" %>
<%@ page import="weaver.general.Util" %>
<%@ page import="org.apache.commons.lang.StringUtils" %>
<%@ page import="com.alibaba.fastjson.JSONObject" %>
<%@ page import="com.alibaba.fastjson.JSONArray" %>
<%@ page import="java.text.SimpleDateFormat" %>
<%@ page import="java.util.Date" %>
<%@ page import="java.util.Calendar" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="java.util.List" %>
<%@ page import="weaver.general.BaseBean" %>
<jsp:useBean id="bb" class="weaver.general.BaseBean"/>
<%
JSONObject dataJson = new JSONObject();
RecordSet rs = new RecordSet();
String xqny = Util.null2String(request.getParameter("xqny"));
String htmc = Util.null2String(request.getParameter("htmc"));
bb.writeLog("xqny:"+xqny);
bb.writeLog("htmc:"+htmc);
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();//获得一个日历的实例
List<String> list = new ArrayList<String>();
if(StringUtils.isNotBlank(xqny) && xqny.length()==7){
String selectDate = xqny+"-01";
for(int i=0;i<6;i++)
try{
Date date = sdf.parse(selectDate);//初始日期
c.setTime(date);//设置日历时间
c.add(Calendar.MONTH,i);//在日历的月份上增加6个月
String resDate = sdf.format(c.getTime());
if(StringUtils.isNotBlank(resDate) && resDate.length()==10){
String resMonth = resDate.substring(0,7);
bb.writeLog("resMonth:"+resMonth);
list.add(resMonth);
}
}catch(Exception e){
}
}
JSONObject yfObject = new JSONObject();
String[] field_lisy = new String[]{"yf","yf1","yf2","yf3","yf4","yf5","yf6"};
for(int i=0;i<list.size();i++){
String zjjhje = "" ;
String zjjhyf = list.get(i);
bb.writeLog("zjjhyf:"+zjjhyf);
if(StringUtils.isNotBlank(xqny) && StringUtils.isNotBlank(htmc)){
String sql =" SELECT zjjhje FROM uf_zjjhzxsj WHERE zjjhx='" +htmc+"' and zjjhyf='"+zjjhyf+"' " ;
bb.writeLog("sql:"+sql);
rs.executeQuery(sql);
if (rs.next()){
zjjhje = Util.null2String(rs.getString("zjjhje"));
bb.writeLog("zjjhje:"+zjjhje);
}
}
JSONObject jsonObject = new JSONObject();
jsonObject.put("zjjhje",zjjhje);
jsonObject.put("zjjhyf",zjjhyf);
String field = field_lisy[i];
jsonObject.put("field",field);
yfObject.put(field,jsonObject);
}
dataJson.put("data",yfObject);
dataJson.put("code",200);
%>
<%=dataJson.toJSONString() %>

@ -2,5 +2,8 @@ package com.api.njycjt.web;
import com.engine.njycjt.web.ZcjhxAction;
import javax.ws.rs.Path;
@Path("/njycjt/zcjhx")
public class ZcjhxActionApi extends ZcjhxAction {
}

@ -26,17 +26,26 @@ public class UpdateZcjhxZtCmd extends AbstractCommonCommand<Map<String, Object>>
ModeZcjhxUtil modeZcjhxUtil = new ModeZcjhxUtil();
Map<String,String> recordMap1 = modeZcjhxUtil.updateZcjhxData();
Map<String,String> recordMap2 = modeZcjhxUtil.updateHtsqData();
Map<String,String> recordMap3 = modeZcjhxUtil.updateMingyuanZhaocaiData();
Map<String,String> recordMap4 = modeZcjhxUtil.updateMingyuanHetongData();
String code1 = recordMap1.get("code");
String code2 = recordMap2.get("code");
String msg1 = recordMap1.get("msg1");
String msg2 = recordMap1.get("msg2");
String code3 = recordMap3.get("code");
String code4 = recordMap4.get("code");
String msg1 = recordMap1.get("msg");
String msg2 = recordMap2.get("msg");
String msg3 = recordMap3.get("msg");
String msg4 = recordMap4.get("msg");
if("200".equals(code1) && "200".equals(code2)){
if("200".equals(code1) && "200".equals(code2) && "200".equals(code3) && "200".equals(code4)){
dataMap.put("code",200);
dataMap.put("msg","招采流程:"+msg1+",合同:"+msg2);
dataMap.put("msg","招采流程:"+msg1+",合同:"+msg2+",明源招采:"+msg3+",明源合同:"+msg4);
}else{
dataMap.put("code",300);
dataMap.put("msg","招采流程:"+msg1+",合同:"+msg2);
dataMap.put("msg","招采流程:"+msg1+",合同:"+msg2+",明源招采:"+msg3+",明源合同:"+msg4);
}
return dataMap;
}

@ -0,0 +1,149 @@
package test;
import weaver.general.AES;
import javax.crypto.Cipher;
import javax.crypto.SecretKeyFactory;
import javax.crypto.spec.DESKeySpec;
import javax.crypto.spec.IvParameterSpec;
import java.security.Key;
import java.util.Base64;
public class Test2 {
public static void main(String[] args) {
String usercode = "吕菁菁";
String password = "njy(cjt(" ;
String ddd = encrypt(password,usercode);
System.out.println(ddd);
// 获取当前时间的Unix时间戳毫秒
long currentTimeMillis = System.currentTimeMillis();
long currentTimeSeconds = currentTimeMillis / 1000;
String eee = encrypt(password,currentTimeSeconds+"");
System.out.println("当前Unix时间戳毫秒: " + currentTimeMillis);
System.out.println("当前Unix时间戳: " + currentTimeSeconds);
System.out.println(eee);
tttt();
String app_secret_ = "yjcust";
String token = AES.encrypt("ywy", app_secret_);
System.out.println("token:"+token);
}
/**
* 8
*/
private final static String IV_PARAMETER = "njy(cjt(";
/**
*
*/
private static final String ALGORITHM = "DES";
/**
* /--
*/
private static final String CIPHER_ALGORITHM = "DES/CBC/PKCS5Padding";
/**
*
*/
private static final String CHARSET = "utf-8";
/**
* key
*
* @param password
* @return
* @throws Exception
*/
private static Key generateKey(String password) throws Exception {
DESKeySpec dks = new DESKeySpec(password.getBytes(CHARSET));
SecretKeyFactory keyFactory = SecretKeyFactory.getInstance(ALGORITHM);
return keyFactory.generateSecret(dks);
}
/**
* DES
*
* @param password 8
* @param data
* @return
*/
public static String encrypt(String password, String data) {
if (password== null || password.length() < 8) {
throw new RuntimeException("加密失败key不能小于8位");
}
if (data == null)
return null;
try {
Key secretKey = generateKey(password);
Cipher cipher = Cipher.getInstance(CIPHER_ALGORITHM);
IvParameterSpec iv = new IvParameterSpec(IV_PARAMETER.getBytes(CHARSET));
cipher.init(Cipher.ENCRYPT_MODE, secretKey, iv);
byte[] bytes = cipher.doFinal(data.getBytes(CHARSET));
byte[] encodedBytes = Base64.getUrlEncoder().encode(bytes);
System.out.println("1111:"+new String(encodedBytes));
byte[] bytes2 = org.apache.commons.codec.binary.Base64.decodeBase64(bytes);
String s2 = new String(bytes2);
System.out.println("333:"+s2);
//JDK1.8及以上可直接使用Base64JDK1.7及以下可以使用BASE64Encoder
//Android平台可以使用android.util.Base64
return new String(Base64.getEncoder().encode(bytes));
} catch (Exception e) {
e.printStackTrace();
return data;
}
}
public static void tttt(){
byte[] bytes1 = org.apache.commons.codec.binary.Base64.encodeBase64("https://blog.csdn.net/qingfengxia2013/article/details/82188912".getBytes());
String s1 = new String(bytes1);
System.out.println(s1);
byte[] bytes = org.apache.commons.codec.binary.Base64.decodeBase64(s1.getBytes());
String s2 = new String(bytes);
System.out.println(s2);
}
/**
* DES
*
* @param password 8
* @param data
* @return
*/
public static String decrypt(String password, String data) {
if (password== null || password.length() < 8) {
throw new RuntimeException("加密失败key不能小于8位");
}
if (data == null)
return null;
try {
Key secretKey = generateKey(password);
Cipher cipher = Cipher.getInstance(CIPHER_ALGORITHM);
IvParameterSpec iv = new IvParameterSpec(IV_PARAMETER.getBytes(CHARSET));
cipher.init(Cipher.DECRYPT_MODE, secretKey, iv);
return new String(cipher.doFinal(Base64.getDecoder().decode(data.getBytes(CHARSET))), CHARSET);
} catch (Exception e) {
e.printStackTrace();
return data;
}
}
}

@ -0,0 +1,32 @@
package test;
import org.apache.commons.lang3.StringUtils;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
public class Test8 {
public static void main(String[] args) {
String xqny = "2024-04";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();//获得一个日历的实例
if(StringUtils.isNotBlank(xqny) && xqny.length()==7){
String selectDate = xqny+"-01";
for(int i=0;i<6;i++)
try{
Date date = sdf.parse(selectDate);//初始日期
c.setTime(date);//设置日历时间
c.add(Calendar.MONTH,i);//在日历的月份上增加6个月
System.out.println(sdf.format(c.getTime()));
String resDate = sdf.format(c.getTime());
if(StringUtils.isNotBlank(resDate) && resDate.length()==10){
String resMonth = resDate.substring(0,7);
System.out.println(resMonth);
}
}catch(Exception e){
}
}
}
}

@ -0,0 +1,549 @@
package test;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
public class Test9 {
public static void main(String[] args) {
String EXPERCandidateId = "";
String EXPEREducationLevel = "" ;
String EXPERName = "";
String EXPERGender = "";
String EXPERBirthday = "" ;
String EXPEROgYearsOfWork = "";
String JobId = "";
String datas = "{\n" +
" \"msg\": \"执行成功\",\n" +
" \"batchKey\": \"TEST_1711378150237_EJPH\",\n" +
" \"code\": 100,\n" +
" \"data\": {\n" +
" \"statusCode\": \"200\",\n" +
" \"header\": \"{}\",\n" +
" \"body\": {\n" +
" \"data\": [\n" +
" {\n" +
" \"id\": \"83f48e30-703d-4118-ae88-f33e0e79849e\",\n" +
" \"columns\": [\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"867499ec-2bf6-477e-9b48-5af06303120a\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"id\": \"2f726aeb-2df2-48ad-bab5-db811b9354df\",\n" +
" \"columns\": [\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" },\n" +
" {\n" +
" \"EXPERCandidateId\": {\n" +
" \"value\": \"C00598355\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPEREducationLevel\": {\n" +
" \"value\": \"2\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERName\": {\n" +
" \"value\": \"卢嘻嘻\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERGender\": {\n" +
" \"value\": \"1\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"EXPERBirthday\": {\n" +
" \"value\": \"1995-10-02 00:00:00\",\n" +
" \"valueType\": \"6\"\n" +
" },\n" +
" \"EXPEROgYearsOfWork\": {\n" +
" \"value\": \"6年\",\n" +
" \"valueType\": \"0\"\n" +
" },\n" +
" \"JobId\": [\n" +
" {\n" +
" \"value\": \"03ddf35f-7d6d-4ef8-8f0b-7676c365d8a2\",\n" +
" \"valueType\": \"0\"\n" +
" }\n" +
" ]\n" +
" }\n" +
" ]\n" +
" }\n" +
" ],\n" +
" \"code\": \"200\"\n" +
" }\n" +
" }\n" +
"}";
JSONObject jsonObject = JSONObject.parseObject(datas);
JSONObject data2Object = jsonObject.getJSONObject("data");
if(data2Object.containsKey("statusCode")){
String statusCode = data2Object.getString("statusCode");
if("200".equals(statusCode)){
JSONObject body2Object = data2Object.getJSONObject("body");
if(body2Object.containsKey("data")){
JSONArray dataArray = body2Object.getJSONArray("data");
if(dataArray.size()>=1){
JSONObject resObject = dataArray.getJSONObject(dataArray.size()-1);
if(resObject.containsKey("columns")){
JSONArray columnsArray = resObject.getJSONArray("columns");
JSONObject columnsObject = columnsArray.getJSONObject(columnsArray.size()-1);
JSONObject EXPERCandidateId_Object = columnsObject.getJSONObject("EXPERCandidateId");
EXPERCandidateId = EXPERCandidateId_Object.getString("value");
JSONObject EXPEREducationLevel_Object = columnsObject.getJSONObject("EXPEREducationLevel");
EXPEREducationLevel = EXPEREducationLevel_Object.getString("value");
JSONObject EXPERName_Object = columnsObject.getJSONObject("EXPERName");
EXPERName = EXPERName_Object.getString("value");
JSONObject EXPERGender_Object = columnsObject.getJSONObject("EXPERGender");
EXPERGender = EXPERGender_Object.getString("value");
JSONObject EXPERBirthday_Object = columnsObject.getJSONObject("EXPERBirthday");
EXPERBirthday = EXPERBirthday_Object.getString("value");
JSONObject EXPEROgYearsOfWork_Object = columnsObject.getJSONObject("EXPEROgYearsOfWork");
EXPEROgYearsOfWork = EXPEROgYearsOfWork_Object.getString("value");
JSONArray JobId_Array = columnsObject.getJSONArray("JobId");
JSONObject JobId_Object = JobId_Array.getJSONObject(JobId_Array.size()-1);
JobId = JobId_Object.getString("value");
}
}
}
}
}
JSONObject resObject = new JSONObject();
resObject.put("EXPERCandidateId",EXPERCandidateId);
resObject.put("EXPEREducationLevel",EXPEREducationLevel);
resObject.put("EXPERName",EXPERName);
resObject.put("EXPERGender",EXPERGender);
resObject.put("EXPERBirthday",EXPERBirthday);
resObject.put("EXPEROgYearsOfWork",EXPEROgYearsOfWork);
resObject.put("JobId",JobId);
JSONObject outObject = new JSONObject();
outObject.put("code",200);
outObject.put("data",resObject);
System.out.println(outObject.toString());
}
}

@ -0,0 +1,54 @@
package test;
import javax.crypto.*;
import java.security.*;
import java.util.Base64;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
public class test3 {
private static final String ALGORITHM = "AES"; // 指定加密算法为AES
public static void main(String[] args) throws Exception {
String originalText = "11057"; // 要加密的原始文本
String password = "njycjt";
byte[] keyBytes = generateKey(password); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); // 选择加密模式和填充方式
cipher.init(Cipher.ENCRYPT_MODE, secretKey); // 初始化加密器
byte[] encryptedBytes = cipher.doFinal(originalText.getBytes()); // 执行加密操作
String encryptedText = Base64.getEncoder().encodeToString(encryptedBytes);
System.out.println("encryptedBytes:"+ encryptedText);
String encryptedText16 = DatatypeConverter.printHexBinary(encryptedBytes);
System.out.println("Encrypted Text: " + encryptedText16);
byte[] decodeds22= DatatypeConverter.parseHexBinary(encryptedText16);
System.out.println(new String(decodeds22));
cipher.init(Cipher.DECRYPT_MODE, secretKey); // 初始化解密器
byte[] decryptedBytes = cipher.doFinal(decodeds22); // 执行解密操作
System.out.println("Decrypted Text: " + new String(decryptedBytes));
String s2 = "Testing DatatypeConverter.printHexBinary";
String encodeds2 = DatatypeConverter.printHexBinary(s2.getBytes());
System.out.println(encodeds2);
byte[] decodeds2= DatatypeConverter.parseHexBinary(encodeds2);
System.out.println(new String(decodeds2));
}
private static byte[] generateKey(String password) throws NoSuchAlgorithmException {
KeyGenerator keyGen = KeyGenerator.getInstance(ALGORITHM);
SecureRandom random = new SecureRandom();
random.setSeed(password.getBytes());
keyGen.init(random);
return keyGen.generateKey().getEncoded();
}
}

@ -0,0 +1,31 @@
package test;
import javax.crypto.BadPaddingException;
import javax.crypto.IllegalBlockSizeException;
import javax.crypto.NoSuchPaddingException;
import java.security.InvalidKeyException;
import java.security.NoSuchAlgorithmException;
public class test4 {
public static void main(String[] args) throws NoSuchAlgorithmException, NoSuchPaddingException, InvalidKeyException, BadPaddingException, IllegalBlockSizeException {
String ALGORITHM="AES";
String token = "52962E1C6C63AB0DD4F03680E3FAC585";
String password = "njycjt";
byte[] testjm = javax.xml.bind.DatatypeConverter.parseHexBinary(token);
javax.crypto.KeyGenerator keyGen = javax.crypto.KeyGenerator.getInstance(ALGORITHM);
java.security.SecureRandom random = new java.security.SecureRandom();
random.setSeed(password.getBytes());
keyGen.init(random);
byte[] keyBytes = keyGen.generateKey().getEncoded();
javax.crypto.SecretKey secretKey = new javax.crypto.spec.SecretKeySpec(keyBytes, ALGORITHM);
javax.crypto.Cipher cipher = javax.crypto.Cipher.getInstance("AES/ECB/PKCS5Padding");
cipher.init(javax.crypto.Cipher.DECRYPT_MODE, secretKey);
byte[] decryptedBytes = cipher.doFinal(testjm);
String output = new String(decryptedBytes);
System.out.println(output);
}
}

@ -0,0 +1,24 @@
package test;
import javax.crypto.Cipher;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
import java.nio.charset.StandardCharsets;
public class test5 {
private static final String ALGORITHM = "AES"; // 指定加密算法为AES
public static void main(String[] args) throws Exception {
String password = "httpsoanjycjtcom";
String encrypted = "43CE957987904F707E5084E20D3C12A6";
byte[] decodeds= DatatypeConverter.parseHexBinary(encrypted);
byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); // 选择加密模式和填充方式
cipher.init(Cipher.DECRYPT_MODE, secretKey); // 初始化解密器
byte[] decryptedBytes = cipher.doFinal(decodeds); // 执行解密操作
System.out.println("Decrypted Text: " + new String(decryptedBytes));
}
}

@ -0,0 +1,221 @@
package test;
import javax.crypto.Cipher;
import javax.crypto.spec.SecretKeySpec;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
import javax.crypto.Cipher;
import javax.crypto.spec.IvParameterSpec;
import javax.crypto.spec.SecretKeySpec;
import java.nio.charset.StandardCharsets;
import java.util.Base64;
import java.util.Random;
public class test6 {
/** 加密模式之 ECB算法/模式/补码方式 */
private static final String AES_ECB = "AES/ECB/PKCS5Padding";
/** 加密模式之 CBC算法/模式/补码方式 */
private static final String AES_CBC = "AES/CBC/PKCS5Padding";
/** 加密模式之 CFB算法/模式/补码方式 */
private static final String AES_CFB = "AES/CFB/PKCS5Padding";
/** AES 中的 IV 必须是 16 字节128位长 */
private static final Integer IV_LENGTH = 16;
/***
* <h2></h2>
* @param str
*/
public static boolean isEmpty(Object str) {
return null == str || "".equals(str);
}
/***
* <h2>String byte</h2>
* @param str
*/
public static byte[] getBytes(String str){
if (isEmpty(str)) {
return null;
}
try {
return str.getBytes(StandardCharsets.UTF_8);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
/***
* <h2>IV</h2>
*/
public static String getIV(){
String str = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
Random random = new Random();
StringBuffer sb = new StringBuffer();
for(int i = 0 ; i < IV_LENGTH ; i++){
int number = random.nextInt(str.length());
sb.append(str.charAt(number));
}
return sb.toString();
}
/***
* <h2> AES </h2>
*/
public static SecretKeySpec getSecretKeySpec(String key){
SecretKeySpec secretKeySpec = new SecretKeySpec(getBytes(key), "AES");
return secretKeySpec;
}
/**
* <h2> - ECB</h2>
* @param text
* @param key key
* */
public static String encrypt(String text, String key){
if (isEmpty(text) || isEmpty(key)) {
return null;
}
try {
// 创建AES加密器
Cipher cipher = Cipher.getInstance(AES_ECB);
SecretKeySpec secretKeySpec = new SecretKeySpec(getBytes(key), "AES");
cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec);
// 加密字节数组
byte[] encryptedBytes = cipher.doFinal(getBytes(text));
// 将密文转换为 Base64 编码字符串
return Base64.getEncoder().encodeToString(encryptedBytes);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
/**
* <h2> - ECB</h2>
* @param text
* @param key key
* */
public static String decrypt(String text, String key){
if (isEmpty(text) || isEmpty(key)) {
return null;
}
// 将密文转换为16字节的字节数组
byte[] textBytes = Base64.getDecoder().decode(text);
try {
// 创建AES加密器
Cipher cipher = Cipher.getInstance(AES_ECB);
SecretKeySpec secretKeySpec = getSecretKeySpec(key);
cipher.init(Cipher.DECRYPT_MODE, secretKeySpec);
// 解密字节数组
byte[] decryptedBytes = cipher.doFinal(textBytes);
// 将明文转换为字符串
return new String(decryptedBytes, StandardCharsets.UTF_8);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
/**
* <h2> - </h2>
* @param text
* @param key key
* @param iv
* @param mode
* */
public static String encrypt(String text, String key, String iv, String mode){
if (isEmpty(text) || isEmpty(key) || isEmpty(iv)) {
return null;
}
try {
// 创建AES加密器
Cipher cipher = Cipher.getInstance(mode);
SecretKeySpec secretKeySpec = getSecretKeySpec(key);
cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec, new IvParameterSpec(getBytes(iv)));
// 加密字节数组
byte[] encryptedBytes = cipher.doFinal(getBytes(text));
// 将密文转换为 Base64 编码字符串
return Base64.getEncoder().encodeToString(encryptedBytes);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
/**
* <h2> - </h2>
* @param text
* @param key key
* @param iv
* @param mode
* */
public static String decrypt(String text, String key, String iv, String mode){
if (isEmpty(text) || isEmpty(key) || isEmpty(iv)) {
return null;
}
// 将密文转换为16字节的字节数组
byte[] textBytes = Base64.getDecoder().decode(text);
try {
// 创建AES加密器
Cipher cipher = Cipher.getInstance(mode);
SecretKeySpec secretKeySpec = getSecretKeySpec(key);
cipher.init(Cipher.DECRYPT_MODE, secretKeySpec, new IvParameterSpec(getBytes(iv)));
// 解密字节数组
byte[] decryptedBytes = cipher.doFinal(textBytes);
// 将明文转换为字符串
return new String(decryptedBytes, StandardCharsets.UTF_8);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
public static void main(String[] args) {
String text = "11057";
String key = "woniucsdnvip8888"; // 16字节的密钥
String iv = getIV();
String encryptTextEBC = encrypt(text, key);
System.out.println("EBC 加密后内容:" + encryptTextEBC);
System.out.println("EBC 解密后内容:" + decrypt(encryptTextEBC, key));
System.out.println();
String encryptTextCBC = encrypt(text, key, iv, AES_CBC);
System.out.println("CBC 加密IV" + iv);
System.out.println("CBC 加密后内容:" + encryptTextCBC);
System.out.println("CBC 解密后内容:" + decrypt(encryptTextCBC, key, iv, AES_CBC));
System.out.println();
String encryptTextCFB = encrypt(text, key, iv, AES_CFB);
System.out.println("CFB 加密IV" + iv);
System.out.println("CFB 加密后内容:" + encryptTextCFB);
System.out.println("CFB 解密后内容:" + decrypt(encryptTextCFB, key, iv, AES_CFB));
}
}

@ -0,0 +1,48 @@
package test;
import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.SecretKey;
import javax.crypto.spec.SecretKeySpec;
import javax.xml.bind.DatatypeConverter;
import java.nio.charset.StandardCharsets;
import java.security.NoSuchAlgorithmException;
import java.security.SecureRandom;
import java.util.Base64;
public class test7 {
private static final String ALGORITHM = "AES"; // 指定加密算法为AES
public static void main(String[] args) throws Exception {
String originalText = "11057"; // 要加密的原始文本
String password = "httpsoanjycjtcom";
byte[] keyBytes = password.getBytes(StandardCharsets.UTF_8); // 生成随机的16字节密钥
SecretKey secretKey = new SecretKeySpec(keyBytes, ALGORITHM); // 创建SecretKey对象
Cipher cipher = Cipher.getInstance("AES/ECB/PKCS5Padding"); // 选择加密模式和填充方式
cipher.init(Cipher.ENCRYPT_MODE, secretKey); // 初始化加密器
byte[] encryptedBytes = cipher.doFinal(originalText.getBytes()); // 执行加密操作
System.out.println("Encrypted Text: " + DatatypeConverter.printHexBinary(encryptedBytes));
//
//
// cipher.init(Cipher.DECRYPT_MODE, secretKey); // 初始化解密器
// byte[] decryptedBytes = cipher.doFinal(decodeds22); // 执行解密操作
// System.out.println("Decrypted Text: " + new String(decryptedBytes));
//
//
// String s2 = "Testing DatatypeConverter.printHexBinary";
// String encodeds2 = DatatypeConverter.printHexBinary(s2.getBytes());
// System.out.println(encodeds2);
// byte[] decodeds2= DatatypeConverter.parseHexBinary(encodeds2);
// System.out.println(new String(decodeds2));
}
private static byte[] generateKey(String password) throws NoSuchAlgorithmException {
return password.getBytes(StandardCharsets.UTF_8);
}
}

@ -0,0 +1,79 @@
package weaver.interfaces.njycjt.action;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.interfaces.workflow.action.Action;
import weaver.soa.workflow.request.RequestInfo;
import java.text.SimpleDateFormat;
import java.util.*;
public class UpdateModeSharePermissionAction implements Action {
private String modeid;
public String getModeid() {
return modeid;
}
public void setModeid(String modeid) {
this.modeid = modeid;
}
@Override
public String execute(RequestInfo requestInfo) {
BaseBean bb = new BaseBean();
RecordSet rs = new RecordSet();
try{
ModeRightInfo modeRightInfo = new ModeRightInfo();
if(StringUtils.isNotBlank(modeid)){
String tablename = "" ;
String sql =" select h.tablename\n" +
" from modeinfo t\n" +
" inner join workflow_bill h on t.formid = h.id\n" +
" where t.id= "+modeid ;
rs.executeQuery(sql);
if(rs.next()){
tablename = Util.null2String(rs.getString("tablename"));
}
if(StringUtils.isNotBlank(tablename) && tablename.startsWith("uf_")){
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
sql = " select id,formmodeid,modedatacreater from "+tablename ;
rs.executeQuery(sql);
while (rs.next()){
String formmodeid = Util.null2String(rs.getString("formmodeid"));
String modedatacreater = Util.null2String(rs.getString("modedatacreater"));
String id = Util.null2String(rs.getString("id"));
map = new HashMap<String,String>();
map.put("formmodeid",formmodeid);
map.put("modedatacreater",modedatacreater);
map.put("id",id);
list.add(map);
}
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
int formmodeid = Util.getIntValue(Util.null2String(dataMap.get("formmodeid")));
int modedatacreater = Util.getIntValue(Util.null2String(dataMap.get("modedatacreater")));
int id = Util.getIntValue(Util.null2String(dataMap.get("id")));
modeRightInfo.rebuildModeDataShareByEdit(modedatacreater,formmodeid,id);//编辑时重新生成默认共享
}
}
}
}catch (Exception e){
bb.writeLog("e:"+e.getMessage());
requestInfo.getRequestManager().setMessageid("1234");
requestInfo.getRequestManager().setMessage("执行附加ACTION异常");
return Action.FAILURE_AND_CONTINUE;
}
return Action.SUCCESS;
}
}

@ -0,0 +1,19 @@
package weaver.interfaces.njycjt.job;
import weaver.general.BaseBean;
import weaver.interfaces.njycjt.util.updateModeforERPXM;
import weaver.interfaces.schedule.BaseCronJob;
public class UpdateERPXMJob extends BaseCronJob {
@Override
public void execute() {
BaseBean bb = new BaseBean();
updateModeforERPXM updateModeforERPXM = new updateModeforERPXM();
try{
updateModeforERPXM.updateModeforERPXM();
}catch (Exception e){
bb.writeLog("updateModeforERPXM-e:"+e);
}
}
}

@ -0,0 +1,22 @@
package weaver.interfaces.njycjt.job;
import weaver.general.BaseBean;
import weaver.interfaces.njycjt.util.ModeZcjhxUtil;
import weaver.interfaces.njycjt.util.QKJLtoMode;
import weaver.interfaces.schedule.BaseCronJob;
import java.util.Map;
public class UpdateQKJLJob extends BaseCronJob {
@Override
public void execute() {
BaseBean bb = new BaseBean();
QKJLtoMode qkjltoMode = new QKJLtoMode();
try{
qkjltoMode.updateModeforkqjl();
}catch (Exception e){
bb.writeLog("updateModeforkqjl-e:"+e);
}
}
}

@ -16,14 +16,33 @@ public class UpdateZcjhxJob extends BaseCronJob {
try{
Map<String,String> recordMap1 = modeZcjhxUtil.updateZcjhxData();
bb.writeLog("updateZcjhxData-code:"+recordMap1.get("code"));
bb.writeLog("updateZcjhxData-msg:"+recordMap1.get("code"));
bb.writeLog("updateZcjhxData-msg:"+recordMap1.get("msg"));
}catch (Exception e){
bb.writeLog("UpdateZcjhxJob-e:"+e);
}
try{
Map<String,String> recordMap2 = modeZcjhxUtil.updateHtsqData();
bb.writeLog("updateHtsqData-code:"+recordMap2.get("code"));
bb.writeLog("updateHtsqData-msg:"+recordMap2.get("code"));
bb.writeLog("updateHtsqData-msg:"+recordMap2.get("msg"));
}catch (Exception e){
bb.writeLog("UpdateZcjhxJob-e:"+e);
}
try{
Map<String,String> recordMap3 = modeZcjhxUtil.updateMingyuanZhaocaiData();
bb.writeLog("updateHtsqData-code:"+recordMap3.get("code"));
bb.writeLog("updateHtsqData-msg:"+recordMap3.get("msg"));
}catch (Exception e){
bb.writeLog("UpdateZcjhxJob-e:"+e);
}
try{
Map<String,String> recordMap4 = modeZcjhxUtil.updateMingyuanHetongData();
bb.writeLog("updateHtsqData-code:"+recordMap4.get("code"));
bb.writeLog("updateHtsqData-msg:"+recordMap4.get("msg"));
}catch (Exception e){
bb.writeLog("UpdateZcjhxJob-e:"+e);
}

@ -0,0 +1,22 @@
package weaver.interfaces.njycjt.job;
import weaver.general.BaseBean;
import weaver.interfaces.njycjt.mode.UpdateZjjhzxsj_ModeExpand;
import weaver.interfaces.schedule.BaseCronJob;
import java.util.Map;
public class UpdateZjjhzxJob extends BaseCronJob {
@Override
public void execute() {
BaseBean bb = new BaseBean();
try{
UpdateZjjhzxsj_ModeExpand updateZjjhzxsj_ModeExpand = new UpdateZjjhzxsj_ModeExpand();
Map<String,String> recordMap1 = updateZjjhzxsj_ModeExpand.updateZjjhzxsjData();
bb.writeLog("updateZcjhxData-code:"+recordMap1.get("code"));
bb.writeLog("updateZcjhxData-msg:"+recordMap1.get("msg"));
}catch (Exception e){
bb.writeLog("UpdateZjjhzxJob-e:"+e);
}
}
}

@ -47,8 +47,12 @@ public class UpdateZcjhx_ModeExpand extends AbstractModeExpandJavaCodeNew{
//------请在下面编写业务逻辑代码------
ModeZcjhxUtil modeZcjhxUtil = new ModeZcjhxUtil();
modeZcjhxUtil.updateHtsqData();
modeZcjhxUtil.updateZcjhxData();
modeZcjhxUtil.updateHtsqData();
modeZcjhxUtil.updateMingyuanZhaocaiData();
modeZcjhxUtil.updateMingyuanHetongData();
}
}

@ -0,0 +1,151 @@
package weaver.interfaces.njycjt.mode;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetDataSource;
import weaver.formmode.customjavacode.AbstractModeExpandJavaCodeNew;
import weaver.general.BaseBean;
import weaver.general.Util;
import weaver.hrm.User;
import weaver.interfaces.njycjt.util.ModeZcjhxUtil;
import weaver.soa.workflow.request.RequestInfo;
/**
*
*
*
* class
* class
* java
* @author Administrator
*
*/
public class UpdateZjjhzxsj_ModeExpand 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 {
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){
//------请在下面编写业务逻辑代码------
updateZjjhzxsjData();
}
}
} catch (Exception e) {
result.put("errmsg","自定义出错信息");
result.put("flag", "false");
}
return result;
}
public Map<String,String> updateZjjhzxsjData(){
BaseBean bb = new BaseBean();
RecordSet rs = new RecordSet();
RecordSetDataSource rsd = new RecordSetDataSource("ids");
int errcount = 0 ;
int allcount = 0;
int succount = 0;
String code = "200";
Map<String,String> recordMap = new HashMap<String,String>();
try {
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
String sql =" select zx.id,qd.zjjhx,zx.zjjhyf " +
" from uf_zjjhzxsj zx,uf_zjjhqd qd " +
" where zx.zjjhx = qd.id " +
" and zjjhyfsjwc is null " ;
bb.writeLog("sql:"+sql);
rs.executeQuery(sql);
while (rs.next()){
String billid = Util.null2String(rs.getString("id"));
String zjjhx = Util.null2String(rs.getString("zjjhx"));
String zjjhyf = Util.null2String(rs.getString("zjjhyf"));
map = new HashMap<String, String>();
map.put("billid",billid);
map.put("zjjhx",zjjhx);
map.put("zjjhyf",zjjhyf);
list.add(map);
allcount++;
}
bb.writeLog("list:"+list.size());
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
String billid = Util.null2String(dataMap.get("billid"));
String zjjhx = Util.null2String(dataMap.get("zjjhx"));
String zjjhyf = Util.null2String(dataMap.get("zjjhyf"));
bb.writeLog("billid:"+billid);
bb.writeLog("zjjhx:"+zjjhx);
bb.writeLog("zjjhyf:"+zjjhyf);
String fkje = "";
sql = " select sum(fkje) as fkje from erp_htfkzjb where zjjhhbh='"+zjjhx+"' and fkrq like '%"+zjjhyf+"%' " ;
bb.writeLog("sql2:"+sql);
rsd.execute(sql);
if(rsd.execute(sql)){
fkje = Util.null2String(rsd.getString("fkje"));
}
bb.writeLog("fkje:"+fkje);
if(StringUtils.isNotBlank(billid) && StringUtils.isNotBlank(fkje)){
sql = " update uf_zjjhzxsj set zjjhyfsjwc='"+fkje+"' where zjjhyf='"+zjjhyf+"' and id="+billid+"";
bb.writeLog("sql:"+sql);
boolean isTrue = rsd.execute(sql);
bb.writeLog("isTrue2:"+isTrue);
if(!isTrue){
errcount++;
}else{
succount++;
}
}else{
errcount++;
}
}
}catch (Exception e){
bb.writeLog("updateZcjhxData-e:"+e);
code = "500";
}
String msg = "查询:"+allcount+"行数据,更新成功:"+succount+",更新失败:"+errcount+";";
recordMap.put("code",code);
recordMap.put("msg",msg);
return recordMap;
}
}

@ -2,6 +2,7 @@ package weaver.interfaces.njycjt.util;
import org.apache.commons.lang3.StringUtils;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetDataSource;
import weaver.general.BaseBean;
import weaver.general.Util;
@ -103,7 +104,7 @@ public class ModeZcjhxUtil {
" inner join (" +
" select zcxh,lastoperatedate " +
" from "+formtable+" where status = 1 and zcxh is not null " +
" ) k on k.zcjhbh = t.zcxh\n" +
" ) k on k.zcxh = t.zcxh\n" +
" where t.zczt = 0 and t.zcxh is not null " ;
bb.writeLog("sql:"+sql);
@ -151,4 +152,156 @@ public class ModeZcjhxUtil {
return recordMap;
}
/***
*
* @return
*/
public Map<String,String> updateMingyuanZhaocaiData(){
BaseBean bb = new BaseBean();
String formtable = "yw_htxx";
RecordSet rs = new RecordSet();
RecordSetDataSource rsd = new RecordSetDataSource("ids");
int errcount = 0 ;
int allcount = 0;
int succount = 0;
String code = "200";
Map<String,String> recordMap = new HashMap<String,String>();
try {
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
String sql =" select t.id,t.zcxh \n" +
" from uf_zcjhx t\n" +
" where t.zczt = 0 and t.zcxh is not null " ;
bb.writeLog("sql:"+sql);
rs.executeQuery(sql);
while (rs.next()){
String billid = Util.null2String(rs.getString("id"));
String zcxh = Util.null2String(rs.getString("zcxh"));
map = new HashMap<String, String>();
map.put("billid",billid);
map.put("zcxh",zcxh);
list.add(map);
allcount++;
}
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
String billid = Util.null2String(dataMap.get("billid"));
String zcxh = Util.null2String(dataMap.get("zcxh"));
String qyrq = "";
sql = " select qyrq from "+formtable+" where zcjhbh='"+zcxh+"'" ;
bb.writeLog("sql2:"+sql);
rsd.execute(sql);
if(rsd.execute(sql)){
qyrq = Util.null2String(rsd.getString("qyrq"));
}
if(StringUtils.isNotBlank(billid) && StringUtils.isNotBlank(qyrq)){
sql = " update uf_zcjhx set zczt = 1,wcrq='"+qyrq+"' where id = "+billid;
bb.writeLog("sql:"+sql);
boolean isTrue = rsd.execute(sql);
bb.writeLog("isTrue2:"+isTrue);
if(!isTrue){
errcount++;
}else{
succount++;
}
}else{
errcount++;
}
}
}catch (Exception e){
bb.writeLog("updateZcjhxData-e:"+e);
code = "500";
}
String msg = "查询:"+allcount+"行数据,更新成功:"+succount+",更新失败:"+errcount+";";
recordMap.put("code",code);
recordMap.put("msg",msg);
return recordMap;
}
/***
*
* @return
*/
public Map<String,String> updateMingyuanHetongData(){
BaseBean bb = new BaseBean();
String formtable = "yw_zcxx";
RecordSet rs = new RecordSet();
RecordSetDataSource rsd = new RecordSetDataSource("ids");
int errcount = 0 ;
int allcount = 0;
int succount = 0;
String code = "200";
Map<String,String> recordMap = new HashMap<String,String>();
try {
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
String sql =" select t.id,t.zcxh \n" +
" from uf_zcjhx t\n" +
" where t.zczt = 0 and t.zcxh is not null " ;
bb.writeLog("sql:"+sql);
rs.executeQuery(sql);
while (rs.next()){
String billid = Util.null2String(rs.getString("id"));
String zcxh = Util.null2String(rs.getString("zcxh"));
map = new HashMap<String, String>();
map.put("billid",billid);
map.put("zcxh",zcxh);
list.add(map);
allcount++;
}
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
String billid = Util.null2String(dataMap.get("billid"));
String zcxh = Util.null2String(dataMap.get("zcxh"));
String spwcrq = "";
sql = " select spwcrq from "+formtable+" where zcjhbh='"+zcxh+"'" ;
bb.writeLog("sql:"+sql);
rsd.execute(sql);
if(rsd.execute(sql)){
spwcrq = Util.null2String(rsd.getString("spwcrq"));
}
bb.writeLog("spwcrq:"+spwcrq);
if(StringUtils.isNotBlank(billid) && StringUtils.isNotBlank(spwcrq)){
sql = " update uf_zcjhx set zczt = 1,wcrq='"+spwcrq+"' where id = "+billid;
bb.writeLog("sql:"+sql);
boolean isTrue = rsd.execute(sql);
bb.writeLog("isTrue2:"+isTrue);
if(!isTrue){
errcount++;
}else{
succount++;
}
}else{
errcount++;
}
}
}catch (Exception e){
bb.writeLog("updateZcjhxData-e:"+e);
code = "500";
}
String msg = "查询:"+allcount+"行数据,更新成功:"+succount+",更新失败:"+errcount+";";
recordMap.put("code",code);
recordMap.put("msg",msg);
return recordMap;
}
}

@ -0,0 +1,81 @@
package weaver.interfaces.njycjt.util;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetDataSource;
import weaver.general.BaseBean;
import weaver.general.Util;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class QKJLtoMode {
/**
*
* @return
*/
public Map<String,String> updateModeforkqjl(){
BaseBean bb = new BaseBean();
RecordSet rs = new RecordSet(); //ECOLOGY自带数据源
RecordSetDataSource rsd = new RecordSetDataSource("ids"); //自定义数据源
String code = "200";
Map<String,String> recordMap = new HashMap<String,String>();
try {
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
//查询考勤卡记录
String sql =" select registerid,signdate,signtime from view_kaoqin where signDate = dateadd(day, -1, cast(getdate() as date))" ;
bb.writeLog("sql:"+sql);
rsd.execute(sql);
while (rsd.next()){
String REGISTERID = Util.null2String(rsd.getString("REGISTERID"));
String signdate = Util.null2String(rsd.getString("signdate"));
String signtime = Util.null2String(rsd.getString("signtimeid"));
map = new HashMap<String, String>();
map.put("REGISTERID",REGISTERID);
map.put("signdate",signdate);
map.put("signtime",signtime);
list.add(map);
}
String sql_ecology ="select count(1) as tj from uf_ys_dkjl where signdate = DATEADD(day, -1, CAST(GETDATE() AS date))" ;
bb.writeLog("sql:"+sql_ecology);
rs.executeQuery(sql_ecology);
rs.next();
String tj = Util.null2String(rs.getString("tj"));
if(!"0".equals(tj)){
sql_ecology="delete from uf_ys_dkjl where signdate = DATEADD(day, -1, CAST(GETDATE() AS date))" ;
rs.executeUpdate(sql_ecology);
}
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
String REGISTERID = Util.null2String(dataMap.get("REGISTERID"));
String signdate = Util.null2String(dataMap.get("signdate"));
String signtime = Util.null2String(dataMap.get("signtime"));
String ry = "";
sql_ecology = "select id from hrmresource where workcode = '"+REGISTERID+"'";
rs.executeQuery(sql_ecology);
if(rs.next()){
ry = Util.null2String(rs.getString("id"));
}
bb.writeLog("ry:"+ry);
sql_ecology = " insert into uf_ys_dkjl(ry,bh,signdate,signtime) values ("+ry+","+REGISTERID+","+signdate+","+signtime+")";
bb.writeLog("sql_ecology:"+sql_ecology);
rs.executeUpdate(sql_ecology);
}
}catch (Exception e){
bb.writeLog("updateZcjhxData-e:"+e);
code = "500";
}
String msg = "";
recordMap.put("code",code);
recordMap.put("msg",msg);
return recordMap;
}
}

@ -0,0 +1,106 @@
package weaver.interfaces.njycjt.util;
import weaver.conn.RecordSet;
import weaver.conn.RecordSetDataSource;
import weaver.formmode.setup.ModeRightInfo;
import weaver.general.BaseBean;
import weaver.general.Util;
import java.text.SimpleDateFormat;
import java.util.*;
public class updateModeforERPXM {
/**
*
* @return
*/
public Map<String,String> updateModeforERPXM(){
BaseBean bb = new BaseBean();
RecordSet rs = new RecordSet(); //ECOLOGY自带数据源
RecordSetDataSource rsd = new RecordSetDataSource("ids"); //自定义数据源
String code = "200";
Map<String,String> recordMap = new HashMap<String,String>();
try {
List<Map<String,String>> list = new ArrayList<Map<String,String>>();
Map<String,String> map = null;
String modeTable = "uf_xmxx_mn";
String formmodeid = "" ;
String sql =" select k.id from modeinfo k \n" +
" inner join workflow_bill l on formid = l.id\n" +
" where l.tablename = '"+modeTable+"' " ;
rs.execute(sql);
if(rs.next()){
formmodeid = Util.null2String(rs.getString("id"));
}
ModeRightInfo modeRightInfo = new ModeRightInfo();
SimpleDateFormat formatter1 = new SimpleDateFormat("yyyy-MM-dd");
SimpleDateFormat formatter2 = new SimpleDateFormat("HH:mm:ss");
String currentdate = formatter1.format(new Date());
String currenttime = formatter2.format(new Date());
String modedatacreater = "1";
String modedatacreatertype = "0";
String updatetime = "";
String sql_ecology="select updatetime from uf_erpxm_update where updatetype=0";
rs.execute(sql_ecology);
if(rs.next()){
updatetime = Util.null2String(rsd.getString("updatetime"));
}
//查询项目信息
sql =" select id,xmmc,sjxm,isdel,updtime from erp_xm where left('updtime',19) > '"+updatetime+"'" ;
bb.writeLog("sql:"+sql);
rsd.execute(sql);
while (rsd.next()){
String id = Util.null2String(rsd.getString("id"));
String xmmc = Util.null2String(rsd.getString("xmmc"));
String sjxm = Util.null2String(rsd.getString("sjxm"));
String isdel = Util.null2String(rsd.getString("isdel"));
map = new HashMap<String, String>();
map.put("id",id);
map.put("xmmc",xmmc);
map.put("sjxm",sjxm);
map.put("isdel",isdel);
list.add(map);
}
for(int i=0;i<list.size();i++){
Map<String,String> dataMap = list.get(i);
String xmid = Util.null2String(dataMap.get("id"));
String xmmc = Util.null2String(dataMap.get("xmmc"));
String sjxmid = Util.null2String(dataMap.get("sjxm"));
String sfysc = Util.null2String(dataMap.get("isdel"));
sql_ecology = "select count(1) tj from uf_xmxx_mn where xmid= '" + xmid + "'";
rs.executeQuery(sql_ecology);
if(rs.next()){
sql_ecology = "update uf_xmxx_mn set sfysc = '"+sfysc+"', xmmc = '"+xmmc+"',sjxmid = '" + sjxmid + "' where xmid = '" + xmid + "'";
bb.writeLog("sql_ecology:"+sql_ecology);
rs.executeUpdate(sql_ecology);
}else{
String uuid = UUID.randomUUID().toString();
sql_ecology = "insert into uf_xmxx_mn \n" +
" (xmid,xmmc,sjxmid,formmodeid,modedatacreater,modedatacreatertype,modedatacreatedate,modedatacreatetime,MODEUUID) \n" +
" values " +
" ('"+xmid+"','"+xmmc+"','"+sjxmid+"',"+formmodeid+",1,0,'"+currentdate+"','"+currenttime+"','"+uuid+"')";
bb.writeLog("sql_ecology:"+sql_ecology);
rs.executeUpdate(sql_ecology);
}
}
}catch (Exception e){
bb.writeLog("updateModeforERPXM-e:"+e);
code = "500";
}
String msg = "";
recordMap.put("code",code);
recordMap.put("msg",msg);
return recordMap;
}
}
Loading…
Cancel
Save