|
|
package weaver.interfaces.zlldjcws.kjkm.service.impl;
|
|
|
|
|
|
|
|
|
import com.weaver.general.BaseBean;
|
|
|
import weaver.conn.RecordSet;
|
|
|
import weaver.formmode.setup.ModeRightInfo;
|
|
|
import weaver.general.Util;
|
|
|
import weaver.interfaces.zlldjcws.kjkm.bean.KjkmBean;
|
|
|
import weaver.interfaces.zlldjcws.kjkm.service.LdKjkmService;
|
|
|
import weaver.interfaces.zlldjcws.util.Message;
|
|
|
import javax.ejb.Stateless;
|
|
|
import javax.jws.WebService;
|
|
|
import java.text.SimpleDateFormat;
|
|
|
import java.util.Date;
|
|
|
import java.util.HashMap;
|
|
|
import java.util.Map;
|
|
|
import java.util.UUID;
|
|
|
|
|
|
/**
|
|
|
* @author ZhangLei
|
|
|
* @date 2021/8/3
|
|
|
* @tableName uf_KJKM
|
|
|
*/
|
|
|
|
|
|
@Stateless(mappedName = "LdKjkmServiceImpl")
|
|
|
@WebService(serviceName = "LdKjkmServiceImpl")
|
|
|
public class LdKjkmServiceImpl extends BaseBean implements LdKjkmService {
|
|
|
@Override
|
|
|
public Message kjkmData(String client,KjkmBean kjkmBean) {
|
|
|
Message message = new Message();
|
|
|
RecordSet rs = new RecordSet();
|
|
|
writeLog("表字段对象是:");
|
|
|
writeLog(kjkmBean);
|
|
|
// 判断:1=新增、2=修改、3=删除
|
|
|
String zflag = kjkmBean.getZflag();
|
|
|
writeLog("接收到的zflag是:" + zflag);
|
|
|
// 存储即将操作数据库的值
|
|
|
Map<String, Object> datas = new HashMap<>();
|
|
|
datas.put("client",client);
|
|
|
datas.put("saknr", kjkmBean.getSaknr());
|
|
|
datas.put("glaccount_type", kjkmBean.getGlaccount_type());
|
|
|
datas.put("ktoks", kjkmBean.getKtoks());
|
|
|
datas.put("txt30", kjkmBean.getTxt30());
|
|
|
datas.put("spras", kjkmBean.getSpras());
|
|
|
datas.put("txt20", kjkmBean.getTxt20());
|
|
|
datas.put("txt50", kjkmBean.getTxt50());
|
|
|
datas.put("sprasen", kjkmBean.getSprasen());
|
|
|
datas.put("txt20en", kjkmBean.getTxt20en());
|
|
|
datas.put("txt50en", kjkmBean.getTxt50en());
|
|
|
datas.put("zflag", kjkmBean.getZflag());
|
|
|
datas.put("xloev", kjkmBean.getXloev());
|
|
|
datas.put("bukrs", kjkmBean.getBukrs());
|
|
|
datas.put("waers", kjkmBean.getWaers());
|
|
|
datas.put("xmwno", kjkmBean.getXmwno());
|
|
|
datas.put("mitkz", kjkmBean.getMitkz());
|
|
|
datas.put("altkt", kjkmBean.getAltkt());
|
|
|
datas.put("xintb", kjkmBean.getXintb());
|
|
|
datas.put("erdat", kjkmBean.getErdat());
|
|
|
datas.put("xloeb", kjkmBean.getXloeb());
|
|
|
datas.put("ktopl", kjkmBean.getKtopl());
|
|
|
datas.put("land1", kjkmBean.getLand1());
|
|
|
datas.put("kokrs", kjkmBean.getKokrs());
|
|
|
ModeRightInfo mode = new ModeRightInfo();
|
|
|
|
|
|
if (zflag == null || "".equals(zflag)) {
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("业务标识字段zflag值为空");
|
|
|
} else if ("1".equals(zflag)) {
|
|
|
|
|
|
String formmodeid = "";
|
|
|
String sql = " select k.id from modeinfo k \n" +
|
|
|
" inner join workflow_bill l on formid = l.id\n" +
|
|
|
" where l.tablename = 'uf_kjkm' ";
|
|
|
|
|
|
rs.execute(sql);
|
|
|
if (rs.next()) {
|
|
|
formmodeid = Util.null2String(rs.getString("id"));
|
|
|
}
|
|
|
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";
|
|
|
datas.put("formmodeid", formmodeid);
|
|
|
datas.put("modedatacreater", modedatacreater);
|
|
|
datas.put("modedatacreatertype", modedatacreatertype);
|
|
|
datas.put("modedatacreatedate", currentdate);
|
|
|
datas.put("modedatacreatetime", currenttime);
|
|
|
|
|
|
String modeuuid = UUID.randomUUID().toString();
|
|
|
datas.put("modeuuid", modeuuid);
|
|
|
|
|
|
//新增
|
|
|
writeLog("开始执行新增功能代码");
|
|
|
//判断传递的会计科目编号在数据库中是否存在
|
|
|
String saknr = kjkmBean.getSaknr();
|
|
|
writeLog("传递的总账科目编号saknr是:" + saknr);
|
|
|
if (saknr == null || "".equals(saknr)) {
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("总账科目编号为空,无法进行新增");
|
|
|
} else {
|
|
|
|
|
|
String dbsaknr ="";
|
|
|
sql = "select saknr from uf_kjkm where saknr = ? and client='"+client+"' ";
|
|
|
rs.executeQuery(sql,saknr);
|
|
|
if (rs.next()){
|
|
|
dbsaknr = rs.getString("saknr");
|
|
|
}
|
|
|
|
|
|
if(!"".equals(dbsaknr)){
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("总账科目编号已存在,无法进行新增");
|
|
|
}else{
|
|
|
//insertSQL组装
|
|
|
String tablename = "" ;
|
|
|
String tablenvalue = "" ;
|
|
|
for (Map.Entry<String, Object> entry : datas.entrySet()){
|
|
|
String fieldname = Util.null2String(entry.getKey()).trim();
|
|
|
String fieldvalue = Util.null2String(entry.getValue()).replace("'", "''").trim();
|
|
|
tablename += tablename==""? fieldname :","+fieldname ;
|
|
|
tablenvalue += tablenvalue=="" ? "'"+fieldvalue+"'" :",'"+fieldvalue+"'" ;
|
|
|
}
|
|
|
if(tablename !="" && tablenvalue !=""){
|
|
|
int count = 0;
|
|
|
sql = " insert into uf_KJKM("+tablename+") values ("+ tablenvalue +")";
|
|
|
writeLog("sql:"+sql);
|
|
|
boolean boo = rs.executeUpdate(sql);
|
|
|
if(boo){
|
|
|
count++;
|
|
|
}
|
|
|
if(count >0){
|
|
|
String dataid = "" ;
|
|
|
sql = " select * from uf_KJKM where modeuuid='"+modeuuid+"' " ;
|
|
|
rs.execute(sql);
|
|
|
if(rs.next()){
|
|
|
dataid = Util.null2String(rs.getString("id"));
|
|
|
}
|
|
|
if(!"".equals(dataid)){
|
|
|
mode.editModeDataShare(Integer.valueOf(modedatacreater), Integer.parseInt(formmodeid), Integer.parseInt(dataid));
|
|
|
}
|
|
|
|
|
|
message.setFlag("S");
|
|
|
message.setMessage("新增数据成功!");
|
|
|
message.setId("200");
|
|
|
}else{
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("新增数据失败!");
|
|
|
message.setId("-200");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}else if("2".equals(zflag) || "3".equals(zflag)){
|
|
|
String saknr = kjkmBean.getSaknr();
|
|
|
writeLog("传递的总账科目编号saknr是:" + saknr);
|
|
|
if (saknr == null || "".equals(saknr)) {
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("总账科目编号为空,无法进行新增");
|
|
|
}else{
|
|
|
String dbsaknr ="";
|
|
|
String sql = "select saknr from uf_KJKM where saknr = ? and client='"+client+"'";
|
|
|
rs.executeQuery(sql,saknr);
|
|
|
if (rs.next()){
|
|
|
dbsaknr = rs.getString("saknr");
|
|
|
}
|
|
|
if (dbsaknr == null || "".equals(dbsaknr)) {
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("总账科目编号不存在,请重新传递");
|
|
|
}
|
|
|
|
|
|
String setvalue = "" ;
|
|
|
for (Map.Entry<String, Object> entry : datas.entrySet()){
|
|
|
String fieldname = Util.null2String(entry.getKey()).trim();
|
|
|
String fieldvalue = Util.null2String(entry.getValue()).replace("'", "''").trim();
|
|
|
setvalue += setvalue==""? fieldname+"='"+fieldvalue+"'" :","+fieldname+"='"+fieldvalue+"'" ;
|
|
|
}
|
|
|
|
|
|
String updateSql = "update uf_kjkm set "+setvalue+" where saknr='"+saknr+"' and client='"+client+"'";
|
|
|
writeLog("updateSql:"+updateSql);
|
|
|
boolean updateResult = rs.executeUpdate(updateSql);
|
|
|
if (updateResult){
|
|
|
message.setId("200");
|
|
|
message.setFlag("S");
|
|
|
message.setMessage("Success !");
|
|
|
}else {
|
|
|
message.setId("-200");
|
|
|
message.setFlag("E");
|
|
|
message.setMessage("更新数据库失败,请检查传递的参数");
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return message;
|
|
|
}
|
|
|
|
|
|
}
|
|
|
|
|
|
|