Merge remote-tracking branch 'origin/master'
commit
2b99ad1016
@ -0,0 +1,49 @@
|
||||
package com.foreverwin.mesnac.anomaly.controller;
|
||||
|
||||
/**
|
||||
* @Description TODO
|
||||
* @Author zhaojiawei
|
||||
* @Since 2021-08-23
|
||||
*/
|
||||
|
||||
import com.foreverwin.mesnac.anomaly.dto.PartsManufacturing;
|
||||
import com.foreverwin.mesnac.anomaly.service.ReportService;
|
||||
import com.foreverwin.mesnac.integration.model.IntegrationLog;
|
||||
import com.foreverwin.modular.core.util.R;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/REPORT")
|
||||
public class Report {
|
||||
|
||||
@Autowired
|
||||
public ReportService reportService;
|
||||
|
||||
@PostMapping("/findIntegrationLog")
|
||||
public R findIntegrationLog(@RequestBody IntegrationLog integration){
|
||||
try{
|
||||
return R.ok(reportService.findIntegrationLog(integration));
|
||||
}catch(Exception e){
|
||||
return R.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@PostMapping("/partsManufacturing")
|
||||
public R partsManufacturing(@RequestBody PartsManufacturing PartsManufacturing){
|
||||
try{
|
||||
return R.ok(reportService.partsManufacturing(PartsManufacturing));
|
||||
}catch(Exception e){
|
||||
return R.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
|
||||
@GetMapping("/surplusReturnTable")
|
||||
public R surplusReturnTable(String item,String itemDescription){
|
||||
try{
|
||||
return R.ok(reportService.surplusReturnTable(item,itemDescription));
|
||||
}catch(Exception e){
|
||||
return R.failed(e.getMessage());
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,65 @@
|
||||
package com.foreverwin.mesnac.anomaly.dto;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
|
||||
/**
|
||||
* @Description TODO
|
||||
* @Author zhaojiawei
|
||||
* @Since 2021-08-23
|
||||
*/
|
||||
public class PartsManufacturing {
|
||||
private String itemNumber;
|
||||
private String shopOrder;
|
||||
private String item;
|
||||
private String itemDescription;
|
||||
private LocalDateTime startDateTime;
|
||||
private LocalDateTime endDateTime;
|
||||
|
||||
public String getItemNumber() {
|
||||
return itemNumber;
|
||||
}
|
||||
|
||||
public void setItemNumber(String itemNumber) {
|
||||
this.itemNumber = itemNumber;
|
||||
}
|
||||
|
||||
public String getShopOrder() {
|
||||
return shopOrder;
|
||||
}
|
||||
|
||||
public void setShopOrder(String shopOrder) {
|
||||
this.shopOrder = shopOrder;
|
||||
}
|
||||
|
||||
public String getItem() {
|
||||
return item;
|
||||
}
|
||||
|
||||
public void setItem(String item) {
|
||||
this.item = item;
|
||||
}
|
||||
|
||||
public String getItemDescription() {
|
||||
return itemDescription;
|
||||
}
|
||||
|
||||
public void setItemDescription(String itemDescription) {
|
||||
this.itemDescription = itemDescription;
|
||||
}
|
||||
|
||||
public LocalDateTime getStartDateTime() {
|
||||
return startDateTime;
|
||||
}
|
||||
|
||||
public void setStartDateTime(LocalDateTime startDateTime) {
|
||||
this.startDateTime = startDateTime;
|
||||
}
|
||||
|
||||
public LocalDateTime getEndDateTime() {
|
||||
return endDateTime;
|
||||
}
|
||||
|
||||
public void setEndDateTime(LocalDateTime endDateTime) {
|
||||
this.endDateTime = endDateTime;
|
||||
}
|
||||
}
|
@ -0,0 +1,26 @@
|
||||
package com.foreverwin.mesnac.anomaly.mapper;
|
||||
|
||||
import com.foreverwin.mesnac.anomaly.dto.PartsManufacturing;
|
||||
import com.foreverwin.mesnac.integration.model.IntegrationLog;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Description TODO
|
||||
* @Author zhaojiawei
|
||||
* @Since 2021-08-23
|
||||
*/
|
||||
@Repository
|
||||
public interface ReportMapper {
|
||||
|
||||
List<Map<String,Object>> findIntegrationLog(@Param("integration") IntegrationLog integration);
|
||||
|
||||
List<Map<String, Object>> partsManufacturing(@Param("site")String site,@Param("locale")String locale, @Param("partsManufacturing") PartsManufacturing partsManufacturing);
|
||||
|
||||
List<Map<String,Object>> surplusReturnTable(@Param("site")String site, @Param("locale")String locale,
|
||||
@Param("item")String item, @Param("itemDescription")String itemDescription);
|
||||
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.foreverwin.mesnac.anomaly.service;
|
||||
|
||||
import com.foreverwin.mesnac.anomaly.dto.PartsManufacturing;
|
||||
import com.foreverwin.mesnac.integration.model.IntegrationLog;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Description TODO
|
||||
* @Author zhaojiawei
|
||||
* @Since 2021-08-23
|
||||
*/
|
||||
public interface ReportService {
|
||||
List<Map<String,Object>> findIntegrationLog(IntegrationLog integration);
|
||||
|
||||
List<Map<String, Object>> partsManufacturing(PartsManufacturing partsManufacturing);
|
||||
|
||||
List<Map<String, Object>> surplusReturnTable(String item, String itemDescription);
|
||||
}
|
@ -0,0 +1,58 @@
|
||||
package com.foreverwin.mesnac.anomaly.service.impl;
|
||||
|
||||
import com.foreverwin.mesnac.anomaly.dto.PartsManufacturing;
|
||||
import com.foreverwin.mesnac.anomaly.mapper.ReportMapper;
|
||||
import com.foreverwin.mesnac.anomaly.service.ReportService;
|
||||
import com.foreverwin.mesnac.integration.model.IntegrationLog;
|
||||
import com.foreverwin.modular.core.util.CommonMethods;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.context.i18n.LocaleContextHolder;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* @Description TODO
|
||||
* @Author zhaojiawei
|
||||
* @Since 2021-08-23
|
||||
*/
|
||||
@Service
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public class ReportServiceImpl implements ReportService {
|
||||
|
||||
@Autowired
|
||||
private ReportMapper reportMapper;
|
||||
|
||||
/**
|
||||
* 接口日志表
|
||||
* @param integration
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String,Object>> findIntegrationLog(IntegrationLog integration) {
|
||||
String site = CommonMethods.getSite();
|
||||
integration.setSite(site);
|
||||
return reportMapper.findIntegrationLog(integration);
|
||||
}
|
||||
|
||||
/**
|
||||
* 零件加工报表
|
||||
* @param partsManufacturing
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public List<Map<String, Object>> partsManufacturing(PartsManufacturing partsManufacturing) {
|
||||
String site = CommonMethods.getSite();
|
||||
String locale = LocaleContextHolder.getLocale().getLanguage();
|
||||
return reportMapper.partsManufacturing(site,locale,partsManufacturing);
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<Map<String, Object>> surplusReturnTable(String item, String itemDescription) {
|
||||
String locale = LocaleContextHolder.getLocale().getLanguage();
|
||||
String site = CommonMethods.getSite();
|
||||
return reportMapper.surplusReturnTable(site,locale,item,itemDescription);
|
||||
}
|
||||
}
|
@ -0,0 +1,91 @@
|
||||
<?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="com.foreverwin.mesnac.anomaly.mapper.ReportMapper">
|
||||
|
||||
<select id="findIntegrationLog" resultType="map">
|
||||
SELECT INTEGRATION_TYPE, CATEGORY, INTEGRATION_WAY,STATUS,REQUEST_DATE_TIME,TO_CHAR(RESULT_MESSAGE) RESULT_MESSAGE,TO_CHAR(PARAM) PARAM
|
||||
FROM Z_INTEGRATION_LOG
|
||||
<where>
|
||||
SITE = #{integration.site}
|
||||
<if test="integration.integrationType != null and integration.integrationType != ''">
|
||||
AND INTEGRATION_TYPE = #{integration.integrationType}
|
||||
</if>
|
||||
<if test="integration.integrationWay != null and integration.integrationWay != ''">
|
||||
AND INTEGRATION_WAY = #{integration.integrationWay}
|
||||
</if>
|
||||
<if test="integration.status != null and integration.status != ''">
|
||||
AND STATUS = #{integration.status}
|
||||
</if>
|
||||
<if test="integration.startDateTime != null">
|
||||
AND REQUEST_DATE_TIME >= #{integration.startDateTime}
|
||||
</if>
|
||||
<if test="integration.endDateTime != null">
|
||||
AND REQUEST_DATE_TIME <= #{integration.endDateTime}
|
||||
</if>
|
||||
<if test="integration.param != null and integration.param != ''">
|
||||
AND PARAM LIKE '%${integration.param}%'
|
||||
</if>
|
||||
</where>
|
||||
ORDER BY REQUEST_DATE_TIME DESC
|
||||
</select>
|
||||
|
||||
<select id="partsManufacturing" resultType="Map">
|
||||
SELECT CF.VALUE ITEM_NUMBER,ZSD.SHOP_ORDER SHOP_ORDER,I.ITEM ITEM,IT.DESCRIPTION ITEM_DESCRIPTION,SO.QTY_TO_BUILD SHOP_ORDER_QTY , ZSD.OPERATION ,OT.DESCRIPTION OPERATION_DESCRIPTION,
|
||||
ZNU.FULL_NAME OPERATION_USER,ZSD.SFC SFC,ZSD.DISPATCH_STATUS ,
|
||||
ZSD.EARLIEST_START_DATE EARLIEST_START_DATE,ZSD.LATEST_END_DATE LATEST_END_DATE,
|
||||
ZSD.ACTUAL_START_DATE ACTUAL_START_DATE,ZSD.ACTUAL_COMPLETE_DATE ACTUAL_COMPLETE_DATE
|
||||
FROM SFC S
|
||||
INNER JOIN SHOP_ORDER SO ON SO.HANDLE = S.SHOP_ORDER_BO
|
||||
INNER JOIN ITEM I ON I.HANDLE = SO.ITEM_BO
|
||||
LEFT JOIN ITEM_T IT ON IT.ITEM_BO = I.HANDLE AND IT.LOCALE = #{locale}
|
||||
INNER JOIN Z_SFC_DISPATCH ZSD ON S.SFC = ZSD.SFC AND S.SITE = ZSD.SITE
|
||||
AND ZSD.DISPATCH_SEQ = (
|
||||
SELECT MAX(ZSD2.DISPATCH_SEQ) FROM Z_SFC_DISPATCH ZSD2 WHERE S.SFC = ZSD2.SFC AND S.SITE = ZSD2.SITE
|
||||
)
|
||||
INNER JOIN OPERATION O ON O.OPERATION = ZSD.OPERATION AND O.SITE = S.SITE AND O.CURRENT_REVISION = 'true'
|
||||
INNER JOIN OPERATION_T OT ON OT.OPERATION_BO = O.HANDLE AND OT.LOCALE = #{locale}
|
||||
INNER JOIN Z_NWA_USER ZNU ON ZNU.USER_NAME = ZSD.EMPLOYEE
|
||||
LEFT JOIN CUSTOM_FIELDS CF ON CF.HANDLE = S.SHOP_ORDER_BO AND CF."ATTRIBUTE" = 'ITEM_NUMBER'
|
||||
<where>
|
||||
S.SITE = #{site}
|
||||
<if test="partsManufacturing != null">
|
||||
<if test="partsManufacturing.itemNumber != null and partsManufacturing.itemNumber != ''">
|
||||
AND CF.VALUE LIKE '%${partsManufacturing.itemNumber}%'
|
||||
</if>
|
||||
<if test="partsManufacturing.shopOrder != null and partsManufacturing.shopOrder != ''">
|
||||
AND ZSD.SHOP_ORDER LIKE '%${partsManufacturing.shopOrder}%'
|
||||
</if>
|
||||
<if test="partsManufacturing.item != null and partsManufacturing.item != ''">
|
||||
AND I.ITEM LIKE '%${partsManufacturing.item}%'
|
||||
</if>
|
||||
<if test="partsManufacturing.itemDescription != null and partsManufacturing.itemDescription != ''">
|
||||
AND IT.DESCRIPTION LIKE '%${partsManufacturing.itemDescription}%'
|
||||
</if>
|
||||
<if test="partsManufacturing.startDateTime != null">
|
||||
AND ZSD.ACTUAL_START_DATE >= #{partsManufacturing.startDateTime}
|
||||
</if>
|
||||
<if test="partsManufacturing.endDateTime != null">
|
||||
AND ZSD.ACTUAL_COMPLETE_DATE <= #{partsManufacturing.endDateTime}
|
||||
</if>
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
|
||||
<select id="surplusReturnTable" resultType="map">
|
||||
SELECT ZSR.INVENTORY INVENTORY,ZSR.ITEM_BO ITEM_BO,IT.DESCRIPTION ITEM_DESCRIPTION,ZSR.LENGHT LENGHT,
|
||||
ZSR.WIDTH WIDTH,ZSR.NUMBERS NUMBERS,ZSR.QTY QTY,ZSR.CREATED_DATE_TIME CREATED_DATE_TIME
|
||||
FROM
|
||||
Z_SURPLUS_RETURN ZSR
|
||||
INNER JOIN ITEM I ON I.HANDLE = ZSR.ITEM_BO
|
||||
INNER JOIN ITEM_T IT ON IT.ITEM_BO = I.HANDLE
|
||||
<where>
|
||||
ZSR.SITE = #{site}
|
||||
<if test="item != null and item != ''">
|
||||
AND I.ITEM LIKE '%${item}%'
|
||||
</if>
|
||||
<if test="itemDescription != null and itemDescription != ''">
|
||||
AND IT.DESCRIPTION LIKE '%${itemDescription}%'
|
||||
</if>
|
||||
</where>
|
||||
</select>
|
||||
</mapper>
|
Loading…
Reference in New Issue