diff --git a/src/main/java/com/zcloud/controller/system/UsersController.java b/src/main/java/com/zcloud/controller/system/UsersController.java index 65116ec6..c7382ac9 100644 --- a/src/main/java/com/zcloud/controller/system/UsersController.java +++ b/src/main/java/com/zcloud/controller/system/UsersController.java @@ -6,6 +6,8 @@ import java.util.*; import javax.servlet.http.HttpServletResponse; +import com.alibaba.fastjson.JSON; +import com.zcloud.dto.UpdateEnum; import com.zcloud.entity.system.Dictionaries; import com.zcloud.entity.system.User; import com.zcloud.service.bus.*; @@ -19,6 +21,7 @@ import org.apache.shiro.authz.annotation.RequiresPermissions; import org.apache.shiro.crypto.hash.SimpleHash; import org.hyperic.sigar.pager.PageList; import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Controller; import org.springframework.transaction.annotation.Transactional; import org.springframework.web.bind.annotation.RequestMapping; @@ -77,6 +80,8 @@ public class UsersController extends BaseController { private UserExamineService userExamineService; @Autowired private DictionariesService dictionariesService; + @Value("${tongbu.url}") + private String tongBuUrl; /** * 进入权限首页 @@ -421,6 +426,14 @@ public class UsersController extends BaseController { userCerList = imgfilesService.listAll(userCerPd); pd.putAll(userInfo); } + List face_file = new ArrayList<>(); + if (null != userInfo) { + PageData userCerPd = new PageData(); + userCerPd.put("TYPE", "30"); + userCerPd.put("FOREIGN_KEY", pd.get("USER_ID")); + face_file = imgfilesService.listAll(userCerPd); + pd.putAll(userInfo); + } //获取岗位下拉 PageData post = new PageData(); post.put("DEPARTMENT_ID", ZDEPARTMENT_ID); @@ -432,6 +445,7 @@ public class UsersController extends BaseController { map.put("periodStr", shiftDutyPeriod.getString("DURATION") + ',' + shiftDutyPeriod.getString("WORKSTATUS") + ',' + shiftDutyPeriod.getString("WORKPERIOD")); map.put("licenseinfor", pd1); map.put("userCerList", userCerList); + map.put("face_file", face_file); map.put("roleList", roleList); map.put("result", errInfo); return map; @@ -524,18 +538,6 @@ public class UsersController extends BaseController { PageData pd = new PageData(); pd = this.getPageData(); -// if(pd.get("USERAVATARURL")!=null && !pd.getString("USERAVATARURL").equals("")){ -// System.out.println("USERAVATARURL原长度:"+pd.getString("USERAVATARURL").length()); -// String USERAVATARURL64 = ImageAnd64Binary.zipBase64(pd.getString("USERAVATARURL")); -// System.out.println("USERAVATARURL压缩长度:"+USERAVATARURL64.length()); -//// try{ -//// FaceUtil.compareFace(pd.getString("USERAVATARURL"),pd.getString("USERAVATARURL")); -//// }catch (Exception e){ -//// map.put("result", "Error"); -//// map.put("msg", "人脸图像不符合要求 请重新上传!"); -//// return map; -//// } -// } FHLOG.save(Jurisdiction.getUsername(), "从系统用户中修改" + pd.getString("USERNAME") + "的资料"); //记录日志 if (!Jurisdiction.getUsername().equals(pd.getString("USERNAME"))) { //如果当前登录用户修改用户资料提交的用户名非本人 if ("admin".equals(pd.getString("USERNAME")) && !"admin".equals(Jurisdiction.getUsername())) { @@ -547,9 +549,6 @@ public class UsersController extends BaseController { pd.put("ROLE_ID", upd.getString("ROLE_ID")); //对角色ID还原本人角色ID pd.put("ROLE_IDS", Tools.notEmpty(upd.getString("ROLE_IDS")) ? upd.get("ROLE_IDS") : ""); //对角色ID还原本人副职角色ID } -// if(pd.getString("PASSWORD") != null && !"".equals(pd.getString("PASSWORD"))){ -// pd.put("PASSWORD", new SimpleHash("SHA-1", pd.getString("USERNAME"), pd.getString("PASSWORD")).toString()); -// } if (!Tools.isEmpty(pd.getString("ROLE_ID"))) { if (pd.getString("ROLE_ID").contains(",")) { String roleId = pd.getString("ROLE_ID").substring(0, pd.getString("ROLE_ID").indexOf(","));//截取第一个,之前的数据 @@ -575,6 +574,9 @@ public class UsersController extends BaseController { if (Tools.notEmpty(pd.getString("CARDNO"))) { usersService.resetCardNo(pd); } + //每次人员信息更改都要将人物状态置为未推送且不可查询,需推送后在进行使用 + pd.put("ISDELETE","1"); + pd.put("ISPUSH","0"); usersService.editUser(pd); //执行修改 if ("true".equals(pd.getString("ISSTUDENT"))) { pd.put("IS_ONLINELEARNING", "1"); @@ -610,6 +612,9 @@ public class UsersController extends BaseController { } userInfoService.delete(pd); userInfoService.save(pd); + } else { + userInfoService.delete(pd); + userInfoService.save(pd); } if (null == licenseInforService.findById(pd)) { if (pd.getString("PERSON_TYPE") != null) { @@ -627,16 +632,6 @@ public class UsersController extends BaseController { if (pd.getString("INFORWORKValue") != null || !(pd.getString("INFORWORKValue") == "")) { pd.put("INFORWORK", pd.getString("INFORWORKValue")); } -// if("select".equals(pd.getString("letDutiesType"))){ -// pd.put("TYPE_OF_WORK",pd.getString("TYPE_OF_WORK")); -// }else{ -// PageData dicPd = new PageData(); -// dicPd.put("PARENT_ID","09e36ac01e9540f8bc84eab1c1a78754"); -// dicPd.put("BIANMA","zhiwu"); -// dicPd.put("NAME",pd.getString("INFORPOSTValue")); -// dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); -// pd.put("TYPE_OF_WORK",dicPd.getString("DICTIONARIES_ID")); -// } if (Tools.notEmpty(pd.getString("INFORPOSTValue"))) { if ("select".equals(pd.getString("letDutiesType"))) { PageData dicPd = new PageData(); @@ -777,7 +772,10 @@ public class UsersController extends BaseController { } } } - + System.out.println(pd.getString("isUpdateFace")); + if (pd.getString("isUpdateFace").equals("1")) { //若修改了人脸图片 + imgfilesService.delete(pd); //删除旧人脸图片 + } map.put("result", errInfo); return map; } @@ -898,7 +896,7 @@ public class UsersController extends BaseController { @RequiresPermissions("user:add") @ResponseBody public Object saveUser() throws Exception { - Map map = new HashMap(); + Map map = new HashMap<>(); String errInfo = "success"; PageData pd = new PageData(); pd = this.getPageData(); @@ -908,107 +906,122 @@ public class UsersController extends BaseController { pd.put("IP", ""); //IP pd.put("STATUS", "0"); //状态 pd.put("ISMAIN", "0"); //状态 - pd.put("ISDELETE", "0"); //是否删除,0表示不删除 + pd.put("ISDELETE", "1"); //是否删除,0表示不删除 pd.put("SKIN", "pcoded-navbar navbar-image-3,navbar pcoded-header navbar-expand-lg navbar-light header-dark,"); //用户默认皮肤 pd.put("PASSWORD", new SimpleHash("SHA-1", pd.getString("USERNAME"), pd.getString("PASSWORD")).toString()); //密码加密 pd.put("CORPINFO_ID", Jurisdiction.getCORPINFO_ID()); - if (null == usersService.findByUsername(pd)) { //判断用户名是否存在 - if (pd.getString("ROLE_ID").contains(",")) { - String roleId = pd.getString("ROLE_ID").substring(0, pd.getString("ROLE_ID").indexOf(","));//截取第一个,之前的数据 - String roleIds = pd.getString("ROLE_ID").substring(roleId.length() + 1, pd.getString("ROLE_ID").length());//截取第一个,之后的数据 - pd.put("ROLE_ID", roleId); - pd.put("ROLE_IDS", roleIds); - } - if ("true".equals(pd.getString("ISSTUDENT"))) { - pd.put("IS_ONLINELEARNING", '1'); - } - // todo - // 定位卡号 规则 如果俩个人使用同一一个卡号,最后一个人会是这个卡号。保证一个卡号一个人用。(11.28) - // 不同的公司,它定位卡的配置方案是不一样的,就你像九公司,九公司的卡是随机的。就他不是卡跟着人走,他就一天一变。 目前暂定这样 - if (Tools.notEmpty(pd.getString("CARDNO"))) { - usersService.resetCardNo(pd); - }else { - pd.put("CARDNO",null); - } - usersService.saveUser(pd); - //执行保存 - if ("true".equals(pd.getString("ISSTUDENT"))) { - pd.put("IS_ONLINELEARNING", '1'); - if ("select".equals(pd.getString("letDutiesType"))) { - pd.put("DUTIES", pd.getString("DUTIES")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "09e36ac01e9540f8bc84eab1c1a78754"); - dicPd.put("BIANMA", "zhiwu"); - dicPd.put("NAME", pd.getString("DUTIESValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("DUTIES", dicPd.getString("DICTIONARIES_ID")); - } - if ("select".equals(pd.getString("letTitleType"))) { - pd.put("TITLE", pd.getString("TITLE")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "945a6b10e59946078b500f0fbafa8679"); - dicPd.put("BIANMA", "zhicheng"); - dicPd.put("NAME", pd.getString("letTitleValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("TITLE", dicPd.getString("DICTIONARIES_ID")); - } - if ("select".equals(pd.getString("letTypeOfWorkType"))) { - pd.put("TYPE_OF_WORK", pd.getString("TYPE_OF_WORK")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "55484e491a5e442d839c4595380713ec"); - dicPd.put("BIANMA", "gongzhong"); - dicPd.put("NAME", pd.getString("letTypeOfWorkValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("TYPE_OF_WORK", dicPd.getString("DICTIONARIES_ID")); - } - userInfoService.save(pd); - } - String PERSON_TYPE = pd.getString("PERSONNEL_TYPE"); - if (pd.getString("PERSON_TYPE").equals("主要负责人") || pd.getString("PERSON_TYPE").equals("安全管理人员") || pd.getString("PERSON_TYPE").equals("特种作业人员")) { - if ("select".equals(pd.getString("inforpostType"))) { - pd.put("INFORPOST", pd.getString("INFORPOST")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "09e36ac01e9540f8bc84eab1c1a78754"); - dicPd.put("BIANMA", "zhiwu"); - dicPd.put("NAME", pd.getString("INFORPOSTValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("INFORPOST", dicPd.getString("DICTIONARIES_ID")); - } - if ("select".equals(pd.getString("infortitleType"))) { - pd.put("INFORTITLE", pd.getString("INFORTITLE")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "945a6b10e59946078b500f0fbafa8679"); - dicPd.put("BIANMA", "zhicheng"); - dicPd.put("NAME", pd.getString("INFORTITLEValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("INFORTITLE", dicPd.getString("DICTIONARIES_ID")); - } - if ("select".equals(pd.getString("inforworkType"))) { - pd.put("INFORWORK", pd.getString("INFORWORK")); - } else { - PageData dicPd = new PageData(); - dicPd.put("PARENT_ID", "55484e491a5e442d839c4595380713ec"); - dicPd.put("BIANMA", "gongzhong"); - dicPd.put("NAME", pd.getString("INFORWORKValue")); - dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); - pd.put("INFORWORK", dicPd.getString("DICTIONARIES_ID")); - } - pd.put("INFOR_ID", this.get32UUID()); - pd.put("USER_ID", ID); - licenseInforService.save(pd); //保存用户证照信息 + pd.put("ISPUSH", "0"); + Map resultMap = doCheck(pd.getString("USERNAME"), pd.getString("USER_ID_CARD"), ""); + if (resultMap.get("result").equals("success")) { + if (null == usersService.findByUsername(pd)) { //判断用户名是否存在 + if (pd.getString("ROLE_ID").contains(",")) { + String roleId = pd.getString("ROLE_ID").substring(0, pd.getString("ROLE_ID").indexOf(","));//截取第一个,之前的数据 + String roleIds = pd.getString("ROLE_ID").substring(roleId.length() + 1, pd.getString("ROLE_ID").length());//截取第一个,之后的数据 + pd.put("ROLE_ID", roleId); + pd.put("ROLE_IDS", roleIds); + } + if ("true".equals(pd.getString("ISSTUDENT"))) { + pd.put("IS_ONLINELEARNING", '1'); + } + // todo + // 定位卡号 规则 如果俩个人使用同一一个卡号,最后一个人会是这个卡号。保证一个卡号一个人用。(11.28) + // 不同的公司,它定位卡的配置方案是不一样的,就你像九公司,九公司的卡是随机的。就他不是卡跟着人走,他就一天一变。 目前暂定这样 + if (Tools.notEmpty(pd.getString("CARDNO"))) { + usersService.resetCardNo(pd); + }else { + pd.put("CARDNO",null); + } + usersService.saveUser(pd); + //执行保存 + if ("true".equals(pd.getString("ISSTUDENT"))) { + pd.put("IS_ONLINELEARNING", '1'); + if ("select".equals(pd.getString("letDutiesType"))) { + pd.put("DUTIES", pd.getString("DUTIES")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "09e36ac01e9540f8bc84eab1c1a78754"); + dicPd.put("BIANMA", "zhiwu"); + dicPd.put("NAME", pd.getString("DUTIESValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("DUTIES", dicPd.getString("DICTIONARIES_ID")); + } + if ("select".equals(pd.getString("letTitleType"))) { + pd.put("TITLE", pd.getString("TITLE")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "945a6b10e59946078b500f0fbafa8679"); + dicPd.put("BIANMA", "zhicheng"); + dicPd.put("NAME", pd.getString("letTitleValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("TITLE", dicPd.getString("DICTIONARIES_ID")); + } + if ("select".equals(pd.getString("letTypeOfWorkType"))) { + pd.put("TYPE_OF_WORK", pd.getString("TYPE_OF_WORK")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "55484e491a5e442d839c4595380713ec"); + dicPd.put("BIANMA", "gongzhong"); + dicPd.put("NAME", pd.getString("letTypeOfWorkValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("TYPE_OF_WORK", dicPd.getString("DICTIONARIES_ID")); + } + } else { + userInfoService.save(pd); + } + String PERSON_TYPE = pd.getString("PERSONNEL_TYPE"); + if (pd.getString("PERSON_TYPE").equals("主要负责人") || pd.getString("PERSON_TYPE").equals("安全管理人员") || pd.getString("PERSON_TYPE").equals("特种作业人员")) { + if ("select".equals(pd.getString("inforpostType"))) { + pd.put("INFORPOST", pd.getString("INFORPOST")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "09e36ac01e9540f8bc84eab1c1a78754"); + dicPd.put("BIANMA", "zhiwu"); + dicPd.put("NAME", pd.getString("INFORPOSTValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("INFORPOST", dicPd.getString("DICTIONARIES_ID")); + } + if ("select".equals(pd.getString("infortitleType"))) { + pd.put("INFORTITLE", pd.getString("INFORTITLE")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "945a6b10e59946078b500f0fbafa8679"); + dicPd.put("BIANMA", "zhicheng"); + dicPd.put("NAME", pd.getString("INFORTITLEValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("INFORTITLE", dicPd.getString("DICTIONARIES_ID")); + } + if ("select".equals(pd.getString("inforworkType"))) { + pd.put("INFORWORK", pd.getString("INFORWORK")); + } else { + PageData dicPd = new PageData(); + dicPd.put("PARENT_ID", "55484e491a5e442d839c4595380713ec"); + dicPd.put("BIANMA", "gongzhong"); + dicPd.put("NAME", pd.getString("INFORWORKValue")); + dicPd = dictionariesCorpService.saveByZidongxinzeng(dicPd); + pd.put("INFORWORK", dicPd.getString("DICTIONARIES_ID")); + } + pd.put("INFOR_ID", this.get32UUID()); + pd.put("USER_ID", ID); + licenseInforService.save(pd); //保存用户证照信息 + } + //封装调用参数 + + } else { + map.put("result", "Error"); + map.put("msg", "用户名重复"); + return map; } + FHLOG.save(Jurisdiction.getUsername(), "新增用户:" + pd.getString("USERNAME")); //记录日志 + PageData userPd = new PageData(); + userPd.put("USER_ID",ID); + PageData userinfo = usersService.findById(userPd); + userinfo.put("ISDELETE","0"); + map.put("USERINFO", userinfo); + map.put("USER_ID",ID); + map.put("result", errInfo); //返回结果 } else { - map.put("result", "Error"); - map.put("msg", "用户名重复"); - return map; + map.put("result", "您输入的身份证号和用户名二次校验失败,请确认后重新申请"); //返回结果 } - FHLOG.save(Jurisdiction.getUsername(), "新增用户:" + pd.getString("USERNAME")); //记录日志 - map.put("result", errInfo); //返回结果 return map; } @@ -1025,113 +1038,128 @@ public class UsersController extends BaseController { PageData pd = new PageData(); String errInfo = "success"; pd = this.getPageData(); - FHLOG.save(Jurisdiction.getUsername(), "删除用户ID:" + pd.getString("USER_ID")); //记录日志 - usersService.deleteUser(pd); //删除用户 - ueditorService.delete(pd); //删除副文本关联数据 + Map returnMap = null; + if (pd.getString("ISPUSH").equals("1")) { + pd.put("ISDELETE","1"); + HashMap param = new HashMap<>(); + Set set = pd.keySet(); + for (Object key : set) { + param.put(key.toString(),pd.getString(key.toString())); + } + String UserDto = JSON.toJSONString(param); + String result = HttpClientUtilDoGet.sendHttpPost(tongBuUrl + "/docking/core/user/addOrUpdate", UserDto,param); + returnMap = (Map) JSON.parse(result); + } - List listIds = listManagerService.listListByUser(pd); - if (listIds != null && listIds.size() > 0) { - for (PageData listPd : listIds) { - PageData pd1 = new PageData(); - pd1.put("OPERATOR", Jurisdiction.getUsername()); //修改人 - pd1.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 - pd1.put("LISTMANAGER_ID", listPd.get("LISTMANAGER_ID")); - listManagerService.remove(pd1); - pd1 = listManagerService.findById(pd1); - if (pd1.get("TYPE") != null && Tools.notEmpty(pd1.get("TYPE").toString())) { - if ("listType0005".equals(pd1.get("TYPE").toString())) { - pd1.put("LISTSTATISTICS_ID", this.get32UUID()); //主键 - pd1.put("STARTTIME", pd1.get("START_DATE").toString() + " 00:00:00"); - pd1.put("ENDTIME", pd1.get("END_DATE").toString() + " 23:59:59"); - pd1.put("PERIOD", null); - PageData statistics = listStatisticsService.findByCondition(pd1); - if (statistics != null && statistics.get("LISTSTATISTICS_ID") != null) { - statistics.put("NOTEXAMINEDNUM", Integer.parseInt(statistics.get("NOTEXAMINEDNUM").toString()) - 2); - listStatisticsService.edit(statistics); - } - pd1.put("ISSTATISTICS", '0'); - // 本期已检查的不计入统计 - checkrecordService.editStatistics(pd1); - } else { - if (pd1.get("PERIOD") != null && Tools.notEmpty(pd1.get("PERIOD").toString())) { - String period = pd1.get("PERIOD").toString(); - switch (period) { - case "checkPeriod0001"://每日 - pd1.put("STARTTIME", DateUtil.getDay() + " 00:00:00"); - pd1.put("ENDTIME", DateUtil.getDay() + " 23:59:59"); - break; - - case "checkPeriod0002"://每周 - pd1.put("STARTTIME", DateUtil.getWeekStart()); - pd1.put("ENDTIME", DateUtil.getWeekEnd()); - break; - - case "checkPeriod0003"://每旬 - String year = DateUtil.getYear().toString(); - String month = DateUtil.getMonth().toString(); - Integer day = Integer.parseInt(DateUtil.getOnlyDay().toString()); - String startTime = year + "-" + month + "-"; - String endTime = year + "-" + month + "-"; - if (day <= 10) { - startTime = startTime + "01 00:00:00"; - endTime = endTime + "10 23:59:59"; - } else if (day > 10 && day <= 20) { - startTime = startTime + "11 00:00:00"; - endTime = endTime + "20 23:59:59"; - } else { - startTime = startTime + "21 00:00:00"; - endTime = DateUtil.getMonthEndDay() + " 23:59:59"; - } - pd1.put("STARTTIME", startTime); - pd1.put("ENDTIME", endTime); - break; - - case "checkPeriod0004"://每月 - pd1.put("STARTTIME", DateUtil.getMonthFirstDay() + " 00:00:00"); - pd1.put("ENDTIME", DateUtil.getMonthEndDay() + " 23:59:59"); - break; - - case "checkPeriod0005"://每季 - pd1.put("STARTTIME", DateUtil.quarterStart() + " 00:00:00"); - pd1.put("ENDTIME", DateUtil.quarterEnd() + " 23:59:59"); - break; - - case "checkPeriod0006"://每年 - pd1.put("STARTTIME", DateUtil.getCurrYearFirst() + " 00:00:00"); - pd1.put("ENDTIME", DateUtil.getCurrYearLast() + " 23:59:59"); - break; - - case "checkPeriod0007"://半年 - String byear = DateUtil.getYear().toString(); - Integer bmonth = Integer.parseInt(DateUtil.getMonth().toString()); - if (bmonth <= 6) { - pd1.put("STARTTIME", byear + "-01-01 00:00:00"); - pd1.put("ENDTIME", byear + "-06-30 23:59:59"); - } else if (bmonth > 6) { - pd1.put("STARTTIME", byear + "-07-01 00:00:00"); - pd1.put("ENDTIME", byear + "-12-31 23:59:59"); - } - break; - - default: - break; + if (pd.getString("ISPUSH").equals("0") || returnMap.get("result").equals("success")) { + FHLOG.save(Jurisdiction.getUsername(), "删除用户ID:" + pd.getString("USER_ID")); //记录日志 + usersService.deleteUser(pd); //删除用户 + ueditorService.delete(pd); //删除副文本关联数据 + List listIds = listManagerService.listListByUser(pd); + if (listIds != null && listIds.size() > 0) { + for (PageData listPd : listIds) { + PageData pd1 = new PageData(); + pd1.put("OPERATOR", Jurisdiction.getUsername()); //修改人 + pd1.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd1.put("LISTMANAGER_ID", listPd.get("LISTMANAGER_ID")); + listManagerService.remove(pd1); + pd1 = listManagerService.findById(pd1); + if (pd1.get("TYPE") != null && Tools.notEmpty(pd1.get("TYPE").toString())) { + if ("listType0005".equals(pd1.get("TYPE").toString())) { + pd1.put("LISTSTATISTICS_ID", this.get32UUID()); //主键 + pd1.put("STARTTIME", pd1.get("START_DATE").toString() + " 00:00:00"); + pd1.put("ENDTIME", pd1.get("END_DATE").toString() + " 23:59:59"); + pd1.put("PERIOD", null); + PageData statistics = listStatisticsService.findByCondition(pd1); + if (statistics != null && statistics.get("LISTSTATISTICS_ID") != null) { + statistics.put("NOTEXAMINEDNUM", Integer.parseInt(statistics.get("NOTEXAMINEDNUM").toString()) - 2); + listStatisticsService.edit(statistics); } - } - PageData statistics = listStatisticsService.findByCondition(pd1); - if (statistics != null && statistics.get("LISTSTATISTICS_ID") != null) { - statistics.put("NOTEXAMINEDNUM", Integer.parseInt(statistics.get("NOTEXAMINEDNUM").toString()) - 1); - listStatisticsService.edit(statistics); - } + pd1.put("ISSTATISTICS", '0'); + // 本期已检查的不计入统计 + checkrecordService.editStatistics(pd1); + } else { + if (pd1.get("PERIOD") != null && Tools.notEmpty(pd1.get("PERIOD").toString())) { + String period = pd1.get("PERIOD").toString(); + switch (period) { + case "checkPeriod0001"://每日 + pd1.put("STARTTIME", DateUtil.getDay() + " 00:00:00"); + pd1.put("ENDTIME", DateUtil.getDay() + " 23:59:59"); + break; - pd1.put("ISSTATISTICS", '0'); - // 本期已检查的不计入统计 - checkrecordService.editStatistics(pd1); + case "checkPeriod0002"://每周 + pd1.put("STARTTIME", DateUtil.getWeekStart()); + pd1.put("ENDTIME", DateUtil.getWeekEnd()); + break; + + case "checkPeriod0003"://每旬 + String year = DateUtil.getYear().toString(); + String month = DateUtil.getMonth().toString(); + Integer day = Integer.parseInt(DateUtil.getOnlyDay().toString()); + String startTime = year + "-" + month + "-"; + String endTime = year + "-" + month + "-"; + if (day <= 10) { + startTime = startTime + "01 00:00:00"; + endTime = endTime + "10 23:59:59"; + } else if (day > 10 && day <= 20) { + startTime = startTime + "11 00:00:00"; + endTime = endTime + "20 23:59:59"; + } else { + startTime = startTime + "21 00:00:00"; + endTime = DateUtil.getMonthEndDay() + " 23:59:59"; + } + pd1.put("STARTTIME", startTime); + pd1.put("ENDTIME", endTime); + break; + + case "checkPeriod0004"://每月 + pd1.put("STARTTIME", DateUtil.getMonthFirstDay() + " 00:00:00"); + pd1.put("ENDTIME", DateUtil.getMonthEndDay() + " 23:59:59"); + break; + + case "checkPeriod0005"://每季 + pd1.put("STARTTIME", DateUtil.quarterStart() + " 00:00:00"); + pd1.put("ENDTIME", DateUtil.quarterEnd() + " 23:59:59"); + break; + + case "checkPeriod0006"://每年 + pd1.put("STARTTIME", DateUtil.getCurrYearFirst() + " 00:00:00"); + pd1.put("ENDTIME", DateUtil.getCurrYearLast() + " 23:59:59"); + break; + + case "checkPeriod0007"://半年 + String byear = DateUtil.getYear().toString(); + Integer bmonth = Integer.parseInt(DateUtil.getMonth().toString()); + if (bmonth <= 6) { + pd1.put("STARTTIME", byear + "-01-01 00:00:00"); + pd1.put("ENDTIME", byear + "-06-30 23:59:59"); + } else if (bmonth > 6) { + pd1.put("STARTTIME", byear + "-07-01 00:00:00"); + pd1.put("ENDTIME", byear + "-12-31 23:59:59"); + } + break; + + default: + break; + } + } + PageData statistics = listStatisticsService.findByCondition(pd1); + if (statistics != null && statistics.get("LISTSTATISTICS_ID") != null) { + statistics.put("NOTEXAMINEDNUM", Integer.parseInt(statistics.get("NOTEXAMINEDNUM").toString()) - 1); + listStatisticsService.edit(statistics); + } + + pd1.put("ISSTATISTICS", '0'); + // 本期已检查的不计入统计 + checkrecordService.editStatistics(pd1); + } } } } + map.put("result", errInfo); //返回结果 + } else { + map.put("result", "error"); //返回结果 } - - map.put("result", errInfo); //返回结果 return map; } @@ -2429,4 +2457,120 @@ public class UsersController extends BaseController { return map; } + + /** + * 校验 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/goCheck") + @ResponseBody + public Object goCheck() throws Exception { + Map map = new HashMap(); + PageData pd = new PageData(); + pd = this.getPageData(); + HashMap param = new HashMap<>(); + param.put("USERNAME",pd.getString("USERNAME")); + param.put("CARD_NO",pd.getString("CARD_NO")); + if (!Tools.isEmpty(pd.get("USER_ID"))) { + param.put("USER_ID",pd.getString("USER_ID")); + } else { + param.put("USER_ID",""); + } + return doCheck(param.get("USERNAME"),param.get("CARD_NO"),param.get("USER_ID")); + } + + public Map doCheck(String USERNAME, String CARD_NO, String USER_ID) throws Exception { + String result = HttpClientUtilDoGet.sendHttpGet(tongBuUrl + "/docking/core/user/getCheck"+"?USERNAME="+USERNAME+"&CARD_NO="+CARD_NO+"&USER_ID="+USER_ID); + Map returnMap = (Map) JSON.parse(result); + return returnMap; + } + + /** + * 推送 + * + * @param + * @throws Exception + */ + @RequestMapping(value = "/goPush") + @ResponseBody + public Object goPush() throws Exception { + PageData pd = new PageData(); + pd = this.getPageData(); + pd.put("CREATTIME", DateUtil.date2Str(new Date())); //创建时间 + pd.put("CREATOR", Jurisdiction.getUSER_ID()); //创建人 + pd.put("OPERATTIME", DateUtil.date2Str(new Date())); //修改时间 + pd.put("OPERATOR", Jurisdiction.getUSER_ID()); //修改人 + PageData sexPd = new PageData(); + if (Tools.notEmpty(pd.getString("SEX"))) { + sexPd.put("DICTIONARIES_ID",pd.getString("SEX")); + PageData byId = dictionariesService.findById(sexPd); + if (Tools.notEmpty(byId)) { + pd.put("SEX",byId.getString("NAME")); + } + } + StringBuilder ORG_PATH = new StringBuilder(); + boolean hasPid = true; + PageData department = departmentService.findById(pd); + ORG_PATH.insert(0, department.getString("NAME")); + String deptId = department.getString("PARENT_ID"); + PageData deptPd = new PageData(); + deptPd.put("DEPARTMENT_ID",deptId); + if (!department.get("PARENT_ID").equals("0")) { + while (hasPid) { + PageData dept = departmentService.findById(deptPd); + if (dept.get("PARENT_ID").equals("0")) { + hasPid = false; + } else { + deptId = dept.getString("PARENT_ID"); + deptPd.put("DEPARTMENT_ID",deptId); + } + ORG_PATH.insert(0, dept.getString("NAME") + "/"); + } + } + pd.put("ORG_PATH",ORG_PATH); + HashMap param = new HashMap<>(); + Set set = pd.keySet(); + for (Object key : set) { + param.put(key.toString(),pd.getString(key.toString())); + } + //要推送的照片集合 + List userPhotoDTOList = new ArrayList<>(); + //人脸照片 + PageData photoPd = new PageData(); + photoPd.put("USER_PHOTO_ID",pd.getString("IMGFILES_ID")); + photoPd.put("USER_ID",pd.getString("FOREIGN_KEY")); + photoPd.put("PHOTO_URL",pd.getString("FILEPATH")); + photoPd.put("PHOTO_TYPE","1"); + photoPd.put("ISDELETE","0"); + userPhotoDTOList.add(photoPd); + param.put("userPhotoDTOList", userPhotoDTOList); + String userResult = HttpClientUtilDoGet.sendHttpGet(tongBuUrl + "/docking/core/user/getUserInfoById"+"?USER_ID="+pd.getString("USER_ID")); + Map userReturnMap = (Map) JSON.parse(userResult); + if (userReturnMap.get("USERINFO") != null) { //有用户数据获取修改信息 + PageData userInfoPd = JSON.parseObject(userReturnMap.get("USERINFO").toString(), PageData.class); + String updateDescription = UpdateEnum.getUpdateDescription(userInfoPd, pd); + param.put("REMARKS",updateDescription); + + } else { //没有数据则获取新增信息 + String insertDescription = UpdateEnum.getInsertDescription(pd); + param.put("REMARKS",insertDescription); + } + String UserDto = JSON.toJSONString(param); + String result = HttpClientUtilDoGet.sendHttpPost(tongBuUrl + "/docking/core/user/addOrUpdate", UserDto,null); + Map returnMap = (Map) JSON.parse(result); + if (returnMap.get("result").equals("success")) { + PageData pushPd = new PageData(); + pushPd.put("ISPUSH","1"); + if (!Tools.isEmpty(pd.get("operateType")) && pd.getString("operateType").equals("delete")) { + pushPd.put("ISDELETE","1"); + } else { + pushPd.put("ISDELETE","0"); + } + pushPd.put("USER_ID",pd.getString("USER_ID")); + usersService.editPushStatus(pushPd); + } + return returnMap; + } } diff --git a/src/main/java/com/zcloud/dto/UpdateEnum.java b/src/main/java/com/zcloud/dto/UpdateEnum.java new file mode 100644 index 00000000..cbcb3e50 --- /dev/null +++ b/src/main/java/com/zcloud/dto/UpdateEnum.java @@ -0,0 +1,83 @@ +package com.zcloud.dto; + +import com.zcloud.entity.PageData; +import com.zcloud.util.Tools; +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum UpdateEnum { +// USER_ID("USER_ID","USER_ID","用户ID"), + USERNAME("USERNAME","USERNAME","用户名"), + NAME("NAME","NAME","姓名"), +// CORPINFO_ID("CORPINFO_ID","CORPINFO_ID","单位ID"), + CORPINFO_NAME("CORPINFO_NAME","CORPINFO_NAME","单位名称"), + EMAIL("EMAIL","EMAIL","邮箱地址"), + CARD_TYPE("CARD_TYPE","CARD_TYPE","证件类型"), + CARD_TYPE_NAME("CARD_TYPE_NAME","CARD_TYPE_NAME","证件名称"), + CARD_NO("CARD_NO","CARD_NO","证件号码"), + NATION("NATION","NATION","民族"), + SEX("SEX","SEX","性别"), + ORG_PATH("ORG_PATH","ORG_PATH","组织路径"), + USER_TYPE("USER_TYPE","USER_TYPE","用户类型"), +// ISDELETE("ISDELETE","ISDELETE","是否删除"), +// CREATOR("CREATOR","CREATOR","创建人"), +// CREATTIME("CREATTIME","CREATTIME","创建时间"), +// OPERATOR("OPERATOR","OPERATOR","修改人"), +// OPERATTIME("OPERATTIME","OPERATTIME","修改时间"), +// DEPARTMENT_ID("DEPARTMENT_ID","DEPARTMENT_ID","部门ID"), + DEPARTMENT_NAME("DEPARTMENT_NAME","DEPARTMENT_NAME","部门名称"); + + private String enterpriseKey; //企业端字段 + + private String centerKey; //中台字段 + + private String name; //字段名称 + + public String getEnterpriseKey() { + return enterpriseKey; + } + + public String getName() { + return name; + } + + /** + * 提供修改前后的pd,根据提供参数自动提取修改描述 origin 为原值 target 为新值 + */ + public static String getUpdateDescription(PageData origin,PageData target) { + StringBuilder desc = new StringBuilder(); + for (UpdateEnum keyMap : values()) { + //获取key centerKey为从人员中台获取的旧数据key enterpriseKey为当前端要推送的新数据key + String centerKey = keyMap.getCenterKey(); + String enterpriseKey = keyMap.getEnterpriseKey(); + if (origin.containsKey(centerKey) && target.containsKey(enterpriseKey)) { + //取出源&目标值 + String originValue = origin.getString(centerKey); + String targetValue = target.getString(enterpriseKey); + if (!originValue.equals(targetValue)){ + desc.append(keyMap.getName()).append(": 由旧值\"").append(originValue).append("\"变为了\"").append(targetValue).append("\"; \n"); + } + } + } + return desc.toString(); + } + + /** + * 提供新增的数据 + */ + public static String getInsertDescription(PageData origin) { + StringBuilder remarks = new StringBuilder(); + for (UpdateEnum keyMap : values()) { + //获取key + String key = keyMap.getEnterpriseKey(); + if (origin.containsKey(key) && Tools.notEmpty(origin.getString(key))) { + //取出源&目标值 + String originValue = origin.getString(key); + remarks.append(keyMap.getName()).append(": 新增的值为\"").append(originValue).append("\"; \n"); + } + } + return remarks.toString(); + } +} diff --git a/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java b/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java index 5a9bcd9f..c47db93a 100644 --- a/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java +++ b/src/main/java/com/zcloud/mapper/datasource/system/UsersMapper.java @@ -313,4 +313,6 @@ public interface UsersMapper { List listUserByDepId(PageData pd); List getDepartmentIds(@Param("departmentIds") String[] departmentIds); + + void editPushStatus(PageData pd); } diff --git a/src/main/java/com/zcloud/service/system/UsersService.java b/src/main/java/com/zcloud/service/system/UsersService.java index 43988460..6f338719 100644 --- a/src/main/java/com/zcloud/service/system/UsersService.java +++ b/src/main/java/com/zcloud/service/system/UsersService.java @@ -364,4 +364,6 @@ public interface UsersService { List listUserByDepId(PageData pd) throws Exception; List getDepartmentIds(String[] departmentIds) throws Exception; + + public void editPushStatus(PageData pd)throws Exception; } diff --git a/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java b/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java index c3c4e68e..107dc5a5 100644 --- a/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java +++ b/src/main/java/com/zcloud/service/system/impl/UsersServiceImpl.java @@ -501,4 +501,12 @@ public class UsersServiceImpl implements UsersService { public List getDepartmentIds(String[] departmentIds) throws Exception { return usersMapper.getDepartmentIds(departmentIds); } + + /**修改用户 + * @param pd + * @throws Exception + */ + public void editPushStatus(PageData pd)throws Exception{ + usersMapper.editPushStatus(pd); + } } diff --git a/src/main/java/com/zcloud/util/HttpClientUtilDoGet.java b/src/main/java/com/zcloud/util/HttpClientUtilDoGet.java new file mode 100644 index 00000000..e8c3da04 --- /dev/null +++ b/src/main/java/com/zcloud/util/HttpClientUtilDoGet.java @@ -0,0 +1,224 @@ +package com.zcloud.util; + +import cn.hutool.core.collection.CollectionUtil; +import org.apache.commons.lang.StringUtils; +import org.apache.http.Consts; +import org.apache.http.HttpEntity; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.entity.UrlEncodedFormEntity; +import org.apache.http.client.methods.*; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClients; +import org.apache.http.message.BasicNameValuePair; +import org.apache.http.util.EntityUtils; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; +import java.util.Map; + +public class HttpClientUtilDoGet { + private static final RequestConfig requestConfig = RequestConfig.custom() + .setSocketTimeout(60000) // 60s + .setConnectTimeout(10000) // 10s + .setConnectionRequestTimeout(10000) // 10s + .build(); + + + public static String sendHttpPost(String httpUrl, String body, Map header) { + HttpPost httpPost = new HttpPost(httpUrl); + try { + if (StringUtils.isNotEmpty(body)) { + StringEntity stringEntity = new StringEntity(body, "UTF-8"); + stringEntity.setContentType("application/json"); + httpPost.setEntity(stringEntity); + } + if (CollectionUtil.isNotEmpty(header)) { + for (Map.Entry entry : header.entrySet()) { + httpPost.addHeader(entry.getKey(), entry.getValue()); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return sendHttpPost(httpPost); + } + + private static String sendHttpPost(HttpPost httpPost) { + CloseableHttpClient httpClient = null; + CloseableHttpResponse response = null; + String responseContent = ""; + try { + httpClient = HttpClients.createDefault(); + httpPost.setConfig(requestConfig); + response = httpClient.execute(httpPost); + HttpEntity entity = response.getEntity(); + responseContent = EntityUtils.toString(entity, "UTF-8"); + } catch (Exception e) { + e.printStackTrace(); + } finally { + try { + if (response != null) { + response.close(); + } + if (httpClient != null) { + httpClient.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + return responseContent; + } + + + public static String sendHttpPut(String httpUrl, String body, Map header) { + HttpPut httpPut = new HttpPut(httpUrl); + try { + if (StringUtils.isNotEmpty(body)) { + StringEntity stringEntity = new StringEntity(body, "UTF-8"); + stringEntity.setContentType("application/json"); + httpPut.setEntity(stringEntity); + } + if (CollectionUtil.isNotEmpty(header)) { + for (Map.Entry entry : header.entrySet()) { + httpPut.addHeader(entry.getKey(), entry.getValue()); + } + } + } catch (Exception e) { + e.printStackTrace(); + } + return sendHttpPut(httpPut); + } + + private static String sendHttpPut(HttpPut httpPut) { + CloseableHttpClient httpClient = null; + CloseableHttpResponse response = null; + String responseContent = ""; + try { + httpClient = HttpClients.createDefault(); + httpPut.setConfig(requestConfig); + response = httpClient.execute(httpPut); + HttpEntity entity = response.getEntity(); + responseContent = EntityUtils.toString(entity, "UTF-8"); + } catch (Exception e) { + e.printStackTrace(); + } finally { + try { + if (response != null) { + response.close(); + } + if (httpClient != null) { + httpClient.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + return responseContent; + } + + + public static String sendHttpGet(String httpUrl, Map params, Map header) { + List list = new ArrayList<>(); + if (CollectionUtil.isNotEmpty(params)) { + for (Map.Entry entry : params.entrySet()) { + list.add(new BasicNameValuePair(entry.getKey(), entry.getValue())); + } + String paramStr = ""; + try { + paramStr = EntityUtils.toString(new UrlEncodedFormEntity(list, Consts.UTF_8)); + } catch (IOException e) { + e.printStackTrace(); + } + if (StringUtils.isNotEmpty(paramStr)) { + httpUrl = httpUrl + "?" + paramStr; + } + } + HttpGet httpGet = new HttpGet(httpUrl);// 创建get请求 + if (CollectionUtil.isNotEmpty(header)) { + for (Map.Entry entry : header.entrySet()) { + httpGet.addHeader(entry.getKey(), entry.getValue()); + } + } + return sendHttpGet(httpGet); + } + + public static String sendHttpGet(String httpUrl) { + HttpGet httpGet = new HttpGet(httpUrl);// 创建get请求 + return sendHttpGet(httpGet); + } + + private static String sendHttpGet(HttpGet httpGet) { + CloseableHttpClient httpClient = null; + CloseableHttpResponse response = null; + HttpEntity entity = null; + String responseContent = null; + try { + httpClient = HttpClients.createDefault(); + httpGet.setConfig(requestConfig); + response = httpClient.execute(httpGet); + entity = response.getEntity(); + responseContent = EntityUtils.toString(entity, "UTF-8"); + } catch (Exception e) { + e.printStackTrace(); + } finally { + try { + if (response != null) { + response.close(); + } + if (httpClient != null) { + httpClient.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + if (StringUtils.isEmpty(responseContent)) { + System.out.println("responseContent is null"); + } + return responseContent; + } + + public static String sendHttpDelete(String httpUrl, Map header) { + HttpDelete httpDelete = new HttpDelete(httpUrl); + if (header != null && !header.isEmpty()) { + for (Map.Entry entry : header.entrySet()) { + httpDelete.addHeader(entry.getKey(), entry.getValue()); + } + } + return sendHttpDelete(httpDelete); + } + + private static String sendHttpDelete(HttpDelete httpDelete) { + CloseableHttpClient httpClient = null; + CloseableHttpResponse response = null; + HttpEntity entity = null; + String responseContent = null; + try { + httpClient = HttpClients.createDefault(); + httpDelete.setConfig(requestConfig); + response = httpClient.execute(httpDelete); + entity = response.getEntity(); + responseContent = EntityUtils.toString(entity, "UTF-8"); + } catch (Exception e) { + e.printStackTrace(); + } finally { + try { + if (response != null) { + response.close(); + } + if (httpClient != null) { + httpClient.close(); + } + } catch (IOException e) { + e.printStackTrace(); + } + } + if (StringUtils.isEmpty(responseContent)) { + System.out.println("responseContent is null"); + } + return responseContent; + } +} diff --git a/src/main/java/com/zcloud/util/Tools.java b/src/main/java/com/zcloud/util/Tools.java index 0d47a303..a77264d2 100644 --- a/src/main/java/com/zcloud/util/Tools.java +++ b/src/main/java/com/zcloud/util/Tools.java @@ -42,6 +42,16 @@ public class Tools { return s!=null && !"".equals(s) && !"null".equals(s); } + /** + * 检测字符串是否不为空(null,"","null") + * @param s + * @return 不为空则返回true,否则返回false + */ + public static boolean notEmpty(Object s){ + return s!=null && !"".equals(s) && !"null".equals(s); + } + + /** * 检测字符串是否为空(null,"","null") * @param s diff --git a/src/main/resources/application-dev.properties b/src/main/resources/application-dev.properties index 7f5b7918..94215e87 100644 --- a/src/main/resources/application-dev.properties +++ b/src/main/resources/application-dev.properties @@ -106,6 +106,7 @@ perLoc.url=http://192.168.210.32:8084 perLoc.userName=qaaqadmin perLoc.pwd=Cfd2023@ baseimgpath =http://192.168.192.201:8991/file/ +tongbu.url=http://127.0.0.1:8094 mq.csy.data.topic=csy_docking mq.csy.data.group=scheduled_tasks_csy_docking diff --git a/src/main/resources/mybatis/datasource/system/UsersMapper.xml b/src/main/resources/mybatis/datasource/system/UsersMapper.xml index 2e79d2a6..9485dcac 100644 --- a/src/main/resources/mybatis/datasource/system/UsersMapper.xml +++ b/src/main/resources/mybatis/datasource/system/UsersMapper.xml @@ -92,7 +92,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" CORPINFO_ID, CARDNO, MKMJCARD, - ISDELETE + ISDELETE, + ISPUSH @@ -133,7 +134,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" f.CORPINFO_ID, f.CARDNO, f.MKMJCARD, - f.ISDELETE + f.ISDELETE, + f.ISPUSH @@ -171,7 +173,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" #{CORPINFO_ID}, #{CARDNO}, #{MKMJCARD}, - #{ISDELETE} + #{ISDELETE}, + #{ISPUSH} @@ -257,9 +260,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" f LEFT JOIN OA_DEPARTMENT dept on f.DEPARTMENT_ID = dept.DEPARTMENT_ID where - f.USERNAME = #{USERNAME} and f.ISDELETE='0' + USERNAME = #{USERNAME} and ISDELETE='0' - and f.USER_ID != #{VERIFYUSER_ID} + and USER_ID != #{VERIFYUSER_ID} @@ -1465,4 +1553,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" + + + + update + + set + ISPUSH = #{ISPUSH}, + ISDELETE = #{ISDELETE} + where + USER_ID = #{USER_ID} +