1. 新增监管系统中用户模糊搜索功能
2. 新增监测设备和用户的匹配关系搜索功能
| | |
| | | ADMIN(0, "管çå"), |
| | | INSIDER(1, "å
é¨äººå"), |
| | | GOV(2, "æ¿åºé¨é¨"), |
| | | ENTERPRISE(3, "ä¼ä¸") |
| | | ENTERPRISE(3, "ä¼ä¸"); |
| | | |
| | | companion object { |
| | | fun fromValue(value: Int?) = when (value) { |
| | | -1 -> ALL_USER |
| | | 0 -> ADMIN |
| | | 1 -> INSIDER |
| | | 2 -> GOV |
| | | 3 -> ENTERPRISE |
| | | else -> ALL_USER |
| | | } |
| | | } |
| | | } |
| | | //è§èç±»å« |
| | | enum class RuleType(val value: Byte, val text: String){ |
| | |
| | | import org.apache.ibatis.annotations.Select |
| | | |
| | | @Mapper |
| | | interface ScenseMapper:MyMapper<Scense>, MutableList<Scense> { |
| | | interface ScenseMapper : MyMapper<Scense> { |
| | | |
| | | /** |
| | | * è·åæªåå»ºç¨æ·çåºæ¯ |
| | |
| | | |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Userinfo |
| | | import cn.flightfeather.supervision.domain.util.MyMapper |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import org.apache.ibatis.annotations.Mapper |
| | | |
| | | @Mapper |
| | | interface UserinfoMapper:MyMapper<Userinfo> { |
| | | |
| | | /** |
| | | * ç¨æ·æ¨¡ç³æç´¢ |
| | | */ |
| | | fun searchUser(areaVo: AreaVo, keyword: String, userTypeId: Int): List<Userinfo?> |
| | | } |
| | |
| | | }) |
| | | } |
| | | |
| | | fun findSceneList(scene: Scense): List<Scense?> { |
| | | return scenseMapper.select(scene) |
| | | } |
| | | |
| | | fun findSceneList(nameList: List<String?>): List<Scense?> { |
| | | return scenseMapper.selectByExample(Example(Scense::class.java).apply { |
| | | createCriteria().andIn("name", nameList) |
| | |
| | | package cn.flightfeather.supervision.domain.ds1.repository |
| | | |
| | | import cn.flightfeather.supervision.common.utils.Constant |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Scense |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Userinfo |
| | | import cn.flightfeather.supervision.domain.ds1.mapper.UserinfoMapper |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import org.springframework.stereotype.Repository |
| | | import tk.mybatis.mapper.entity.Example |
| | | |
| | |
| | | @Repository |
| | | class UserInfoSVRep( |
| | | private val userinfoMapper: UserinfoMapper, |
| | | private val sceneRep: SceneRep, |
| | | ) { |
| | | |
| | | /** |
| | |
| | | null |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * æ¨¡ç³æç´¢ç¨æ· |
| | | * @param areaVo æ¥è¯¢åºåèå´ |
| | | * @param keyword æç´¢å
³é®åï¼å¹é
è´¦æ·[Userinfo.acountname]åæµç§°[Userinfo.realname] |
| | | * @param userType ç¨æ·ç±»åï¼é»è®¤ä¼ä¸[Constant.UserType.ENTERPRISE] |
| | | */ |
| | | fun searchUser( |
| | | areaVo: AreaVo, keyword: String, |
| | | userType: Constant.UserType = Constant.UserType.ENTERPRISE, |
| | | ): List<Userinfo?> { |
| | | return userinfoMapper.searchUser(areaVo, keyword, userType.value) |
| | | // val userList = userinfoMapper.selectByExample(Example(Userinfo::class.java).apply { |
| | | // createCriteria().orLike("realname", "%${keyword}%") |
| | | // .orLike("acountname", "%${keyword}%") |
| | | // }) |
| | | // val sceneList = sceneRep.findSceneList(Scense().apply { |
| | | // provincecode = areaVo.provincecode |
| | | // citycode = areaVo.citycode |
| | | // districtcode = areaVo.districtcode |
| | | // towncode = areaVo.towncode |
| | | // typeid = areaVo.scensetypeid?.toByteOrNull() |
| | | // extension1 = if (areaVo.online == true) "1" else "0" |
| | | // }) |
| | | // return userList.filter { u -> |
| | | // val scene = sceneList.find { s -> |
| | | // return@find s?.guid == u.dGuid |
| | | // } |
| | | // return@filter scene != null |
| | | // } |
| | | } |
| | | } |
| | |
| | | import cn.flightfeather.supervision.common.utils.Constant |
| | | import cn.flightfeather.supervision.domain.ds1.entity.BaseDevice |
| | | import cn.flightfeather.supervision.domain.ds1.entity.DeviceStatus |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import cn.flightfeather.supervision.lightshare.vo.DataHead |
| | | import cn.flightfeather.supervision.lightshare.vo.MonitorDeviceInfoVo |
| | | import io.swagger.annotations.ApiParam |
| | | import org.springframework.web.bind.annotation.RequestParam |
| | | import org.springframework.web.multipart.MultipartFile |
| | | |
| | | interface DeviceService { |
| | |
| | | *æ´æ°è®¾å¤åå¾ç |
| | | */ |
| | | fun updateDeviceLocation(deviceLocation: String, deleteImg: List<String>, files: Array<MultipartFile>): Int |
| | | |
| | | fun searchExternalDevice( |
| | | areaVo: AreaVo, keyword: String, page: Int?, perPage: Int?, |
| | | ): Pair<DataHead, MonitorDeviceInfoVo> |
| | | } |
| | |
| | | |
| | | fun autoCreateMap(userList: List<Userinfo?>) |
| | | |
| | | fun fetchDeviceMap(areaVo: AreaVo): List<DeviceMapVo?> |
| | | fun fetchDeviceMap(page: Int?, perPage: Int?, areaVo: AreaVo): List<DeviceMapVo?> |
| | | } |
| | |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Scense |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Userinfo |
| | | import cn.flightfeather.supervision.domain.ds2.entity.UserinfoTZ |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import cn.flightfeather.supervision.lightshare.vo.DataHead |
| | | import org.springframework.web.bind.annotation.RequestBody |
| | | |
| | | interface UserinfoService { |
| | | fun findOne(id: String): Userinfo? |
| | |
| | | |
| | | fun delete(id: String): Int |
| | | |
| | | /** |
| | | * æ ¹æ®è´¦æ·åç§°æ¨¡ç³æç´¢ |
| | | */ |
| | | fun search(areaVo: AreaVo, keyword: String, userType: Int?, page: Int?, perPage: Int?) |
| | | : Pair<DataHead, List<Userinfo?>> |
| | | |
| | | fun findOneByName(userinfo: Userinfo): Userinfo? |
| | | |
| | | fun createAccount(sceneId: String): Userinfo |
| | | |
| | | fun findByScene(sceneId: String): Userinfo? |
| | | |
| | | /** |
| | | * æ ¹æ®åºæ¯åç§°ï¼è·ååéçè´¦æ·å |
| | | */ |
| | | fun getUName(sceneName: String): String |
| | | |
| | | fun autoCreateAccount() |
| | |
| | | import cn.flightfeather.supervision.domain.ds1.entity.* |
| | | import cn.flightfeather.supervision.domain.ds1.repository.DeviceRep |
| | | import cn.flightfeather.supervision.lightshare.service.DeviceService |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import cn.flightfeather.supervision.lightshare.vo.DataHead |
| | | import cn.flightfeather.supervision.lightshare.vo.MonitorDeviceInfoVo |
| | | import com.google.gson.Gson |
| | | import org.springframework.beans.factory.annotation.Value |
| | | import org.springframework.stereotype.Service |
| | |
| | | obj.dlPicUrl = oldImg.joinToString(";") |
| | | return deviceRep.updateStatus(obj) |
| | | } |
| | | |
| | | override fun searchExternalDevice( |
| | | areaVo: AreaVo, keyword: String, page: Int?, perPage: Int?, |
| | | ): Pair<DataHead, MonitorDeviceInfoVo> { |
| | | TODO("Not yet implemented") |
| | | } |
| | | } |
| | |
| | | } |
| | | } |
| | | |
| | | override fun fetchDeviceMap(areaVo: AreaVo): List<DeviceMapVo?> { |
| | | override fun fetchDeviceMap(page: Int?, perPage: Int?, areaVo: AreaVo): List<DeviceMapVo?> { |
| | | // 1.éè¿åºåæ¡ä»¶è·å主ä½ç¨æ· |
| | | val userIdList = when (areaVo.sourceType) { |
| | | //以é£ç¾½ç¯å¢ç³»ç»ä¸çç¨æ·ä¸ºä¸»ä½ |
| | |
| | | import cn.flightfeather.supervision.domain.ds2.repository.UserInfoTZRep |
| | | import cn.flightfeather.supervision.lightshare.service.UserinfoService |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import cn.flightfeather.supervision.lightshare.vo.DataHead |
| | | import com.github.pagehelper.PageHelper |
| | | import org.springframework.beans.BeanUtils |
| | | import org.springframework.stereotype.Service |
| | | import tk.mybatis.mapper.entity.Example |
| | |
| | | |
| | | override fun delete(id: String): Int = userinfoMapper.deleteByPrimaryKey(id) |
| | | |
| | | override fun search(areaVo: AreaVo, keyword: String, userType: Int?, page: Int?, perPage: Int?) |
| | | : Pair<DataHead, List<Userinfo?>> { |
| | | val p = PageHelper.startPage<Userinfo>(page ?: 1, perPage ?: 30) |
| | | val result = userInfoSVRep.searchUser(areaVo, keyword.trim(), Constant.UserType.fromValue(userType)) |
| | | result.forEach { it?.password = null } |
| | | return DataHead(p.pageNum, p.pages, p.total) to result |
| | | } |
| | | |
| | | override fun createAccount(sceneId: String): Userinfo { |
| | | findByScene(sceneId)?.let { return it } |
| | | |
| | |
| | | |
| | | import com.fasterxml.jackson.annotation.JsonFormat |
| | | import com.fasterxml.jackson.annotation.JsonInclude |
| | | import io.swagger.annotations.ApiModel |
| | | import io.swagger.annotations.ApiModelProperty |
| | | import java.time.LocalDateTime |
| | | |
| | | /** |
| | | * åºåæ¡ä»¶ |
| | | */ |
| | | @JsonInclude(JsonInclude.Include.NON_NULL) |
| | | open class AreaVo{ |
| | | // è¡æ¿åºå |
| | | @ApiModel("åºåæ¡ä»¶") |
| | | open class AreaVo { |
| | | @ApiModelProperty("ç份ç¼ç ") |
| | | var provincecode: String? = null |
| | | |
| | | @ApiModelProperty("ç份åç§°") |
| | | var provincename: String? = null |
| | | |
| | | @ApiModelProperty("åå¸ç¼ç ") |
| | | var citycode: String? = null |
| | | |
| | | @ApiModelProperty("åå¸åç§°") |
| | | var cityname: String? = null |
| | | |
| | | @ApiModelProperty("åºå¿ç¼ç ") |
| | | var districtcode: String? = null |
| | | |
| | | @ApiModelProperty("åºå¿åç§°") |
| | | var districtname: String? = null |
| | | |
| | | @ApiModelProperty("è¡éç¼ç ") |
| | | var towncode: String? = null |
| | | |
| | | @ApiModelProperty("è¡éåç§°") |
| | | var townname: String? = null |
| | | |
| | | // æ¶é´èå´,æ ¼å¼yyyy-MM-dd HH:mm:ss |
| | | @ApiModelProperty("èµ·å§æ¶é´ï¼æ ¼å¼ yyyy-MM-dd HH:mm:ss") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | var starttime: LocalDateTime? = null |
| | | |
| | | @ApiModelProperty("ç»ææ¶é´ï¼æ ¼å¼ yyyy-MM-dd HH:mm:ss") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | var endtime: LocalDateTime? = null |
| | | |
| | | // åºæ¯id |
| | | @ApiModelProperty("åºæ¯ä¸»é®id") |
| | | var sceneId: String? = null |
| | | // åºæ¯åç§° |
| | | |
| | | @ApiModelProperty("åºæ¯åç§°") |
| | | var sceneName: String? = null |
| | | // åºæ¯ç±»å |
| | | |
| | | @ApiModelProperty("åºæ¯ç±»åid") |
| | | var scensetypeid: String? = null |
| | | |
| | | // æ¯å¦ä¸çº¿ |
| | | @ApiModelProperty("æ¯å¦ä¸çº¿") |
| | | var online: Boolean? = null |
| | | |
| | | // ä¸»æ°æ®æºï¼1ï¼ä»¥é£ç¾½ç¯å¢ç³»ç»ä¸çç¨æ·ä¸ºä¸»ä½ï¼2ï¼ä»¥é£ç¾½ç管系ç»ä¸çç¨æ·ä¸ºä¸»ä½ |
| | | var sourceType:Int = 1 |
| | | @ApiModelProperty("ä¸»æ°æ®æº", allowableValues = "1ï¼ä»¥é£ç¾½ç¯å¢ç³»ç»ä¸çç¨æ·ä¸ºä¸»ä½ï¼2ï¼ä»¥é£ç¾½ç管系ç»ä¸çç¨æ·ä¸ºä¸»ä½") |
| | | var sourceType: Int = 1 |
| | | |
| | | // æ¥è¯¢æåº |
| | | var sort:String? = "asc" |
| | | @ApiModelProperty("æ¥è¯¢æåº", allowableValues = "ascï¼æ£åº, descï¼ååº") |
| | | var sort: String? = "asc" |
| | | |
| | | @ApiModelProperty("æåºå段", allowableValues = "pro: æç
§é®é¢æ°æåºï¼changePerï¼æç
§æ´æ¹çæåº") |
| | | var sortBy: String? = null |
| | | } |
| | |
| | | import cn.flightfeather.supervision.common.utils.Constant |
| | | import cn.flightfeather.supervision.domain.ds1.entity.MonitorDeviceInfo |
| | | import cn.flightfeather.supervision.lightshare.service.DeviceService |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import io.swagger.annotations.Api |
| | | import io.swagger.annotations.ApiOperation |
| | | import io.swagger.annotations.ApiParam |
| | |
| | | @ApiParam("å é¤ç设å¤å¾çè·¯å¾") @RequestParam("deleteImg") deleteImg: List<String>, |
| | | @ApiParam("设å¤å¾ç") @RequestPart("images") images: Array<MultipartFile>, |
| | | ) = resPack { deviceService.updateDeviceLocation(status, deleteImg, images) } |
| | | |
| | | @ApiOperation("æ¥è¯¢ä»å¤é¨è·åç设å¤ä¿¡æ¯") |
| | | @PostMapping("/external/search") |
| | | fun searchExternalDevice( |
| | | @ApiParam("åºåæ¡ä»¶ä¿¡æ¯") @RequestBody |
| | | areaVo: AreaVo, |
| | | @ApiParam("æç´¢å
³é®åï¼å¹é
设å¤ç¼å·åç¹ä½åç§°") @RequestParam |
| | | keyword: String, |
| | | @ApiParam("æ¥è¯¢é¡µç ", defaultValue = "1", required = false) @RequestParam("page", required = false) |
| | | page: Int?, |
| | | @ApiParam("åé¡µæ°æ®é", defaultValue = "30", required = false) @RequestParam("per_page", required = false) |
| | | perPage: Int?, |
| | | ) = resPack { deviceService.searchExternalDevice(areaVo, keyword, page, perPage) } |
| | | } |
| | |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import io.swagger.annotations.Api |
| | | import io.swagger.annotations.ApiOperation |
| | | import io.swagger.annotations.ApiParam |
| | | import org.springframework.web.bind.annotation.* |
| | | |
| | | @Api(tags = ["UserMapController"], description = "ç¨æ·id对åºAPIæ¥å£") |
| | |
| | | |
| | | @ApiOperation(value = "è·ååºåç¨æ·ççæµè®¾å¤åé£ç¾½ç管系ç»ãé£ç¾½ç¯å¢ç³»ç»çå¹é
è®°å½") |
| | | @PostMapping("/device") |
| | | fun fetchDeviceMap(@RequestBody areaVo: AreaVo) = resPack { userMapService.fetchDeviceMap(areaVo) } |
| | | fun fetchDeviceMap( |
| | | @ApiParam("æ¥è¯¢é¡µç ", defaultValue = "1", required = false) @RequestParam("page", required = false) |
| | | page: Int?, |
| | | @ApiParam("åé¡µæ°æ®é", defaultValue = "30", required = false) @RequestParam("per_page", required = false) |
| | | perPage: Int?, |
| | | @ApiParam("åºåæ¡ä»¶ä¿¡æ¯") @RequestBody |
| | | areaVo: AreaVo |
| | | ) = resPack { userMapService.fetchDeviceMap(page, perPage, areaVo) } |
| | | } |
| | |
| | | |
| | | import cn.flightfeather.supervision.domain.ds1.entity.Userinfo |
| | | import cn.flightfeather.supervision.lightshare.service.UserinfoService |
| | | import cn.flightfeather.supervision.lightshare.vo.AreaVo |
| | | import io.swagger.annotations.Api |
| | | import io.swagger.annotations.ApiOperation |
| | | import io.swagger.annotations.ApiParam |
| | | import org.springframework.web.bind.annotation.* |
| | | |
| | | @Api(tags = ["UserinfoController"], description = "ç¨æ·ä¿¡æ¯APIæ¥å£") |
| | |
| | | @DeleteMapping("/{id}") |
| | | fun delete(@PathVariable id: String) = userinfoService.delete(id) |
| | | |
| | | @ApiOperation(value = "æ¨¡ç³æç´¢ç¨æ·ä¿¡æ¯") |
| | | @PostMapping("/search") |
| | | fun search( |
| | | @ApiParam("åºåæ¡ä»¶ä¿¡æ¯") @RequestBody |
| | | areaVo: AreaVo, |
| | | @ApiParam("æç´¢å
³é®åï¼å¹é
ç¨æ·è´¦æ·ååæµç§°") @RequestParam |
| | | keyword: String, |
| | | @ApiParam("ç¨æ·ç±»å", example = "0:管çå;1:å
é¨äººå;2:æ¿åºé¨é¨;3:ä¼ä¸", defaultValue = "3", required = false) |
| | | @RequestParam(required = false) |
| | | userType: Int?, |
| | | @ApiParam("æ¥è¯¢é¡µç ", defaultValue = "1", required = false) @RequestParam("page", required = false) |
| | | page: Int?, |
| | | @ApiParam("åé¡µæ°æ®é", defaultValue = "30", required = false) @RequestParam("per_page", required = false) |
| | | perPage: Int?, |
| | | ) = resPack { userinfoService.search(areaVo, keyword, userType, page, perPage) } |
| | | |
| | | @PostMapping("/login") |
| | | fun getByName(@RequestBody userinfo: Userinfo) = userinfoService.findOneByName(userinfo) |
| | | |
| | |
| | | # username: root |
| | | # password: cn.FLIGHTFEATHER |
| | | |
| | | #-è¿ç¨æµè¯æå¡å¨- |
| | | #-è¿ç¨æ£å¼æå¡å¨ï¼æåæµè¯ï¼- |
| | | url: jdbc:mysql://47.100.191.150:3306/supervision?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false |
| | | username: remoteU1 |
| | | password: eSoF8DnzfGTlhAjE |
| | | ds2: |
| | | #-è¿ç¨æµè¯æå¡å¨- |
| | | #-è¿ç¨æ£å¼æå¡å¨ï¼æåæµè¯ï¼- |
| | | url: jdbc:mysql://47.100.191.150:3306/ledger?serverTimezone=Asia/Shanghai&prepStmtCacheSize=517&cachePrepStmts=true&autoReconnect=true&characterEncoding=utf-8&allowMultiQueries=true&useSSL=false |
| | | username: remoteU1 |
| | | password: eSoF8DnzfGTlhAjE |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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="cn.flightfeather.supervision.domain.ds1.mapper.UserinfoMapper"> |
| | | <resultMap id="BaseResultMap" type="cn.flightfeather.supervision.domain.ds1.entity.Userinfo"> |
| | | <!-- |
| | | WARNING - @mbg.generated |
| | | --> |
| | | <id column="UI_GUID" jdbcType="VARCHAR" property="guid" /> |
| | | <result column="UI_AcountName" jdbcType="VARCHAR" property="acountname" /> |
| | | <result column="UI_RealName" jdbcType="VARCHAR" property="realname" /> |
| | | <result column="UI_Password" jdbcType="VARCHAR" property="password" /> |
| | | <result column="UI_UserTypeID" jdbcType="TINYINT" property="usertypeid" /> |
| | | <result column="UI_UserType" jdbcType="VARCHAR" property="usertype" /> |
| | | <result column="D_GUID" jdbcType="VARCHAR" property="dGuid" /> |
| | | <result column="UI_DepartmentName" jdbcType="VARCHAR" property="departmentname" /> |
| | | <result column="UI_IsEnable" jdbcType="BIT" property="isenable" /> |
| | | <result column="UI_WorkNo" jdbcType="VARCHAR" property="workno" /> |
| | | <result column="UI_Telephone" jdbcType="VARCHAR" property="telephone" /> |
| | | <result column="UI_WechatID" jdbcType="VARCHAR" property="wechatid" /> |
| | | <result column="UI_Extension1" jdbcType="VARCHAR" property="extension1" /> |
| | | <result column="UI_Extension2" jdbcType="VARCHAR" property="extension2" /> |
| | | <result column="UI_Extension3" jdbcType="VARCHAR" property="extension3" /> |
| | | <result column="UI_Remark" jdbcType="VARCHAR" property="remark" /> |
| | | </resultMap> |
| | | <sql id="Base_Column_List"> |
| | | <!-- |
| | | WARNING - @mbg.generated |
| | | --> |
| | | UI_GUID, UI_AcountName, UI_RealName, UI_Password, UI_UserTypeID, |
| | | UI_UserType, D_GUID, UI_DepartmentName, UI_IsEnable, |
| | | UI_WorkNo, UI_Telephone, UI_WechatID, UI_Extension1, |
| | | UI_Extension2, UI_Extension3, UI_Remark |
| | | </sql> |
| | | |
| | | <select id="searchUser" resultMap="BaseResultMap"> |
| | | SELECT |
| | | a.* |
| | | FROM |
| | | sm_t_userinfo AS a |
| | | LEFT JOIN sm_t_scense AS b ON a.D_GUID = b.S_GUID |
| | | WHERE |
| | | (a.UI_WorkNo IS NULL OR a.UI_WorkNo != 'test') |
| | | <if test="areaVo.provincecode != null"> |
| | | AND b.S_ProvinceCode = #{areaVo.provincecode} |
| | | </if> |
| | | <if test="areaVo.provincename != null"> |
| | | AND b.S_ProvinceName = #{areaVo.provincename} |
| | | </if> |
| | | <if test="areaVo.citycode != null"> |
| | | AND b.S_CityCode = #{areaVo.citycode} |
| | | </if> |
| | | <if test="areaVo.cityname != null"> |
| | | AND b.S_CityName = #{areaVo.cityname} |
| | | </if> |
| | | <if test="areaVo.districtcode != null"> |
| | | AND b.S_DistrictCode = #{areaVo.districtcode} |
| | | </if> |
| | | <if test="areaVo.districtname != null"> |
| | | AND b.S_DistrictName = #{areaVo.districtname} |
| | | </if> |
| | | <if test="areaVo.towncode != null"> |
| | | AND b.S_TownCode = #{areaVo.towncode} |
| | | </if> |
| | | <if test="areaVo.townname != null"> |
| | | AND b.S_TownName = #{areaVo.townname} |
| | | </if> |
| | | <if test="areaVo.scensetypeid != null"> |
| | | AND b.S_TypeID = #{areaVo.scensetypeid} |
| | | </if> |
| | | <if test="areaVo.online == true"> |
| | | AND b.S_Extension1 = '1' |
| | | </if> |
| | | <if test="areaVo.online == false"> |
| | | AND b.S_Extension1 = '0' |
| | | </if> |
| | | <if test="userTypeId != null"> |
| | | AND a.UI_UserTypeID = #{userTypeId} |
| | | </if> |
| | | <if test="keyword != null and keyword != ''"> |
| | | AND ( |
| | | a.UI_AcountName LIKE CONCAT('%', #{keyword}, '%') |
| | | OR |
| | | a.UI_RealName LIKE CONCAT('%', #{keyword}, '%') |
| | | ) |
| | | </if> |
| | | </select> |
| | | </mapper> |