فهرست منبع

Merge branch 'master' of http://47.100.37.243:10191/wutt/manHourHousekeeper

QuYueTing 3 هفته پیش
والد
کامیت
00c356d699

+ 36 - 17
fhKeeper/formulahousekeeper/collectdata/src/main/java/com/management/collectdata/controller/DataCollectController.java

@@ -68,9 +68,9 @@ public class DataCollectController {
 //    private ErpOrderInfoMapper erpOrderInfoMapper;
 
     @RequestMapping("/checkCisData")
-    public List<TisTimeVO> checkCisData(@RequestBody List<TisTimeVO> tisList) {
-        if(!CollectionUtils.isEmpty(tisList)){
-            for (TisTimeVO tisTimeVO : tisList) {
+    public List<TisTimeVO> checkCisData(@RequestBody List<TisTimeVO> toSendList) {
+        if(!CollectionUtils.isEmpty(toSendList)){
+            for (TisTimeVO tisTimeVO : toSendList) {
                 String sqlQuery = "select top 1 iRealCOID from ca_batchmap where cMOCode = ? and iMOSubSN = ? ";
                 try (Connection connection = sqlServerDataSource.getConnection()) {
                     PreparedStatement queryStmt = connection.prepareStatement(sqlQuery);
@@ -85,32 +85,51 @@ public class DataCollectController {
                 }
             }
         }
-        return tisList;
+        return toSendList;
     }
 
     @RequestMapping("/insertCisData")
     public String insertCisData(@RequestBody List<TisTimeVO> tisList) {
         if(!CollectionUtils.isEmpty(tisList)){
-            int count = 0;
+            int insertCount = 0;
+            int updateCount = 0;
             for (TisTimeVO tisTimeVO : tisList) {
+                String sqlQuery = "select count(*) from CA_DayTiS where cPPID = ? and dDate = ? ";
                 String sqlInsert = "insert into CA_DayTiS(cPPID,iRealWkt,dDate) values(?,?,?)";
+                String sqlUpdate = "update CA_DayTiS set iRealWkt = ? where cPPID = ? and dDate = ? ";
                 try (Connection connection = sqlServerDataSource.getConnection()) {
-                    PreparedStatement insertStmt = connection.prepareStatement(sqlInsert);
-                    insertStmt.setString(1,tisTimeVO.getCoId());
-                    insertStmt.setBigDecimal(2,tisTimeVO.getWorkTime());
-                    insertStmt.setString(3,tisTimeVO.getDateStr());
-                    int i = insertStmt.executeUpdate();
-                    if(i>0){
-                        count++;
-//                        System.out.println("执行成功");
+                    PreparedStatement queryStmt = connection.prepareStatement(sqlQuery);
+                    queryStmt.setString(1, tisTimeVO.getCoId());
+                    queryStmt.setString(2, tisTimeVO.getDateStr());
+                    ResultSet queryRs = queryStmt.executeQuery();
+                    if(queryRs.next() && queryRs.getInt(1) > 0){
+                        //更新
+                        PreparedStatement updateStmt = connection.prepareStatement(sqlUpdate);
+                        queryStmt.setString(1, tisTimeVO.getCoId());
+                        queryStmt.setString(2, tisTimeVO.getDateStr());
+                        int i = updateStmt.executeUpdate();
+                        if(i>0){
+                            updateCount++;
+                        }else{
+                            System.out.println(tisTimeVO.getCoId()+"执行失败");
+                        }
                     }else{
-                        System.out.println(tisTimeVO.getCoId()+"执行失败");
+                        PreparedStatement insertStmt = connection.prepareStatement(sqlInsert);
+                        insertStmt.setString(1,tisTimeVO.getCoId());
+                        insertStmt.setBigDecimal(2,tisTimeVO.getWorkTime());
+                        insertStmt.setString(3,tisTimeVO.getDateStr());
+                        int i = insertStmt.executeUpdate();
+                        if(i>0){
+                            insertCount++;
+                        }else{
+                            System.out.println(tisTimeVO.getCoId()+"执行失败");
+                        }
                     }
                 } catch (SQLException e) {
                     System.err.println("数据库操作错误: " + e.getMessage());
                 }
             }
-            System.out.println("本批次总数量:"+tisList.size()+",成功插入条数:"+count);
+            System.out.println("本批次总数量:"+tisList.size()+",成功插入条数:"+insertCount+",成功更新条数:"+updateCount);
         }
 //        List<TisTimeVO> tisTimeVOS = JSONArray.parseArray(jsonarray, TisTimeVO.class);
 //        if(!CollectionUtils.isEmpty(tisList)){
@@ -265,7 +284,7 @@ public class DataCollectController {
 //                " from mom_orderdetail " +
 //                " where status in (3,4) "
 //                +" ORDER BY MoDId OFFSET ? ROWS FETCH NEXT ? ROWS ONLY ";
-        String sqlQuery = "select mo.cbSysBarCode,SUBSTRING(mo.cbSysBarCode, 8, 15) as orderId,mo.Define24,mo.Define25 " +
+        String sqlQuery = "select mo.cbSysBarCode,SUBSTRING(mo.cbSysBarCode, 8, 15) as orderId,mo.Define24  as projectId,mo.Define25  as projectName,mo.relsdate" +
                 "     ,RIGHT(mo.cbSysBarCode,1) as line,mo.Status,cb.cDeptID,cb.cDepName,mo.MoDId " +
                 " from mom_orderdetail mo " +
                 " left join ca_batchmap cb on SUBSTRING(mo.cbSysBarCode, 8, 15) = cb.cMOCode and RIGHT(mo.cbSysBarCode,1) = cb.iMOSubSN " +
@@ -287,7 +306,7 @@ public class DataCollectController {
                     erpOrderInfo.setProjectId(resultSet.getString("projectId"));
                     erpOrderInfo.setProjectName(resultSet.getString("projectName"));
                     erpOrderInfo.setLine(resultSet.getInt("line"));
-                    erpOrderInfo.setStatus(resultSet.getInt("status"));
+                    erpOrderInfo.setStatus(resultSet.getInt("Status"));
                     erpOrderInfo.setRelsDate(resultSet.getDate("relsdate"));
                     erpOrderInfo.setDeptId(resultSet.getString("cDeptID"));
                     erpOrderInfo.setDeptName(resultSet.getString("cDepName"));

+ 6 - 0
fhKeeper/formulahousekeeper/management-platform/pom.xml

@@ -15,6 +15,12 @@
 
     <dependencies>
 
+        <dependency>
+            <groupId>com.github.wechatpay-apiv3</groupId>
+            <artifactId>wechatpay-java</artifactId>
+            <version>0.2.17</version>
+        </dependency>
+
         <dependency>
             <groupId>com.microsoft.sqlserver</groupId>
             <artifactId>mssql-jdbc</artifactId>

+ 4 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/controller/ProjectController.java

@@ -270,8 +270,8 @@ public class ProjectController {
      * 获取查询者所在公司每个项目的工时成本
      */
     @RequestMapping("/getTimeCost")
-    public HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId,Integer type) {
-        return projectService.getTimeCost(startDate, endDate, userIds,projectId,type, request);
+    public HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId,Integer type, @RequestParam(required = false) Integer status) {
+        return projectService.getTimeCost(startDate, endDate, userIds,projectId,type,status, request);
     }
 
     /**
@@ -294,8 +294,8 @@ public class ProjectController {
      * 导出查询者所在公司每个项目的工时成本
      */
     @RequestMapping("/exportTimeCost")
-    public HttpRespMsg exportTimeCost(@RequestParam(required = false, defaultValue = "0") Integer withMainProject, String exportContent,String startDate, String endDate, Integer projectId, String userIds, Boolean projectSum,Integer type,Integer deptId,@RequestParam(defaultValue = "1") Integer stateKey, @RequestParam(required = false, defaultValue = "0") Integer withPercent,Integer projectCategoryId) {
-        return projectService.exportTimeCost(withMainProject, exportContent,startDate, endDate, projectId, userIds, projectSum,type,deptId,stateKey, withPercent,projectCategoryId, request);
+    public HttpRespMsg exportTimeCost(@RequestParam(required = false, defaultValue = "0") Integer withMainProject, @RequestParam(required = false) Integer status,String exportContent,String startDate, String endDate, Integer projectId, String userIds, Boolean projectSum,Integer type,Integer deptId,@RequestParam(defaultValue = "1") Integer stateKey, @RequestParam(required = false, defaultValue = "0") Integer withPercent,Integer projectCategoryId) {
+        return projectService.exportTimeCost(withMainProject, exportContent,startDate, endDate, projectId, userIds, projectSum,type,deptId,stateKey, withPercent,projectCategoryId,status, request);
     }
 
     @RequestMapping("/exportTimeByProjectAndEmployee")

+ 2 - 1
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/mapper/ProjectMapper.java

@@ -29,7 +29,8 @@ public interface ProjectMapper extends BaseMapper<Project> {
     List<Map<String, Object>> getTimeCost(@Param("companyId") Integer companyId, @Param("startDate") String startDate, @Param("endDate") String endDate,
                                           @Param("projectId") Integer projectId, @Param("userIdList") List<String> userIdList,
                                           @Param("deptIds")List<Integer> deptIds,@Param("filterDeptIds")List<Integer> filterDeptIds, @Param("deptRelatedProjectIds") List<Integer> deptRelatedProjectIds,
-                                          @Param("projectIds") List<Integer> projectIds, @Param("inchargeUserIds") List<String> inchargeUserIds,@Param("categoryId") Integer categoryId);
+                                          @Param("projectIds") List<Integer> projectIds, @Param("inchargeUserIds") List<String> inchargeUserIds
+            ,@Param("categoryId") Integer categoryId,@Param("status") Integer status);
 
     List<Map<String, Object>> getCustomDataSum(@Param("companyId") Integer companyId, @Param("startDate") String startDate, @Param("endDate") String endDate,
                                           @Param("projectId") Integer projectId, @Param("userId") String userId);

+ 3 - 2
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/ProjectService.java

@@ -66,7 +66,7 @@ public interface ProjectService extends IService<Project> {
 
     HttpRespMsg deleteProject(Integer id, Integer force);
 
-    HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId, Integer type,HttpServletRequest request);
+    HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId, Integer type,Integer status,HttpServletRequest request);
 
     HttpRespMsg getProjectCost(String startDate, String endDate, Integer projectId,Integer stateKey, HttpServletRequest request);
 
@@ -74,7 +74,7 @@ public interface ProjectService extends IService<Project> {
 
     HttpRespMsg getAllMembCost(String startDate, String endDate, Integer projectId, HttpServletRequest request);
 
-    HttpRespMsg exportTimeCost(Integer withMainProject, String exportContent,String startDate, String endDate, Integer projectId,String userIds, Boolean projectSum,Integer type,Integer deptId,Integer stateKey, Integer withPercent,Integer projectCategoryId, HttpServletRequest request);
+    HttpRespMsg exportTimeCost(Integer withMainProject, String exportContent,String startDate, String endDate, Integer projectId,String userIds, Boolean projectSum,Integer type,Integer deptId,Integer stateKey, Integer withPercent,Integer projectCategoryId,Integer status, HttpServletRequest request);
 
     HttpRespMsg updateProgress(Integer id, Integer progress, HttpServletRequest request);
 
@@ -330,4 +330,5 @@ public interface ProjectService extends IService<Project> {
     HttpRespMsg getProjectTaskPlanFTEData(Integer pageIndex, Integer pageSize, String monthStart, String monthEnd, String area, String userId, String sortProp, Integer sortOrder, Integer departmentId, HttpServletRequest request);
 
     HttpRespMsg exportTaskPlanFTEData(String monthStart, String monthEnd, String area, String userId, Integer departmentId, HttpServletRequest request);
+
 }

+ 8 - 6
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/FinanceMonthlyWorktimeServiceImpl.java

@@ -88,9 +88,10 @@ public class FinanceMonthlyWorktimeServiceImpl extends ServiceImpl<FinanceMonthl
         if(!CollectionUtils.isEmpty(timeVOList)){
             HttpHeaders headers = new HttpHeaders();
             headers.setContentType(MediaType.APPLICATION_JSON);
-            Map<String, Object> requestBody = new HashMap<>();
-            requestBody.put("toSendList", timeVOList);
-            HttpEntity<Object> requestEntity = new HttpEntity<>(requestBody, headers);
+//            Map<String, Object> requestBody = new HashMap<>();
+//            requestBody.put("tisList", timeVOList);
+//            HttpEntity<Object> requestEntity = new HttpEntity<>(requestBody, headers);
+            HttpEntity<List<TisTimeVO>> requestEntity = new HttpEntity<>(timeVOList, headers);
             ResponseEntity<List<TisTimeVO>> checkResponse = restTemplate.exchange(checkUrl, HttpMethod.POST, requestEntity
                     ,new  ParameterizedTypeReference<List<TisTimeVO>>(){});
             if(checkResponse.getStatusCode() == HttpStatus.OK){
@@ -103,9 +104,10 @@ public class FinanceMonthlyWorktimeServiceImpl extends ServiceImpl<FinanceMonthl
                 timeVOList.forEach(t->t.setDateStr(timesheetDate));
                 HttpHeaders insertHeaders = new HttpHeaders();
                 insertHeaders.setContentType(MediaType.APPLICATION_JSON);
-                Map<String, Object> insertBody = new HashMap<>();
-                insertBody.put("tisList", resList);
-                HttpEntity<Object> insertEntity = new HttpEntity<>(insertBody, insertHeaders);
+//                Map<String, Object> insertBody = new HashMap<>();
+//                insertBody.put("tisList", resList);
+//                HttpEntity<Object> insertEntity = new HttpEntity<>(insertBody, insertHeaders);
+                HttpEntity<List<TisTimeVO>> insertEntity = new HttpEntity<>(resList, headers);
                 ResponseEntity<String> tisResponse = restTemplate.exchange(insertUrl, HttpMethod.POST, insertEntity, String.class);
                 if (tisResponse.getStatusCode() == HttpStatus.OK) {
                     System.out.println("插入成功");

+ 5 - 4
fhKeeper/formulahousekeeper/management-platform/src/main/java/com/management/platform/service/impl/ProjectServiceImpl.java

@@ -2581,7 +2581,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
 
     //获取查询者所在公司每个项目的工时成本
     @Override
-    public HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId, Integer type,HttpServletRequest request) {
+    public HttpRespMsg getTimeCost(String startDate, String endDate, String userIds,Integer projectId, Integer type,Integer status,HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
             //根据系统配置的员工成本计算方式,按固定时薪还是固定月薪,分情况计算。
@@ -2642,7 +2642,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 String[] split = userIds.split(",");
                 userIdList = Arrays.asList(split);
             }
-            List<Map<String, Object>> list = projectMapper.getTimeCost(companyId, startDate, endDate, projectId, userIdList,deptIds,null, deptRelatedProjectIds, projectIds, inchargeUserIds,null);
+            List<Map<String, Object>> list = projectMapper.getTimeCost(companyId, startDate, endDate, projectId, userIdList,deptIds,null, deptRelatedProjectIds, projectIds, inchargeUserIds,null,status);
             BigDecimal totalMoneyCost = BigDecimal.valueOf(0);
             for (Map<String, Object> map : list) {
                 if (!map.containsKey("cost")) {
@@ -2684,6 +2684,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         return httpRespMsg;
     }
 
+
     private HashMap fillMainProjectRowData(Integer projectMainId, Integer companyId, String startDate, String endDate, Integer stateKey, List<String> userIdList, List<Map<String, Object>> list,
                                            List<UserCustom> userCustoms, List<SysRichFunction> functionTimeList, List<SysRichFunction> functionCostList,
                                            String exportContent, List<User> userList, List<Integer> deptIds, List<Integer> deptRelatedProjectIds,
@@ -2833,7 +2834,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
     //导出查询者所在公司每个项目的工时成本,包括项目人员明细统计
     @Override
     public HttpRespMsg exportTimeCost(Integer withMainProject, String exportContent,String startDate, String endDate,Integer projectId, String userIds,
-                                      Boolean projectSum,Integer type,Integer deptId, Integer stateKey, Integer withPercent,Integer projectCategoryId, HttpServletRequest request) {
+                                      Boolean projectSum,Integer type,Integer deptId, Integer stateKey, Integer withPercent,Integer projectCategoryId,Integer status, HttpServletRequest request) {
         HttpRespMsg httpRespMsg = new HttpRespMsg();
         try {
             User targetUser = userMapper.selectById(request.getHeader("Token"));
@@ -2914,7 +2915,7 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
                 String[] split = userIds.split(",");
                 userIdList = Arrays.asList(split);
             }
-            List<Map<String, Object>> list = projectMapper.getTimeCost(companyId, startDate, endDate, projectId, userIdList,deptIds,filterDeptIds,deptRelatedProjectIds, manProjectIds, inchargeUserIds,projectCategoryId);
+            List<Map<String, Object>> list = projectMapper.getTimeCost(companyId, startDate, endDate, projectId, userIdList,deptIds,filterDeptIds,deptRelatedProjectIds, manProjectIds, inchargeUserIds,projectCategoryId,status);
             BigDecimal totalMoneyCost = BigDecimal.valueOf(0);
             List<List<String>> allList=null ;
             List<String> sumRow = null;

+ 4 - 0
fhKeeper/formulahousekeeper/management-platform/src/main/resources/mapper/ProjectMapper.xml

@@ -161,6 +161,9 @@
         <if test="projectId != null">
             AND a.id = #{projectId}
         </if>
+        <if test="status != null">
+            AND a.status = #{status}
+        </if>
         <if test="categoryId != null">
             AND a.category = #{categoryId}
         </if>
@@ -218,6 +221,7 @@
         ORDER BY a.id ASC
     </select>
 
+
     <!--获取查询者所在公司每个子项目的工时成本-->
     <select id="getSubProjectTimeCost" resultType="java.util.Map">
         select b.project_code as projectCode,b.project_name as projectName,a.code as subProjectCode,a.name as subProjectName,SUM(c.cost) as cost,SUM(c.working_time) as workingTime