Merge branch 'master' of http://111.30.93.211:10101/r/supipe
# Conflicts:
# web/src/api/index.js
| | |
| | | import com.thhy.general.common.BasicResult; |
| | | import com.thhy.general.config.SysUserInfo; |
| | | import com.thhy.general.utils.UserInfoUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | |
| | | String unitProjectName = values.get("unitProjectName").toString(); |
| | | |
| | | String segmentId = segmentMapper.segmentNameByProjectName(unitProjectName); |
| | | if(!segmentId1.equals(segmentId)){ |
| | | if(StringUtils.isNotBlank(segmentId) && !segmentId1.equals(segmentId)){ |
| | | return BasicResult.faild("11111","error","标段名称被占用"); |
| | | } |
| | | segmentMapper.segmentUpdate(values); |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.controller; |
| | | |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity; |
| | | import com.thhy.engineering.modules.biz.moldquality.service.MoldQualityService; |
| | | import com.thhy.general.common.BasicResult; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-25 14:57:04 |
| | | * 模具质量检测控制层 |
| | | */ |
| | | @RestController |
| | | @RequestMapping(value = "moldQuality") |
| | | public class MoldQualityController { |
| | | |
| | | @Autowired |
| | | private MoldQualityService moldQualityService; |
| | | |
| | | @PostMapping(value = "insert") |
| | | BasicResult insert(@RequestBody MoldQualityEntity moldQualityEntity){ |
| | | return moldQualityService.insert(moldQualityEntity); |
| | | } |
| | | |
| | | @GetMapping(value = "delete") |
| | | BasicResult delete(Integer id){ |
| | | return moldQualityService.delete(id); |
| | | } |
| | | |
| | | @PostMapping(value = "update") |
| | | BasicResult update(@RequestBody MoldQualityEntity moldQualityEntity){ |
| | | return moldQualityService.update(moldQualityEntity); |
| | | } |
| | | |
| | | /** |
| | | * 查询列表 |
| | | * @param map |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "findAll") |
| | | BasicResult findAll(@RequestBody Map<String,Object> map){ |
| | | return moldQualityService.findAll(map); |
| | | } |
| | | |
| | | /** |
| | | * 根据id查询一条 |
| | | * @param id |
| | | * @return |
| | | */ |
| | | @GetMapping(value = "findOneById") |
| | | BasicResult findOneById(Integer id){ |
| | | return moldQualityService.findOneById(id); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 获取模具编号列表 |
| | | * @return |
| | | */ |
| | | @GetMapping(value = "getMoldNum") |
| | | BasicResult getMoldNum(String proId){ |
| | | return moldQualityService.getMoldNum(proId); |
| | | } |
| | | |
| | | /** |
| | | * 根据项目和模具编号获取模具型号列表 |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "getMoldCode") |
| | | BasicResult getMoldCode(@RequestBody Map<String,Object> map){ |
| | | return moldQualityService.getMoldCode(map); |
| | | } |
| | | |
| | | /** |
| | | * 获取1条模具 |
| | | * @return |
| | | */ |
| | | @PostMapping(value = "getMoldByProIdAndModNumAndModCode") |
| | | BasicResult getMoldByProIdAndModNumAndModCode(@RequestBody Map<String,Object> map){ |
| | | return moldQualityService.getMoldByProIdAndModNumAndModCode(map); |
| | | } |
| | | |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.entity; |
| | | |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Builder; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-25 14:58:20 |
| | | * 模具质量检测实体 |
| | | */ |
| | | @Data |
| | | @Builder |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | public class MoldQualityEntity implements Serializable { |
| | | |
| | | private Integer id; |
| | | |
| | | /** |
| | | * 模具型号 |
| | | */ |
| | | private String mouldCode; |
| | | |
| | | /** |
| | | * 模具编号 |
| | | */ |
| | | private String mouldNum; |
| | | |
| | | /** |
| | | * 块号 |
| | | */ |
| | | private String blockNum; |
| | | |
| | | /** |
| | | * 尺寸 |
| | | */ |
| | | private String size; |
| | | |
| | | /** |
| | | * 转向 |
| | | */ |
| | | private String turn; |
| | | |
| | | /** |
| | | * 注浆孔 |
| | | */ |
| | | private String groutingHole; |
| | | |
| | | /** |
| | | * 检测内容 |
| | | */ |
| | | private String content; |
| | | |
| | | /** |
| | | * 上传监测表 |
| | | */ |
| | | private List<MoldQualityFileEntity> moldQualityFileEntities; |
| | | |
| | | /** |
| | | * 检查表日期 |
| | | */ |
| | | private Date checkDate; |
| | | |
| | | /** |
| | | * 检测单位 |
| | | */ |
| | | private String checkUnit; |
| | | private Date createDate; |
| | | private String createUser; |
| | | private String companyId; |
| | | private String proId; |
| | | private String proName; |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.entity; |
| | | |
| | | import lombok.AllArgsConstructor; |
| | | import lombok.Builder; |
| | | import lombok.Data; |
| | | import lombok.NoArgsConstructor; |
| | | |
| | | import java.io.Serializable; |
| | | import java.util.Date; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-26 8:53:53 |
| | | * 模具质量检测文件表 |
| | | */ |
| | | @Data |
| | | @AllArgsConstructor |
| | | @NoArgsConstructor |
| | | @Builder |
| | | public class MoldQualityFileEntity implements Serializable { |
| | | |
| | | private Integer id; |
| | | private Integer moldQualityId; |
| | | private String fileName; |
| | | private String fileUrl; |
| | | private Date createTime; |
| | | |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.mapper; |
| | | |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityFileEntity; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | import org.bouncycastle.voms.VOMSAttribute; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-26 8:59:05 |
| | | * 模具质量检测文件表mapper |
| | | */ |
| | | @Mapper |
| | | public interface MoldQualityFileMapper { |
| | | |
| | | void insertList(List<MoldQualityFileEntity> list); |
| | | |
| | | void delete(Integer moldQualityId); |
| | | |
| | | List<MoldQualityFileEntity> findFileList(Integer moldQualityId); |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.mapper; |
| | | |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-25 15:03:34 |
| | | * 模具质量检测mapper |
| | | */ |
| | | @Mapper |
| | | public interface MoldQualityMapper { |
| | | |
| | | void insert(MoldQualityEntity moldQualityEntity); |
| | | MoldQualityEntity findNewOne(); |
| | | |
| | | void delete(Integer id); |
| | | |
| | | void update(MoldQualityEntity moldQualityEntity); |
| | | |
| | | List<MoldQualityEntity> findAll(Map<String,Object> map); |
| | | |
| | | MoldQualityEntity findOneById(Integer id); |
| | | |
| | | |
| | | List<Map> getMoldNum(String proId); |
| | | |
| | | List<Map> getMoldCode(Map<String, Object> map); |
| | | |
| | | Map getMoldByProIdAndModNumAndModCode(Map<String,Object> map); |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.service; |
| | | |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity; |
| | | import com.thhy.general.common.BasicResult; |
| | | |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-25 15:06:07 |
| | | * 模具检测逻辑层 |
| | | */ |
| | | public interface MoldQualityService { |
| | | |
| | | |
| | | BasicResult insert(MoldQualityEntity moldQualityEntity); |
| | | |
| | | BasicResult delete(Integer id); |
| | | |
| | | BasicResult update(MoldQualityEntity moldQualityEntity); |
| | | |
| | | BasicResult findAll(Map<String,Object> map); |
| | | |
| | | BasicResult findOneById(Integer id); |
| | | |
| | | /** |
| | | * 获取模具编号列表 |
| | | * @return |
| | | */ |
| | | BasicResult getMoldNum(String proId); |
| | | |
| | | |
| | | /** |
| | | * 获取模具型号列表 |
| | | * @return |
| | | * @param map |
| | | */ |
| | | BasicResult getMoldCode(Map<String,Object> map); |
| | | |
| | | |
| | | /** |
| | | * 获取1条模具 |
| | | * @return |
| | | */ |
| | | BasicResult getMoldByProIdAndModNumAndModCode(Map<String,Object> map); |
| | | |
| | | } |
对比新文件 |
| | |
| | | package com.thhy.engineering.modules.biz.moldquality.service.impl; |
| | | |
| | | import com.github.pagehelper.PageHelper; |
| | | import com.github.pagehelper.PageInfo; |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity; |
| | | import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityFileEntity; |
| | | import com.thhy.engineering.modules.biz.moldquality.mapper.MoldQualityFileMapper; |
| | | import com.thhy.engineering.modules.biz.moldquality.mapper.MoldQualityMapper; |
| | | import com.thhy.engineering.modules.biz.moldquality.service.MoldQualityService; |
| | | import com.thhy.general.common.BasicResult; |
| | | import com.thhy.general.config.SysUserInfo; |
| | | import com.thhy.general.utils.UserInfoUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | /** |
| | | * @Author QiuYuHao |
| | | * @CreateDate 2023-10-25 15:06:40 |
| | | * 磨具监测实现层 |
| | | */ |
| | | |
| | | @Service |
| | | public class MoldQualityServiceImpl implements MoldQualityService { |
| | | |
| | | @Autowired |
| | | private MoldQualityMapper mapper; |
| | | |
| | | @Autowired |
| | | private MoldQualityFileMapper moldQualityFileMapper; |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public BasicResult insert(MoldQualityEntity moldQualityEntity) { |
| | | SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); |
| | | moldQualityEntity.setCompanyId(sysUserInfo.getCompanyId()); |
| | | moldQualityEntity.setCreateUser(sysUserInfo.getRealName()); |
| | | mapper.insert(moldQualityEntity); |
| | | MoldQualityEntity newOne = mapper.findNewOne(); |
| | | moldQualityEntity.getMoldQualityFileEntities().forEach(modFile->{ |
| | | modFile.setMoldQualityId(newOne.getId()); |
| | | }); |
| | | moldQualityFileMapper.insertList(moldQualityEntity.getMoldQualityFileEntities()); |
| | | return BasicResult.success(); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public BasicResult delete(Integer id) { |
| | | mapper.delete(id); |
| | | moldQualityFileMapper.delete(id); |
| | | return BasicResult.success(); |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public BasicResult update(MoldQualityEntity moldQualityEntity) { |
| | | mapper.update(moldQualityEntity); |
| | | moldQualityFileMapper.delete(moldQualityEntity.getId()); |
| | | List<MoldQualityFileEntity> moldQualityFileEntities = moldQualityEntity.getMoldQualityFileEntities(); |
| | | moldQualityFileEntities.forEach(moldFile->{ |
| | | moldFile.setMoldQualityId(moldQualityEntity.getId()); |
| | | }); |
| | | moldQualityFileMapper.insertList(moldQualityFileEntities); |
| | | return BasicResult.success(); |
| | | } |
| | | |
| | | @Override |
| | | public BasicResult findAll(Map<String, Object> map) { |
| | | SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); |
| | | String companyId = sysUserInfo.getCompanyId(); |
| | | map.put("companyId",companyId); |
| | | PageHelper.startPage((int)map.get("pageNum"),(int)map.get("pageSize")); |
| | | List<MoldQualityEntity> all = mapper.findAll(map); |
| | | all.forEach(moldQualityOne->{ |
| | | moldQualityOne.setMoldQualityFileEntities(moldQualityFileMapper.findFileList(moldQualityOne.getId())); |
| | | }); |
| | | PageInfo<MoldQualityEntity> moldQualityEntities = new PageInfo<>(all); |
| | | return BasicResult.success(moldQualityEntities); |
| | | } |
| | | |
| | | @Override |
| | | public BasicResult findOneById(Integer id) { |
| | | MoldQualityEntity oneById = mapper.findOneById(id); |
| | | oneById.setMoldQualityFileEntities(moldQualityFileMapper.findFileList(oneById.getId())); |
| | | return BasicResult.success(oneById); |
| | | } |
| | | |
| | | @Override |
| | | public BasicResult getMoldNum(String proId) { |
| | | return BasicResult.success(mapper.getMoldNum(proId)); |
| | | } |
| | | |
| | | @Override |
| | | public BasicResult getMoldCode(Map<String, Object> map) { |
| | | return BasicResult.success(mapper.getMoldCode(map)); |
| | | } |
| | | |
| | | @Override |
| | | public BasicResult getMoldByProIdAndModNumAndModCode(Map<String, Object> map) { |
| | | return BasicResult.success(mapper.getMoldByProIdAndModNumAndModCode(map)); |
| | | } |
| | | } |
对比新文件 |
| | |
| | | <?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.thhy.engineering.modules.biz.moldquality.mapper.MoldQualityFileMapper"> |
| | | |
| | | |
| | | <!--查询列表--> |
| | | <select id="findFileList" resultType="com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityFileEntity"> |
| | | SELECT |
| | | t.id, |
| | | t.moldQualityId, |
| | | t.fileName, |
| | | t.fileUrl, |
| | | t.createTime |
| | | from t_mold_quality_file t |
| | | where 1=1 |
| | | <if test="moldQualityId != null and moldQualityId !=''"> |
| | | and t.moldQualityId = #{moldQualityId} |
| | | </if> |
| | | </select> |
| | | |
| | | <!--插入操作--> |
| | | <insert id="insertList" parameterType="java.util.List"> |
| | | INSERT INTO t_mold_quality_file ( moldQualityId,fileName, fileUrl ) |
| | | VALUES |
| | | <foreach collection = "list" item = "item" separator=","> |
| | | ( #{item.moldQualityId},#{item.fileName},#{item.fileUrl} ) |
| | | </foreach> |
| | | </insert> |
| | | |
| | | |
| | | |
| | | <!--根据ID删除--> |
| | | <delete id="delete"> |
| | | delete from t_mold_quality_file |
| | | where moldQualityId=#{moldQualityId} |
| | | </delete> |
| | | |
| | | </mapper> |
对比新文件 |
| | |
| | | <?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.thhy.engineering.modules.biz.moldquality.mapper.MoldQualityMapper"> |
| | | |
| | | |
| | | <!--查询列表--> |
| | | <select id="findAll" parameterType="java.util.Map" resultType="com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity"> |
| | | SELECT |
| | | t.id, |
| | | t.mouldCode, |
| | | t.mouldNum, |
| | | t.blockNum, |
| | | t.size, |
| | | t.turn, |
| | | t.groutingHole, |
| | | t.content, |
| | | t.checkDate, |
| | | t.checkUnit, |
| | | t.createDate, |
| | | t.createUser, |
| | | t.companyId, |
| | | t.proId, |
| | | sp.pro_name proName |
| | | from t_mold_quality t |
| | | left join sys_project sp ON sp.pro_id = t.proId |
| | | where sp.company_id = #{companyId} |
| | | <if test="proId != null and proId !=''"> |
| | | and t.proId = #{proId} |
| | | </if> |
| | | <if test="mouldNum != null and mouldNum !=''"> |
| | | and t.mouldNum = #{mouldNum} |
| | | </if> |
| | | <if test="mouldCode != null and mouldCode !=''"> |
| | | and t.mouldCode = #{mouldCode} |
| | | </if> |
| | | order by t.createDate desc |
| | | </select> |
| | | |
| | | <select id="findNewOne" resultType="com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity"> |
| | | SELECT |
| | | t.id, |
| | | t.mouldCode, |
| | | t.mouldNum, |
| | | t.blockNum, |
| | | t.size, |
| | | t.turn, |
| | | t.groutingHole, |
| | | t.content, |
| | | t.checkDate, |
| | | t.checkUnit, |
| | | t.createDate, |
| | | t.createUser, |
| | | t.companyId, |
| | | t.proId |
| | | from t_mold_quality t |
| | | order by t.createDate desc |
| | | limit 1 |
| | | </select> |
| | | <!--插入操作--> |
| | | <insert id="insert"> |
| | | insert into t_mold_quality |
| | | <trim prefix="(" suffix=")" suffixOverrides="," > |
| | | <if test="id != null"> |
| | | id, |
| | | </if> |
| | | <if test="mouldCode != null"> |
| | | mouldCode, |
| | | </if> |
| | | <if test="mouldNum != null"> |
| | | mouldNum, |
| | | </if> |
| | | <if test="blockNum != null"> |
| | | blockNum, |
| | | </if> |
| | | <if test="size != null"> |
| | | size, |
| | | </if> |
| | | <if test="turn != null"> |
| | | turn, |
| | | </if> |
| | | <if test="groutingHole != null"> |
| | | groutingHole, |
| | | </if> |
| | | <if test="content != null"> |
| | | content, |
| | | </if> |
| | | <if test="checkDate != null"> |
| | | checkDate, |
| | | </if> |
| | | <if test="checkUnit != null"> |
| | | checkUnit, |
| | | </if> |
| | | <if test="createDate != null"> |
| | | createDate, |
| | | </if> |
| | | <if test="createUser != null"> |
| | | createUser, |
| | | </if> |
| | | <if test="companyId != null"> |
| | | companyId, |
| | | </if> |
| | | <if test="proId != null"> |
| | | proId, |
| | | </if> |
| | | </trim> |
| | | |
| | | <trim prefix="values (" suffix=")" suffixOverrides="," > |
| | | <if test="id != null"> |
| | | #{id,jdbcType=INTEGER}, |
| | | </if> |
| | | <if test="mouldCode != null"> |
| | | #{mouldCode,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="mouldNum != null"> |
| | | #{mouldNum,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="blockNum != null"> |
| | | #{blockNum,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="size != null"> |
| | | #{size,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="turn != null"> |
| | | #{turn,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="groutingHole != null"> |
| | | #{groutingHole,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="content != null"> |
| | | #{content,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="checkDate != null"> |
| | | #{checkDate,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="checkUnit != null"> |
| | | #{checkUnit,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="createDate != null"> |
| | | #{createDate,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="createUser != null"> |
| | | #{createUser,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="companyId != null"> |
| | | #{companyId,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="proId != null"> |
| | | #{proId,jdbcType=VARCHAR}, |
| | | </if> |
| | | </trim> |
| | | </insert> |
| | | |
| | | |
| | | <!--更新操作--> |
| | | <update id="update"> |
| | | update t_mold_quality |
| | | <set> |
| | | <if test="mouldCode != null"> |
| | | mouldCode = #{mouldCode,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="mouldNum != null"> |
| | | mouldNum = #{mouldNum,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="blockNum != null"> |
| | | blockNum = #{blockNum,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="size != null"> |
| | | size = #{size,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="turn != null"> |
| | | turn = #{turn,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="groutingHole != null"> |
| | | groutingHole = #{groutingHole,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="content != null"> |
| | | content = #{content,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="checkDate != null"> |
| | | checkDate = #{checkDate,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="checkUnit != null"> |
| | | checkUnit = #{checkUnit,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="createDate != null"> |
| | | createDate = #{createDate,jdbcType=TIMESTAMP}, |
| | | </if> |
| | | <if test="createUser != null"> |
| | | createUser = #{createUser,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="companyId != null"> |
| | | companyId = #{companyId,jdbcType=VARCHAR}, |
| | | </if> |
| | | <if test="proId != null"> |
| | | proId = #{proId,jdbcType=VARCHAR}, |
| | | </if> |
| | | </set> |
| | | where id=#{id,jdbcType=INTEGER} |
| | | </update> |
| | | |
| | | <!--根据ID删除--> |
| | | <delete id="delete"> |
| | | delete from t_mold_quality |
| | | where id=#{id} |
| | | </delete> |
| | | |
| | | <select id="findOneById" resultType="com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity"> |
| | | select |
| | | t.id, |
| | | t.mouldCode, |
| | | t.mouldNum, |
| | | t.blockNum, |
| | | t.size, |
| | | t.turn, |
| | | t.groutingHole, |
| | | t.content, |
| | | t.checkDate, |
| | | t.checkUnit, |
| | | t.createDate, |
| | | t.createUser, |
| | | t.companyId, |
| | | t.proId, |
| | | sp.pro_name proName |
| | | from t_mold_quality t |
| | | left join sys_project sp ON sp.pro_id = t.proId |
| | | where t.id=#{id} |
| | | </select> |
| | | |
| | | <select id="getMoldNum" resultType="java.util.Map"> |
| | | select |
| | | DISTINCT mould_num mouldNum |
| | | from sys_mould |
| | | where pro_id =#{proId,jdbcType=VARCHAR} |
| | | </select> |
| | | |
| | | <select id="getMoldCode" resultType="java.util.Map"> |
| | | select |
| | | DISTINCT mould_code mouldCode |
| | | from sys_mould |
| | | where 1=1 |
| | | <if test="proId != null and proId !=''"> |
| | | and pro_id = #{proId} |
| | | </if> |
| | | <if test="mouldNum != null and mouldNum !=''"> |
| | | and mould_num = #{mouldNum} |
| | | </if> |
| | | </select> |
| | | |
| | | |
| | | <select id="getMoldByProIdAndModNumAndModCode" resultType="java.util.Map"> |
| | | select |
| | | sd1.dict_name as mouldTypeName, |
| | | sd2.dict_name as mouldSizeName, |
| | | sd3.dict_name as mouldTurnName, |
| | | sd4.dict_name as groutingHolesName |
| | | from sys_mould t |
| | | left join sys_dict sd1 on sd1.dict_id = t.mould_type |
| | | left join sys_dict sd2 on sd2.dict_id = t.mould_size |
| | | left join sys_dict sd3 on sd3.dict_id = t.mould_turn |
| | | left join sys_dict sd4 on sd4.dict_id = t.grouting_holes |
| | | WHERE t.is_use = 1 |
| | | <if test="mouldNum!=null and mouldNum!=''"> |
| | | and t.mould_num = #{mouldNum} |
| | | </if> |
| | | <if test="proId!=null and proId!=''"> |
| | | and t.pro_id = #{proId} |
| | | </if> |
| | | <if test="mouldCode!=null and mouldCode!=''"> |
| | | and t.mould_code = #{mouldCode} |
| | | </if> |
| | | </select> |
| | | |
| | | </mapper> |
| | |
| | | * 预埋件类型 字典 |
| | | */ |
| | | private String embedmentType; |
| | | @Excel(sort = 3,title = "类型") |
| | | private String dictName; |
| | | |
| | | /** |
| | |
| | | /** |
| | | * 计量单位 |
| | | */ |
| | | @Excel(sort = 3,title = "计量单位") |
| | | @Excel(sort = 4,title = "计量单位") |
| | | private String unit; |
| | | |
| | | /** |
| | | * 库存数量 |
| | | */ |
| | | @Excel(sort = 5,title = "库存数量") |
| | | private Integer stock; |
| | | |
| | | /** |
| | | * 位置 |
| | | */ |
| | | @Excel(sort = 4,title = "位置") |
| | | @Excel(sort = 7,title = "位置") |
| | | private String position; |
| | | |
| | | /** |
| | | * 报警数量 |
| | | */ |
| | | @Excel(sort = 6,title = "报警数") |
| | | private Integer alarmCount; |
| | | |
| | | /** |
| | |
| | | */ |
| | | private String createUser; |
| | | |
| | | @Excel(sort = 5,title = "备注") |
| | | private String remark; |
| | | |
| | | private String companyId; |
| | |
| | | * This field was generated by MyBatis Generator. |
| | | * This field corresponds to the database table sys_assist_good |
| | | * |
| | | * @mbg.generated Tue Apr 11 08:58:47 CST 2023 |
| | | * @mbg.generated Tue AembedmentInsetRecord/embedmentRecordListpr 11 08:58:47 CST 2023 |
| | | */ |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | |
| | | //预埋件名称 |
| | | private String embedmentName; |
| | | //预埋件规格 |
| | | @Excel(sort = 1,title = "规格型号") |
| | | private String embedmentModel; |
| | | |
| | | @Excel(sort = 1,title = "预埋件名称") |
| | | @Excel(sort = 0,title = "预埋件名称") |
| | | private String embedmentNameAndModel; |
| | | |
| | | public String getEmbedmentNameAndModel() { |
| | |
| | | /** |
| | | * 出库量/入库量 |
| | | */ |
| | | @Excel(sort = 2,title = "数量") |
| | | @Excel(sort = 2,title = "入库数量") |
| | | private Integer changeStock; |
| | | |
| | | /** |
| | |
| | | /** |
| | | * 入库时间 |
| | | */ |
| | | @Excel(sort = 6,title = "入库时间") |
| | | @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") |
| | | private String createTime; |
| | | |
| | |
| | | private Date endTime; |
| | | |
| | | private String id; |
| | | |
| | | private String bigNumber; |
| | | } |
| | |
| | | <if test="bigDeviceName !=null and bigDeviceName !=''"> |
| | | bd.big_device_name LIKE concat('%',#{bigDeviceName},'%') AND |
| | | </if> |
| | | <if test="bigNumber !=null and bigNumber !=''"> |
| | | bd.big_number LIKE concat('%',#{bigNumber},'%') AND |
| | | </if> |
| | | <if test="startTime !=null"> |
| | | t.check_time >= #{startTime} AND |
| | | </if> |
对比新文件 |
| | |
| | | <?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.thhy.secure.modules.biz.pipereport.mapper.PipeReportMapper"> |
| | | |
| | | |
| | | <select id="getPipeReportList" resultType="com.thhy.secure.modules.biz.pipereport.entity.PipeReportEntity"> |
| | | |
| | | SELECT |
| | | c.pro_id proId, |
| | | c.pro_name proName, |
| | | IFNULL(c.produceTotal,0) produceTotal, |
| | | IFNULL(d.qualifiedTotal,0) qualifiedTotal, |
| | | IFNULL(e.shippingNum,0) shippingNum |
| | | FROM ( |
| | | SELECT |
| | | COUNT(a.pro_id) produceTotal, |
| | | b.pro_id, |
| | | b.pro_name |
| | | FROM sys_project b |
| | | LEFT JOIN t_pipe_info a on b.pro_id = a.pro_id |
| | | WHERE b.is_use =1 and b.company_id = #{companyId} |
| | | GROUP BY b.pro_id |
| | | ) c |
| | | LEFT JOIN |
| | | ( |
| | | SELECT |
| | | COUNT(a.pro_id) qualifiedTotal, |
| | | a.pro_id, |
| | | b.pro_name |
| | | FROM t_pipe_info a |
| | | LEFT JOIN sys_project b on b.pro_id = a.pro_id |
| | | WHERE a.check_result = 1 and b.company_id = #{companyId} |
| | | GROUP BY a.pro_id |
| | | ) d ON d.pro_id = c.pro_id |
| | | LEFT JOIN |
| | | ( |
| | | SELECT |
| | | COUNT(a.pro_id) shippingNum, |
| | | a.pro_id, |
| | | b.pro_name |
| | | FROM t_pipe_out a |
| | | LEFT JOIN sys_project b on b.pro_id = a.pro_id |
| | | WHERE b.company_id = #{companyId} |
| | | GROUP BY a.pro_id |
| | | ) e on e.pro_id = c.pro_id |
| | | |
| | | </select> |
| | | |
| | | <select id="getSteelReportList" resultType="com.thhy.secure.modules.biz.pipereport.entity.PipeReportEntity"> |
| | | SELECT |
| | | c.pro_id proId, |
| | | c.pro_name proName, |
| | | IFNULL(c.produceTotal,0) produceTotal, |
| | | IFNULL(d.qualifiedTotal,0) qualifiedTotal, |
| | | IFNULL(e.moldedNotNum,0) moldedNotNum, |
| | | IFNULL(f.moldedNum,0) moldedNum |
| | | FROM( |
| | | SELECT |
| | | COUNT(a.pro_id) produceTotal, |
| | | b.pro_id, |
| | | b.pro_name |
| | | FROM sys_project b |
| | | LEFT JOIN t_steel_produce a on b.pro_id = a.pro_id |
| | | WHERE b.is_use =1 and b.company_id = #{companyId} |
| | | GROUP BY b.pro_id |
| | | |
| | | ) c |
| | | LEFT JOIN |
| | | ( |
| | | SELECT |
| | | COUNT(a.pro_id) qualifiedTotal, |
| | | a.pro_id, |
| | | b.pro_name |
| | | FROM t_steel_produce a |
| | | LEFT JOIN sys_project b on b.pro_id = a.pro_id |
| | | WHERE a.is_qualified = 1 and a.is_use = 1 and b.company_id = #{companyId} |
| | | GROUP BY a.pro_id |
| | | ) d ON d.pro_id = c.pro_id |
| | | LEFT JOIN |
| | | ( |
| | | SELECT |
| | | COUNT(a.pro_id) moldedNotNum, |
| | | a.pro_id, |
| | | b.pro_name |
| | | FROM t_steel_produce a |
| | | LEFT JOIN sys_project b on b.pro_id = a.pro_id |
| | | WHERE a.is_model = 2 and a.is_use = 1 and b.company_id = #{companyId} |
| | | GROUP BY a.pro_id |
| | | ) e on e.pro_id = c.pro_id |
| | | LEFT JOIN |
| | | ( |
| | | SELECT |
| | | COUNT(a.pro_id) moldedNum, |
| | | a.pro_id, |
| | | b.pro_name |
| | | FROM t_steel_produce a |
| | | LEFT JOIN sys_project b on b.pro_id = a.pro_id |
| | | WHERE a.is_model = 1 and a.is_use = 1 and b.company_id = #{companyId} |
| | | GROUP BY a.pro_id |
| | | ) f on f.pro_id = c.pro_id |
| | | </select> |
| | | |
| | | </mapper> |
| | |
| | | import Safety from './modules/safety'; // 安全管理模块 |
| | | import Scan from './modules/scan'; // 扫码跳转到对应页面 |
| | | import Green from './modules/green'; // 扫码跳转到对应页面 |
| | | import Quality from './modules/quality'; // 质量管理界面 |
| | | |
| | | export default { |
| | | System, |
| | |
| | | Analyse, |
| | | Safety, |
| | | Scan, |
| | | Green |
| | | Green, |
| | | Quality |
| | | } |
对比新文件 |
| | |
| | | /** |
| | | * 质量管理 |
| | | */ |
| | | import axios from '../request'; |
| | | export default{ |
| | | /** |
| | | * 模具质量检测 |
| | | */ |
| | | |
| | | // 获取模具编号 |
| | | getMouldNumberLists: params => |
| | | axios.get('/engineering/moldQuality/getMoldNum', {params}), |
| | | // 获取模具型号 |
| | | getMuuldCodeLists: params => |
| | | axios.post('/engineering/moldQuality/getMoldCode', params), |
| | | //通过项目,模具编号,型号获取尺寸等信息 |
| | | getProjectThroughSizes: params => |
| | | axios.post('/engineering/moldQuality/getMoldByProIdAndModNumAndModCode', params), |
| | | //查询质量尺寸检查列表 |
| | | searchQulityLists: params => |
| | | axios.post('/engineering/moldQuality/findAll', params), |
| | | //添加质量尺寸 |
| | | addQulityInfo: params => |
| | | axios.post('/engineering/moldQuality/insert', params), |
| | | //修改质量尺寸 |
| | | updateQulityInfo: params => |
| | | axios.post('/engineering/moldQuality/update', params), |
| | | //质量尺寸详情 |
| | | detailsQulityInfo: params => |
| | | axios.get('/engineering/moldQuality/findOneById', {params}), |
| | | //删除质量尺寸 |
| | | deleteQulityInfo: params => |
| | | axios.get('/engineering/moldQuality/delete', {params}), |
| | | } |
| | |
| | | }; |
| | | </script> |
| | | <style lang="scss" scoped> |
| | | .el-pagination {
|
| | | text-align: right;
|
| | | }
|
| | |
|
| | | // 主体底部样式 |
| | | ::v-deep.el-pagination .btn-prev, |
| | | ::v-deep.el-pagination .btn-next, |
| | |
| | | } |
| | | |
| | | .pagination-container { |
| | | margin-top: 30px; |
| | | margin: 30px 0;
|
| | | } |
| | | </style> |
| | |
| | | <style lang="scss" scoped>
|
| | | .box {
|
| | | height: 100%;
|
| | | display: flex;
|
| | | flex-direction: column;
|
| | | }
|
| | |
|
| | | .el-table {
|
| | | overflow: auto;
|
| | | border: none;
|
| | | height: 100%;
|
| | | }
|
| | |
| | | if(res.statusMsg === 'ok') { |
| | | this.total = res.data.total; |
| | | this.dataList = res.data.list; |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | this.loading = false; |
| | | }) |
| | |
| | | if(res.statusMsg === 'ok') { |
| | | this.total = res.data.total; |
| | | this.dataList = res.data.list; |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | this.loading = false; |
| | | }) |
| | |
| | | <el-input v-model="ruleForm.correctionBefore" :size="size" clearable placeholder="请输入库存数量" :disabled="disabled"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="校正数量:" prop="correctionNum" v-if="!asyncTitle"> |
| | | <el-input v-model="ruleForm.correctionNum" type="number" :size="size" clearable placeholder="请输入校正数量" @blur="changeAfter"></el-input> |
| | | <el-input v-model="ruleForm.correctionNum" type="number" :size="size" clearable placeholder="请输入校正数量" @input="changeAfter"></el-input>
|
| | | </el-form-item> |
| | | <el-form-item label="校正后数量:" prop="correctionAfter" v-if="!asyncTitle"> |
| | | <el-input v-model="ruleForm.correctionAfter" :size="size" clearable placeholder="请输入校正后数量" :disabled="true"></el-input> |
| | |
| | | <el-dialog class="prop_dialog" :title="asyncTitle ? '预警设置' : '库存校正'" :close-on-click-modal="false" |
| | | :visible.sync="asyncVisible" width="35%"> |
| | | <el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="auto" class="rule_form"> |
| | | <el-form-item label="物品名称:" prop="embedmentName"> |
| | | <el-form-item label="预埋件名称:" prop="embedmentName">
|
| | | <el-input v-model="ruleForm.embedmentName" :size="size" clearable placeholder="请输入物品名称" |
| | | :disabled="disabled"></el-input> |
| | | </el-form-item> |
| | |
| | | </el-form-item> |
| | | <el-form-item label="校正数量:" prop="correctionNum" v-if="!asyncTitle"> |
| | | <el-input v-model="ruleForm.correctionNum" type="number" :size="size" clearable placeholder="请输入校正数量" |
| | | @blur="changeAfter"></el-input> |
| | | @input="changeAfter"></el-input>
|
| | | </el-form-item> |
| | | <el-form-item label="校正后数量:" prop="correctionAfter" v-if="!asyncTitle"> |
| | | <el-input v-model="ruleForm.correctionAfter" :size="size" clearable placeholder="请输入校正后数量" |
| | |
| | | <div>{{ showInfo(row.proHas) }}</div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="转向" align="center" show-overflow-tooltip> |
| | | <el-table-column label="转向" align="center" width="130">
|
| | | <template #default="{ row }"> |
| | | <div>{{ showInfo(row.proTurns) }}</div> |
| | | </template> |
| | |
| | | <!-- dialog -->
|
| | | <el-dialog class="prop_dialog" v-if="isRender" :title="dialogTitle" :visible.sync="asyncVisible" width="660px"
|
| | | @close="closeForm">
|
| | |
|
| | | <cpnForm :form-config="formConfig"></cpnForm>
|
| | | <!-- form组件未开发完 -->
|
| | | <!-- <cpnForm :form-config="formConfig"></cpnForm> -->
|
| | |
|
| | | <el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="auto" class="rule_form">
|
| | | <el-form-item label="项目名称:" prop="proId">
|
| | |
| | | <script>
|
| | | import {throttle} from '../../plugins/public'; // 导入节流、动态切换组件尺寸方法
|
| | | import cpnTable from '@/components/element/Table'
|
| | | import cpnForm from '@/components/element/Form'
|
| | | // import cpnForm from '@/components/element/Form'
|
| | | export default {
|
| | | data() {
|
| | | return {
|
| | |
| | | }
|
| | | ]
|
| | | },
|
| | | // formConfig: {
|
| | | // formModels: {
|
| | | // proId: '', // 项目名称id
|
| | | // mileage: '', // 起讫里程
|
| | | // unitProjectName: '', // 单位工程名称
|
| | | // segmentAdmin: '', // 需求负责人
|
| | | // shieldEnp: '', // 盾构单位
|
| | | // startTime: null, // 开始时间
|
| | | // endTime: null, // 结束时间
|
| | | // duration: '', // 工期
|
| | | // station: '', // 站点
|
| | | // segmentList: [], // 标段需求
|
| | | // },
|
| | | // formItems: [
|
| | | // {
|
| | | // type: 'input', label: '用户id'
|
| | | // },
|
| | | // {
|
| | | // type: 'input', label: '用户名'
|
| | | // },
|
| | |
|
| | | formConfig: {
|
| | | formModels: {
|
| | | proId: '', // 项目名称id
|
| | | mileage: '', // 起讫里程
|
| | | unitProjectName: '', // 单位工程名称
|
| | | segmentAdmin: '', // 需求负责人
|
| | | shieldEnp: '', // 盾构单位
|
| | | startTime: null, // 开始时间
|
| | | endTime: null, // 结束时间
|
| | | duration: '', // 工期
|
| | | station: '', // 站点
|
| | | segmentList: [], // 标段需求
|
| | | },
|
| | | formItems: [
|
| | | {
|
| | | type: 'input', label: '用户id'
|
| | | },
|
| | | {
|
| | | type: 'input', label: '用户名'
|
| | | },
|
| | |
|
| | | {
|
| | | type: 'input', label: '真实姓名'
|
| | | },
|
| | | {
|
| | | type: 'input', label: '电话号码'
|
| | | },
|
| | | {
|
| | | type: 'select', label: '用户状态', options: [
|
| | | {label: '禁用', value: 0},
|
| | | {label: '启用', value: 1}
|
| | | ]
|
| | | },
|
| | | {
|
| | | type: 'datepicker', label: '创建时间', otherOptions: {
|
| | | startPlaceholder: '开始时间',
|
| | | endPlaceholder: '结束时间',
|
| | | type: 'daterange',
|
| | | 'unlink-panels': true
|
| | | }
|
| | | }
|
| | | ],
|
| | | itemColLayout: {
|
| | | span: 8
|
| | | }
|
| | | }
|
| | | // {
|
| | | // type: 'input', label: '真实姓名'
|
| | | // },
|
| | | // {
|
| | | // type: 'input', label: '电话号码'
|
| | | // },
|
| | | // {
|
| | | // type: 'select', label: '用户状态', options: [
|
| | | // {label: '禁用', value: 0},
|
| | | // {label: '启用', value: 1}
|
| | | // ]
|
| | | // },
|
| | | // {
|
| | | // type: 'datepicker', label: '创建时间', otherOptions: {
|
| | | // startPlaceholder: '开始时间',
|
| | | // endPlaceholder: '结束时间',
|
| | | // type: 'daterange',
|
| | | // 'unlink-panels': true
|
| | | // }
|
| | | // }
|
| | | // ],
|
| | | // itemColLayout: {
|
| | | // span: 8
|
| | | // }
|
| | | // }
|
| | | }
|
| | | },
|
| | | components: {
|
| | | cpnTable,
|
| | | cpnForm
|
| | | // cpnForm
|
| | | },
|
| | | computed: {
|
| | | isUpdate() {
|
| | | return this.submitMode === 'update'
|
| | | },
|
| | | dialogTitle() {
|
| | | return this.isUpdate ? '修改新增单位工程' : '新增单位工程'
|
| | | return this.isUpdate ? '修改单位工程' : '新增单位工程'
|
| | | },
|
| | | },
|
| | | created() {
|
| | |
| | | <template> |
| | | <div>模具质量检测</div> |
| | | <div class="main"> |
| | | <div class="main_tabs"> |
| | | <el-tabs v-model="activeName" @tab-click="handleClick"> |
| | | <el-tab-pane label="模具尺寸检查" name="first"> |
| | | <pattern-check ref="pattern"></pattern-check> |
| | | </el-tab-pane> |
| | | <el-tab-pane label="三维检查" name="second"> |
| | | <threed-check ref="threed"></threed-check> |
| | | </el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import PatternCheck from './components/PatternCheck.vue'//模具尺寸检查 |
| | | import ThreedCheck from './components/ThreedCheck.vue'//三维检查 |
| | | export default { |
| | | components:{ |
| | | PatternCheck, |
| | | ThreedCheck, |
| | | }, |
| | | data(){ |
| | | return{ |
| | | activeName:'first' |
| | | } |
| | | }, |
| | | mounted(){ |
| | | this.$refs.pattern.searchButtonInfo(true); |
| | | this.$refs.pattern.getAllPersons(); |
| | | }, |
| | | methods:{ |
| | | //切换界面 |
| | | handleClick(tab){ |
| | | switch(tab.name){ |
| | | case 'second': |
| | | this.$refs.threed.searchButtonInfo(true); |
| | | this.$refs.threed.getAllPersons(); |
| | | break; |
| | | default: |
| | | this.$refs.pattern.searchButtonInfo(true); |
| | | this.$refs.pattern.getAllPersons(); |
| | | } |
| | | }, |
| | | } |
| | | } |
| | | </script> |
| | | <style scoped lang="scss"> |
| | | @import'@/style/layout-main.scss'; |
| | | /deep/ .el-tabs__content{ |
| | | position: static; |
| | | } |
| | | |
| | | /deep/.main { |
| | | background: none; |
| | | } |
| | | </style> |
对比新文件 |
| | |
| | | <template> |
| | | <div class="main tabs_main" style="height:89%"> |
| | | <div class="main_header"> |
| | | <div class="header_item"> |
| | | <span class="header_label">项目名称:</span> |
| | | <el-select v-model="search.proId" placeholder="请选择项目名称" clearable @change="getNumberList"> |
| | | <el-option |
| | | v-for="item in optionsProjects" |
| | | :key="item.proId" |
| | | :label="item.proName" |
| | | :value="item.proId"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | <div class="header_item"> |
| | | <span class="header_label">模具编号:</span> |
| | | <el-select v-model="search.mouldNum" placeholder="请选择模具编号" clearable filterable> |
| | | <el-option |
| | | v-for="(item,index) in optionsMoulds" |
| | | :key="index" |
| | | :label="item.mouldNum" |
| | | :value="item.mouldNum"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | <div class="header_item"> |
| | | <span class="header_label">模具型号:</span> |
| | | <el-select v-model="search.mouldCode" placeholder="请选择模具型号" clearable> |
| | | <el-option |
| | | v-for="(item,index) in optionsCodes" |
| | | :key="index" |
| | | :label="item.mouldCode" |
| | | :value="item.mouldCode"> |
| | | </el-option> |
| | | </el-select> |
| | | </div> |
| | | <div class="header_item"> |
| | | <el-button icon="el-icon-search" v-if="showButton('search')" @click="searchButtonInfo(true)">查询</el-button> |
| | | <el-button class="search_btn" icon="el-icon-plus" v-if="showButton('insert')" @click="insertProp">新增</el-button> |
| | | </div> |
| | | </div> |
| | | <div class="main_content"> |
| | | <el-table |
| | | v-loading="loading" |
| | | :data="dataList" |
| | | height="100%"> |
| | | <el-table-column align="center" label="序号" width="60"> |
| | | <template #default="scope"> |
| | | <span>{{(pageNum - 1) * pageSize + scope.$index + 1}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="proName" label="项目名称" align="center" ></el-table-column> |
| | | <el-table-column prop="mouldNum" label="模具编号" align="center" ></el-table-column> |
| | | <el-table-column prop="mouldCode" label="模具型号" align="center" ></el-table-column> |
| | | <el-table-column prop="blockNum" label="块号" align="center" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="size" label="尺寸" align="center" show-overflow-tooltip></el-table-column> |
| | | <el-table-column prop="turn" label="转向" align="center"></el-table-column> |
| | | <el-table-column prop="groutingHole" label="注浆孔" align="center"></el-table-column> |
| | | <el-table-column prop="content" label="检测内容" show-overflow-tooltip align="center"></el-table-column> |
| | | <el-table-column prop="checkDate" label="检查表日期" align="center"></el-table-column> |
| | | <el-table-column prop="checkUnit" label="检测单位" align="center"></el-table-column> |
| | | <el-table-column label="操作" align="center" width="150"> |
| | | <template #default="{ row }"> |
| | | <el-button class="table_btn" size="mini" v-if="showButton('update')" @click="updateProp(row)">修改</el-button> |
| | | <el-button class="delete_btn" size="mini" v-if="showButton('delete')" @click="deleteInfo(row)">删除</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div class="main_footer"> |
| | | <el-pagination |
| | | background |
| | | @current-change="changePageNum" |
| | | @size-change="changePageSize" |
| | | :current-page="pageNum" |
| | | :page-sizes="[10, 20, 50, 100]" |
| | | :page-size="pageSize" |
| | | layout="total, sizes, prev, pager, next, jumper" |
| | | :total="total"> |
| | | </el-pagination> |
| | | </div> |
| | | <el-dialog |
| | | class="prop_dialog" |
| | | :title="asyncTitle === true ? '新增' :'修改'" |
| | | :close-on-click-modal="false" |
| | | :visible.sync="asyncVisible" |
| | | width="45%"> |
| | | <el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="auto" class="rule_form"> |
| | | <el-form-item label="项目名称" prop="proId"> |
| | | <el-select v-model="ruleForm.proId" placeholder="请选择项目名称" @change="getNumberList"> |
| | | <el-option |
| | | v-for="item in optionsProjects" |
| | | :key="item.proId" |
| | | :label="item.proName" |
| | | :value="item.proId"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="模具编号" prop="mouldNum"> |
| | | <el-select v-model="ruleForm.mouldNum" placeholder="请选择模具编号" clearable @change="getSizeLists(1)"> |
| | | <el-option |
| | | v-for="(item,index) in optionsMoulds" |
| | | :key="index" |
| | | :label="item.mouldNum" |
| | | :value="item.mouldNum"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="模具型号" prop="mouldCode"> |
| | | <el-select v-model="ruleForm.mouldCode" placeholder="请选择模具型号" clearable @change="getSizeLists(2)"> |
| | | <el-option |
| | | v-for="(item,index) in optionsCodes" |
| | | :key="index" |
| | | :label="item.mouldCode" |
| | | :value="item.mouldCode"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="块号" prop="blockNum"> |
| | | <el-input v-model="ruleForm.blockNum" :size="size" clearable placeholder="请输入块号" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="尺寸:" prop="size"> |
| | | <el-input v-model="ruleForm.size" :size="size" clearable placeholder="请输入尺寸" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="转向:" prop="turn"> |
| | | <el-input v-model="ruleForm.turn" :size="size" clearable placeholder="请输入转向" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="注浆孔:" prop="groutingHole"> |
| | | <el-input v-model="ruleForm.groutingHole" :size="size" clearable placeholder="请输入注浆孔" :disabled="true"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="检测内容:" prop="content"> |
| | | <el-input v-model="ruleForm.content" :size="size" type="textarea" :rows="3" clearable placeholder="请输入检测内容"></el-input> |
| | | </el-form-item> |
| | | <el-form-item label="上传检查表:" prop="files"> |
| | | <upload-file :file-list.sync="ruleForm.files"> |
| | | <template #info> |
| | | <span>点击上传文件,支持xls、xlsx、ppt、doc、docx、pdf格式</span> |
| | | </template> |
| | | </upload-file> |
| | | </el-form-item> |
| | | <el-form-item label="检查表日期:" prop="checkDate"> |
| | | <el-date-picker |
| | | v-model="ruleForm.checkDate" |
| | | type="date" |
| | | value-format="yyyy-MM-dd HH:mm:ss" |
| | | placeholder="请选择日期"> |
| | | </el-date-picker> |
| | | </el-form-item> |
| | | <el-form-item label="检测单位:" prop="checkUnit"> |
| | | <el-input v-model="ruleForm.checkUnit" :size="size" clearable placeholder="请输入检测单位"></el-input> |
| | | </el-form-item> |
| | | </el-form> |
| | | <div slot="footer"> |
| | | <el-button @click="asyncVisible = false">取 消</el-button> |
| | | <el-button class="submit_btn" @click="asyncTitle ? submitInsert() : submitUpdate()">提 交</el-button> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import { buttonPinia } from '../../../pinia/index'; |
| | | import UploadFile from '../../../components/uploadFile'; |
| | | import { throttle, changeSize } from '../../../plugins/public'; // 导入节流、动态切换组件尺寸方法 |
| | | export default { |
| | | components:{ |
| | | UploadFile |
| | | }, |
| | | data() { |
| | | return { |
| | | size: changeSize(), // 组件尺寸 |
| | | pageNum: 1, |
| | | pageSize: 10, |
| | | search:{},//查询条件 |
| | | total: 0, |
| | | loading: false, |
| | | dataList: [], //模具尺寸检查信息列表 |
| | | asyncTitle: true, // 对话框title 新增:true 修改:false |
| | | asyncVisible: false, // 添加 修改对话框 |
| | | ruleForm: { |
| | | files:[] |
| | | }, // 按钮表单 |
| | | rules: { |
| | | files: [{ |
| | | required: true, |
| | | message: '请选择上传文件', |
| | | trigger: ['blur','change'] |
| | | }], |
| | | proId: [{ |
| | | required: true, |
| | | message: '请选择项目名称', |
| | | trigger: 'change' |
| | | }], |
| | | mouldNum: [{ |
| | | required: true, |
| | | message: '请选择模具编号', |
| | | trigger: ['blur','change'] |
| | | }], |
| | | mouldCode: [{ |
| | | required: true, |
| | | message: '请选择模具型号', |
| | | trigger: ['change','blur'] |
| | | }], |
| | | checkDate: [{ |
| | | required: true, |
| | | message: '请选择检查表日期', |
| | | trigger: 'change' |
| | | }], |
| | | content: [{ |
| | | required: true, |
| | | message: '请输入检测内容', |
| | | trigger: 'blur' |
| | | }], |
| | | checkUnit: [{ |
| | | required: true, |
| | | message: '请输入检测单位', |
| | | trigger: 'blur' |
| | | }], |
| | | }, |
| | | optionsMoulds:[],//模具编号 |
| | | optionsCodes:[],//模具型号 |
| | | optionsProjects:[],//所有项目 |
| | | } |
| | | }, |
| | | watch: { |
| | | asyncVisible(bol) { |
| | | if(!bol) { |
| | | this.ruleForm = {}; |
| | | this.$refs.ruleForm.resetFields(); |
| | | }else{ |
| | | this.$set(this.ruleForm,'files',[]) |
| | | } |
| | | } |
| | | }, |
| | | mounted() { |
| | | const that = this; |
| | | // 根据窗口大小动态修改组件尺寸 |
| | | window.onresize = () => { |
| | | that.size = changeSize(); |
| | | } |
| | | }, |
| | | methods: { |
| | | //获得所有项目 |
| | | getAllPersons(){ |
| | | let params = { |
| | | pageNum: 1, |
| | | pageSize: 100000000 |
| | | } |
| | | this.$api.Engineer.searchProjects(params).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.optionsProjects = res.data.list |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | }, |
| | | //根据项目获取编号,型号 |
| | | getNumberList(val){ |
| | | if(this.asyncVisible===false&&this.search.proId ===''){ |
| | | this.$set(this.search,'mouldNum','') |
| | | this.$set(this.search,'mouldCode','') |
| | | } |
| | | if(this.asyncTitle){ |
| | | this.$set(this.ruleForm,'mouldNum','') |
| | | this.$set(this.ruleForm,'mouldCode','') |
| | | this.$set(this.ruleForm,'blockNum','') |
| | | this.$set(this.ruleForm,'size','') |
| | | this.$set(this.ruleForm,'turn','') |
| | | this.$set(this.ruleForm,'groutingHole','') |
| | | } |
| | | this.$api.Quality.getMouldNumberLists({proId:val}).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.optionsMoulds = res.data |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | this.$api.Quality.getMuuldCodeLists({proId:val}).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.optionsCodes = res.data |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | }, |
| | | //获取尺寸等信息 |
| | | getSizeLists(val){ |
| | | let params |
| | | if(this.asyncTitle){ |
| | | params={ |
| | | proId:this.ruleForm.proId, |
| | | mouldNum:this.ruleForm.mouldNum, |
| | | mouldCode:this.ruleForm.mouldCode |
| | | } |
| | | }else{ |
| | | params={ |
| | | proId:this.ruleForm.proId, |
| | | mouldNum:this.ruleForm.mouldNum, |
| | | mouldCode:this.ruleForm.mouldCode |
| | | } |
| | | } |
| | | if(val===1){ |
| | | this.$set(this.ruleForm,'mouldCode','') |
| | | let obj = {proId:this.ruleForm.proId,mouldNum:this.ruleForm.mouldNum} |
| | | this.$api.Quality.getMuuldCodeLists(obj).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.optionsCodes = res.data |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | }else{ |
| | | this.$api.Quality.getProjectThroughSizes(params).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.$set(this.ruleForm,'blockNum',res.data.mouldTypeName) |
| | | this.$set(this.ruleForm,'size',res.data.mouldSizeName) |
| | | this.$set(this.ruleForm,'turn',res.data.mouldTurnName) |
| | | this.$set(this.ruleForm,'groutingHole',res.data.groutingHolesName) |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | } |
| | | }, |
| | | // 查询按钮列表信息 |
| | | searchButtonInfo(bol) { |
| | | if(bol) { |
| | | this.pageNum = 1; |
| | | } |
| | | let params = Object.assign({},this.search,{ |
| | | pageNum: this.pageNum, |
| | | pageSize: this.pageSize |
| | | }) |
| | | this.loading = true; |
| | | this.$api.Quality.searchQulityLists(params).then((res) => { |
| | | if(res.statusMsg === 'ok') { |
| | | this.total = res.data.total; |
| | | this.dataList = res.data.list; |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | this.loading = false; |
| | | }) |
| | | }, |
| | | // 新增按钮信息 |
| | | insertProp() { |
| | | this.asyncTitle = true; |
| | | this.asyncVisible = true; |
| | | }, |
| | | // 修改按钮信息 |
| | | updateProp(row) { |
| | | this.asyncTitle = false; |
| | | this.asyncVisible = true; |
| | | this.getNumberList(row.proId) |
| | | this.$api.Quality.detailsQulityInfo({id: row.id}).then(res=>{ |
| | | if(res.statusMsg === 'ok'){ |
| | | this.ruleForm = res.data |
| | | this.$set(this.ruleForm, 'files', res.data.moldQualityFileEntities.map((item, index) => { |
| | | const type = item.fileName.split('.'); |
| | | return { |
| | | id: index + 1, |
| | | type: type[type.length - 1], |
| | | name: item.fileName, |
| | | url: item.fileUrl |
| | | } |
| | | })) |
| | | res.data.tbigPaths.filter(iten=>iten.fileType ===1).map(item=>{ |
| | | this.imageList.push({ |
| | | id: this.imageList.length + 1, |
| | | url:`https://pipe.thhy-tj.com/${item.filePath}`, |
| | | name:item.filePathName, |
| | | nameImg:item.filePathName |
| | | }) |
| | | }) |
| | | }else{ |
| | | this.$message.warning(res.statusMsg) |
| | | } |
| | | }) |
| | | }, |
| | | // 删除按钮信息 |
| | | deleteInfo(row) { |
| | | this.$confirm("该操作将删除该信息,是否继续删除?", "提示", { |
| | | confirmButtonText: "确定", |
| | | cancelButtonText: "取消", |
| | | type: "warning" |
| | | }) |
| | | .then(() => { |
| | | this.$api.Quality.deleteQulityInfo({id: row.id}) |
| | | .then(res => { |
| | | if(res.statusMsg === 'ok') { |
| | | this.searchButtonInfo(true); |
| | | this.$message.success("删除成功!"); |
| | | } else { |
| | | this.$message.warning(res.statusMsg); |
| | | } |
| | | }) |
| | | }) |
| | | .catch(() => { |
| | | this.$message.warning("您已取消"); |
| | | }) |
| | | }, |
| | | // 提交添加按钮信息 |
| | | submitInsert: throttle(function() { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if(valid) { |
| | | const params = Object.assign({}, this.ruleForm); |
| | | params.moldQualityFileEntities = params.files&¶ms.files.map(item => { |
| | | return { |
| | | fileName:item.name, |
| | | fileUrl:item.url |
| | | } |
| | | }); |
| | | delete params.files |
| | | this.$api.Quality.addQulityInfo(params).then((res) => { |
| | | if(res.statusMsg === 'ok') { |
| | | this.asyncVisible = false; |
| | | this.searchButtonInfo(true); |
| | | this.$message.success('添加成功!'); |
| | | } else { |
| | | this.$message.warning(res.statusMsg); |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | }, 3000), |
| | | // 提交修改按钮信息 |
| | | submitUpdate: throttle(function() { |
| | | this.$refs.ruleForm.validate((valid) => { |
| | | if(valid) { |
| | | const params = Object.assign({}, this.ruleForm); |
| | | params.moldQualityFileEntities = params.files&¶ms.files.map(item => { |
| | | return { |
| | | fileName:item.name, |
| | | fileUrl:item.url |
| | | } |
| | | }); |
| | | delete params.files |
| | | this.$api.Quality.updateQulityInfo(params).then((res) => { |
| | | if(res.statusMsg === 'ok') { |
| | | this.asyncVisible = false; |
| | | this.searchButtonInfo(true); |
| | | this.$message.success('修改成功!'); |
| | | } else { |
| | | this.$message.warning(res.statusMsg); |
| | | } |
| | | }) |
| | | } |
| | | }) |
| | | }, 3000), |
| | | // 判断按钮权限信息 |
| | | showButton(str) { |
| | | const pinia = buttonPinia(); |
| | | return pinia.$state.buttonInfo.includes(str); |
| | | }, |
| | | // 切换页数 |
| | | changePageNum(page) { |
| | | this.pageNum = page; |
| | | this.searchButtonInfo(); |
| | | }, |
| | | // 切换每页条数 |
| | | changePageSize(size) { |
| | | this.pageSize = size; |
| | | this.searchButtonInfo(); |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="sass" scoped> |
| | | @import '../../../style/layout-main.scss'; |
| | | </style> |
对比新文件 |
| | |
| | | <template> |
| | | <div>三维检测</div> |
| | | </template> |
| | |
| | | }, |
| | | { |
| | | name: "包保领导", key: "leaderList", formatter: (row) => { |
| | | let el = '' |
| | | let el = []
|
| | | row.leaderList.forEach(item => { |
| | | el += item.realName + '、' |
| | | el.push(item.realName)
|
| | | }) |
| | | return el |
| | | return el.join('、')
|
| | | } |
| | | }, |
| | | { |
| | | name: "小组成员", key: "staffList", formatter: (row) => { |
| | | let el = '' |
| | | let el = []
|
| | | row.staffList.forEach(item => { |
| | | el += item.realName + '、' |
| | | el.push(item.realName)
|
| | | }) |
| | | return el |
| | | return el.join('、')
|
| | | } |
| | | }, |
| | | {name: "风险源情况", key: "riskSourceSituation"}, |
| | | {name: "应对措施", key: "countermeasures"}, |
| | | {name: "风险源情况", key: "riskSourceSituation", showOverflowTip: true},
|
| | | {name: "应对措施", key: "countermeasures", showOverflowTip: true},
|
| | | { |
| | | operation: true, name: "操作", width: 140, value: [ |
| | | {name: "修改", class: "table_btn", permission: "update", handleRow: this.updateRow}, |
| | |
| | | |
| | | <style lang="scss" scoped> |
| | | @import '@/style/layout-main.scss'; |
| | | |
| | | /deep/ { |
| | | &::-webkit-scrollbar { |
| | | width: 8px; |
| | | height: 8px; |
| | | </style>
|
| | | <style lang="scss">
|
| | | .el-color-dropdown__btns {
|
| | | .el-color-dropdown__btn {
|
| | | background: #fff;
|
| | | border: 1px solid #dcdfe6;
|
| | | color: #606266;
|
| | | } |
| | | |
| | | &::-webkit-scrollbar-corner { |
| | | .el-color-dropdown__link-btn {
|
| | | border-color: transparent;
|
| | | background-color: transparent; |
| | | } |
| | | |
| | | &::-webkit-scrollbar-thumb { |
| | | border-radius: 10px; |
| | | box-shadow: inset 0 0 5px transparent; |
| | | background: #39B5FE; |
| | | } |
| | | |
| | | &::-webkit-scrollbar-track { |
| | | box-shadow: inset 0 0 5px transparent; |
| | | border-radius: 10px; |
| | | background: rgba(76, 188, 254, .3); |
| | | color: #66b1ff;
|
| | | } |
| | | } |
| | | </style> |
| | |
| | | let out = {}
|
| | | const params = {
|
| | | userId: this.userId,
|
| | | // strTime: this.chart.date?.[0],
|
| | | // endTime: this.chart.date?.[1],
|
| | | strTime: '2023-06-01',
|
| | | endTime: '2023-06-31',
|
| | | strTime: this.chart.date?.[0],
|
| | | endTime: this.chart.date?.[1],
|
| | | }
|
| | | const {data, statusMsg} = await this.$http.getOnlineTime(params)
|
| | | if (statusMsg === 'ok') {
|
| | |
| | | }
|
| | | const params = {
|
| | | userId: this.userId,
|
| | | // strTime: this.chart.date?.[0],
|
| | | // endTime: this.chart.date?.[1],
|
| | | strTime: '2023-06-01',
|
| | | endTime: '2023-06-31',
|
| | | strTime: this.chart.date?.[0],
|
| | | endTime: this.chart.date?.[1],
|
| | | }
|
| | | const {data, statusMsg} = await this.$http.getTrackLists(params)
|
| | | if (statusMsg === 'ok') {
|