Procházet zdrojové kódy

task-4651 sql注入新增接口
移动端-调班列表查询接口
修改考勤概况统计接口错误计数逻辑

xiexh před 9 měsíci
rodič
revize
3a1136bb45

+ 2 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/sqlzdy/Service/SwdlService.java

@@ -23,4 +23,6 @@ public interface SwdlService {
     APIResult<Object> queryInspectionData(@RequestBody(required = true) Map<String,Object> map)throws Exception ;
 
     APIResult queryAttendanceData(@RequestBody(required = true) Map<String,Object> map)throws Exception ;
+
+    APIResult queryClassAdjustmentList(@RequestBody(required = true) Map<String,Object> map)throws Exception ;
 }

+ 39 - 2
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/sqlzdy/Service/SwdlServiceImpl.java

@@ -211,10 +211,47 @@ public class SwdlServiceImpl extends GenericProvider implements SwdlService {
 
             Map paramMap= getAttendanceMap(map);
             List<Map<String,Object>> list = updateDataTableDao.selectAttendanceData(paramMap);
-            //int totalCount = updateDataTableDao.selectAttendanceDataCount(map);
+            int totalCount = updateDataTableDao.selectAttendanceDataCount(map);
             APIPageList<Map<String,Object>> pageList = getAPIPageList(list);
             APIPageResult pageResult = new APIPageResult();
-            pageResult.setTotalCount(100);
+            pageResult.setTotalCount(totalCount);
+            pageResult.setLimit(limit);
+            pageResult.setPage(pageNo);
+            pageList.setPageResult(pageResult);
+            result.setData(pageList);
+        } catch (Exception e) {
+            setExceptionResult(result, StateEnum.ERROR_FORM_BO.getCode(), I18nUtil.getMessage(StateEnum.ERROR_FORM_BO.getCode()+""), e);
+        }
+        return result;
+    }
+
+    @Override
+    public APIResult queryClassAdjustmentList(
+            @ApiParam(name = "request", value = "传入查询请求map对象", required = true)
+            @RequestBody(required = true) Map<String,Object> map) throws Exception  {
+        APIResult<Object> result = new APIResult<>();
+        try {
+            int pageNo = Integer.parseInt(map.get("pageNo").toString());
+            int limit = Integer.parseInt(map.get("limit").toString());
+            int startPage = limit*(pageNo-1);
+            map.put("startPage",startPage);
+            HashMap<String, Object> stringObjectHashMap = new HashMap<>();
+            if (BeanUtils.isNotEmpty(map)) {
+                stringObjectHashMap.put("pageNo", map.get("pageNo"));
+                stringObjectHashMap.put("limit", map.get("limit"));
+                stringObjectHashMap.put("startPage", map.get("startPage"));
+                if(BeanUtils.isNotEmpty(map.get("param"))){
+                    Map param = (Map) map.get("param");
+                    String userId = (String) param.get("userId");
+                    stringObjectHashMap.put("userId",userId);
+                }
+            }
+
+            List<Map<String,Object>> list = updateDataTableDao.selectClassAdjustmentList(stringObjectHashMap);
+            int totalCount = updateDataTableDao.selectClassAdjustmentListCount(stringObjectHashMap);
+            APIPageList<Map<String,Object>> pageList = getAPIPageList(list);
+            APIPageResult pageResult = new APIPageResult();
+            pageResult.setTotalCount(totalCount);
             pageResult.setLimit(limit);
             pageResult.setPage(pageNo);
             pageList.setPageResult(pageResult);

+ 12 - 0
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/components/sqlzdy/control/SwdlController.java

@@ -91,4 +91,16 @@ public class SwdlController extends GenericProvider {
         return result;
 
     }
+    @ApiOperation("移动端-调班列表查询")
+    @PostMapping("/mobile/adjust/queryData")
+    APIResult queryClassAdjustmentList(@RequestBody(required = true) Map<String,Object> map) throws Exception{
+        APIResult result = new APIResult<>();
+        try {
+            result = swdlService.queryClassAdjustmentList(map);
+        } catch (Exception e) {
+            setExceptionResult(result, StateEnum.ILLEGAL_REQUEST.getCode(), I18nUtil.getMessage(StateEnum.ILLEGAL_REQUEST.getCode() + ""), e);
+        }
+        return result;
+
+    }
 }

+ 7 - 1
ibps-provider-root/modules/provider-business/src/main/java/com/lc/ibps/sysdata/dao/UpdateDataTableDao.java

@@ -96,5 +96,11 @@ public interface UpdateDataTableDao {
 
     List<Map<String, Object>> selectAttendanceData(@Param("map") Map<String, Object> map);
 
-    //int selectAttendanceDataCount(@Param("map") Map<String, Object> map);
+    int selectAttendanceDataCount(@Param("map") Map<String, Object> map);
+
+    List<Map<String, Object>> selectClassAdjustmentList(@Param("map") Map<String, Object> map);
+
+    int selectClassAdjustmentListCount(@Param("map") Map<String, Object> map);
+
+
 }

+ 76 - 0
ibps-provider-root/modules/provider-business/src/main/resources/com/lc/ibps/klimsibps/mapping/UpdateDataTableMapper.xml

@@ -609,4 +609,80 @@
         limit ${map.startPage},${map.limit}
         ) t
     </select>
+    <select id="selectAttendanceDataCount" resultType="java.lang.Integer" parameterType="java.util.Map">
+        SELECT
+        COUNT( DISTINCT USER_ID_ )
+        FROM
+        v_attendance_statistics
+        <where>
+            di_dian_ = #{map.locationId}
+            <if test="@o.Ognl@isNotEmpty(map.buMen)">
+                AND bu_men_ like CONCAT('%', #{map.buMen}, '%')
+            </if>
+            <if test="@o.Ognl@isNotEmpty(map.startDate)">
+                AND ri_qi_ >= #{map.startDate}
+            </if>
+            <if test="@o.Ognl@isNotEmpty(map.endDate)">
+                AND ri_qi_ <![CDATA[ <= ]]> #{map.endDate}
+            </if>
+            <if test="@o.Ognl@isNotEmpty(map.yongHuId)">
+                AND FIND_IN_SET(yong_hu_id_, #{map.yongHuId})
+            </if>
+        </where>
+    </select>
+    <select id="selectClassAdjustmentList" resultType="java.util.Map" parameterType="java.util.Map">
+        SELECT
+        a.id_ AS id,
+        a.tenant_id_ AS tenantId,
+        a.ip_ AS ip,
+        a.create_by_ AS createBy,
+        a.create_time_ AS createTime,
+        a.update_by_ AS updateBy,
+        a.update_time_ AS updateTime,
+        a.di_dian_ AS diDian,
+        a.reason_ AS reason,
+        a.STATUS AS STATUS,
+        a.executor_ AS executor,
+        a.execute_date_ AS executeDate,
+        a.overview_ AS overview,
+        a.schedule_id_ AS scheduleId,
+        a.type_ AS type,
+        a.reject_reason_ AS rejectReason,
+        a.partys
+        FROM
+        (
+        SELECT
+        f.*,
+        GROUP_CONCAT( z.party_ ) AS partys
+        FROM
+        t_adjustment f
+        LEFT JOIN t_adjustment_detail z ON f.id_ = z.parent_id_
+        GROUP BY
+        f.id_
+        ) a
+        <where>
+            create_by_ = #{map.userId}
+        </where>
+        ORDER BY
+        a.create_time_ DESC
+        limit ${map.startPage},${map.limit}
+    </select>
+    <select id="selectClassAdjustmentListCount" resultType="java.lang.Integer" parameterType="java.util.Map">
+        SELECT
+        count(*)
+        FROM
+        (
+        SELECT
+        f.*,
+        GROUP_CONCAT( z.party_ ) AS partys
+        FROM
+        t_adjustment f
+        LEFT JOIN t_adjustment_detail z ON f.id_ = z.parent_id_
+        GROUP BY
+        f.id_
+        ) a
+        <where>
+            create_by_ = #{map.userId}
+        </where>
+    </select>
 </mapper>