Forráskód Böngészése

产线看板 品质

chenc 4 éve
szülő
commit
ffc40009ca
16 módosított fájl, 205 hozzáadás és 45 törlés
  1. 3 1
      src/main/java/org/jeecg/modules/appInterface/mapper/FbsWorkingStatisticsMapper.java
  2. 23 10
      src/main/java/org/jeecg/modules/appInterface/mapper/xml/FbsWorkingStatisticsMapper.xml
  3. 8 8
      src/main/java/org/jeecg/modules/appInterface/service/impl/FbsWorkingStatisticsServiceImpl.java
  4. 2 1
      src/main/java/org/jeecg/modules/fbsAbnormalWorkingHours/controller/FbsAbnormalWorkingHoursController.java
  5. 22 2
      src/main/java/org/jeecg/modules/fbsDispatchLists/controller/FbsDispatchListsController.java
  6. 2 1
      src/main/java/org/jeecg/modules/fbsDispatchLists/service/impl/FbsDispatchListsServiceImpl.java
  7. 3 2
      src/main/java/org/jeecg/modules/fbsMomOrder/mapper/xml/FbsMomOrderdetailMapper.xml
  8. 2 0
      src/main/java/org/jeecg/modules/fbsPuArrivalvouch/entity/FbsArrivalVouchs.java
  9. 1 1
      src/main/java/org/jeecg/modules/fbsPuArrivalvouch/mapper/xml/FbsArrivalVouchsMapper.xml
  10. 5 5
      src/main/java/org/jeecg/modules/fbsPuArrivalvouch/mapper/xml/FbsPuArrivalvouchMapper.xml
  11. 1 1
      src/main/java/org/jeecg/modules/fbsPuArrivalvouch/service/impl/FbsPuArrivalvouchServiceImpl.java
  12. 28 3
      src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/controller/FbsWorkshopDispatchListController.java
  13. 9 2
      src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/mapper/FbsWorkshopDispatchListMapper.java
  14. 79 5
      src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/mapper/xml/FbsWorkshopDispatchListMapper.xml
  15. 10 1
      src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/service/IFbsWorkshopDispatchListService.java
  16. 7 2
      src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/service/impl/FbsWorkshopDispatchListServiceImpl.java

+ 3 - 1
src/main/java/org/jeecg/modules/appInterface/mapper/FbsWorkingStatisticsMapper.java

@@ -1,6 +1,7 @@
 package org.jeecg.modules.appInterface.mapper;
 
 import java.util.List;
+import java.util.Map;
 
 import org.apache.ibatis.annotations.Param;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -20,5 +21,6 @@ public interface FbsWorkingStatisticsMapper extends BaseMapper<FbsWorkingStatist
     * @Param []
     * @return java.util.List<org.jeecg.modules.appInterface.entity.FbsWorkingStatistics>
     */
-   List<FbsWorkingStatistics> getByMaterial(@Param("dateString")String dateString);
+//   List<FbsWorkingStatistics> getByMaterial(@Param("dateString")String dateString);
+    Map<String,Object> getByMaterial(@Param("dateString")String dateString);
 }

+ 23 - 10
src/main/java/org/jeecg/modules/appInterface/mapper/xml/FbsWorkingStatisticsMapper.xml

@@ -1,19 +1,32 @@
 <?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="org.jeecg.modules.appInterface.mapper.FbsWorkingStatisticsMapper">
-    <select id="getByMaterial" resultType="org.jeecg.modules.appInterface.entity.FbsWorkingStatistics">
+    <!--  <select id="getByMaterial" resultType="org.jeecg.modules.appInterface.entity.FbsWorkingStatistics">
+          SELECT
+              sum( fws.working_hours ) as workingHours,
+              fwdl.product
+          FROM
+              fbs_working_statistics fws
+              LEFT JOIN fbs_workshop_dispatch_list fwdl ON fws.pk_workshop_dispatch_list = fwdl.id
+          WHERE
+              fws.del_flag = '0'
+              AND fwdl.del_flag = '0'
+              AND fws.final_state IN ( '2', '3' )
+              AND date_format( fws.final_time, #{dateString} ) = DATE_FORMAT( now( ), #{dateString} )
+          GROUP BY
+              fwdl.product
+      </select>-->
+
+    <select id="getByMaterial" resultType="java.util.HashMap">
         SELECT
-            sum( fws.working_hours ) as workingHours,
-            fwdl.product
+            sum( fwdl.man_hours_completed ) AS '生产',
+            ( SELECT sum( train ) + sum( meeting ) + sum( five_s ) FROM fbs_abnormal_working_hours WHERE del_flag = '0' AND date_format( date, #{dateString} ) = DATE_FORMAT( now( ), #{dateString} ) ) AS '其他(5S、会议、培训)'
         FROM
-            fbs_working_statistics fws
-            LEFT JOIN fbs_workshop_dispatch_list fwdl ON fws.pk_workshop_dispatch_list = fwdl.id
+            fbs_workshop_dispatch_list fwdl
+            LEFT JOIN fbs_working_statistics fws ON fwdl.id = fws.pk_workshop_dispatch_list
         WHERE
-            fws.del_flag = '0'
-            AND fwdl.del_flag = '0'
-            AND fws.final_state IN ( '2', '3' )
+            fwdl.del_flag = '0'
+            AND fws.final_state = '3'
             AND date_format( fws.final_time, #{dateString} ) = DATE_FORMAT( now( ), #{dateString} )
-        GROUP BY
-            fwdl.product
     </select>
 </mapper>

+ 8 - 8
src/main/java/org/jeecg/modules/appInterface/service/impl/FbsWorkingStatisticsServiceImpl.java

@@ -28,13 +28,13 @@ public class FbsWorkingStatisticsServiceImpl extends ServiceImpl<FbsWorkingStati
 
     @Override
     public Map<String,Object> getByMaterial(String dateString) {
-        List<FbsWorkingStatistics> fbsWorkingStatisticsList=fbsWorkingStatisticsMapper.getByMaterial(dateString);
-        Map<String,Object> map=new HashMap<>();
-        if(fbsWorkingStatisticsList!=null){
-            for(FbsWorkingStatistics fbsWorkingStatistics:fbsWorkingStatisticsList){
-                map.put(fbsWorkingStatistics.getProduct(),fbsWorkingStatistics.getWorkingHours());
-            }
-        }
-        return map;
+//        List<FbsWorkingStatistics> fbsWorkingStatisticsList=fbsWorkingStatisticsMapper.getByMaterial(dateString);
+//        Map<String,Object> map=new HashMap<>();
+//        if(fbsWorkingStatisticsList!=null){
+//            for(FbsWorkingStatistics fbsWorkingStatistics:fbsWorkingStatisticsList){
+//                map.put(fbsWorkingStatistics.getProduct(),fbsWorkingStatistics.getWorkingHours());
+//            }
+//        }
+        return fbsWorkingStatisticsMapper.getByMaterial(dateString);
     }
 }

+ 2 - 1
src/main/java/org/jeecg/modules/fbsAbnormalWorkingHours/controller/FbsAbnormalWorkingHoursController.java

@@ -418,10 +418,11 @@ public class FbsAbnormalWorkingHoursController {
 		 	for(FbsAbnormalWorkingHours fbsAbnormalWorkingHours:fbsAbnormalWorkingHoursList){
 				Map<String,Object> map=new HashMap<>();
 				map.put("label",fbsAbnormalWorkingHours.getProduct());
-				map.put("sum1",fbsAbnormalWorkingHours.getRejectsNumberTotal());
+//				map.put("sum1",fbsAbnormalWorkingHours.getRejectsNumberTotal());
 		 		for(FbsMomOrderdetail fbsMomOrderdetail:fbsMomOrderdetailList){
 		 			//找到对应产品的数量
 		 			if(fbsAbnormalWorkingHours.getProduct().equals(fbsMomOrderdetail.getCinvname())){
+						map.put("sum1",Double.valueOf(String.valueOf(fbsMomOrderdetail.getQualifiedinqty())).intValue()-Integer.parseInt(fbsAbnormalWorkingHours.getRejectsNumberTotal()));
 						map.put("sum2",fbsMomOrderdetail.getQualifiedinqty());
 					}
 				}

+ 22 - 2
src/main/java/org/jeecg/modules/fbsDispatchLists/controller/FbsDispatchListsController.java

@@ -245,8 +245,7 @@ public class FbsDispatchListsController {
   public Result<Map<String,Object>> getProjectDelivery(){
 	  Result<Map<String,Object>>  result=new Result<>();
 	  try {
-//		  Map<String,Object> map=fbsDispatchListsService.getProjectDelivery();
-		  Map<String,Object> map=fbsDispatchListsService.getMonthSendByProject();
+		  Map<String,Object> map=fbsDispatchListsService.getProjectDelivery();
 		  result.setResult(map);
 		  result.success("操作成功");
 	  } catch (Exception e) {
@@ -256,4 +255,25 @@ public class FbsDispatchListsController {
 	  return result;
   }
 
+  /**
+  * @Author chenchuang
+  * @Description //TODO 制造看板:月度项目发货统计
+  * @Date 2020/10/31 10:58
+  * @Param []
+  * @return org.jeecg.common.api.vo.Result<java.util.Map<java.lang.String,java.lang.Object>>
+  */
+	 @GetMapping(value = "/getMonthSendByProject")
+	 public Result<Map<String,Object>> getMonthSendByProject(){
+		 Result<Map<String,Object>>  result=new Result<>();
+		 try {
+			 Map<String,Object> map=fbsDispatchListsService.getMonthSendByProject();
+			 result.setResult(map);
+			 result.success("操作成功");
+		 } catch (Exception e) {
+			 e.printStackTrace();
+			 result.error500("操作失败:"+e.getMessage());
+		 }
+		 return result;
+	 }
+
 }

+ 2 - 1
src/main/java/org/jeecg/modules/fbsDispatchLists/service/impl/FbsDispatchListsServiceImpl.java

@@ -11,6 +11,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
 import javax.annotation.Resource;
 import java.util.HashMap;
+import java.util.LinkedHashMap;
 import java.util.List;
 import java.util.Map;
 
@@ -43,7 +44,7 @@ public class FbsDispatchListsServiceImpl extends ServiceImpl<FbsDispatchListsMap
     public Map<String, Object> getMonthSendByProject() {
 
         List<FbsDispatchLists> fbsDispatchListsList=fbsDispatchListsMapper.getMonthSendByProject();
-        Map<String,Object> map=new HashMap<>();
+        Map<String,Object> map=new LinkedHashMap<>();
         String[] moths=new String[]{"01","02","03","04","05","06","07","08","09","10","11","12"};
         //根据月份获取每个月数据
         if(fbsDispatchListsList!=null){

+ 3 - 2
src/main/java/org/jeecg/modules/fbsMomOrder/mapper/xml/FbsMomOrderdetailMapper.xml

@@ -45,10 +45,11 @@
             LEFT JOIN Inventory i ON mo.InvCode= i.cInvCode
             left join mom_morder mm on mo.MoDId=mm.MoDId
         WHERE
-            datediff(
+            <!--datediff(
             MONTH,
             mm.StartDate,
-            getdate()) =0
+            getdate()) =0-->
+            substring( m.MoCode, 3, 4 ) = substring( CONVERT ( VARCHAR ( 100 ), GETDATE ( ), 112 ), 3, 4 )
     </select>
 
     <select id="getDayList" resultType="org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail">

+ 2 - 0
src/main/java/org/jeecg/modules/fbsPuArrivalvouch/entity/FbsArrivalVouchs.java

@@ -490,6 +490,8 @@ public class FbsArrivalVouchs implements Serializable {
 
 	@TableField(exist = false)
 	private String vendorName;//供应商
+	@TableField(exist = false)
+	private String cvenCode;//供应商编码
 
 	@TableField(exist = false)
 	private String materialCode;//物料号

+ 1 - 1
src/main/java/org/jeecg/modules/fbsPuArrivalvouch/mapper/xml/FbsArrivalVouchsMapper.xml

@@ -14,7 +14,7 @@
         order by b.dDate-->
         SELECT  CONVERT
             ( VARCHAR ( 100 ), a.dArriveDate, 23 ) arriveDate,
-            c.cVenName vendorName,
+            c.cVenCode cVenCode,
             a.cInvCode materialCode,
             d.cInvName materialName,
             a.iQuantity arriveSum,

+ 5 - 5
src/main/java/org/jeecg/modules/fbsPuArrivalvouch/mapper/xml/FbsPuArrivalvouchMapper.xml

@@ -35,7 +35,7 @@
 
         <!-- SELECT b.cVenCode '供应商编码',c.cVenName '供应商名称',a.cInvCode '物料编码',d.cInvName '物料名称',d.cInvStd '规格',
                  fValidQuantity - fRealQuantity '已到货未入库数据',b.dportdate '到货日期'-->
-        SELECT b.cVenCode '供应商编码',c.cVenName vendorName,a.cInvCode materialCode,d.cInvName materialName,d.cInvStd specs,
+        SELECT b.cVenCode cVenCode,c.cVenName vendorName,a.cInvCode materialCode,d.cInvName materialName,d.cInvStd specs,
         a.fValidQuantity - a.fValidInQuan arriveSum,CONVERT(varchar(30),b.dDate ,23) arriveDate
         FROM
         PU_ArrivalVouchs a
@@ -60,7 +60,7 @@
     <select id="getPassRateByVendor" resultType="org.jeecg.modules.fbsPuArrivalvouch.entity.FbsPuArrivalvouch">
         SELECT
             top 10
-            v.cVenName,round( CAST (( SUM ( pa.fValidQuantity ) * 1.0 / SUM ( pa.iQuantity )) AS FLOAT ), 0 ) * 100 AS passRate
+            v.cVenCode,round( CAST (( SUM ( pa.fValidQuantity ) * 1.0 / SUM ( pa.iQuantity )) AS FLOAT ), 0 ) * 100 AS passRate
         FROM
             PU_ArrivalVouchs pa
             LEFT JOIN PU_ArrivalVouch p ON pa.ID= p.ID
@@ -71,7 +71,7 @@
             p.dDate,
             getdate()) = 0
         GROUP BY
-            p.cVenCode,v.cVenName
+            p.cVenCode,v.cVenCode
     </select>
 
     <select id="getCheckRateByBatchno" resultType="org.jeecg.modules.fbsPuArrivalvouch.entity.FbsPuArrivalvouch">
@@ -152,11 +152,11 @@
         LEFT JOIN PU_ArrivalVouch p ON pa.ID= p.ID
         WHERE
         (pa.iQuantity-pa.fRealQuantity)>0
-	    and
+	    <!--and
         datediff(
         MONTH,
         p.dDate,
-        getdate()) =0
+        getdate()) =0-->
 
     </select>
 

+ 1 - 1
src/main/java/org/jeecg/modules/fbsPuArrivalvouch/service/impl/FbsPuArrivalvouchServiceImpl.java

@@ -50,7 +50,7 @@ public class FbsPuArrivalvouchServiceImpl extends ServiceImpl<FbsPuArrivalvouchM
         Map<String,Object> map=new HashMap<>();
         if(fbsPuArrivalvouchList!=null){
             for(FbsPuArrivalvouch fbsPuArrivalvouch:fbsPuArrivalvouchList){
-                map.put(fbsPuArrivalvouch.getCVenName(),fbsPuArrivalvouch.getPassRate());
+                map.put(fbsPuArrivalvouch.getCvencode(),fbsPuArrivalvouch.getPassRate());
             }
         }
         return map;

+ 28 - 3
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/controller/FbsWorkshopDispatchListController.java

@@ -478,16 +478,20 @@ public class FbsWorkshopDispatchListController {
 
 	 /**
 	 * @Author chenchuang
-	 * @Description //TODO  制造看板生产效率
+	 * @Description //TODO  制造看板/产线看板:月/日生产效率
 	 * @Date 2020/10/22 14:09
 	 * @Param []
 	 * @return org.jeecg.common.api.vo.Result<java.lang.String>
 	 */
 	 @GetMapping(value = "/getProductionEfficiency")
-	 public Result<String> getProductionEfficiency(){
+	 public Result<String> getProductionEfficiency(String type){
 		 Result<String> result=new Result<>();
 		 try {
-			 String str=fbsWorkshopDispatchListService.getProductionEfficiency();
+		 	 String dateString="%Y-%m";
+		 	 if(type!=null&&type.equals("1")){
+		 	 	dateString="%Y-%m-%d";
+			 }
+			 String str=fbsWorkshopDispatchListService.getProductionEfficiency(dateString);
 			 if(StringUtils.isNotBlank(str)){
 			 	result.setResult(str);
 			 }else{
@@ -618,4 +622,25 @@ public class FbsWorkshopDispatchListController {
 		 return result;
 	 }
 
+	 /**
+	 * @Author chenchuang
+	 * @Description //TODO 制造看板: 项目进度完工百分比
+	 * @Date 2020/10/31 16:13
+	 * @Param []
+	 * @return org.jeecg.common.api.vo.Result<java.util.List<org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList>>
+	 */
+	 @GetMapping(value = "/getProjectScheduleCompletion")
+	 public Result<List<FbsWorkshopDispatchList>> getProjectScheduleCompletion(){
+		 Result<List<FbsWorkshopDispatchList>> result=new Result<>();
+		 try {
+			 List<FbsWorkshopDispatchList> fbsWorkshopDispatchListList=fbsWorkshopDispatchListService.getProjectScheduleCompletion();
+			 result.setResult(fbsWorkshopDispatchListList);
+			 result.success("操作成功");
+		 } catch (Exception e) {
+			 e.printStackTrace();
+			 result.error500("操作失败:"+e.getMessage());
+		 }
+		 return result;
+	 }
+
 }

+ 9 - 2
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/mapper/FbsWorkshopDispatchListMapper.java

@@ -93,7 +93,7 @@ public interface FbsWorkshopDispatchListMapper extends BaseMapper<FbsWorkshopDis
     * @Param []
     * @return java.lang.String
     */
-    String getProductionEfficiency();
+    String getProductionEfficiency(@Param("dateString") String dateString);
 
     /**
     * @Author chenchuang
@@ -123,5 +123,12 @@ public interface FbsWorkshopDispatchListMapper extends BaseMapper<FbsWorkshopDis
      */
     List<FbsWorkshopDispatchList> getProductList();
 
-
+    /**
+    * @Author chenchuang
+    * @Description //TODO 制造看板: 项目进度完工百分比
+    * @Date 2020/10/31 16:01
+    * @Param []
+    * @return java.util.List<org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList>
+    */
+    List<FbsWorkshopDispatchList> getProjectScheduleCompletion();
 }

+ 79 - 5
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/mapper/xml/FbsWorkshopDispatchListMapper.xml

@@ -107,7 +107,7 @@
     </select>
 
     <select id="getAttendance" resultType="java.util.HashMap">
-        SELECT
+        <!--SELECT
             (
         SELECT
             count( personnel_code )
@@ -121,14 +121,46 @@
             date_format( start_date, '%Y-%m' )
             ) as sum1,
             count( personnel_id_u8 ) as sum2,
-            date_format( fwdl.planned_start_time, '%Y-%m' ) as label
+            date_format( fwdl.planned_start_time, '%m' ) as label
         FROM
             fbs_workshop_dispatch_list fwdl
         WHERE
             del_flag = '0'
             AND date_format( planned_start_time, '%Y' ) = date_format( now( ), '%Y' )
         GROUP BY
-            date_format( planned_start_time, '%Y-%m' )
+            date_format( planned_start_time, '%Y-%m' )-->
+        SELECT
+        (
+        SELECT
+        count( * )
+        FROM
+        (
+        SELECT
+        count( personnel_code ),
+        personnel_code,
+        start_date
+        FROM
+        fbs_working_statistics
+        WHERE
+        del_flag = '0'
+        AND date_format( start_date, '%Y' ) = date_format( now( ), '%Y' )
+        GROUP BY
+        personnel_code
+        ) fws
+        WHERE
+        date_format( fwdl.planned_start_time, '%Y-%m' ) = date_format( start_date, '%Y-%m' )
+        GROUP BY
+        date_format( start_date, '%Y-%m' )
+        ) AS sum1,
+        count( personnel_id_u8 ) AS sum2,
+        date_format( fwdl.planned_start_time, '%m' ) AS label
+        FROM
+        fbs_workshop_dispatch_list fwdl
+        WHERE
+        del_flag = '0'
+        AND date_format( planned_start_time, '%Y' ) = date_format( now( ), '%Y' )
+        GROUP BY
+        date_format( planned_start_time, '%Y-%m' )
     </select>
 
     <select id="getWorkingHoursContrast" resultType="org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList">
@@ -157,7 +189,8 @@
             LEFT JOIN ( SELECT pk_workshop_dispatch_list FROM fbs_working_statistics WHERE del_flag = '0' GROUP BY pk_workshop_dispatch_list ) fws ON fwdl.id = fws.pk_workshop_dispatch_list
         WHERE
             fwdl.del_flag = '0'
-
+            and DATE_FORMAT(now( ),#{dateString}) <![CDATA[ >= ]]> DATE_FORMAT(fwdl.planned_start_time,#{dateString})
+            and DATE_FORMAT(now( ),#{dateString}) <![CDATA[ <= ]]> DATE_FORMAT(fwdl.planned_end_time,#{dateString})
     </select>
 
     <select id="getAchievementRate" resultType="java.util.HashMap">
@@ -173,7 +206,6 @@
             fwd.del_flag = '0'
             and DATE_FORMAT(now( ),'%Y-%m-%d') <![CDATA[ >= ]]> DATE_FORMAT(fwd.planned_start_time,'%Y-%m-%d')
             and DATE_FORMAT(now( ),'%Y-%m-%d') <![CDATA[ <= ]]> DATE_FORMAT(fwd.planned_end_time,'%Y-%m-%d')
-        <!--   需要加入单日时间判断 派工单根据计划时间 现场单根据完工时间  -->
     </select>
 
     <select id="getAttendanceOfTheDay" resultType="java.util.HashMap">
@@ -211,5 +243,47 @@
             fwdl.date DESC
             LIMIT 6
     </select>
+
+    <select id="getProjectScheduleCompletion" resultType="org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList">
+       <!-- SELECT
+        fwdl.project_name,
+        fwdl.standard_working_hours,
+        fws.working_hours as manHoursCompleted
+        FROM
+        fbs_workshop_dispatch_list fwdl
+        LEFT JOIN ( SELECT sum( working_hours ) working_hours, pk_workshop_dispatch_list FROM fbs_working_statistics WHERE del_flag = '0' AND final_state <> '3' GROUP BY pk_workshop_dispatch_list ) fws ON fwdl.id = fws.pk_workshop_dispatch_list
+        WHERE
+        fwdl.del_flag = '0'
+        AND fwdl.state <![CDATA[ <> ]]>'3' UNION ALL
+        SELECT
+        fwdl.project_name,
+        fwdl.standard_working_hours,
+        fwdl.man_hours_completed
+        FROM
+        fbs_workshop_dispatch_list fwdl
+        LEFT JOIN fbs_working_statistics fws ON fwdl.id = fws.pk_workshop_dispatch_list
+        WHERE
+        fwdl.del_flag = '0'
+        AND fws.del_flag = '0'
+        AND fwdl.state = '3'
+        AND fws.final_state = '3' -->
+        SELECT
+            fwdl.project_name,
+            fwdl.production_order_number_name,
+            sum( fwdl.standard_working_hours ) as standard_working_hours,
+            sum( fwdl.man_hours_completed ) as man_hours_completed,
+            sum( fwdl.number_of_tasks ) as number_of_tasks,
+            sum( fws.qualified_number ) as  qualified_number
+        FROM
+          fbs_workshop_dispatch_list fwdl
+        LEFT JOIN fbs_working_statistics fws ON fwdl.id = fws.pk_workshop_dispatch_list
+            AND fws.del_flag = '0'
+            AND fws.final_state = '3'
+        WHERE
+          fwdl.del_flag = '0'
+        GROUP BY
+          fwdl.production_order_number_id
+        ORDER BY fwdl.production_order_number_name
+    </select>
     
 </mapper>

+ 10 - 1
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/service/IFbsWorkshopDispatchListService.java

@@ -81,7 +81,7 @@ public interface IFbsWorkshopDispatchListService extends IService<FbsWorkshopDis
     * @Param []
     * @return java.lang.String
     */
-    String getProductionEfficiency();
+    String getProductionEfficiency(String dateString);
 
     /**
     * @Author chenchuang
@@ -118,4 +118,13 @@ public interface IFbsWorkshopDispatchListService extends IService<FbsWorkshopDis
     * @return java.util.Map<java.lang.String,java.lang.Object>
     */
     Map<String,Object> getAbnormalHoursMonthReportSameDay();
+
+    /**
+    * @Author chenchuang
+    * @Description //TODO 制造看板: 项目进度完工百分比
+    * @Date 2020/10/31 16:02
+    * @Param []
+    * @return java.util.List<org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList>
+    */
+    List<FbsWorkshopDispatchList> getProjectScheduleCompletion();
 }

+ 7 - 2
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/service/impl/FbsWorkshopDispatchListServiceImpl.java

@@ -348,8 +348,8 @@ public class FbsWorkshopDispatchListServiceImpl extends ServiceImpl<FbsWorkshopD
     }
 
     @Override
-    public String getProductionEfficiency() {
-        return fbsWorkshopDispatchListMapper.getProductionEfficiency();
+    public String getProductionEfficiency(String dateString) {
+        return fbsWorkshopDispatchListMapper.getProductionEfficiency(dateString);
     }
 
     @Override
@@ -373,5 +373,10 @@ public class FbsWorkshopDispatchListServiceImpl extends ServiceImpl<FbsWorkshopD
         return fbsWorkshopDispatchListMapper.getAbnormalHoursMonthReportSameDay();
     }
 
+    @Override
+    public List<FbsWorkshopDispatchList> getProjectScheduleCompletion() {
+        return fbsWorkshopDispatchListMapper.getProjectScheduleCompletion();
+    }
+
 
 }