diff --git a/out/artifacts/hrm_attendance/hrm-attendance.jar b/out/artifacts/hrm_attendance/hrm-attendance.jar index 7dcf697..5527629 100644 Binary files a/out/artifacts/hrm_attendance/hrm-attendance.jar and b/out/artifacts/hrm_attendance/hrm-attendance.jar differ diff --git a/src/com/engine/attendance/persongroup/service/PersonGroupService.java b/src/com/engine/attendance/persongroup/service/PersonGroupService.java index a9b3af6..3bebf76 100644 --- a/src/com/engine/attendance/persongroup/service/PersonGroupService.java +++ b/src/com/engine/attendance/persongroup/service/PersonGroupService.java @@ -7,4 +7,6 @@ import java.util.Map; public interface PersonGroupService { Map getHrmCondition(Map params, User user); + + Map saveApplicableOrganization(Map params); } diff --git a/src/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.java b/src/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.java index 61df061..dea4fc5 100644 --- a/src/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.java +++ b/src/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.java @@ -3,13 +3,16 @@ package com.engine.attendance.persongroup.service.impl; import com.engine.attendance.persongroup.service.PersonGroupService; import com.engine.common.util.DbTools; +import com.engine.common.util.Utils; import com.engine.core.impl.Service; import com.google.common.collect.Maps; import lombok.extern.slf4j.Slf4j; +import weaver.conn.RecordSet; import weaver.general.Util; import weaver.hrm.User; import weaver.systeminfo.SystemEnv; +import java.util.ArrayList; import java.util.List; import java.util.Map; import java.util.stream.Collectors; @@ -62,4 +65,35 @@ public class PersonGroupServiceImpl extends Service implements PersonGroupServic } + @Override + public Map saveApplicableOrganization(Map params) { + String billId = Util.null2String(params.get("billid")); + String tableName = Util.null2String(params.get("tableName")); + String modeId = Util.null2String(params.get("modeId")); + String data = Util.null2String(params.get("data")); + Map resultMap = Maps.newHashMap(); + + List> dataList = Utils.resolveList_Map(data); + //清空原有数据 + String sql = "delete from "+tableName+" where modeid=? and dataid =?"; + RecordSet rs = new RecordSet(); + boolean updateResult = DbTools.update(rs,sql,modeId,billId); + List addLists = new ArrayList<>(); + log.info("updateResult : {}",updateResult); + String insertSql = "insert into "+tableName+" (dxlx,dx,aqjb,modeid,dataid) values (?,?,?,?,?)"; + if (updateResult){ + dataList.forEach(e->{ + ArrayList list = new ArrayList<>(); + list.add(e.get("dxlx")); + list.add(e.get("dx")); + list.add(e.get("aqjb")); + list.add(modeId); + list.add(billId); + addLists.add(list); + }); + } + log.info("insert data : [{}]",addLists); + resultMap.put("result",rs.executeBatchSql(insertSql,addLists)); + return resultMap; + } } diff --git a/src/com/engine/attendance/persongroup/web/PersonGroupAction.java b/src/com/engine/attendance/persongroup/web/PersonGroupAction.java index 812188c..7e57352 100644 --- a/src/com/engine/attendance/persongroup/web/PersonGroupAction.java +++ b/src/com/engine/attendance/persongroup/web/PersonGroupAction.java @@ -12,6 +12,7 @@ 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; @@ -40,4 +41,24 @@ public class PersonGroupAction { } } + + /** + * 适用组织存储 + * @return + */ + @POST + @Path("/saveApplicableOrganization") + @Produces({"text/plain"}) + public String saveApplicableOrganization(@Context HttpServletRequest request, @Context HttpServletResponse response) { + try { + Map paramMap = ParamUtil.request2Map(request); + Map dataMap = basicsetService.saveApplicableOrganization(paramMap); + return ApiReturnTools.success(dataMap); + }catch (Exception e){ + log.error("execute fail,catch error: [{}]",e); + return ApiReturnTools.error("500","saveApplicableOrganization error"); + } + } + + } diff --git a/src/com/engine/common/cmd/QueryCommonCmd.java b/src/com/engine/common/cmd/QueryCommonCmd.java index 6f8b273..0392b6c 100644 --- a/src/com/engine/common/cmd/QueryCommonCmd.java +++ b/src/com/engine/common/cmd/QueryCommonCmd.java @@ -4,6 +4,7 @@ import com.engine.common.biz.AbstractCommonCommand; import com.engine.common.entity.BizLogContext; import com.engine.common.util.DbTools; import com.engine.core.interceptor.CommandContext; +import com.google.common.collect.Lists; import lombok.extern.slf4j.Slf4j; import weaver.general.Util; @@ -25,33 +26,29 @@ public class QueryCommonCmd extends AbstractCommonCommand> { @Override public Map execute(CommandContext commandContext) { Map resultMap = new HashMap<>(); - String tableName = Util.null2String(params.get("tableName")); - String columns = Util.null2String(params.get("columns")); - String conditions = Util.null2String(params.get("conditions")); - String orderby = Util.null2String(params.get("orderby")); - String limit = Util.null2String(params.get("limit")); - - tableName = tableName.replace("join","join"); - conditions = conditions.replace("in","in"); - String sql = "select "+columns +" from "+tableName; - if (!"".equals(conditions) ){ - conditions = conditions.replace(":","="); - if (conditions.indexOf("in")<0){ - conditions = conditions.replace(","," and "); - } - sql = sql + " where "+ conditions; - } - if (!"".equals(orderby)){ - sql = sql + orderby; + String action = Util.null2String(params.get("action")); + String mark = Util.null2String(params.get("mark")); + String condition = Util.null2String(params.get("condition")); + String sql = "select sentence from uf_sqltool where action =? and mark =?"; + String sentenceSql = DbTools.getSql(sql,action,mark); + String conditionSql = ""; + String[] conditions = condition.split(","); + Object[] objs = new Object[conditions.length]; + int i = 0; + for (String str :conditions){ + conditionSql = conditionSql +" "+ str.split(":")[0]+"=? and"; + objs[i] = str.split(":")[1]; + i++; } - if (!"".equals(limit)){ - sql = sql + limit; + if (!"".equals(conditionSql)){ + conditionSql = conditionSql.substring(0,conditionSql.length()-3); + sentenceSql = sentenceSql +" where "+ conditionSql; } - log.info("QueryCommonCmd sql :[{}]",sql); - - List> resultList = DbTools.getSqlToList(sql); + log.info("sql : [{}]",sentenceSql); + log.info("objs : [{}]",objs); + List> lists = DbTools.getSqlToList(sentenceSql,objs); - resultMap.put("data",resultList); + resultMap.put("data",lists); return resultMap; } } diff --git a/src/com/engine/common/service/impl/CommonServiceImpl.java b/src/com/engine/common/service/impl/CommonServiceImpl.java index 07849a2..0336f53 100644 --- a/src/com/engine/common/service/impl/CommonServiceImpl.java +++ b/src/com/engine/common/service/impl/CommonServiceImpl.java @@ -6,14 +6,10 @@ import com.engine.common.util.CommonUtil; import com.engine.common.util.DbTools; import com.engine.common.util.Utils; import com.engine.core.impl.Service; -import com.google.common.collect.Sets; import lombok.extern.slf4j.Slf4j; import weaver.general.Util; - import java.util.HashMap; -import java.util.List; import java.util.Map; -import java.util.Set; @Slf4j public class CommonServiceImpl extends Service implements CommonService { diff --git a/src/com/engine/common/util/DbTools.java b/src/com/engine/common/util/DbTools.java index 4562792..8569c30 100644 --- a/src/com/engine/common/util/DbTools.java +++ b/src/com/engine/common/util/DbTools.java @@ -74,6 +74,7 @@ public class DbTools { RecordSet rs = thread.get(); if (value == null || value.length <=0 || "".equals(value)){ return rs.executeUpdate(sql); + }else { return rs.executeUpdate(sql,value); } @@ -82,9 +83,26 @@ public class DbTools { public static boolean update(RecordSet rs,String sql,Object...value){ if (value == null || value.length <=0 || "".equals(value)){ return rs.executeUpdate(sql); + }else { return rs.executeUpdate(sql,value); } } + /** + * 获取sql语句 + * @param sql + * @param value + * @return + */ + public static String getSql(String sql,Object...value){ + RecordSet rs = thread.get(); + rs.executeQuery(sql,value); + String sentenceSql = ""; + if (rs.next()){ + sentenceSql = rs.getString("sentence"); + } + return sentenceSql; + } + } diff --git a/src/com/engine/common/web/CommonAction.java b/src/com/engine/common/web/CommonAction.java index 82c38db..39caab3 100644 --- a/src/com/engine/common/web/CommonAction.java +++ b/src/com/engine/common/web/CommonAction.java @@ -30,19 +30,19 @@ public class CommonAction { * orderby 排序及limit * @return */ -// @GET -// @Path("/queryCommon") -// @Produces({"text/plain"}) -// public String getBasicSetInformation(@Context HttpServletRequest request, @Context HttpServletResponse response) { -// try { -// Map paramMap = ParamUtil.request2Map(request); -// Map dataMap = basicsetService.queryCommon(paramMap); -// return ApiReturnTools.success(dataMap); -// }catch (Exception e){ -// log.error("sync fund status fail,catch error: [{}]",e); -// return ApiReturnTools.error("200","查询失败"); -// } -// } + @GET + @Path("/queryCommon") + @Produces({"text/plain"}) + public String getBasicSetInformation(@Context HttpServletRequest request, @Context HttpServletResponse response) { + try { + Map paramMap = ParamUtil.request2Map(request); + Map dataMap = basicsetService.queryCommon(paramMap); + return ApiReturnTools.success(dataMap); + }catch (Exception e){ + log.error("sync fund status fail,catch error: [{}]",e); + return ApiReturnTools.error("200","查询失败"); + } + } // /** // * @return diff --git a/target/classes/com/api/attendance/common/CommonActionApi.class b/target/classes/com/api/attendance/common/CommonActionApi.class new file mode 100644 index 0000000..0a45332 Binary files /dev/null and b/target/classes/com/api/attendance/common/CommonActionApi.class differ diff --git a/target/classes/com/engine/attendance/persongroup/service/PersonGroupService.class b/target/classes/com/engine/attendance/persongroup/service/PersonGroupService.class index c744e1d..dfc460d 100644 Binary files a/target/classes/com/engine/attendance/persongroup/service/PersonGroupService.class and b/target/classes/com/engine/attendance/persongroup/service/PersonGroupService.class differ diff --git a/target/classes/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.class b/target/classes/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.class index 881a40c..de9295a 100644 Binary files a/target/classes/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.class and b/target/classes/com/engine/attendance/persongroup/service/impl/PersonGroupServiceImpl.class differ diff --git a/target/classes/com/engine/attendance/persongroup/web/PersonGroupAction.class b/target/classes/com/engine/attendance/persongroup/web/PersonGroupAction.class index 3b41893..915da17 100644 Binary files a/target/classes/com/engine/attendance/persongroup/web/PersonGroupAction.class and b/target/classes/com/engine/attendance/persongroup/web/PersonGroupAction.class differ diff --git a/target/classes/com/engine/attendance/util/ApiReturnTools.class b/target/classes/com/engine/attendance/util/ApiReturnTools.class deleted file mode 100644 index 1f7cb7d..0000000 Binary files a/target/classes/com/engine/attendance/util/ApiReturnTools.class and /dev/null differ diff --git a/target/classes/com/engine/attendance/util/DbTools.class b/target/classes/com/engine/attendance/util/DbTools.class deleted file mode 100644 index 86aebd1..0000000 Binary files a/target/classes/com/engine/attendance/util/DbTools.class and /dev/null differ diff --git a/target/classes/com/engine/attendance/util/Utils$1.class b/target/classes/com/engine/attendance/util/Utils$1.class deleted file mode 100644 index 700e1f0..0000000 Binary files a/target/classes/com/engine/attendance/util/Utils$1.class and /dev/null differ diff --git a/target/classes/com/engine/attendance/util/Utils$2.class b/target/classes/com/engine/attendance/util/Utils$2.class deleted file mode 100644 index 2455bff..0000000 Binary files a/target/classes/com/engine/attendance/util/Utils$2.class and /dev/null differ diff --git a/target/classes/com/engine/common/cmd/QueryCommonCmd.class b/target/classes/com/engine/common/cmd/QueryCommonCmd.class new file mode 100644 index 0000000..dc04101 Binary files /dev/null and b/target/classes/com/engine/common/cmd/QueryCommonCmd.class differ diff --git a/target/classes/com/engine/common/service/CommonService.class b/target/classes/com/engine/common/service/CommonService.class new file mode 100644 index 0000000..6efaf33 Binary files /dev/null and b/target/classes/com/engine/common/service/CommonService.class differ diff --git a/target/classes/com/engine/common/service/impl/CommonServiceImpl.class b/target/classes/com/engine/common/service/impl/CommonServiceImpl.class new file mode 100644 index 0000000..405849a Binary files /dev/null and b/target/classes/com/engine/common/service/impl/CommonServiceImpl.class differ diff --git a/target/classes/com/engine/common/util/ApiReturnTools.class b/target/classes/com/engine/common/util/ApiReturnTools.class new file mode 100644 index 0000000..aab7e64 Binary files /dev/null and b/target/classes/com/engine/common/util/ApiReturnTools.class differ diff --git a/target/classes/com/engine/common/util/CommonUtil.class b/target/classes/com/engine/common/util/CommonUtil.class new file mode 100644 index 0000000..ed27918 Binary files /dev/null and b/target/classes/com/engine/common/util/CommonUtil.class differ diff --git a/target/classes/com/engine/attendance/util/DateUtil.class b/target/classes/com/engine/common/util/DateUtil.class similarity index 67% rename from target/classes/com/engine/attendance/util/DateUtil.class rename to target/classes/com/engine/common/util/DateUtil.class index 1bab6a5..e5ae924 100644 Binary files a/target/classes/com/engine/attendance/util/DateUtil.class and b/target/classes/com/engine/common/util/DateUtil.class differ diff --git a/target/classes/com/engine/common/util/DbTools.class b/target/classes/com/engine/common/util/DbTools.class new file mode 100644 index 0000000..bfbb820 Binary files /dev/null and b/target/classes/com/engine/common/util/DbTools.class differ diff --git a/target/classes/com/engine/attendance/util/HttpRequestUtil$OkhttpInterceptor.class b/target/classes/com/engine/common/util/HttpRequestUtil$OkhttpInterceptor.class similarity index 55% rename from target/classes/com/engine/attendance/util/HttpRequestUtil$OkhttpInterceptor.class rename to target/classes/com/engine/common/util/HttpRequestUtil$OkhttpInterceptor.class index 24aff85..92868d1 100644 Binary files a/target/classes/com/engine/attendance/util/HttpRequestUtil$OkhttpInterceptor.class and b/target/classes/com/engine/common/util/HttpRequestUtil$OkhttpInterceptor.class differ diff --git a/target/classes/com/engine/attendance/util/HttpRequestUtil.class b/target/classes/com/engine/common/util/HttpRequestUtil.class similarity index 65% rename from target/classes/com/engine/attendance/util/HttpRequestUtil.class rename to target/classes/com/engine/common/util/HttpRequestUtil.class index cee903a..4672e64 100644 Binary files a/target/classes/com/engine/attendance/util/HttpRequestUtil.class and b/target/classes/com/engine/common/util/HttpRequestUtil.class differ diff --git a/target/classes/com/engine/attendance/util/PropBean.class b/target/classes/com/engine/common/util/PropBean.class similarity index 57% rename from target/classes/com/engine/attendance/util/PropBean.class rename to target/classes/com/engine/common/util/PropBean.class index 4ed4f0b..ac8fcf9 100644 Binary files a/target/classes/com/engine/attendance/util/PropBean.class and b/target/classes/com/engine/common/util/PropBean.class differ diff --git a/target/classes/com/engine/common/util/Utils$1.class b/target/classes/com/engine/common/util/Utils$1.class new file mode 100644 index 0000000..bbc4eb6 Binary files /dev/null and b/target/classes/com/engine/common/util/Utils$1.class differ diff --git a/target/classes/com/engine/common/util/Utils$2.class b/target/classes/com/engine/common/util/Utils$2.class new file mode 100644 index 0000000..18b0e9b Binary files /dev/null and b/target/classes/com/engine/common/util/Utils$2.class differ diff --git a/target/classes/com/engine/attendance/util/Utils.class b/target/classes/com/engine/common/util/Utils.class similarity index 52% rename from target/classes/com/engine/attendance/util/Utils.class rename to target/classes/com/engine/common/util/Utils.class index e9acba9..49e51d3 100644 Binary files a/target/classes/com/engine/attendance/util/Utils.class and b/target/classes/com/engine/common/util/Utils.class differ diff --git a/target/classes/com/engine/common/web/CommonAction.class b/target/classes/com/engine/common/web/CommonAction.class new file mode 100644 index 0000000..ddd279b Binary files /dev/null and b/target/classes/com/engine/common/web/CommonAction.class differ