ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

从实体类中取值 ,获取修改记录信息,保存修改记录信息

2020-09-14 08:31:21  阅读:226  来源: 互联网

标签:map 实体类 String 记录 修改 user employee original record


public boolean saveEmployeeBasicInformation(Map<String,Object> map) {
        log.info("map================"+map);
        if(Func.isNotEmpty(map)){
            EmployeeBasicInformation employee = JSONObject.parseObject(JSONObject.toJSONString(map), EmployeeBasicInformation.class);
            log.info("employee============="+employee);
            boolean isUpdate=false;
            if(!Func.isEmpty(employee.getId())){
                isUpdate=true;
            }
            AllEmployeeBasicInformation original=employeeBasicInformationMapper.getOneAllEmployeeInfo(employee.getId(),AuthUtil.getTenantId());//通过id获取原有数据
            saveOrUpdate(employee);
            //将信息保存到用户数据表
            User user = JSONObject.parseObject(JSONObject.toJSONString(map), User.class);
            user.setId(employee.getId());
            user.setCreateDept(employee.getCreateDept());
            user.setCreateTime(employee.getCreateTime());
            user.setUpdateUser(employee.getUpdateUser());
            user.setUpdateTime(employee.getUpdateTime());
            user.setStatus(employee.getStatus());
            user.setIsDeleted(employee.getIsDeleted());
            user.setPassword(DigestUtil.encrypt(EmployeeConstant.default_password));
            log.info("将信息保存到用户数据表user============"+user);
            userClient.saveUser(user);
            if(isUpdate){
                log.info("通过id获取原有数据original======="+original);
                userClient.updateUser(user);
                if(Func.isNotEmpty(original)&&Func.isNotEmpty(map)){
                    saveRecordMsg(original,map);
                }
            }
        }
        return true;
    }
/**
     * 获取修改记录信息,保存修改记录信息
     * @return
     */
    @Transactional(rollbackFor = Exception.class)
    public void saveRecordMsg(AllEmployeeBasicInformation original,Map<String,Object>map){
        String updateTime= new SimpleDateFormat("yyyy-MM-dd HH:mm:SSS").format(new Date());
        String ids=original.getId().toString();
        log.info("保存修改记录信息ids==========="+ids);
        String operationName=map.get("operationName").toString();
        String personName=original.getRealName();
        List<EmployeeBasicInformationUpdateRecord> recordList=new ArrayList<EmployeeBasicInformationUpdateRecord>();
        String[] nameList= EmployeeConstant.EMPLOYEE_INFO.split(",");//属性名称对应的中文名称
        //将实体类转换成map
        Map<String,Object>mapOriginal=JSONObject.parseObject(JSONObject.toJSONString(original),Map.class);//原内容
        for(String name:nameList){
            EmployeeBasicInformationUpdateRecord record=new EmployeeBasicInformationUpdateRecord();
            //修改之前的数据
            if(Func.isNotEmpty(mapOriginal)&& Func.isNotEmpty(map.get(name.split(":")[0]))){
                record.setUpdateItem(name.split(":")[1]);//变更项目
                record.setUpdateTime(updateTime);//修改时间
                record.setOriginalContent(String.valueOf(mapOriginal.get(name.split(":")[0])));//原内容
                record.setUpdateContent(String.valueOf(map.get(name.split(":")[0])));//修改内容
                record.setAfterUpdateContent(String.valueOf(map.get(name.split(":")[0])));//修改后的内容
                record.setUpdatePeople(operationName);//修改人名称
                record.setId(ids);//用户id
                record.setTenantId(AuthUtil.getTenantId());//租户id
                record.setPersonName(personName);
                //将信息插入记录表
                updateRecordServiceImpl.save(record);
            }
        }
    }
package org.springblade.constant;

public interface EmployeeConstant {
    String EMPLOYEE_INFO="idCardNumber:身份证号码,entryDate:入职日期,entryMonths:入职月数,becomeFullMemberDate:转正日期,department:入职部门名称,groups:组别," +
        "groupCode:组编号,position:职位,function:职能(角色),positionRank:职级名称,positionRankCode:职级编号,isMarry:婚否,contractStartDate:合同开始日期," +
        "contractEndDate:合同结束日期,profession:专业,educationBackground:学历,politicsStatus:政治面貌,schoolOfGraduation:毕业院校,censusRegisterAddress:户籍地址," +
        "registeredResidenceType:户口类型,temporaryAddress:暂住地址,emergencyContact:紧急联系人,emergencyContactPhone:紧急联系人电话,workingState:在职状态0在职1离职," +
        "realName:员工姓名,phone:手机,birthday:生日,termContract:合同年限,contractType:合同类型,remark:备注";

     String default_password="123456";
}

 

标签:map,实体类,String,记录,修改,user,employee,original,record
来源: https://www.cnblogs.com/xianz666/p/13664797.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有