3 changed files with 541 additions and 0 deletions
-
273xm-core/src/main/java/com/xm/core/ctrl/XmRecordVisitController.java
-
55xm-core/src/main/java/com/xm/core/service/XmRecordVisitService.java
-
213xm-core/src/main/resources/mybatis/mapper/xm/core/dao/XmRecordVisitMapper.xml
@ -0,0 +1,273 @@ |
|||
package com.xm.core.ctrl; |
|||
|
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.mdp.core.entity.Result; |
|||
import com.mdp.core.query.QueryTools; |
|||
import com.mdp.core.utils.RequestUtils; |
|||
import com.mdp.core.utils.ResponseHelper; |
|||
import com.mdp.safe.client.entity.User; |
|||
import com.mdp.safe.client.utils.LoginUtils; |
|||
import com.mdp.swagger.ApiEntityParams; |
|||
import com.xm.core.entity.XmBranchStateHis; |
|||
import com.xm.core.entity.XmRecordVisit; |
|||
import com.xm.core.service.XmRecordVisitService; |
|||
import io.swagger.annotations.*; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.slf4j.MDC; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.scheduling.annotation.Scheduled; |
|||
import org.springframework.util.StringUtils; |
|||
import org.springframework.web.bind.annotation.*; |
|||
import springfox.documentation.annotations.ApiIgnore; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
import static com.mdp.core.utils.BaseUtils.toMap; |
|||
|
|||
/** |
|||
* url编制采用rest风格,如对xm_record_visit 重要页面访问记录的操作有增删改查,对应的url分别为:<br> |
|||
* 组织 com 顶级模块 xm 大模块 core 小模块 <br> |
|||
* 实体 XmRecordVisit 表 xm_record_visit 当前主键(包括多主键): id; |
|||
***/ |
|||
@RestController("xm.core.xmRecordVisitController") |
|||
@RequestMapping(value="/**/core/xmRecordVisit") |
|||
@Api(tags={"重要页面访问记录操作接口"}) |
|||
public class XmRecordVisitController { |
|||
|
|||
static Logger logger =LoggerFactory.getLogger(XmRecordVisitController.class); |
|||
|
|||
@Autowired |
|||
private XmRecordVisitService xmRecordVisitService; |
|||
|
|||
List<XmRecordVisit> datas=new ArrayList<>(); |
|||
|
|||
|
|||
Map<String,Object> fieldsMap = toMap(new XmRecordVisit()); |
|||
|
|||
|
|||
@ApiOperation( value = "查询重要页面访问记录信息列表",notes=" ") |
|||
@ApiEntityParams( XmRecordVisit.class ) |
|||
@ApiImplicitParams({ |
|||
@ApiImplicitParam(name="pageSize",value="每页大小,默认20条",required=false), |
|||
@ApiImplicitParam(name="pageNum",value="当前页码,从1开始",required=false), |
|||
@ApiImplicitParam(name="total",value="总记录数,服务器端收到0时,会自动计算总记录数,如果上传>0的不自动计算",required=false), |
|||
@ApiImplicitParam(name="count",value="是否计算总记录条数,如果count=true,则计算计算总条数,如果count=false 则不计算",required=false), |
|||
@ApiImplicitParam(name="orderBy",value="排序列 如性别、学生编号排序 orderBy = sex desc,student desc",required=false), |
|||
}) |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200,response=XmRecordVisit.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'错误码'},total:总记录数,data:[数据对象1,数据对象2,...]}") |
|||
}) |
|||
@RequestMapping(value="/list",method=RequestMethod.GET) |
|||
public Result listXmRecordVisit(@ApiIgnore @RequestParam Map<String,Object> params){ |
|||
|
|||
|
|||
RequestUtils.transformArray(params, "ids"); |
|||
IPage page=QueryTools.initPage(params); |
|||
QueryWrapper<XmBranchStateHis> qw = QueryTools.initQueryWrapper(XmBranchStateHis.class , params); |
|||
List<Map<String,Object>> datas = xmRecordVisitService.selectListMapByWhere(page,qw,params); |
|||
return Result.ok("query-ok","查询成功").setData(datas).setTotal(page.getTotal()); //列出XmRecordVisit列表 |
|||
|
|||
} |
|||
|
|||
|
|||
|
|||
@ApiOperation( value = "新增一条重要页面访问记录信息",notes=" ") |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200,response=XmRecordVisit.class,message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|||
}) |
|||
@RequestMapping(value="/add",method=RequestMethod.POST) |
|||
public Result addXmRecordVisit(@RequestBody XmRecordVisit xmRecordVisit) { |
|||
|
|||
if(!StringUtils.hasText(xmRecordVisit.getBizId())){ |
|||
return ResponseHelper.failed("bizId-0","bizId不能为空"); |
|||
} |
|||
if(!StringUtils.hasText(xmRecordVisit.getPbizId())){ |
|||
return ResponseHelper.failed("pbizId-0","pbizId不能为空"); |
|||
} |
|||
if(!StringUtils.hasText(xmRecordVisit.getObjType())){ |
|||
return ResponseHelper.failed("objType-0","objType不能为空"); |
|||
} |
|||
User user= LoginUtils.getCurrentUserInfo(); |
|||
xmRecordVisit.setId(this.xmRecordVisitService.createKey("id")); |
|||
xmRecordVisit.setGloNo(MDC.get("gloNo")); |
|||
xmRecordVisit.setOperTime(new Date()); |
|||
xmRecordVisit.setOperUserid(user.getUserid()); |
|||
xmRecordVisit.setOperUsername(user.getUsername()); |
|||
xmRecordVisit.setBranchId(user.getBranchId()); |
|||
xmRecordVisit.setIp(RequestUtils.getIpAddr(RequestUtils.getRequest())); |
|||
|
|||
this.datas.add(xmRecordVisit); |
|||
if(this.datas.size()>100){ |
|||
List<XmRecordVisit> newDatas=new ArrayList<>(); |
|||
newDatas.addAll(this.datas); |
|||
this.datas.clear(); |
|||
xmRecordVisitService.batchAddAndCalc(newDatas); |
|||
|
|||
} |
|||
// |
|||
return Result.ok(); |
|||
|
|||
} |
|||
|
|||
@Scheduled(cron = "0 0 */3 * * ?") |
|||
public void batchAddAndCalc(){ |
|||
if(this.datas.size()>0){ |
|||
List<XmRecordVisit> newDatas=new ArrayList<>(); |
|||
newDatas.addAll(this.datas); |
|||
this.datas.clear(); |
|||
xmRecordVisitService.batchAddAndCalc(newDatas); |
|||
} |
|||
} |
|||
|
|||
|
|||
/** |
|||
@ApiOperation( value = "删除一条重要页面访问记录信息",notes=" ") |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}}") |
|||
}) |
|||
@RequestMapping(value="/del",method=RequestMethod.POST) |
|||
public Result delXmRecordVisit(@RequestBody XmRecordVisit xmRecordVisit){ |
|||
|
|||
if(!StringUtils.hasText(xmRecordVisit.getId())) { |
|||
return Result.error("pk-not-exists","请上送主键参数id"); |
|||
} |
|||
XmRecordVisit xmRecordVisitDb = xmRecordVisitService.selectOneObject(xmRecordVisit); |
|||
if( xmRecordVisitDb == null ){ |
|||
return Result.error("data-not-exists","数据不存在,无法删除"); |
|||
} |
|||
xmRecordVisitService.deleteByPk(xmRecordVisit); |
|||
return Result.ok(); |
|||
|
|||
} |
|||
*/ |
|||
|
|||
/** |
|||
@ApiOperation( value = "根据主键修改一条重要页面访问记录信息",notes=" ") |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200,response=XmRecordVisit.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|||
}) |
|||
@RequestMapping(value="/edit",method=RequestMethod.POST) |
|||
public Result editXmRecordVisit(@RequestBody XmRecordVisit xmRecordVisit) { |
|||
|
|||
if(!StringUtils.hasText(xmRecordVisit.getId())) { |
|||
return Result.error("pk-not-exists","请上送主键参数id"); |
|||
} |
|||
XmRecordVisit xmRecordVisitDb = xmRecordVisitService.selectOneObject(xmRecordVisit); |
|||
if( xmRecordVisitDb == null ){ |
|||
return Result.error("data-not-exists","数据不存在,无法修改"); |
|||
} |
|||
xmRecordVisitService.updateSomeFieldByPk(xmRecordVisit); |
|||
|
|||
} |
|||
*/ |
|||
|
|||
/** |
|||
@ApiOperation( value = "批量修改某些字段",notes="") |
|||
@ApiEntityParams( value = XmRecordVisit.class, props={ }, remark = "重要页面访问记录", paramType = "body" ) |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200,response=XmRecordVisit.class, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'},data:数据对象}") |
|||
}) |
|||
@RequestMapping(value="/editSomeFields",method=RequestMethod.POST) |
|||
public Result editSomeFields( @ApiIgnore @RequestBody Map<String,Object> xmRecordVisitMap) { |
|||
|
|||
List<String> ids= (List<String>) xmRecordVisitMap.get("ids"); |
|||
if(ids==null || ids.size()==0){ |
|||
return Result.error("ids-0","ids不能为空"); |
|||
} |
|||
|
|||
Set<String> fields=new HashSet<>(); |
|||
fields.add("id"); |
|||
for (String fieldName : xmRecordVisitMap.keySet()) { |
|||
if(fields.contains(fieldName)){ |
|||
return Result.error(fieldName+"-no-edit",fieldName+"不允许修改"); |
|||
} |
|||
} |
|||
Set<String> fieldKey=xmRecordVisitMap.keySet().stream().filter(i-> fieldsMap.containsKey(i)).collect(Collectors.toSet()); |
|||
fieldKey=fieldKey.stream().filter(i->!StringUtils.isEmpty(xmRecordVisitMap.get(i) )).collect(Collectors.toSet()); |
|||
|
|||
if(fieldKey.size()<=0) { |
|||
return Result.error("fieldKey-0","没有需要更新的字段"); |
|||
} |
|||
XmRecordVisit xmRecordVisit = fromMap(xmRecordVisitMap,XmRecordVisit.class); |
|||
List<XmRecordVisit> xmRecordVisitsDb=xmRecordVisitService.selectListByIds(ids); |
|||
if(xmRecordVisitsDb==null ||xmRecordVisitsDb.size()==0){ |
|||
return Result.error("data-0","记录已不存在"); |
|||
} |
|||
List<XmRecordVisit> can=new ArrayList<>(); |
|||
List<XmRecordVisit> no=new ArrayList<>(); |
|||
User user = LoginUtils.getCurrentUserInfo(); |
|||
for (XmRecordVisit xmRecordVisitDb : xmRecordVisitsDb) { |
|||
Tips tips2 = new Tips("检查通过"); |
|||
if(!tips2.isOk()){ |
|||
no.add(xmRecordVisitDb); |
|||
}else{ |
|||
can.add(xmRecordVisitDb); |
|||
} |
|||
} |
|||
if(can.size()>0){ |
|||
xmRecordVisitMap.put("ids",can.stream().map(i->i.getId()).collect(Collectors.toList())); |
|||
xmRecordVisitService.editSomeFields(xmRecordVisitMap); |
|||
} |
|||
List<String> msgs=new ArrayList<>(); |
|||
if(can.size()>0){ |
|||
msgs.add(String.format("成功更新以下%s条数据",can.size())); |
|||
} |
|||
if(no.size()>0){ |
|||
msgs.add(String.format("以下%s个数据无权限更新",no.size())); |
|||
} |
|||
if(can.size()>0){ |
|||
return Result.ok(msgs.stream().collect(Collectors.joining())); |
|||
}else { |
|||
return Result.error(msgs.stream().collect(Collectors.joining())); |
|||
} |
|||
|
|||
} |
|||
*/ |
|||
|
|||
/** |
|||
@ApiOperation( value = "根据主键列表批量删除重要页面访问记录信息",notes=" ") |
|||
@ApiResponses({ |
|||
@ApiResponse(code = 200, message = "{tips:{isOk:true/false,msg:'成功/失败原因',tipscode:'失败时错误码'}") |
|||
}) |
|||
@RequestMapping(value="/batchDel",method=RequestMethod.POST) |
|||
public Result batchDelXmRecordVisit(@RequestBody List<XmRecordVisit> xmRecordVisits) { |
|||
|
|||
|
|||
|
|||
if(xmRecordVisits.size()<=0){ |
|||
return Result.error("data-0","请上送待删除数据列表"); |
|||
} |
|||
List<XmRecordVisit> datasDb=xmRecordVisitService.selectListByIds(xmRecordVisits.stream().map(i-> i.getId() ).collect(Collectors.toList())); |
|||
|
|||
List<XmRecordVisit> can=new ArrayList<>(); |
|||
List<XmRecordVisit> no=new ArrayList<>(); |
|||
for (XmRecordVisit data : datasDb) { |
|||
if(true){ |
|||
can.add(data); |
|||
}else{ |
|||
no.add(data); |
|||
} |
|||
} |
|||
List<String> msgs=new ArrayList<>(); |
|||
if(can.size()>0){ |
|||
xmRecordVisitService.batchDelete(can); |
|||
msgs.add(String.format("成功删除%s条数据.",can.size())); |
|||
} |
|||
|
|||
if(no.size()>0){ |
|||
msgs.add(String.format("以下%s条数据不能删除.【%s】",no.size(),no.stream().map(i-> i.getId() ).collect(Collectors.joining(",")))); |
|||
} |
|||
if(can.size()>0){ |
|||
return Result.ok(msgs.stream().collect(Collectors.joining())); |
|||
}else { |
|||
return Result.error(msgs.stream().collect(Collectors.joining())); |
|||
} |
|||
|
|||
} |
|||
*/ |
|||
} |
|||
@ -0,0 +1,55 @@ |
|||
package com.xm.core.service; |
|||
|
|||
import com.mdp.core.service.BaseService; |
|||
import com.xm.core.entity.XmRecordVisit; |
|||
import org.slf4j.Logger; |
|||
import org.slf4j.LoggerFactory; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.*; |
|||
|
|||
/** |
|||
* 父类已经支持增删改查操作,因此,即使本类什么也不写,也已经可以满足一般的增删改查操作了.<br> |
|||
* 组织 com 顶级模块 xm 大模块 core 小模块 <br> |
|||
* 实体 XmRecordVisit 表 xm_record_visit 当前主键(包括多主键): id; |
|||
***/ |
|||
@Service("xm.core.xmRecordVisitService") |
|||
public class XmRecordVisitService extends BaseService<XmRecordVisitMapper,XmRecordVisit> { |
|||
static Logger logger =LoggerFactory.getLogger(XmRecordVisitService.class); |
|||
|
|||
public void batchAddAndCalc(List<XmRecordVisit> datas) { |
|||
Map<String, Integer> timesMap=new HashMap<>(); |
|||
Map<String,Set<String> > usersMap=new HashMap<>(); |
|||
for (XmRecordVisit data : datas) { |
|||
String key=data.getBizId(); |
|||
Set<String> users=usersMap.get(key); |
|||
if(users==null){ |
|||
users=new HashSet<>(); |
|||
} |
|||
users.add(data.getOperUserid()); |
|||
usersMap.put(key,users); |
|||
} |
|||
for (XmRecordVisit data : datas) { |
|||
String key=data.getBizId(); |
|||
Integer times=timesMap.get(key); |
|||
if(times==null){ |
|||
times=0; |
|||
} |
|||
times=times+1; |
|||
timesMap.put(key,times); |
|||
} |
|||
List<Map<String,Object>> datasToUpdate=new ArrayList<>(); |
|||
for (String key : timesMap.keySet()) { |
|||
Map<String,Object> data=new HashMap<>(); |
|||
data.put("id",key); |
|||
data.put("browseTimes",timesMap.get(key)); |
|||
data.put("browseUsers",usersMap.get(key).size()); |
|||
datasToUpdate.add(data); |
|||
} |
|||
this.batchInsert(datas); |
|||
if(datasToUpdate.size()>0){ |
|||
this.update("updateTaskBrowseTimesAndBrowseUsers",datasToUpdate); |
|||
} |
|||
} |
|||
} |
|||
|
|||
@ -0,0 +1,213 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> |
|||
<mapper namespace="com.xm.core.entity.XmRecordVisit"> |
|||
|
|||
|
|||
<!--开始 自定sql函数区域 请在此区域添加自定义函数,其它区域尽量不要动,因为代码随时重新生成 --> |
|||
|
|||
<sql id="whereForMap"> |
|||
<if test=" ids != null"> and (res.id) in |
|||
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" > |
|||
( #{item}) |
|||
</foreach> |
|||
</if> |
|||
<if test="key != null and key !='' "> </if> |
|||
</sql> |
|||
|
|||
<update id="updateTaskBrowseTimesAndBrowseUsers" parameterType="List"> |
|||
<foreach collection="list" item="item" index="index" separator=";" > |
|||
update xm_task t set t.browse_users=ifnull(t.browse_users,0)+#{item.browseUsers},t.browse_times=ifnull(t.browse_times,0)+#{item.browseTimes} |
|||
where t.id=#{item.id} |
|||
</foreach> |
|||
</update> |
|||
<!--结束 自定义sql函数区域--> |
|||
|
|||
|
|||
|
|||
<!-- 通过条件查询获取数据列表 返回list<map> --> |
|||
<select id="selectListMapByWhere" parameterType="HashMap" resultType="HashMap"> |
|||
select * from xm_record_visit res |
|||
<where> |
|||
<include refid="whereForMap"/> |
|||
<include refid="where"/> |
|||
</where> |
|||
</select> |
|||
|
|||
<!-- 通过条件查询获取数据列表 不分页 返回 list<Object> --> |
|||
<select id="selectListByWhere" parameterType="com.xm.core.entity.XmRecordVisit" resultType="com.xm.core.entity.XmRecordVisit"> |
|||
select * from xm_record_visit res |
|||
<where> |
|||
<include refid="where"/> |
|||
</where> |
|||
</select> |
|||
|
|||
<!-- 通过主键查询获取数据对象 返回object --> |
|||
<select id="selectOneObject" parameterType="com.xm.core.entity.XmRecordVisit" resultType="com.xm.core.entity.XmRecordVisit"> |
|||
select * from xm_record_visit res |
|||
where |
|||
res.id = #{id} |
|||
</select> |
|||
<select id="selectListByIds" parameterType="List" resultType="com.xm.core.entity.XmRecordVisit"> |
|||
select * from xm_record_visit res |
|||
where (res.id) in |
|||
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" > |
|||
( #{item}) |
|||
</foreach> |
|||
</select> |
|||
<!-- 通过主键查询获取数据对象 返回map--> |
|||
<select id="selectOneMap" parameterType="HashMap" resultType="HashMap"> |
|||
select * from xm_record_visit res |
|||
where |
|||
res.id = #{id} |
|||
</select> |
|||
<!-- 获取数据条目 返回long --> |
|||
<select id="countByWhere" parameterType="com.xm.core.entity.XmRecordVisit" resultType="long"> |
|||
select count(*) from xm_record_visit res |
|||
<where> |
|||
<include refid="where"/> |
|||
</where> |
|||
</select> |
|||
<!-- 新增一条记录 主键id,--> |
|||
<insert id="insert" parameterType="com.xm.core.entity.XmRecordVisit" useGeneratedKeys="false" keyProperty="id"> |
|||
insert into xm_record_visit( |
|||
<include refid="columns"/> |
|||
) values ( |
|||
#{id},#{operUserid},#{operUsername},#{operTime},#{objType},#{action},#{remarks},#{gloNo},#{branchId},#{ip},#{bizId},#{pbizId},#{bizName} |
|||
) |
|||
</insert> |
|||
|
|||
<!-- 按条件删除若干条记录--> |
|||
<delete id="deleteByWhere" parameterType="com.xm.core.entity.XmRecordVisit"> |
|||
delete from xm_record_visit res |
|||
<where> |
|||
<include refid="where"/> |
|||
</where> |
|||
</delete> |
|||
|
|||
<!-- 按主键删除一条记录--> |
|||
<delete id="deleteByPk" parameterType="com.xm.core.entity.XmRecordVisit"> |
|||
delete from xm_record_visit |
|||
where id = #{id} |
|||
</delete> |
|||
|
|||
<!-- 根据条件修改若干条记录 --> |
|||
<update id="updateSomeFieldByPk" parameterType="com.xm.core.entity.XmRecordVisit"> |
|||
update xm_record_visit |
|||
<set> |
|||
<include refid="someFieldSet"/> |
|||
</set> |
|||
where id = #{id} |
|||
</update> |
|||
|
|||
<!-- 根据主键修改一条记录 --> |
|||
<update id="updateByPk" parameterType="com.xm.core.entity.XmRecordVisit"> |
|||
update xm_record_visit |
|||
<set> |
|||
<include refid="set"/> |
|||
</set> |
|||
where id = #{id} |
|||
</update> |
|||
|
|||
<!-- 批量新增 批量插入 借用insert 循环插入实现 |
|||
<insert id="batchInsert" parameterType="List"> |
|||
</insert> |
|||
--> |
|||
|
|||
<!-- 批量更新 --> |
|||
<update id="batchUpdate" parameterType="List"> |
|||
<foreach collection="list" item="item" index="index" separator=";" > |
|||
update xm_record_visit |
|||
set |
|||
<include refid="batchSet"/> |
|||
where id = #{item.id} |
|||
</foreach> |
|||
</update> |
|||
|
|||
<!-- 批量修改某几个字段 --> |
|||
<delete id="editSomeFields" parameterType="HashMap"> |
|||
update xm_record_visit |
|||
<set> |
|||
<include refid="someFieldSet"/> |
|||
</set> |
|||
where (id) in |
|||
<foreach collection="ids" item="item" index="index" open="(" separator="," close=")" > |
|||
( #{item}) |
|||
</foreach> |
|||
</delete> |
|||
<!-- 批量删除 --> |
|||
<delete id="batchDelete" parameterType="List"> |
|||
delete from xm_record_visit |
|||
where |
|||
(id) in |
|||
<foreach collection="list" item="item" index="index" open="(" separator="," close=")" > |
|||
( #{item.id} ) |
|||
</foreach> |
|||
</delete> |
|||
|
|||
|
|||
<!--sql片段 列--> |
|||
<sql id="columns"> |
|||
id,oper_userid,oper_username,oper_time,obj_type,action,remarks,glo_no,branch_id,ip,biz_id,pbiz_id,biz_name |
|||
</sql> |
|||
|
|||
<!--sql片段 动态条件 YYYY-MM-DD HH24:MI:SS--> |
|||
<sql id="where"> |
|||
<if test="id != null and id != ''"> and res.id = #{id} </if> |
|||
<if test="operUserid != null and operUserid != ''"> and res.oper_userid = #{operUserid} </if> |
|||
<if test="operUsername != null and operUsername != ''"> and res.oper_username = #{operUsername} </if> |
|||
<if test="operTime != null"> and date_format(res.oper_time,'%Y-%m-%d') = date_format(#{operTime},'%Y-%m-%d') </if> |
|||
<if test="objType != null and objType != ''"> and res.obj_type = #{objType} </if> |
|||
<if test="action != null and action != ''"> and res.action = #{action} </if> |
|||
<if test="remarks != null and remarks != ''"> and res.remarks = #{remarks} </if> |
|||
<if test="gloNo != null and gloNo != ''"> and res.glo_no = #{gloNo} </if> |
|||
<if test="branchId != null and branchId != ''"> and res.branch_id = #{branchId} </if> |
|||
<if test="ip != null and ip != ''"> and res.ip = #{ip} </if> |
|||
<if test="bizId != null and bizId != ''"> and res.biz_id = #{bizId} </if> |
|||
<if test="pbizId != null and pbizId != ''"> and res.pbiz_id = #{pbizId} </if> |
|||
<if test="bizName != null and bizName != ''"> and res.biz_name = #{bizName} </if> |
|||
</sql> |
|||
<!--sql片段 更新字段 --> |
|||
<sql id="set"> |
|||
oper_userid = #{operUserid}, |
|||
oper_username = #{operUsername}, |
|||
oper_time = #{operTime}, |
|||
obj_type = #{objType}, |
|||
action = #{action}, |
|||
remarks = #{remarks}, |
|||
glo_no = #{gloNo}, |
|||
branch_id = #{branchId}, |
|||
ip = #{ip}, |
|||
biz_id = #{bizId}, |
|||
pbiz_id = #{pbizId}, |
|||
biz_name = #{bizName} |
|||
</sql> |
|||
<sql id="someFieldSet"> |
|||
<if test="operUserid != null and operUserid != ''"> oper_userid = #{operUserid}, </if> |
|||
<if test="operUsername != null and operUsername != ''"> oper_username = #{operUsername}, </if> |
|||
<if test="operTime != null"> oper_time = #{operTime}, </if> |
|||
<if test="objType != null and objType != ''"> obj_type = #{objType}, </if> |
|||
<if test="action != null and action != ''"> action = #{action}, </if> |
|||
<if test="remarks != null and remarks != ''"> remarks = #{remarks}, </if> |
|||
<if test="gloNo != null and gloNo != ''"> glo_no = #{gloNo}, </if> |
|||
<if test="branchId != null and branchId != ''"> branch_id = #{branchId}, </if> |
|||
<if test="ip != null and ip != ''"> ip = #{ip}, </if> |
|||
<if test="bizId != null and bizId != ''"> biz_id = #{bizId}, </if> |
|||
<if test="pbizId != null and pbizId != ''"> pbiz_id = #{pbizId}, </if> |
|||
<if test="bizName != null and bizName != ''"> biz_name = #{bizName}, </if> |
|||
</sql> |
|||
<!--sql片段 批量更新 --> |
|||
<sql id="batchSet"> |
|||
oper_userid = #{item.operUserid}, |
|||
oper_username = #{item.operUsername}, |
|||
oper_time = #{item.operTime}, |
|||
obj_type = #{item.objType}, |
|||
action = #{item.action}, |
|||
remarks = #{item.remarks}, |
|||
glo_no = #{item.gloNo}, |
|||
branch_id = #{item.branchId}, |
|||
ip = #{item.ip}, |
|||
biz_id = #{item.bizId}, |
|||
pbiz_id = #{item.pbizId}, |
|||
biz_name = #{item.bizName} |
|||
</sql> |
|||
</mapper> |
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue