chenchuang il y a 3 ans
Parent
commit
7c4acc4791

+ 19 - 0
src/main/java/org/jeecg/modules/appInterface/controller/FbsWorkingStatisticsController.java

@@ -1130,6 +1130,25 @@ public class FbsWorkingStatisticsController {
 		return result;
 	}
 
+	 /**
+	  * 扫码记录报表导出
+	  * @param fbsWorkingStatistics
+	  * @return
+	  */
+	 @GetMapping(value = "/getReportExport")
+	public Result<List<FbsWorkingStatistics>> getReportExport(FbsWorkingStatistics fbsWorkingStatistics){
+		Result<List<FbsWorkingStatistics>> result=new Result<>();
+		try {
+			List<FbsWorkingStatistics> list=fbsWorkingStatisticsService.getReportExport(fbsWorkingStatistics);
+			result.setResult(list);
+			result.success("查询成功");
+		} catch (Exception e) {
+			result.error500("查询失败:"+e.getMessage());
+			throw new RuntimeException(e);
+		}
+		return result;
+	}
+
 
 	 @GetMapping(value = "/getEfficiencyReport")
 	 public Result<IPage<FbsWorkingStatistics>> getEfficiencyReport(FbsWorkingStatistics fbsWorkingStatistics,

+ 24 - 0
src/main/java/org/jeecg/modules/appInterface/entity/FbsWorkingStatistics.java

@@ -189,4 +189,28 @@ public class FbsWorkingStatistics implements Serializable {
 	//派工数
 	@TableField(exist = false)
 	private BigDecimal numberOfTasks;
+
+
+	//进度
+	@TableField(exist = false)
+	private BigDecimal speedOfProgress;
+
+	@TableField(exist = false)
+	private String originalPriceCode;//原价代码
+
+	@TableField(exist = false)
+	private String wbsElement;//WBS元素
+
+	@TableField(exist = false)
+	private String wbsElementDescription;//WBS元素描述
+
+	@TableField(exist = false)
+	private String workReportWbs;//报工WBS
+
+	@TableField(exist = false)
+	private String workReportNetwork;//报工网络
+
+	@TableField(exist = false)
+	private String workReportingActivities;//报工活动
+
 }

+ 7 - 0
src/main/java/org/jeecg/modules/appInterface/mapper/FbsWorkingStatisticsMapper.java

@@ -71,4 +71,11 @@ public interface FbsWorkingStatisticsMapper extends BaseMapper<FbsWorkingStatist
     * @return com.baomidou.mybatisplus.core.metadata.IPage<org.jeecg.modules.appInterface.entity.FbsWorkingStatistics>
     */
     IPage<FbsWorkingStatistics> getEfficiencyReport(IPage<FbsWorkingStatistics> page, @Param("ew") QueryWrapper<FbsWorkingStatistics> queryWrapper);
+
+    /**
+     * 扫码记录报表导出
+     * @param fbsWorkingStatistics
+     * @return
+     */
+    List<FbsWorkingStatistics> getReportExport( @Param("fbsWorkingStatistics")FbsWorkingStatistics fbsWorkingStatistics);
 }

+ 66 - 0
src/main/java/org/jeecg/modules/appInterface/mapper/xml/FbsWorkingStatisticsMapper.xml

@@ -242,4 +242,70 @@
 
     </select>
 
+    <select id="getReportExport" resultType="org.jeecg.modules.appInterface.entity.FbsWorkingStatistics" >
+        SELECT
+            a.*,
+            sum( a.qualified_number ) as qualified_number,
+            sum( a.working_hours ) as working_hours,
+            sum( a.planned_quantity ) as planned_quantity,
+            ROUND( sum( a.qualified_number )/ sum( a.planned_quantity ), 2 ) as speedOfProgress
+        FROM
+            (
+                SELECT
+                    fwdl.project_name,
+                    fwdl.cost_item_code,
+                    fwdl.original_price_code,
+                    fwdl.wbs_element,
+                    fwdl.wbs_element_description,
+                    fwdl.work_report_wbs,
+                    fwdl.work_report_network,
+                    fwdl.work_reporting_activities,
+                    sum( fws.qualified_number ) AS qualified_number,
+                    sum( fws.working_hours ) AS working_hours,
+                    fwdl.planned_quantity,
+                    fwdl.production_order_number_name
+                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 fws.is_cancel <![CDATA[ <> ]]> '2'
+                <if test="fbsWorkingStatistics.start!=null and fbsWorkingStatistics.end!=null and fbsWorkingStatistics.start!='' and fbsWorkingStatistics.end!='' and fbsWorkingStatistics.start!='null' and fbsWorkingStatistics.end!='null'">
+                    and DATE_FORMAT(first_time,'%Y-%m-%d') <![CDATA[ >= ]]> #{fbsWorkingStatistics.start}
+                    and DATE_FORMAT(first_time,'%Y-%m-%d') <![CDATA[ <= ]]> #{fbsWorkingStatistics.end}
+                </if>
+                <if test="fbsWorkingStatistics.personnelCode!=null and fbsWorkingStatistics.personnelCode!=''">
+                    and fws.personnel_code = #{fbsWorkingStatistics.personnelCode}
+                </if>
+                <if test="fbsWorkingStatistics.orderNumber!=null and fbsWorkingStatistics.orderNumber!=''">
+                    and fws.order_number=#{fbsWorkingStatistics.orderNumber}
+                </if>
+                <if test="fbsWorkingStatistics.finalInfo!=null and fbsWorkingStatistics.finalInfo!=''">
+                    and fws.final_info =#{fbsWorkingStatistics.finalInfo}
+                </if>
+                <if test="fbsWorkingStatistics.costItemCode!=null and fbsWorkingStatistics.costItemCode!='' and fbsWorkingStatistics.costItemCode!='null'">
+                    and fwdl.cost_item_code =#{fbsWorkingStatistics.costItemCode}
+                </if>
+                <if test="fbsWorkingStatistics.projectName!=null and fbsWorkingStatistics.projectName!=''">
+                    and fwdl.project_name =#{fbsWorkingStatistics.projectName}
+                </if>
+                <if test="fbsWorkingStatistics.originalPriceCode!=null and fbsWorkingStatistics.originalPriceCode!=''">
+                    and fwdl.original_price_code =#{fbsWorkingStatistics.originalPriceCode}
+                </if>
+
+                GROUP BY
+                    fwdl.production_order_number_name
+            ) a
+        GROUP BY
+            a.project_name,
+            a.cost_item_code,
+            a.original_price_code,
+            a.wbs_element,
+            a.wbs_element_description,
+            a.work_report_wbs,
+            a.work_report_network,
+            a.work_reporting_activities
+        ORDER BY
+            a.original_price_code
+    </select>
+
 </mapper>

+ 8 - 0
src/main/java/org/jeecg/modules/appInterface/service/IFbsWorkingStatisticsService.java

@@ -1,6 +1,7 @@
 package org.jeecg.modules.appInterface.service;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.appInterface.entity.FbsWorkingStatistics;
 import com.baomidou.mybatisplus.extension.service.IService;
 import org.jeecg.modules.fbsWorkshopDispatchList.entity.FbsWorkshopDispatchList;
@@ -69,4 +70,11 @@ public interface IFbsWorkingStatisticsService extends IService<FbsWorkingStatist
 
     IPage<FbsWorkingStatistics> getEfficiencyReport(IPage<FbsWorkingStatistics> page, QueryWrapper<FbsWorkingStatistics> queryWrapper);
 
+    /**
+     * 扫码记录报表导出
+     * @param fbsWorkingStatistics
+     * @return
+     */
+    List<FbsWorkingStatistics> getReportExport( @Param("fbsWorkingStatistics")FbsWorkingStatistics fbsWorkingStatistics);
+
 }

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

@@ -248,6 +248,11 @@ public class FbsWorkingStatisticsServiceImpl extends ServiceImpl<FbsWorkingStati
         return fbsWorkingStatisticsMapper.getEfficiencyReport(page,queryWrapper);
     }
 
+    @Override
+    public List<FbsWorkingStatistics> getReportExport(FbsWorkingStatistics fbsWorkingStatistics) {
+        return fbsWorkingStatisticsMapper.getReportExport(fbsWorkingStatistics);
+    }
+
     public BigDecimal getDecimalNew(String d){
         if(StringUtils.isEmpty(d)){
             d="0.0";

+ 11 - 0
src/main/java/org/jeecg/modules/fbsMomOrder/entity/FbsMomOrder.java

@@ -132,5 +132,16 @@ public class FbsMomOrder implements Serializable {
 	//项目编码
 	private String costItemCode;
 
+	private String originalPriceCode;//原价代码
+
+	private String wbsElement;//WBS元素
+
+	private String wbsElementDescription;//WBS元素描述
+
+	private String workReportWbs;//报工WBS
+
+	private String workReportNetwork;//报工网络
+
+	private String workReportingActivities;//报工活动
 
 }

+ 19 - 0
src/main/java/org/jeecg/modules/fbsMomOrder/entity/FbsMomOrderdetail.java

@@ -512,4 +512,23 @@ public class FbsMomOrderdetail implements Serializable {
 	//工艺名称
 	@TableField(exist = false)
 	private String fbsTechnologicalProcessName;
+
+	@TableField(exist = false)
+	private String originalPriceCode;//原价代码
+
+	@TableField(exist = false)
+	private String wbsElement;//WBS元素
+
+	@TableField(exist = false)
+	private String wbsElementDescription;//WBS元素描述
+
+	@TableField(exist = false)
+	private String workReportWbs;//报工WBS
+
+	@TableField(exist = false)
+	private String workReportNetwork;//报工网络
+
+	@TableField(exist = false)
+	private String workReportingActivities;//报工活动
+
 }

+ 6 - 0
src/main/java/org/jeecg/modules/fbsMomOrder/mapper/xml/FbsMomOrderdetailMapper.xml

@@ -87,6 +87,12 @@
 
     <select id="getMonthListStatreWork" resultType="org.jeecg.modules.fbsMomOrder.entity.FbsMomOrderdetail">
         SELECT
+        m.original_price_code,
+        m.wbs_element,
+        m.wbs_element_description,
+        m.work_report_wbs,
+        m.work_report_network,
+        m.work_reporting_activities,
         mo.cost_item_code as itemCode,
         ftp.memo as workCenter,
         m.MoId,

+ 7 - 0
src/main/java/org/jeecg/modules/fbsMomOrder/service/impl/FbsMomOrderServiceImpl.java

@@ -124,6 +124,13 @@ public class FbsMomOrderServiceImpl extends ServiceImpl<FbsMomOrderMapper, FbsMo
                 fbsMomOrder.setMocode(String.valueOf(jsonObject.get("MOCODE")));//生产订单号
                 fbsMomOrder.setDefine12(String.valueOf(jsonObject.get("DEFINE12")));//项目名称
                 fbsMomOrder.setCostItemCode(String.valueOf(jsonObject.get("COSTITEMCODE")));//项目编码
+                fbsMomOrder.setOriginalPriceCode(String.valueOf(jsonObject.get("ORIGINALPRICECODE")));//原价代码
+                fbsMomOrder.setWbsElement(String.valueOf(jsonObject.get("WBSELEMENT")));//WBS元素
+                fbsMomOrder.setWbsElementDescription(String.valueOf(jsonObject.get("WBSELEMENTDESCRIPTION")));//WBS元素描述
+                fbsMomOrder.setWorkReportWbs(String.valueOf(jsonObject.get("WORKREPORTWBS")));//报工WBS
+                fbsMomOrder.setWorkReportNetwork(String.valueOf(jsonObject.get("WORKREPORTNETWORK")));//报工网络
+                fbsMomOrder.setWorkReportingActivities(String.valueOf(jsonObject.get("WORKREPORTINGACTIVITIES")));//报工活动
+
                 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
                 if (StringUtils.isNotBlank(String.valueOf(jsonObject.get("CREATETIME")))) {
                     try {

+ 12 - 0
src/main/java/org/jeecg/modules/fbsWorkshopDispatchList/entity/FbsWorkshopDispatchList.java

@@ -310,4 +310,16 @@ public class FbsWorkshopDispatchList implements Serializable {
 
 	//工艺顺序
 	private String processSequence;
+
+	private String originalPriceCode;//原价代码
+
+	private String wbsElement;//WBS元素
+
+	private String wbsElementDescription;//WBS元素描述
+
+	private String workReportWbs;//报工WBS
+
+	private String workReportNetwork;//报工网络
+
+	private String workReportingActivities;//报工活动
 }