问题修复

master
zhaoxiaolin 4 months ago
parent 7c8e7dc38e
commit 5fad84018d

@ -11,6 +11,7 @@ import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServletResponse;
import com.op.common.core.domain.ExcelCol;
import com.op.common.core.utils.bean.BeanUtils;
import com.op.common.core.utils.poi.ExcelMapUtil;
import com.op.quality.domain.*;
import com.op.system.api.domain.mes.ProLineDTO;
@ -72,6 +73,30 @@ public class QcStaticTableController extends BaseController {
}
return null;
}
@Log(title = "供应商质量统计导出", businessType = BusinessType.EXPORT)
@PostMapping("/getIncomeTableExport")
public void getIncomeTableExport(HttpServletResponse response, QcStaticTable qcStaticTable) {
if (StringUtils.isNotBlank(qcStaticTable.getSupplierCode())) {
List<String> codes = Arrays.asList(qcStaticTable.getSupplierCode().split(","));
qcStaticTable.setSupplierCodes(codes);
}
//默认时间范围T 00:00:00~T+1 00:00:00
if (StringUtils.isEmpty(qcStaticTable.getYearMonth())) {
LocalDate date = LocalDate.now();
DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM");
String ymStr = dtf.format(date);
qcStaticTable.setYearMonth(ymStr);//end
}
List<QcStaticTable> list0 = qcStaticTableService.selectQcStaticTableList(qcStaticTable);
List<IncomeTableExport> list = new ArrayList<>();
for(QcStaticTable actable:list0){
IncomeTableExport income = new IncomeTableExport();
BeanUtils.copyProperties(actable,income);
list.add(income);
}
ExcelUtil<IncomeTableExport> util = new ExcelUtil<IncomeTableExport>(IncomeTableExport.class);
util.exportExcel(response, list, "供应商质量统计");
}
@PostMapping("/getIncomeChartList")
@Log(title = "供应商质量统计图表", businessType = BusinessType.QUERY)
@ -369,6 +394,15 @@ public class QcStaticTableController extends BaseController {
return getDataTable(list);
}
@PostMapping("/getXJCheckExport")
@Log(title = "生成巡检记录", businessType = BusinessType.QUERY)
public void getXJCheckExport(HttpServletResponse response, QcStaticTable qcStaticTable) {
List<CheckTypeXJDetail> list = qcStaticTableService.getXJCheckTableDetailList(qcStaticTable);
ExcelUtil<CheckTypeXJDetail> util = new ExcelUtil<CheckTypeXJDetail>(CheckTypeXJDetail.class);
util.exportExcel(response, list, "巡检记录明细");
}
@GetMapping("/getXJCheckTableDetail")
public List<QcStaticTable> getXJCheckTableDetail(QcStaticTable qcStaticTable) {
List<QcStaticTable> list = qcStaticTableService.getXJCheckTableDetail(qcStaticTable);

@ -0,0 +1,143 @@
package com.op.quality.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
import com.op.system.api.domain.quality.ChartDTO;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
* qc_static_table
*
* @author Open Platform
* @date 2023-11-08
*/
public class CheckTypeXJDetail extends BaseEntity {
@Excel(name = "订单编码")
private String workorderCodeSap;
@Excel(name = "工单编码")
private String orderNo;
@Excel(name = "产品编码")
private String materialCode;
@Excel(name = "产品名称")
private String materialName;
@Excel(name = "数量")
private String quality;
@Excel(name = "单位")
private String unit;
@Excel(name = "批次")
private String batchCode;
@Excel(name = "生产时间")
@JsonFormat(pattern = "yyyy-MM-dd")
private String incomeTimeStr;
@Excel(name = "班次")
private String shiftId;
@Excel(name = "线体名称")
private String equipmentName;
@Excel(name = "检验人")
private String checkManName;
@Excel(name = "检验时间")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String checkTime;
public String getWorkorderCodeSap() {
return workorderCodeSap;
}
public void setWorkorderCodeSap(String workorderCodeSap) {
this.workorderCodeSap = workorderCodeSap;
}
public String getOrderNo() {
return orderNo;
}
public void setOrderNo(String orderNo) {
this.orderNo = orderNo;
}
public String getMaterialCode() {
return materialCode;
}
public void setMaterialCode(String materialCode) {
this.materialCode = materialCode;
}
public String getMaterialName() {
return materialName;
}
public void setMaterialName(String materialName) {
this.materialName = materialName;
}
public String getQuality() {
return quality;
}
public void setQuality(String quality) {
this.quality = quality;
}
public String getUnit() {
return unit;
}
public void setUnit(String unit) {
this.unit = unit;
}
public String getBatchCode() {
return batchCode;
}
public void setBatchCode(String batchCode) {
this.batchCode = batchCode;
}
public String getIncomeTimeStr() {
return incomeTimeStr;
}
public void setIncomeTimeStr(String incomeTimeStr) {
this.incomeTimeStr = incomeTimeStr;
}
public String getShiftId() {
return shiftId;
}
public void setShiftId(String shiftId) {
this.shiftId = shiftId;
}
public String getEquipmentName() {
return equipmentName;
}
public void setEquipmentName(String equipmentName) {
this.equipmentName = equipmentName;
}
public String getCheckManName() {
return checkManName;
}
public void setCheckManName(String checkManName) {
this.checkManName = checkManName;
}
public String getCheckTime() {
return checkTime;
}
public void setCheckTime(String checkTime) {
this.checkTime = checkTime;
}
}

@ -0,0 +1,130 @@
package com.op.quality.domain;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.op.common.core.annotation.Excel;
import com.op.common.core.web.domain.BaseEntity;
import com.op.system.api.domain.quality.ChartDTO;
import java.math.BigDecimal;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
/**
* @date 2023-11-08
*/
public class IncomeTableExport extends BaseEntity {
private static final long serialVersionUID = 1L;
private String supplierId;
@Excel(name = "单位编码")
private String supplierCode;
@Excel(name = "单位名称")
private String supplierName;
@Excel(name = "总批数")
private int batchs;
@Excel(name = "合格批次")
private int okBatchs;
@Excel(name = "不合格批次")
private int noOkBatchs;
@Excel(name = "批次不良率")
private String noOkBatchRate;
@Excel(name = "总数量")
private int nums;
@Excel(name = "合格数")
private int okNums;
@Excel(name = "不合格数量")
private int noOkNums;
@Excel(name = "数量比例")
private String noOkNumRate;
public String getSupplierId() {
return supplierId;
}
public void setSupplierId(String supplierId) {
this.supplierId = supplierId;
}
public String getSupplierCode() {
return supplierCode;
}
public void setSupplierCode(String supplierCode) {
this.supplierCode = supplierCode;
}
public String getSupplierName() {
return supplierName;
}
public void setSupplierName(String supplierName) {
this.supplierName = supplierName;
}
public int getBatchs() {
return batchs;
}
public void setBatchs(int batchs) {
this.batchs = batchs;
}
public int getOkBatchs() {
return okBatchs;
}
public void setOkBatchs(int okBatchs) {
this.okBatchs = okBatchs;
}
public int getNoOkBatchs() {
return noOkBatchs;
}
public void setNoOkBatchs(int noOkBatchs) {
this.noOkBatchs = noOkBatchs;
}
public String getNoOkBatchRate() {
return noOkBatchRate;
}
public void setNoOkBatchRate(String noOkBatchRate) {
this.noOkBatchRate = noOkBatchRate;
}
public int getNums() {
return nums;
}
public void setNums(int nums) {
this.nums = nums;
}
public int getOkNums() {
return okNums;
}
public void setOkNums(int okNums) {
this.okNums = okNums;
}
public int getNoOkNums() {
return noOkNums;
}
public void setNoOkNums(int noOkNums) {
this.noOkNums = noOkNums;
}
public String getNoOkNumRate() {
return noOkNumRate;
}
public void setNoOkNumRate(String noOkNumRate) {
this.noOkNumRate = noOkNumRate;
}
}

@ -37,7 +37,7 @@ public class QcStaticTable extends BaseEntity {
private int noOkBatchs;
private int nums;
private int okNums;
private String equipmentName;
private String typeCode;
private String checkResult;
private String noOkBatchRate;
@ -48,8 +48,10 @@ public class QcStaticTable extends BaseEntity {
private List<String> legendData;
private List<String> xAxis;
private List<ChartDTO> series;
@Excel(name = "单编码")
@Excel(name = "单编码")
private String orderNo;
@Excel(name = "订单编码")
private String workorderCodeSap;
@Excel(name = "批次")
private String incomeBatchNo;
@Excel(name = "产品编码")
@ -117,6 +119,22 @@ public class QcStaticTable extends BaseEntity {
private String incomeTimeStart;
private String incomeTimeEnd;
public String getEquipmentName() {
return equipmentName;
}
public void setEquipmentName(String equipmentName) {
this.equipmentName = equipmentName;
}
public String getWorkorderCodeSap() {
return workorderCodeSap;
}
public void setWorkorderCodeSap(String workorderCodeSap) {
this.workorderCodeSap = workorderCodeSap;
}
public String getIncomeTimeStart() {
return incomeTimeStart;
}

@ -116,4 +116,6 @@ public interface QcStaticTableMapper {
@MapKey("yearMonth")
Map<String,QcStaticTable> getDLDataDay(QcCPKInfo qcCPKInfo);
List<CheckTypeXJDetail> getXJCheckTableDetailList(QcStaticTable qcStaticTable);
}

@ -4,10 +4,7 @@ import java.util.HashMap;
import java.util.List;
import java.util.Map;
import com.op.quality.domain.QcCPKInfo;
import com.op.quality.domain.QcCheckDetail;
import com.op.quality.domain.QcCheckType;
import com.op.quality.domain.QcStaticTable;
import com.op.quality.domain.*;
import com.op.system.api.domain.mes.ProLineDTO;
import com.op.system.api.domain.quality.ChartSeriesDTO;
import com.op.system.api.domain.quality.FactoryDto;
@ -78,4 +75,6 @@ public interface IQcStaticTableService {
QcCPKInfo getTableCPKList(QcCPKInfo qcCPKInfo);
List<ProLineDTO> getProdLineList();
List<CheckTypeXJDetail> getXJCheckTableDetailList(QcStaticTable qcStaticTable);
}

@ -1356,6 +1356,12 @@ public class QcStaticTableServiceImpl implements IQcStaticTableService {
return qcStaticTableMapper.getProdLineList();
}
@Override
@DS("#header.poolName")
public List<CheckTypeXJDetail> getXJCheckTableDetailList(QcStaticTable qcStaticTable) {
return qcStaticTableMapper.getXJCheckTableDetailList(qcStaticTable);
}
//获取指定范围内得月份输出格式yyyy-mm
private List<String> getMonthByMonth(String startM,String endM){
YearMonth start = YearMonth.of(Integer.parseInt(startM.split("-")[0]), Integer.parseInt(startM.split("-")[1]));

@ -324,6 +324,9 @@
where bp.warehouse_cycle is not null and t.check_type in('checkTypeLL','checkTypeCP') and t.del_flag = '0'
<if test="materialCode != null">and t.material_code like concat('%',#{materialCode}, '%')</if>
<if test="materialName != null">and t.material_name like concat('%',#{materialName}, '%')</if>
<if test="orderNo != null">and t.order_no like concat('%',#{orderNo}, '%')</if>
order by t.income_time desc,t.order_no,t.material_code
<!--
)t0
where t0.days >= t0.warehouse_cycle -->

@ -189,15 +189,17 @@
</select>
<select id="getXJCheckTableList" resultType="com.op.quality.domain.QcStaticTable">
select distinct
SUBSTRING(pow.workorder_code_sap,4,10) workorderCodeSap,
qct.order_no orderNo,
qct.material_code materialCode, qct.material_name materialName,
qct.quality,qct.unit,
qct.supplier_code supplierCode,qct.supplier_name supplierName,
pow.product_date incomeTimeStr,
pow.shift_id shiftId
pow.shift_id shiftId, be.equipment_name equipmentName
from qc_check_task qct
left join pro_order_workorder pow on pow.workorder_code = qct.order_no
where qct.check_type = 'checkTypeSCXJ' and qct.del_flag = '0'
left join base_equipment be on be.equipment_code = qct.check_loc
where qct.check_type = 'checkTypeSCXJ' and qct.del_flag = '0' and pow.del_flag = '0'
<if test="orderNo != null ">and qct.check_no like concat('%',#{orderNo},'%')</if>
<if test="materialCode != null ">and qct.material_code like concat('%',#{materialCode},'%')</if>
<if test="incomeBatchNo != null ">and qct.income_batch_no like concat('%',#{incomeBatchNo},'%')</if>
@ -982,5 +984,30 @@
) q
GROUP BY q.cpkType, q.ymdms,q.rule_name,q.project_no
</select>
<select id="getXJCheckTableDetailList" resultType="com.op.quality.domain.CheckTypeXJDetail">
select
SUBSTRING(pow.workorder_code_sap,4,10) workorderCodeSap,
qct.order_no orderNo,
SUBSTRING(qct.material_code,8, 12) materialCode, qct.material_name materialName,
qct.quality,qct.unit,
qct.income_batch_no batchCode,
pow.product_date incomeTimeStr,
pow.shift_id shiftId,
qct.check_loc,
be.equipment_name equipmentName,
qct.check_man_name checkManName,
qct.check_time checkTime
from qc_check_task qct
left join pro_order_workorder pow on pow.workorder_code = qct.order_no
left join base_equipment be on be.equipment_code = qct.check_loc
where qct.check_type = 'checkTypeSCXJ' and qct.del_flag = '0' and qct.check_status = '2' and be.del_flag = '0' and pow.del_flag = '0'
<if test="orderNo != null ">and qct.check_no like concat('%',#{orderNo},'%')</if>
<if test="materialCode != null ">and qct.material_code like concat('%',#{materialCode},'%')</if>
<if test="incomeBatchNo != null ">and qct.income_batch_no like concat('%',#{incomeBatchNo},'%')</if>
<if test="incomeTimeStr != null ">and CONVERT(varchar(10),pow.product_date, 120) = #{incomeTimeStr}</if>
<if test="incomeTimeStart != null ">and CONVERT(varchar(30),qct.income_time, 120) >= #{incomeTimeStart}</if>
<if test="incomeTimeEnd != null ">and #{incomeTimeEnd} > CONVERT(varchar(30),qct.income_time, 120)</if>
order by qct.order_no,qct.income_batch_no,pow.product_date desc
</select>
</mapper>

@ -541,16 +541,17 @@ public class SysUserServiceImpl implements ISysUserService {
public R syncUserInfoTask() {
DynamicDataSourceContextHolder.push("master");// 这是数据源的key
Date maxTime0 = userMapper.getMaxTime();
if(maxTime0 != null){
Calendar calendar = Calendar.getInstance();
calendar.setTime(maxTime0);
calendar.add(Calendar.DAY_OF_YEAR, 1);
Date maxTime = calendar.getTime();
//Date maxTime0 = userMapper.getMaxTime();
//if(maxTime0 != null){
// Calendar calendar = Calendar.getInstance();
// calendar.setTime(maxTime0);
// calendar.add(Calendar.DAY_OF_YEAR, 1);
// Date maxTime = calendar.getTime();
Date maxTime = DateUtils.getNowDate();
String ymd = DateFormatUtils.format(maxTime, "yyyy-MM-dd");//yyyy-MM-dd
log.info("更新人力-参数:"+ ymd);
//AjaxResult hrR = remoteOpenService.GetHrUserInfo(ymd);
AjaxResult hrR = remoteOpenService.GetHrUserInfo("2024-09-01");
AjaxResult hrR = remoteOpenService.GetHrUserInfo(ymd);
List<HRInfo> infoList = new ArrayList<>();
if((int)hrR.get("code")==200 && hrR.get("data")!=null){
@ -563,7 +564,7 @@ public class SysUserServiceImpl implements ISysUserService {
}else{
return R.fail("无最新需要更新的人力数据");
}
}
//}
return R.ok();
}

Loading…
Cancel
Save