package cn.com.lzt.attendancetemp.service.impl; import cn.com.lzt.attendancetemp.service.AttendanceTempServiceI; import org.jeecgframework.core.common.service.impl.CommonServiceImpl; import cn.com.lzt.attendancetemp.dao.AttendanceTempDao; import cn.com.lzt.attendancetemp.dto.AttendanceTempInDto; import cn.com.lzt.attendancetemp.dto.AttendanceTempOutDto; import cn.com.lzt.attendancetemp.entity.AttendanceTempEntity; import cn.com.lzt.dingattendanceinfo.dao.DingAttendanceInfoDao; import cn.com.lzt.dingattendanceinfo.service.dto.DingAttendanceinfoOutDto; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.HashMap; import java.util.Map; import java.util.UUID; import java.io.Serializable; import javax.annotation.Resource; import org.jeecgframework.core.util.ApplicationContextUtil; import org.jeecgframework.core.util.MyClassLoader; import org.jeecgframework.core.util.StringUtil; import org.jeecgframework.minidao.pojo.MiniDaoPage; import org.jeecgframework.web.cgform.enhance.CgformEnhanceJavaInter; import org.jeecgframework.workflow.common.WorkFlowGlobals; @Service("attendanceTempService") @Transactional public class AttendanceTempServiceImpl extends CommonServiceImpl implements AttendanceTempServiceI { @Resource AttendanceTempDao attendanceTempDao; /** * 钉钉考勤实时查看数据检索 * @param inDto * @param page * @param rows * @param authSql * @param sortorder * @return 钉钉考勤实时查看数据 */ public MiniDaoPage getAttendanceTempList(AttendanceTempInDto inDto, int page,int rows, String authSql,String sortorder) { MiniDaoPage datagridList = attendanceTempDao.dataGrid(inDto, page, rows, authSql,sortorder); return datagridList; } public MiniDaoPage getAttendanceTempList_all(AttendanceTempInDto inDto, int page,int rows ,String authSql,String sortorder){ MiniDaoPage datagridList = attendanceTempDao.dataGrid_all(inDto, page, rows, authSql,sortorder); return datagridList; } public void delete(AttendanceTempEntity entity) throws Exception{ super.delete(entity); //执行删除操作增强业务 this.doDelBus(entity); } public Serializable save(AttendanceTempEntity entity) throws Exception{ Serializable t = super.save(entity); //执行新增操作增强业务 this.doAddBus(entity); return t; } public void saveOrUpdate(AttendanceTempEntity entity) throws Exception{ super.saveOrUpdate(entity); //执行更新操作增强业务 this.doUpdateBus(entity); } /** * 新增操作增强业务 * @param t * @return */ private void doAddBus(AttendanceTempEntity t) throws Exception{ //-----------------sql增强 start---------------------------- //-----------------sql增强 end------------------------------ //-----------------java增强 start--------------------------- //-----------------java增强 end----------------------------- } /** * 更新操作增强业务 * @param t * @return */ private void doUpdateBus(AttendanceTempEntity t) throws Exception{ //-----------------sql增强 start---------------------------- //-----------------sql增强 end------------------------------ //-----------------java增强 start--------------------------- //-----------------java增强 end----------------------------- } /** * 删除操作增强业务 * @param id * @return */ private void doDelBus(AttendanceTempEntity t) throws Exception{ //-----------------sql增强 start---------------------------- //-----------------sql增强 end------------------------------ //-----------------java增强 start--------------------------- //-----------------java增强 end----------------------------- } private Map populationMap(AttendanceTempEntity t){ Map map = new HashMap(); map.put("id", t.getId()); map.put("create_name", t.getCreateName()); map.put("create_by", t.getCreateBy()); map.put("create_date", t.getCreateDate()); map.put("update_name", t.getUpdateName()); map.put("update_by", t.getUpdateBy()); map.put("update_date", t.getUpdateDate()); map.put("sys_org_code", t.getSysOrgCode()); map.put("sys_company_code", t.getSysCompanyCode()); map.put("bpm_status", t.getBpmStatus()); map.put("user_id", t.getUserId()); map.put("user_code", t.getUserCode()); map.put("realname", t.getRealname()); map.put("belong_unitid", t.getBelongUnitid()); map.put("attendance_date", t.getAttendanceDate()); map.put("datum_stime", t.getDatumStime()); map.put("datum_etime", t.getDatumEtime()); map.put("sign_date", t.getSignDate()); map.put("newest_punchcard_date", t.getNewestPunchcardDate()); map.put("attendance_status", t.getAttendanceStatus()); map.put("arrange_duty_id", t.getArrangeDutyId()); map.put("attendance_datetime", t.getAttendanceDatetime()); map.put("retreat_datetime", t.getRetreatDatetime()); map.put("alldatetime", t.getAlldatetime()); map.put("lateminute", t.getLateminute()); map.put("leaveearlyminute", t.getLeaveearlyminute()); return map; } /** * 替换sql中的变量 * @param sql * @param t * @return */ public String replaceVal(String sql,AttendanceTempEntity t){ sql = sql.replace("#{id}",String.valueOf(t.getId())); sql = sql.replace("#{create_name}",String.valueOf(t.getCreateName())); sql = sql.replace("#{create_by}",String.valueOf(t.getCreateBy())); sql = sql.replace("#{create_date}",String.valueOf(t.getCreateDate())); sql = sql.replace("#{update_name}",String.valueOf(t.getUpdateName())); sql = sql.replace("#{update_by}",String.valueOf(t.getUpdateBy())); sql = sql.replace("#{update_date}",String.valueOf(t.getUpdateDate())); sql = sql.replace("#{sys_org_code}",String.valueOf(t.getSysOrgCode())); sql = sql.replace("#{sys_company_code}",String.valueOf(t.getSysCompanyCode())); sql = sql.replace("#{bpm_status}",String.valueOf(t.getBpmStatus())); sql = sql.replace("#{user_id}",String.valueOf(t.getUserId())); sql = sql.replace("#{user_code}",String.valueOf(t.getUserCode())); sql = sql.replace("#{realname}",String.valueOf(t.getRealname())); sql = sql.replace("#{belong_unitid}",String.valueOf(t.getBelongUnitid())); sql = sql.replace("#{attendance_date}",String.valueOf(t.getAttendanceDate())); sql = sql.replace("#{datum_stime}",String.valueOf(t.getDatumStime())); sql = sql.replace("#{datum_etime}",String.valueOf(t.getDatumEtime())); sql = sql.replace("#{sign_date}",String.valueOf(t.getSignDate())); sql = sql.replace("#{newest_punchcard_date}",String.valueOf(t.getNewestPunchcardDate())); sql = sql.replace("#{attendance_status}",String.valueOf(t.getAttendanceStatus())); sql = sql.replace("#{arrange_duty_id}",String.valueOf(t.getArrangeDutyId())); sql = sql.replace("#{attendance_datetime}",String.valueOf(t.getAttendanceDatetime())); sql = sql.replace("#{retreat_datetime}",String.valueOf(t.getRetreatDatetime())); sql = sql.replace("#{alldatetime}",String.valueOf(t.getAlldatetime())); sql = sql.replace("#{UUID}",UUID.randomUUID().toString()); sql = sql.replace("#{lateminute}",String.valueOf(t.getLateminute())); sql = sql.replace("#{leaveearlyminute}",String.valueOf(t.getLeaveearlyminute())); return sql; } /** * 执行JAVA增强 */ private void executeJavaExtend(String cgJavaType,String cgJavaValue,Map data) throws Exception { if(StringUtil.isNotEmpty(cgJavaValue)){ Object obj = null; try { if("class".equals(cgJavaType)){ //因新增时已经校验了实例化是否可以成功,所以这块就不需要再做一次判断 obj = MyClassLoader.getClassByScn(cgJavaValue).newInstance(); }else if("spring".equals(cgJavaType)){ obj = ApplicationContextUtil.getContext().getBean(cgJavaValue); } if(obj instanceof CgformEnhanceJavaInter){ CgformEnhanceJavaInter javaInter = (CgformEnhanceJavaInter) obj; javaInter.execute("t_bus_attendance_temp",data); } } catch (Exception e) { e.printStackTrace(); throw new Exception("执行JAVA增强出现异常!"); } } } }