6 changed files with 329 additions and 0 deletions
-
46src/main/java/com/gaotao/modules/report/controller/PartTemplateStatusController.java
-
25src/main/java/com/gaotao/modules/report/dao/PartTemplateStatusMapper.java
-
96src/main/java/com/gaotao/modules/report/entity/PartTemplateStatusData.java
-
29src/main/java/com/gaotao/modules/report/service/PartTemplateStatusService.java
-
122src/main/java/com/gaotao/modules/report/service/impl/PartTemplateStatusServiceImpl.java
-
11src/main/resources/mapper/report/PartTemplateStatusMapper.xml
@ -0,0 +1,46 @@ |
|||
package com.gaotao.modules.report.controller; |
|||
|
|||
import com.gaotao.common.utils.PageUtils; |
|||
import com.gaotao.common.utils.R; |
|||
import com.gaotao.modules.report.entity.PartTemplateStatusData; |
|||
import com.gaotao.modules.report.service.PartTemplateStatusService; |
|||
import com.gaotao.modules.sys.controller.AbstractController; |
|||
import com.gaotao.modules.sys.entity.SysUserEntity; |
|||
import org.apache.shiro.SecurityUtils; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 物料未维护模版清单控制器 |
|||
* @author system |
|||
* @date 2026/01/06 |
|||
*/ |
|||
@RestController |
|||
@RequestMapping("/report/partTemplateStatus") |
|||
public class PartTemplateStatusController extends AbstractController { |
|||
|
|||
@Autowired |
|||
private PartTemplateStatusService partTemplateStatusService; |
|||
|
|||
/** |
|||
* 查询物料模版状态数据(分页) |
|||
*/ |
|||
@PostMapping("/list") |
|||
public R list(@RequestBody PartTemplateStatusData params) { |
|||
PageUtils page = partTemplateStatusService.searchPartTemplateStatus(params); |
|||
return R.ok().put("page", page); |
|||
} |
|||
|
|||
/** |
|||
* 获取用户可访问的site列表 |
|||
*/ |
|||
@GetMapping("/getSiteList") |
|||
public R getSiteList() { |
|||
String userName = ((SysUserEntity) SecurityUtils.getSubject().getPrincipal()).getUsername(); |
|||
List<String> siteList = partTemplateStatusService.getAccessSiteList(userName); |
|||
return R.ok().put("siteList", siteList); |
|||
} |
|||
} |
|||
|
|||
@ -0,0 +1,25 @@ |
|||
package com.gaotao.modules.report.dao; |
|||
|
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 物料未维护模版清单Mapper |
|||
* @author system |
|||
* @date 2026/01/06 |
|||
*/ |
|||
@Mapper |
|||
@Repository |
|||
public interface PartTemplateStatusMapper { |
|||
|
|||
/** |
|||
* 获取用户可访问的site列表 |
|||
* @param userName 用户名 |
|||
* @return site列表 |
|||
*/ |
|||
List<String> getAccessSiteList(@Param("userName") String userName); |
|||
} |
|||
|
|||
@ -0,0 +1,96 @@ |
|||
package com.gaotao.modules.report.entity; |
|||
|
|||
import com.gaotao.common.utils.QueryPage; |
|||
import lombok.Data; |
|||
import lombok.EqualsAndHashCode; |
|||
|
|||
/** |
|||
* 物料未维护模版清单实体类 |
|||
* @author system |
|||
* @date 2026/01/06 |
|||
*/ |
|||
@Data |
|||
@EqualsAndHashCode(callSuper = false) |
|||
public class PartTemplateStatusData extends QueryPage { |
|||
|
|||
/** |
|||
* 工厂编码 |
|||
*/ |
|||
private String site; |
|||
|
|||
/** |
|||
* 物料编码 |
|||
*/ |
|||
private String partNo; |
|||
|
|||
/** |
|||
* 物料名称 |
|||
*/ |
|||
private String partDesc; |
|||
|
|||
/** |
|||
* 规格型号 |
|||
*/ |
|||
private String spec; |
|||
|
|||
/** |
|||
* IQC检验标识 (是/否) |
|||
*/ |
|||
private String iqcExempt; |
|||
|
|||
/** |
|||
* IQC检验模版标识 (是/否) |
|||
*/ |
|||
private String iqcHas; |
|||
|
|||
/** |
|||
* IPQC检验标识 (是/否) |
|||
*/ |
|||
private String ipqcExempt; |
|||
|
|||
/** |
|||
* IPQC检验模版标识 (是/否) |
|||
*/ |
|||
private String ipqcHas; |
|||
|
|||
/** |
|||
* FQC检验标识 (是/否) |
|||
*/ |
|||
private String fqcExempt; |
|||
|
|||
/** |
|||
* FQC检验模版标识 (是/否) |
|||
*/ |
|||
private String fqcHas; |
|||
|
|||
/** |
|||
* OQC检验标识 (是/否) |
|||
*/ |
|||
private String oqcExempt; |
|||
|
|||
/** |
|||
* OQC检验模版标识 (是/否) |
|||
*/ |
|||
private String oqcHas; |
|||
|
|||
/** |
|||
* SOP维护标识 (是/否) |
|||
*/ |
|||
private String hasSop; |
|||
|
|||
/** |
|||
* 打印维护标识 (是/否) |
|||
*/ |
|||
private String hasLabelTemplate; |
|||
|
|||
/** |
|||
* 部门 (质量/工艺/生产) |
|||
*/ |
|||
private String department; |
|||
|
|||
/** |
|||
* 用户名(用于权限查询) |
|||
*/ |
|||
private String userName; |
|||
} |
|||
|
|||
@ -0,0 +1,29 @@ |
|||
package com.gaotao.modules.report.service; |
|||
|
|||
import com.gaotao.common.utils.PageUtils; |
|||
import com.gaotao.modules.report.entity.PartTemplateStatusData; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* 物料未维护模版清单服务接口 |
|||
* @author system |
|||
* @date 2026/01/06 |
|||
*/ |
|||
public interface PartTemplateStatusService { |
|||
|
|||
/** |
|||
* 查询物料模版状态数据(调用存储过程,分页) |
|||
* @param query 查询条件 |
|||
* @return 分页数据 |
|||
*/ |
|||
PageUtils searchPartTemplateStatus(PartTemplateStatusData query); |
|||
|
|||
/** |
|||
* 获取用户可访问的site列表 |
|||
* @param userName 用户名 |
|||
* @return site列表 |
|||
*/ |
|||
List<String> getAccessSiteList(String userName); |
|||
} |
|||
|
|||
@ -0,0 +1,122 @@ |
|||
package com.gaotao.modules.report.service.impl; |
|||
|
|||
import com.gaotao.common.utils.PageUtils; |
|||
import com.gaotao.modules.report.dao.PartTemplateStatusMapper; |
|||
import com.gaotao.modules.report.dao.ProcedureDao; |
|||
import com.gaotao.modules.report.entity.PartTemplateStatusData; |
|||
import com.gaotao.modules.report.service.PartTemplateStatusService; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* 物料未维护模版清单服务实现类 |
|||
* @author system |
|||
* @date 2026/01/06 |
|||
*/ |
|||
@Slf4j |
|||
@Service |
|||
public class PartTemplateStatusServiceImpl implements PartTemplateStatusService { |
|||
|
|||
@Autowired |
|||
private ProcedureDao procedureDao; |
|||
|
|||
@Autowired |
|||
private PartTemplateStatusMapper partTemplateStatusMapper; |
|||
|
|||
@Override |
|||
public PageUtils searchPartTemplateStatus(PartTemplateStatusData query) { |
|||
try { |
|||
log.info("开始查询物料模版状态,工厂:{}", query.getSite()); |
|||
|
|||
// 构建存储过程参数 |
|||
List<Object> params = new ArrayList<>(); |
|||
params.add(query.getSite() != null ? query.getSite() : ""); |
|||
params.add(query.getPartNo() != null ? query.getPartNo() : ""); |
|||
params.add(query.getPartDesc() != null ? query.getPartDesc() : ""); |
|||
params.add(query.getSpec() != null ? query.getSpec() : ""); |
|||
params.add(query.getIqcExempt() != null ? query.getIqcExempt() : ""); |
|||
params.add(query.getIqcHas() != null ? query.getIqcHas() : ""); |
|||
params.add(query.getIpqcExempt() != null ? query.getIpqcExempt() : ""); |
|||
params.add(query.getIpqcHas() != null ? query.getIpqcHas() : ""); |
|||
params.add(query.getFqcExempt() != null ? query.getFqcExempt() : ""); |
|||
params.add(query.getFqcHas() != null ? query.getFqcHas() : ""); |
|||
params.add(query.getOqcExempt() != null ? query.getOqcExempt() : ""); |
|||
params.add(query.getOqcHas() != null ? query.getOqcHas() : ""); |
|||
params.add(query.getHasSop() != null ? query.getHasSop() : ""); |
|||
params.add(query.getHasLabelTemplate() != null ? query.getHasLabelTemplate() : ""); |
|||
params.add(query.getDepartment() != null ? query.getDepartment() : ""); |
|||
// 分页参数 |
|||
int page = query.getPage() > 0 ? query.getPage() : 1; |
|||
int limit = query.getLimit() > 0 ? query.getLimit() : 20; |
|||
int offset = (page - 1) * limit; |
|||
params.add(offset); |
|||
params.add(limit); |
|||
|
|||
// 调用存储过程 |
|||
List<Map<String, Object>> resultList = procedureDao.getProcedureData("GetPartInspectionAndTemplateStatus", params); |
|||
|
|||
// 转换结果 |
|||
List<PartTemplateStatusData> dataList = new ArrayList<>(); |
|||
// int totalCount = 0; |
|||
|
|||
if (resultList != null && !resultList.isEmpty()) { |
|||
for (Map<String, Object> row : resultList) { |
|||
// // 检查是否有totalCount字段(存储过程返回总数) |
|||
// if (row.containsKey("totalCount")) { |
|||
// totalCount = Integer.parseInt(String.valueOf(row.get("totalCount"))); |
|||
// continue; |
|||
// } |
|||
|
|||
PartTemplateStatusData data = new PartTemplateStatusData(); |
|||
data.setSite(getStringValue(row, "site")); |
|||
data.setPartNo(getStringValue(row, "partNo")); |
|||
data.setPartDesc(getStringValue(row, "partDesc")); |
|||
data.setSpec(getStringValue(row, "spec")); |
|||
data.setIqcExempt(getStringValue(row, "iqcExempt")); |
|||
data.setIqcHas(getStringValue(row, "iqcHas")); |
|||
data.setIpqcExempt(getStringValue(row, "ipqcExempt")); |
|||
data.setIpqcHas(getStringValue(row, "ipqcHas")); |
|||
data.setFqcExempt(getStringValue(row, "fqcExempt")); |
|||
data.setFqcHas(getStringValue(row, "fqcHas")); |
|||
data.setOqcExempt(getStringValue(row, "oqcExempt")); |
|||
data.setOqcHas(getStringValue(row, "oqcHas")); |
|||
data.setHasSop(getStringValue(row, "hasSop")); |
|||
data.setHasLabelTemplate(getStringValue(row, "hasLabelTemplate")); |
|||
data.setDepartment(getStringValue(row, "department")); |
|||
dataList.add(data); |
|||
} |
|||
} |
|||
|
|||
// // 如果存储过程没有返回totalCount,则使用结果集大小 |
|||
// if (totalCount == 0) { |
|||
// totalCount = dataList.size(); |
|||
// } |
|||
|
|||
log.info("查询物料模版状态完成,共{}条数据", dataList.size()); |
|||
return new PageUtils(dataList, dataList.size(), limit, page); |
|||
|
|||
} catch (Exception e) { |
|||
log.error("查询物料模版状态异常", e); |
|||
return new PageUtils(new ArrayList<>(), 0, query.getLimit(), query.getPage()); |
|||
} |
|||
} |
|||
|
|||
@Override |
|||
public List<String> getAccessSiteList(String userName) { |
|||
return partTemplateStatusMapper.getAccessSiteList(userName); |
|||
} |
|||
|
|||
/** |
|||
* 安全获取String值 |
|||
*/ |
|||
private String getStringValue(Map<String, Object> row, String key) { |
|||
Object value = row.get(key); |
|||
return value != null ? String.valueOf(value) : ""; |
|||
} |
|||
} |
|||
|
|||
@ -0,0 +1,11 @@ |
|||
<?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.gaotao.modules.report.dao.PartTemplateStatusMapper"> |
|||
|
|||
<!-- 获取用户可访问的site列表 --> |
|||
<select id="getAccessSiteList" resultType="java.lang.String"> |
|||
SELECT site FROM AccessSite WHERE userID = #{userName} |
|||
</select> |
|||
|
|||
</mapper> |
|||
|
|||
Write
Preview
Loading…
Cancel
Save
Reference in new issue