From 6a9372d8683ccff59efdecde0792938e774b7e3a Mon Sep 17 00:00:00 2001 From: 叶松 <2217086471@qq.com> Date: 星期一, 30 十月 2023 16:07:00 +0800 Subject: [PATCH] Merge branch 'master' of http://111.30.93.211:10101/r/supipe --- hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/impl/FaceServerImpl.java | 18 sz_app/api/module/system.js | 2 hd/pipe/StaffManage/src/main/java/com/thhy/staff/config/StartListener.java | 25 hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/mapper/MoldQualityMapper.java | 3 hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/controller/MoldQualityController.java | 8 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentRecordEntity.java | 6 web/src/views/GreenBuild/WeldSmoke.vue | 106 ++ sz_app/api/http.js | 2 web/.env.production | 3 web/src/views/EquipmentManage/EquipSpot.vue | 4 hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/controller/SysMenusController.java | 23 hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/mapper/SysMenusMapper.java | 2 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/smoke/SmokeMessage.java | 73 + hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/ISysMenusService.java | 3 sz_app/pages.json | 21 web/.env.development | 1 hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/mapper/PlatUserMapper.java | 4 sz_app/manifest.json | 2 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/HelmetService.java | 6 hd/pipe/UserCore/src/main/resources/mapping/SysMenusMapper.xml | 79 ++ sz_app/pages/spotCheck/deviceSpot.vue | 340 +++++++++ hd/pipe/StaffManage/src/main/resources/mapping/PlatUserMapper.xml | 36 web/src/views/GreenBuild/EnvironMonitor.vue | 102 ++ hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/impl/SysMenusServiceImpl.java | 16 hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/FaceController.java | 10 hd/pipe/materialsManage/src/main/java/com/thhy/MaterialsApplication.java | 6 hd/pipe/materialsManage/src/main/resources/mapping/THelmetDeviceMapper.xml | 224 +++-- hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/GetUserTask.java | 45 + web/src/api/index.js | 2 sz_app/api/api.js | 4 hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/FaceServer.java | 2 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java | 25 web/src/api/modules/green.js | 14 hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/entity/PlatUser.java | 2 hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/MoldQualityService.java | 3 hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/impl/MoldQualityServiceImpl.java | 14 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/controller/HelmetController.java | 12 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataSmock.java | 50 sz_app/pages/spotCheck/index.vue | 255 ++++++ hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/mapper/HelmetMapper.java | 5 hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataValue.java | 118 +++ hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityMapper.xml | 273 +++++++ sz_app/pages/spotCheck/spotDetail.vue | 133 +++ hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentGoodsEntity.java | 5 hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityFileMapper.xml | 38 + sz_app/api/module/spot.js | 46 + 46 files changed, 2,013 insertions(+), 158 deletions(-) diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/config/StartListener.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/config/StartListener.java new file mode 100644 index 0000000..ea8eeab --- /dev/null +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/config/StartListener.java @@ -0,0 +1,25 @@ +package com.thhy.staff.config; + +import com.thhy.staff.modules.biz.face.controller.GetUserTask; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.boot.ApplicationArguments; +import org.springframework.boot.ApplicationRunner; +import org.springframework.context.annotation.Configuration; + +import java.util.Timer; + +@Configuration +public class StartListener implements ApplicationRunner { + + + @Value("${file.vfprefix}") + private String vfPrefix; + + @Override + public void run(ApplicationArguments args) throws Exception { + GetUserTask gutask = new GetUserTask(vfPrefix); + Timer timer = new Timer(); + timer.schedule(gutask,1000,300000); + } +} diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/FaceController.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/FaceController.java index 2e948f2..e8aad12 100644 --- a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/FaceController.java +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/FaceController.java @@ -112,5 +112,15 @@ } } + @RequestMapping("/allPerson") + public JSONObject allPerson(@RequestBody String mess){ + faceServer.allPerson(mess); + JSONObject jsonObject = new JSONObject(); + jsonObject.put("code",0); + jsonObject.put("msg","OK"); + jsonObject.put("success",true); + return jsonObject; + } + } diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/GetUserTask.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/GetUserTask.java new file mode 100644 index 0000000..7dc7260 --- /dev/null +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/controller/GetUserTask.java @@ -0,0 +1,45 @@ +package com.thhy.staff.modules.biz.face.controller; + +import com.alibaba.fastjson.JSONObject; +import com.thhy.general.utils.SpringContextUtils; +import com.thhy.staff.config.EmqxConfig; +import com.thhy.staff.modules.biz.face.mapper.FaceDeviceMapper; +import com.thhy.staff.utils.MqUtils; +import java.util.List; +import java.util.TimerTask; + +public class GetUserTask extends TimerTask { + + private String prefix; + + private FaceDeviceMapper faceDeviceMapper; + + public FaceDeviceMapper getFaceDeviceMapper() { + return SpringContextUtils.getBean(FaceDeviceMapper.class); + } + + private EmqxConfig emqxConfig; + + public EmqxConfig getEmqxConfig() { + return SpringContextUtils.getBean(EmqxConfig.class); + } + + public GetUserTask(String urlPrefix) { + this.prefix = urlPrefix; + } + + @Override + public void run() { + JSONObject jsonObject = new JSONObject(); + jsonObject.put("method","get_person_all"); + + JSONObject dataJson = new JSONObject(); + dataJson.put("path",prefix+"allPerson"); + jsonObject.put("data",dataJson); + jsonObject.put("params",new JSONObject()); + EmqxConfig emqxConfig = getEmqxConfig(); + FaceDeviceMapper faceDeviceMapper = getFaceDeviceMapper(); + List<String> sns = faceDeviceMapper.queryDevSn(); + MqUtils.createClient(emqxConfig,sns,jsonObject.toJSONString()); + } +} diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/FaceServer.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/FaceServer.java index 0c57764..31cdbbd 100644 --- a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/FaceServer.java +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/FaceServer.java @@ -20,4 +20,6 @@ void removeNotify(String mess); String queryOriStrById(String id); + + void allPerson(String mess); } diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/impl/FaceServerImpl.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/impl/FaceServerImpl.java index 707b5d1..a5ef6e8 100644 --- a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/impl/FaceServerImpl.java +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/face/service/impl/FaceServerImpl.java @@ -12,6 +12,7 @@ import com.thhy.staff.modules.biz.face.mapper.FaceDeviceMapper; import com.thhy.staff.modules.biz.face.service.FaceServer; import com.thhy.staff.modules.biz.platuser.entity.DoorLis; +import com.thhy.staff.modules.biz.platuser.entity.PlatUser; import com.thhy.staff.modules.biz.platuser.mapper.PlatUserMapper; import com.thhy.staff.utils.MqUtils; import org.checkerframework.checker.units.qual.A; @@ -172,6 +173,23 @@ return userMapper.queryOriStrById(id); } + @Override + public void allPerson(String mess) { + JSONObject jsonObject = JSONObject.parseObject(mess); + JSONArray jsonArray = jsonObject.getJSONArray("person_list"); + for(Object obj : jsonArray){ + JSONObject personJson = JSON.parseObject(obj.toString()); + String faceId = personJson.getString("person_id"); + int count = userMapper.countByFaceId(faceId); + if(count>0)continue; + PlatUser platUser = new PlatUser(); + platUser.setFaceId(faceId); + platUser.setIdNo(personJson.getString("id_card")); + platUser.setRealName(personJson.getString("name")); + userMapper.insertSamplePlatUser(platUser); + } + } + public static void main(String[] args) { JSONObject jsonObject = new JSONObject(); jsonObject.put("method","delete_person"); diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/entity/PlatUser.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/entity/PlatUser.java index 42f9162..9cc2101 100644 --- a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/entity/PlatUser.java +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/entity/PlatUser.java @@ -144,4 +144,6 @@ private Integer isLogin; private String phone; + + private String faceId; } diff --git a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/mapper/PlatUserMapper.java b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/mapper/PlatUserMapper.java index b988c39..c9398a4 100644 --- a/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/mapper/PlatUserMapper.java +++ b/hd/pipe/StaffManage/src/main/java/com/thhy/staff/modules/biz/platuser/mapper/PlatUserMapper.java @@ -115,4 +115,8 @@ void syncFail(@Param("userId") String userId,@Param("syncFailReason")String syncFailReason); String queryOriStrById(String id); + + int countByFaceId(String faceId); + + void insertSamplePlatUser(PlatUser platUser); } diff --git a/hd/pipe/StaffManage/src/main/resources/mapping/PlatUserMapper.xml b/hd/pipe/StaffManage/src/main/resources/mapping/PlatUserMapper.xml index 4591523..70a6c79 100644 --- a/hd/pipe/StaffManage/src/main/resources/mapping/PlatUserMapper.xml +++ b/hd/pipe/StaffManage/src/main/resources/mapping/PlatUserMapper.xml @@ -930,4 +930,40 @@ update sys_plat_user set sync_success = 2,sync_fail_reason = #{syncFailReason} where user_id = #{userId} </update> + <select id="countByFaceId" resultType="int"> + select count(user_id) from sys_plat_user where face_id = #{faceId} + </select> + + <insert id="insertSamplePlatUser"> + insert into sys_plat_user + <trim prefix="(" suffixOverrides="," suffix=")"> + <if test="userId != null and userId != ''"> + user_id, + </if> + <if test="realName != null and realName != ''"> + real_name, + </if> + <if test="faceId != null and faceId != ''"> + face_id, + </if> + <if test="idNo != null and idNo != ''"> + id_no, + </if> + </trim> + <trim prefix="values (" suffixOverrides="," suffix=")"> + <if test="userId != null and userId != ''"> + #{userId}, + </if> + <if test="realName != null and realName != ''"> + #{realName}, + </if> + <if test="faceId != null and faceId != ''"> + #{faceId}, + </if> + <if test="idNo != null and idNo != ''"> + #{idNo}, + </if> + </trim> + </insert> + </mapper> diff --git a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/controller/SysMenusController.java b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/controller/SysMenusController.java index 88a954d..a306cfd 100644 --- a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/controller/SysMenusController.java +++ b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/controller/SysMenusController.java @@ -1,6 +1,9 @@ package com.thhy.usercore.modules.sys.sysmenu.controller; +import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; +import com.alibaba.fastjson.parser.JSONToken; import com.github.pagehelper.PageInfo; import com.thhy.general.utils.PagingUtils; import com.thhy.general.common.BasicResult; @@ -17,7 +20,7 @@ import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; -import java.io.Serializable; +import java.io.*; import java.util.HashMap; import java.util.List; import java.util.Map; @@ -74,6 +77,24 @@ return BasicResult.success(sysMenusList); } + @RequestMapping("syncMenu") + public BasicResult syncMenu(){ + String value = ""; + try { + InputStream ins = new FileInputStream(new File("D:\\dd.txt")); + byte[] bytes = new byte[ins.available()]; + ins.read(bytes); + value = new String(bytes,"UTF-8"); + + } catch (Exception e) { + throw new RuntimeException(e); + } + + List<MenuTreeVo> sysMenusList = JSONArray.parseArray(value,MenuTreeVo.class); + sysMenusService.syncMenu(sysMenusList); + return BasicResult.success(sysMenusList); + } + @RequestMapping("allRoleMenu") public BasicResult allRoleMenu(@RequestBody MenuDto menuDto){ menuDto.setParentId("0"); diff --git a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/mapper/SysMenusMapper.java b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/mapper/SysMenusMapper.java index a68cd06..9fa353d 100644 --- a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/mapper/SysMenusMapper.java +++ b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/mapper/SysMenusMapper.java @@ -28,6 +28,8 @@ void insert(SysMenus sysmenus); + void insertVo(MenuTreeVo menuTreeVo); + void update(SysMenus sysmenus); int deletelogic(Serializable menuId); diff --git a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/ISysMenusService.java b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/ISysMenusService.java index 2ea58dc..bc74ef3 100644 --- a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/ISysMenusService.java +++ b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/ISysMenusService.java @@ -1,5 +1,6 @@ package com.thhy.usercore.modules.sys.sysmenu.service; +import com.alibaba.fastjson.JSONObject; import com.thhy.usercore.modules.sys.sysmenu.entity.*; import com.thhy.usercore.modules.sys.sysmenubutton.entity.MenuButtonVo; @@ -34,6 +35,8 @@ List<MenuTreeVo> findAllTree(MenuDto menuDto); + void syncMenu(List<MenuTreeVo> sysMenusList); + List<MenuButtonTreeVo> allRoleMenu(MenuDto menuDto); List<MenuButtonVo> MenuEnableButtons(MenuButtonDto menuButtonDto); diff --git a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/impl/SysMenusServiceImpl.java b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/impl/SysMenusServiceImpl.java index 5aed559..bdbf448 100644 --- a/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/impl/SysMenusServiceImpl.java +++ b/hd/pipe/UserCore/src/main/java/com/thhy/usercore/modules/sys/sysmenu/service/impl/SysMenusServiceImpl.java @@ -1,5 +1,8 @@ package com.thhy.usercore.modules.sys.sysmenu.service.impl; +import com.alibaba.fastjson.JSON; +import com.alibaba.fastjson.JSONArray; +import com.alibaba.fastjson.JSONObject; import com.thhy.general.utils.UserInfoUtils; import com.thhy.general.common.BasicStatus; import com.thhy.general.exception.BasicException; @@ -138,6 +141,19 @@ } @Override + @Transactional + public void syncMenu(List<MenuTreeVo> sysMenusList) { + for(MenuTreeVo tree : sysMenusList){ + + sysMenusMapper.insertVo(tree); + if(tree.getChildrens().size()>0){ + + syncMenu(tree.getChildrens()); + } + } + } + + @Override public List<MenuButtonTreeVo> allRoleMenu(MenuDto menuDto) { List<MenuButtonTreeVo> sysMenusList = sysMenusMapper.menuRoleTree(menuDto); for(MenuButtonTreeVo mv : sysMenusList){ diff --git a/hd/pipe/UserCore/src/main/resources/mapping/SysMenusMapper.xml b/hd/pipe/UserCore/src/main/resources/mapping/SysMenusMapper.xml index 6f8e3d6..51ae824 100644 --- a/hd/pipe/UserCore/src/main/resources/mapping/SysMenusMapper.xml +++ b/hd/pipe/UserCore/src/main/resources/mapping/SysMenusMapper.xml @@ -195,7 +195,86 @@ </trim> </insert> + <insert id="insertVo"> + insert into sys_menus + <trim prefix="(" suffix=")" suffixOverrides="," > + <if test="menuId != null"> + menu_id, + </if> + <if test="isUse != null"> + is_use, + </if> + <if test="path != null"> + path, + </if> + <if test="name != null"> + name, + </if> + <if test="hidden != null"> + hidden, + </if> + <if test="redirect != null"> + redirect, + </if> + <if test="parentId != null"> + parent_id, + </if> + <if test="title != null"> + title, + </if> + <if test="icon != null"> + icon, + </if> + <if test="component != null"> + component, + </if> + <if test="level != null"> + level, + </if> + <if test="isDefault != null"> + is_default, + </if> + </trim> + <trim prefix="values (" suffix=")" suffixOverrides="," > + <if test="menuId != null"> + #{menuId}, + </if> + <if test="isUse != null"> + #{isUse}, + </if> + <if test="path != null"> + #{path}, + </if> + <if test="name != null"> + #{name}, + </if> + <if test="hidden != null"> + #{hidden}, + </if> + <if test="redirect != null"> + #{redirect}, + </if> + <if test="parentId != null"> + #{parentId}, + </if> + <if test="title != null"> + #{title}, + </if> + <if test="icon != null"> + #{icon}, + </if> + <if test="component != null"> + #{component}, + </if> + <if test="level != null"> + #{level}, + </if> + <if test="isDefault != null"> + #{isDefault}, + </if> + </trim> + </insert> <!--更新操作--> <update id="update"> update sys_menus diff --git a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/controller/MoldQualityController.java b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/controller/MoldQualityController.java index aaa7602..0fc042d 100644 --- a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/controller/MoldQualityController.java +++ b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/controller/MoldQualityController.java @@ -66,12 +66,12 @@ } /** - * 获取模具型号列表 + * 根据项目和模具编号获取模具型号列表 * @return */ - @GetMapping(value = "getMoldCode") - BasicResult getMoldCode(String proId){ - return moldQualityService.getMoldCode(proId); + @PostMapping(value = "getMoldCode") + BasicResult getMoldCode(@RequestBody Map<String,Object> map){ + return moldQualityService.getMoldCode(map); } /** diff --git a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/mapper/MoldQualityMapper.java b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/mapper/MoldQualityMapper.java index 008a546..05cb4f1 100644 --- a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/mapper/MoldQualityMapper.java +++ b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/mapper/MoldQualityMapper.java @@ -1,7 +1,6 @@ package com.thhy.engineering.modules.biz.moldquality.mapper; import com.thhy.engineering.modules.biz.moldquality.entity.MoldQualityEntity; -import com.thhy.general.common.BasicResult; import org.apache.ibatis.annotations.Mapper; import java.util.List; @@ -29,7 +28,7 @@ List<Map> getMoldNum(String proId); - List<Map> getMoldCode(String proId); + List<Map> getMoldCode(Map<String, Object> map); Map getMoldByProIdAndModNumAndModCode(Map<String,Object> map); } diff --git a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/MoldQualityService.java b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/MoldQualityService.java index e602258..14b13a5 100644 --- a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/MoldQualityService.java +++ b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/MoldQualityService.java @@ -33,8 +33,9 @@ /** * 获取模具型号列表 * @return + * @param map */ - BasicResult getMoldCode(String proId); + BasicResult getMoldCode(Map<String,Object> map); /** diff --git a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/impl/MoldQualityServiceImpl.java b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/impl/MoldQualityServiceImpl.java index 9ddf2b5..f11a087 100644 --- a/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/impl/MoldQualityServiceImpl.java +++ b/hd/pipe/engineeringManage/src/main/java/com/thhy/engineering/modules/biz/moldquality/service/impl/MoldQualityServiceImpl.java @@ -10,7 +10,6 @@ import com.thhy.general.common.BasicResult; import com.thhy.general.config.SysUserInfo; import com.thhy.general.utils.UserInfoUtils; -import org.checkerframework.checker.units.qual.A; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -37,8 +36,8 @@ @Transactional(rollbackFor = Exception.class) public BasicResult insert(MoldQualityEntity moldQualityEntity) { SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo(); - String companyId = sysUserInfo.getCompanyId(); - moldQualityEntity.setCompanyId(companyId); + moldQualityEntity.setCompanyId(sysUserInfo.getCompanyId()); + moldQualityEntity.setCreateUser(sysUserInfo.getRealName()); mapper.insert(moldQualityEntity); MoldQualityEntity newOne = mapper.findNewOne(); moldQualityEntity.getMoldQualityFileEntities().forEach(modFile->{ @@ -63,7 +62,7 @@ moldQualityFileMapper.delete(moldQualityEntity.getId()); List<MoldQualityFileEntity> moldQualityFileEntities = moldQualityEntity.getMoldQualityFileEntities(); moldQualityFileEntities.forEach(moldFile->{ - moldFile.setId(moldQualityEntity.getId()); + moldFile.setMoldQualityId(moldQualityEntity.getId()); }); moldQualityFileMapper.insertList(moldQualityFileEntities); return BasicResult.success(); @@ -76,6 +75,9 @@ 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); } @@ -93,8 +95,8 @@ } @Override - public BasicResult getMoldCode(String proId) { - return BasicResult.success(mapper.getMoldCode(proId)); + public BasicResult getMoldCode(Map<String, Object> map) { + return BasicResult.success(mapper.getMoldCode(map)); } @Override diff --git a/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityFileMapper.xml b/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityFileMapper.xml new file mode 100644 index 0000000..6e6155b --- /dev/null +++ b/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityFileMapper.xml @@ -0,0 +1,38 @@ +<?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> diff --git a/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityMapper.xml b/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityMapper.xml new file mode 100644 index 0000000..880da22 --- /dev/null +++ b/hd/pipe/engineeringManage/src/main/resources/mapping/MoldQualityMapper.xml @@ -0,0 +1,273 @@ +<?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> diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/MaterialsApplication.java b/hd/pipe/materialsManage/src/main/java/com/thhy/MaterialsApplication.java index fe1fda3..350cde0 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/MaterialsApplication.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/MaterialsApplication.java @@ -2,6 +2,7 @@ import com.thhy.materials.modules.biz.helmet.smoke.SmokeServer; import org.mybatis.spring.annotation.MapperScan; +import org.springframework.beans.factory.annotation.Value; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @@ -16,6 +17,9 @@ @EnableScheduling public class MaterialsApplication implements CommandLineRunner { + @Value("${materialstcpport}") + private Integer tcpport; + @Resource private SmokeServer smokeServer; @@ -25,7 +29,7 @@ @Override public void run(String... args) throws Exception { - smokeServer.run(8973); + smokeServer.run(tcpport); } } diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentGoodsEntity.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentGoodsEntity.java index 3decc8b..e2ed314 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentGoodsEntity.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentGoodsEntity.java @@ -30,8 +30,8 @@ /** * 预埋件类型 字典 */ - @Excel(sort = 3,title = "类型") private String embedmentType; + @Excel(sort = 3,title = "类型") private String dictName; /** @@ -79,7 +79,6 @@ */ private String createUser; - @Excel(sort = 5,title = "备注") private String remark; private String companyId; @@ -87,7 +86,7 @@ * 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; diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentRecordEntity.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentRecordEntity.java index f361673..bfe9790 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentRecordEntity.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/embedment/entity/SysEmbedmentRecordEntity.java @@ -29,9 +29,10 @@ //预埋件名称 private String embedmentName; //预埋件规格 + @Excel(sort = 1,title = "规格型号") private String embedmentModel; - @Excel(sort = 1,title = "预埋件名称") + @Excel(sort = 0,title = "预埋件名称") private String embedmentNameAndModel; public String getEmbedmentNameAndModel() { @@ -46,7 +47,7 @@ /** * 出库量/入库量 */ - @Excel(sort = 2,title = "数量") + @Excel(sort = 2,title = "入库数量") private Integer changeStock; /** @@ -90,6 +91,7 @@ /** * 入库时间 */ + @Excel(sort = 6,title = "入库时间") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private String createTime; diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/controller/HelmetController.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/controller/HelmetController.java index 28a3317..6988e97 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/controller/HelmetController.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/controller/HelmetController.java @@ -2,6 +2,7 @@ import com.thhy.general.common.BasicResult; import com.thhy.materials.modules.biz.helmet.service.HelmetService; +import org.apache.ibatis.annotations.Mapper; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; @@ -70,6 +71,17 @@ public BasicResult helmetReportUser(@RequestBody Map<String,Object> values){ return helmetService.helmetReportUser(values); } + //烟尘数据 + @PostMapping("/dataSmockList") + public BasicResult dataSmockList(@RequestBody Map<String,Object> values){ + return helmetService.dataSmockList(values); + } + + //环境监测 + @PostMapping("/dataValuesList") + public BasicResult dataValuesList(@RequestBody Map<String,Object> values){ + return helmetService.dataValuesList(values); + } } diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataSmock.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataSmock.java index 7cdc954..ab48063 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataSmock.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataSmock.java @@ -20,103 +20,113 @@ /** * */ - private String gatewayCyc; + private String time; /** * */ - private String fans; + private String i00; /** * */ - private String v1run; + private String i01; /** * */ - private String uv1run; + private String i02; /** * */ - private String fanrun; + private String i03; /** * */ - private String uv2run; + private String i04; /** * */ - private String ssvrun; + private String i05; /** * */ - private String dp; + private String i06; /** * */ - private String t; + private String i07; /** * */ - private String oc; + private String i10; /** * */ - private String gatew; + private String i11; /** * */ - private String nxrun; + private String q00; /** * */ - private String alarm; + private String q01; /** * */ - private String times; + private String q02; /** * */ - private String rtcVolt; + private String q03; /** * */ - private String v2run; + private String q04; /** * */ - private String dxqvrun; + private String q05; /** * */ - private String press; + private String vb0; /** * */ - private String dc; + private String vb10; + + /** + * + */ + private String vb11; + + /** + * + */ + private String vb12; /** * This field was generated by MyBatis Generator. * This field corresponds to the database table t_data_smock * - * @mbg.generated Wed Oct 18 15:12:02 CST 2023 + * @mbg.generated Mon Oct 30 13:02:05 CST 2023 */ private static final long serialVersionUID = 1L; } \ No newline at end of file diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataValue.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataValue.java new file mode 100644 index 0000000..9fdb64b --- /dev/null +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/entity/TDataValue.java @@ -0,0 +1,118 @@ +package com.thhy.materials.modules.biz.helmet.entity; + +import lombok.Data; +import lombok.Getter; +import lombok.Setter; +import lombok.ToString; + +import java.io.Serializable; + +@Data +@Getter +@Setter +@ToString +public class TDataValue implements Serializable { + /** + * + */ + private Integer dataId; + + /** + * 设备编号 + */ + private Integer deviceId; + + /** + * 设备名称 + */ + private String deviceName; + + /** + * 账号 + */ + private String accountNumber; + + /** + * 上传时间 + */ + private String uploadTime; + + /** + * pm2.5 + */ + private String pm25; + + /** + * pm10 + */ + private String pm10; + + /** + * tsp + */ + private String tsp; + + /** + * 温度 + */ + private String temperature; + + /** + * 湿度 + */ + private String humidity; + + /** + * 数据6 + */ + private String data6; + + /** + * 风速 + */ + private String windSpeed; + + /** + * 风向 + */ + private String windDirection; + + /** + * tvoc + */ + private String tvoc; + + /** + * no2 + */ + private String no2; + + /** + * co + */ + private String co; + + /** + * so2 + */ + private String so2; + + /** + * o3 + */ + private String o3; + + + /** + * 噪音 + */ + private String noise; + + /** + * This field was generated by MyBatis Generator. + * This field corresponds to the database table t_data_value + * + * @mbg.generated Fri Oct 13 15:29:00 CST 2023 + */ + private static final long serialVersionUID = 1L; +} \ No newline at end of file diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/mapper/HelmetMapper.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/mapper/HelmetMapper.java index 5303370..9779300 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/mapper/HelmetMapper.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/mapper/HelmetMapper.java @@ -48,6 +48,9 @@ List<THelmetReport> helmetReportUser(Map<String, Object> values); - void smockInsert(TDataSmock tDataSmock); + void smockIn(TDataSmock tDataSmock); + List<TDataSmock> dataSmockList(Map<String, Object> values); + + List<TDataValue> dataValuesList(Map<String, Object> values); } diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/HelmetService.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/HelmetService.java index 9c5497b..8f3eabb 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/HelmetService.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/HelmetService.java @@ -42,5 +42,9 @@ BasicResult helmetReportUser(Map<String, Object> values); - void smockInsert(TDataSmock tDataSmock); + void smockIn(TDataSmock tDataSmock); + + BasicResult dataSmockList(Map<String, Object> values); + + BasicResult dataValuesList(Map<String, Object> values); } diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java index eb38b37..5cad1aa 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/service/impl/HelmetServiceImpl.java @@ -8,6 +8,7 @@ import com.thhy.materials.modules.biz.helmet.mapper.HelmetMapper; import com.thhy.materials.modules.biz.helmet.service.HelmetService; import org.springframework.stereotype.Service; +import sun.misc.Cache; import javax.annotation.Resource; import java.util.HashMap; @@ -134,8 +135,28 @@ } @Override - public void smockInsert(TDataSmock tDataSmock) { + public void smockIn(TDataSmock tDataSmock) { System.out.println("参数为---"+tDataSmock.toString()); - helmetMapper.smockInsert(tDataSmock); + helmetMapper.smockIn(tDataSmock); + } + + @Override + public BasicResult dataSmockList(Map<String, Object> values) { + Integer pageSize = Integer.valueOf(values.get("pageSize").toString()); + Integer pageNum = Integer.valueOf(values.get("pageNum").toString()); + PageHelper.startPage(pageNum,pageSize); + List<TDataSmock> dataSmocks = helmetMapper.dataSmockList(values); + PageInfo<TDataSmock> tDataSmockPageInfo = new PageInfo<>(dataSmocks); + return BasicResult.success(tDataSmockPageInfo); + } + + @Override + public BasicResult dataValuesList(Map<String, Object> values) { + Integer pageSize = Integer.valueOf(values.get("pageSize").toString()); + Integer pageNum = Integer.valueOf(values.get("pageNum").toString()); + PageHelper.startPage(pageNum,pageSize); + List<TDataValue> dataSmocks = helmetMapper.dataValuesList(values); + PageInfo<TDataValue> tDataValuePageInfo = new PageInfo<>(dataSmocks); + return BasicResult.success(tDataValuePageInfo); } } diff --git a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/smoke/SmokeMessage.java b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/smoke/SmokeMessage.java index 45069df..071d48e 100644 --- a/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/smoke/SmokeMessage.java +++ b/hd/pipe/materialsManage/src/main/java/com/thhy/materials/modules/biz/helmet/smoke/SmokeMessage.java @@ -1,7 +1,6 @@ package com.thhy.materials.modules.biz.helmet.smoke; import com.alibaba.fastjson.JSONObject; import com.thhy.materials.modules.biz.helmet.entity.TDataSmock; -import com.thhy.materials.modules.biz.helmet.mapper.HelmetMapper; import com.thhy.materials.modules.biz.helmet.service.HelmetService; import com.thhy.materials.modules.biz.utils.ApplicationContextUtil; import io.netty.buffer.ByteBuf; @@ -11,12 +10,7 @@ import io.netty.util.CharsetUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; -import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.HashMap; -import java.util.Map; @Component public class SmokeMessage extends SimpleChannelInboundHandler<ByteBuf>{ @@ -53,27 +47,54 @@ System.out.println("客户端接收到消息: " + in.toString(CharsetUtil.UTF_8)); JSONObject jsonObject11 = JSONObject.parseObject(in.toString(CharsetUtil.UTF_8)); System.out.println("客户端接收到消息: " + jsonObject11); + Object time = jsonObject11.get("time"); + String parems = jsonObject11.get("params").toString(); + JSONObject jsonObject = JSONObject.parseObject(parems); + System.out.println(time+"-------------"+jsonObject); TDataSmock tDataSmock = new TDataSmock(); - tDataSmock.setGatewayCyc(jsonObject11.get("gateway_cyc").toString()); - tDataSmock.setFans(jsonObject11.get("FanS").toString()); - tDataSmock.setV1run(jsonObject11.get("V1Run").toString()); - tDataSmock.setUv1run(jsonObject11.get("UV1Run").toString()); - tDataSmock.setFanrun(jsonObject11.get("FanRun").toString()); - tDataSmock.setUv2run(jsonObject11.get("UV2Run").toString()); - tDataSmock.setSsvrun(jsonObject11.get("SSVRun").toString()); - tDataSmock.setDp(jsonObject11.get("DP").toString()); - tDataSmock.setT(jsonObject11.get("T").toString()); - tDataSmock.setOc(jsonObject11.get("OC").toString()); - tDataSmock.setGatew(jsonObject11.get("gatew").toString()); - tDataSmock.setNxrun(jsonObject11.get("NXRun").toString()); - tDataSmock.setTimes(jsonObject11.get("time").toString()); - tDataSmock.setRtcVolt(jsonObject11.get("RTC_VOLT").toString()); - tDataSmock.setV2run(jsonObject11.get("V2Run").toString()); - tDataSmock.setDxqvrun(jsonObject11.get("DXQVRun").toString()); - tDataSmock.setPress(jsonObject11.get("Press").toString()); - tDataSmock.setDc(jsonObject11.get("Dc").toString()); - System.out.println("-------"+tDataSmock); - getUserService().smockInsert(tDataSmock); + tDataSmock.setTime(time.toString()); + tDataSmock.setI00(jsonObject.get("I00").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI01(jsonObject.get("I01").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI02(jsonObject.get("I02").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI03(jsonObject.get("I03").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI04(jsonObject.get("I04").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI05(jsonObject.get("I05").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI06(jsonObject.get("I06").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI07(jsonObject.get("I07").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI10(jsonObject.get("I10").toString().equals("true")?"开启":"关闭"); + tDataSmock.setI11(jsonObject.get("I11").toString().equals("true")?"开启":"关闭"); + tDataSmock.setQ00(jsonObject.get("Q00").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setQ01(jsonObject.get("Q01").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setQ02(jsonObject.get("Q02").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setQ03(jsonObject.get("Q03").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setQ04(jsonObject.get("Q04").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setQ05(jsonObject.get("Q05").toString().equals("true")?"运行中":"停止状态"); + tDataSmock.setVb0(jsonObject.get("VB0").toString()); + tDataSmock.setVb10(jsonObject.get("VB10").toString()); + tDataSmock.setVb11(jsonObject.get("VB11").toString()); + tDataSmock.setVb12(jsonObject.get("VB12").toString()); + +// TDataSmock tDataSmock = new TDataSmock(); +// tDataSmock.setGatewayCyc(jsonObject11.get("gateway_cyc").toString()); +// tDataSmock.setFans(jsonObject11.get("FanS").toString()); +// tDataSmock.setV1run(jsonObject11.get("V1Run").toString()); +// tDataSmock.setUv1run(jsonObject11.get("UV1Run").toString()); +// tDataSmock.setFanrun(jsonObject11.get("FanRun").toString()); +// tDataSmock.setUv2run(jsonObject11.get("UV2Run").toString()); +// tDataSmock.setSsvrun(jsonObject11.get("SSVRun").toString()); +// tDataSmock.setDp(jsonObject11.get("DP").toString()); +// tDataSmock.setT(jsonObject11.get("T").toString()); +// tDataSmock.setOc(jsonObject11.get("OC").toString()); +// tDataSmock.setGatew(jsonObject11.get("gatew").toString()); +// tDataSmock.setNxrun(jsonObject11.get("NXRun").toString()); +// tDataSmock.setTimes(jsonObject11.get("time").toString()); +// tDataSmock.setRtcVolt(jsonObject11.get("RTC_VOLT").toString()); +// tDataSmock.setV2run(jsonObject11.get("V2Run").toString()); +// tDataSmock.setDxqvrun(jsonObject11.get("DXQVRun").toString()); +// tDataSmock.setPress(jsonObject11.get("Press").toString()); +// tDataSmock.setDc(jsonObject11.get("Dc").toString()); +// System.out.println("-------"+tDataSmock); + getUserService().smockIn(tDataSmock); } @Override public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { diff --git a/hd/pipe/materialsManage/src/main/resources/mapping/THelmetDeviceMapper.xml b/hd/pipe/materialsManage/src/main/resources/mapping/THelmetDeviceMapper.xml index 94c0c00..d2189f2 100644 --- a/hd/pipe/materialsManage/src/main/resources/mapping/THelmetDeviceMapper.xml +++ b/hd/pipe/materialsManage/src/main/resources/mapping/THelmetDeviceMapper.xml @@ -553,132 +553,202 @@ order by sm_time desc </select> - <insert id="smockInsert" > + <insert id="smockIn" > insert into t_data_smock <trim prefix="(" suffix=")" suffixOverrides=","> <if test="smokeId != null"> smoke_id, </if> - <if test="gatewayCyc != null"> - gateway_cyc, + <if test="time != null"> + time, </if> - <if test="fans != null"> - FanS, + <if test="i00 != null"> + I00, </if> - <if test="v1run != null"> - V1Run, + <if test="i01 != null"> + I01, </if> - <if test="uv1run != null"> - UV1Run, + <if test="i02 != null"> + I02, </if> - <if test="fanrun != null"> - FanRun, + <if test="i03 != null"> + I03, </if> - <if test="uv2run != null"> - UV2Run, + <if test="i04 != null"> + I04, </if> - <if test="ssvrun != null"> - SSVRun, + <if test="i05 != null"> + I05, </if> - <if test="dp != null"> - DP, + <if test="i06 != null"> + I06, </if> - <if test="t != null"> - T, + <if test="i07 != null"> + I07, </if> - <if test="oc != null"> - OC, + <if test="i10 != null"> + I10, </if> - <if test="gatew != null"> - gatew, + <if test="i11 != null"> + I11, </if> - <if test="nxrun != null"> - NXRun, + <if test="q00 != null"> + Q00, </if> - <if test="alarm != null"> - Alarm, + <if test="q01 != null"> + Q01, </if> - <if test="times != null"> - times, + <if test="q02 != null"> + Q02, </if> - <if test="rtcVolt != null"> - RTC_VOLT, + <if test="q03 != null"> + Q03, </if> - <if test="v2run != null"> - V2Run, + <if test="q04 != null"> + Q04, </if> - <if test="dxqvrun != null"> - DXQVRun, + <if test="q05 != null"> + Q05, </if> - <if test="press != null"> - Press, + <if test="vb0 != null"> + VB0, </if> - <if test="dc != null"> - Dc, + <if test="vb10 != null"> + VB10, + </if> + <if test="vb11 != null"> + VB11, + </if> + <if test="vb12 != null"> + VB12, </if> </trim> <trim prefix="values (" suffix=")" suffixOverrides=","> <if test="smokeId != null"> #{smokeId,jdbcType=INTEGER}, </if> - <if test="gatewayCyc != null"> - #{gatewayCyc,jdbcType=VARCHAR}, + <if test="time != null"> + #{time,jdbcType=VARCHAR}, </if> - <if test="fans != null"> - #{fans,jdbcType=VARCHAR}, + <if test="i00 != null"> + #{i00,jdbcType=VARCHAR}, </if> - <if test="v1run != null"> - #{v1run,jdbcType=VARCHAR}, + <if test="i01 != null"> + #{i01,jdbcType=VARCHAR}, </if> - <if test="uv1run != null"> - #{uv1run,jdbcType=VARCHAR}, + <if test="i02 != null"> + #{i02,jdbcType=VARCHAR}, </if> - <if test="fanrun != null"> - #{fanrun,jdbcType=VARCHAR}, + <if test="i03 != null"> + #{i03,jdbcType=VARCHAR}, </if> - <if test="uv2run != null"> - #{uv2run,jdbcType=VARCHAR}, + <if test="i04 != null"> + #{i04,jdbcType=VARCHAR}, </if> - <if test="ssvrun != null"> - #{ssvrun,jdbcType=VARCHAR}, + <if test="i05 != null"> + #{i05,jdbcType=VARCHAR}, </if> - <if test="dp != null"> - #{dp,jdbcType=VARCHAR}, + <if test="i06 != null"> + #{i06,jdbcType=VARCHAR}, </if> - <if test="t != null"> - #{t,jdbcType=VARCHAR}, + <if test="i07 != null"> + #{i07,jdbcType=VARCHAR}, </if> - <if test="oc != null"> - #{oc,jdbcType=VARCHAR}, + <if test="i10 != null"> + #{i10,jdbcType=VARCHAR}, </if> - <if test="gatew != null"> - #{gatew,jdbcType=VARCHAR}, + <if test="i11 != null"> + #{i11,jdbcType=VARCHAR}, </if> - <if test="nxrun != null"> - #{nxrun,jdbcType=VARCHAR}, + <if test="q00 != null"> + #{q00,jdbcType=VARCHAR}, </if> - <if test="alarm != null"> - #{alarm,jdbcType=VARCHAR}, + <if test="q01 != null"> + #{q01,jdbcType=VARCHAR}, </if> - <if test="times != null"> - #{times,jdbcType=VARCHAR}, + <if test="q02 != null"> + #{q02,jdbcType=VARCHAR}, </if> - <if test="rtcVolt != null"> - #{rtcVolt,jdbcType=VARCHAR}, + <if test="q03 != null"> + #{q03,jdbcType=VARCHAR}, </if> - <if test="v2run != null"> - #{v2run,jdbcType=VARCHAR}, + <if test="q04 != null"> + #{q04,jdbcType=VARCHAR}, </if> - <if test="dxqvrun != null"> - #{dxqvrun,jdbcType=VARCHAR}, + <if test="q05 != null"> + #{q05,jdbcType=VARCHAR}, </if> - <if test="press != null"> - #{press,jdbcType=VARCHAR}, + <if test="vb0 != null"> + #{vb0,jdbcType=VARCHAR}, </if> - <if test="dc != null"> - #{dc,jdbcType=VARCHAR}, + <if test="vb10 != null"> + #{vb10,jdbcType=VARCHAR}, + </if> + <if test="vb11 != null"> + #{vb11,jdbcType=VARCHAR}, + </if> + <if test="vb12 != null"> + #{vb12,jdbcType=VARCHAR}, </if> </trim> </insert> + <select id="dataSmockList" resultType="com.thhy.materials.modules.biz.helmet.entity.TDataSmock"> + select + smoke_id as smokeId, + gateway_cyc as gatewayCyc, + FanS as fans, + V1Run as v1run, + UV1Run as uv1run, + FanRun as fanrun, + UV2Run as uv2run, + SSVRun as ssvrun, + DP as dp, + T as t, + OC as oc, + gatew as gatew, + NXRun as nxrun, + Alarm as alarm, + times as times, + RTC_VOLT as rtcVolt, + V2Run as v2run, + DXQVRun as dxqvrun, + Press as press, + Dc as dc + from t_data_smock + where 1=1 + <if test="strTime!=null and endTime!=null and strTime!='' and endTime!='' "> + and times between #{strTime} and #{endTime} + </if> + order by times desc + </select> + <select id="dataValuesList" resultType="com.thhy.materials.modules.biz.helmet.entity.TDataValue"> + select + data_id as dataId, + device_id as deviceId, + device_name as deviceName, + account_number as accountNumber, + upload_time as uploadTime, + pm25 as pm25, + pm10 as pm10, + tsp as tsp, + temperature as temperature, + humidity as humidity, + data6 as data6, + wind_speed as windSpeed, + wind_direction as windDirection, + tvoc as tvoc, + no2 as no2, + co as co, + so2 as so2, + o3 as o3, + noise as noise + from t_data_value + where 1=1 + <if test="strTime!=null and strTime!='' and endTime!=null and endTime!='' "> + and upload_time between #{strTime} and #{endTime} + </if> + order by upload_time desc + </select> + </mapper> \ No newline at end of file diff --git a/sz_app/api/api.js b/sz_app/api/api.js index 72fb3af..e0a7797 100644 --- a/sz_app/api/api.js +++ b/sz_app/api/api.js @@ -9,6 +9,7 @@ import cistern from './module/cistern.js'; // 管片入池 import putbank from './module/putbank.js'; // 管片入库 import exit from './module/exit.js'; // 管片出库 +import spot from './module/spot.js'; // 点检 export default { system, @@ -17,5 +18,6 @@ ductpiece, cistern, putbank, - exit + exit, + spot }; diff --git a/sz_app/api/http.js b/sz_app/api/http.js index fedc918..6ffb703 100644 --- a/sz_app/api/http.js +++ b/sz_app/api/http.js @@ -1,7 +1,7 @@ function Request() {} // export const basrUrl = 'https://pipe.thhy-tj.com/api'; // export const basrUrl = 'http://192.168.0.170:8880'; -export const basrUrl = 'http://111.30.93.212:8880'; +export const basrUrl = 'http://111.30.93.212:8089/suapi'; Request.prototype = { post: function(url, params) { return new Promise(function(resolve, reject) { diff --git a/sz_app/api/module/spot.js b/sz_app/api/module/spot.js new file mode 100644 index 0000000..2aa2063 --- /dev/null +++ b/sz_app/api/module/spot.js @@ -0,0 +1,46 @@ +import axios from '../http.js'; + +export default { + /** + * 点检接口 + */ + + // 查询字典信息 + searchDictionary: params => { + return axios({ + url: '/engineering/dict/dictList', + method: 'post', + ...params, + header: { + pageNum: params.pageNum, + pageSize: params.pageSize + } + }) + }, + // 查询设备点检列表信息 + searchSpotCheckList: (params) => + axios({ + method: 'post', + url: '/m/checkDevice/findList', + ...params, + header: { + pageNum: params.pageNum, + pageSize: params.pageSize + } + }), + // 添加设备点检信息 + insertSpotCheckInfo: (params) => + axios.post('m/checkDevice/addCheckDevice', params), + // 修改设备点检信息 + updateSpotCheckInfo: (params) => + axios.post('m/checkDevice/addCheckDevice', params), + //删除设备点检信息 + deleteSpotCheckInfo: (params) => + axios.post('/m/checkDevice/delete', params), + // 获取点检详情 + getSpotCheckDetail: (params) => + axios.post('m/checkDevice/checkDeviceInfo', params), + // 获取全部设备信息 + getAllDeviceData: () => + axios.post('/m/checkDevice/deviceList'), +} \ No newline at end of file diff --git a/sz_app/api/module/system.js b/sz_app/api/module/system.js index 6d2dcef..87e2009 100644 --- a/sz_app/api/module/system.js +++ b/sz_app/api/module/system.js @@ -6,7 +6,7 @@ */ // 登录 userLogin: params => - axios.post(`/m/login`, params), + axios.post(`/usercore/login`, params), // 退出登录 logingOut: params => axios.post('/usercore/login/logout', params), diff --git a/sz_app/manifest.json b/sz_app/manifest.json index 3fd69af..06963e0 100644 --- a/sz_app/manifest.json +++ b/sz_app/manifest.json @@ -1,6 +1,6 @@ { "name" : "智慧管片", - "appid" : "__UNI__EBC4C2D", + "appid" : "__UNI__D1E1AF0", "description" : "", "versionName" : "1.1.1", "versionCode" : 111, diff --git a/sz_app/pages.json b/sz_app/pages.json index 7f051d2..2abc331 100644 --- a/sz_app/pages.json +++ b/sz_app/pages.json @@ -85,6 +85,27 @@ "navigationBarTextStyle": "white", "navigationBarTitleText": "管片出库" } + },{ + "path": "pages/spotCheck/index", + "style": { + "navigationStyle": "custom", + "navigationBarTextStyle": "white" + } + }, + { + "path": "pages/spotCheck/spotDetail", + "style": { + "navigationBarBackgroundColor": "#1976FF", + "navigationBarTextStyle": "white", + "navigationBarTitleText": "点检详情" + } + },{ + "path": "pages/spotCheck/deviceSpot", + "style": { + "navigationBarBackgroundColor": "#1976FF", + "navigationBarTextStyle": "white", + "navigationBarTitleText": "设备点检" + } } ], "globalStyle": { diff --git a/sz_app/pages/spotCheck/deviceSpot.vue b/sz_app/pages/spotCheck/deviceSpot.vue new file mode 100644 index 0000000..917dcff --- /dev/null +++ b/sz_app/pages/spotCheck/deviceSpot.vue @@ -0,0 +1,340 @@ +<template> + <view class="device_spot"> + <view class="header_semicircle"></view> + <view class="device_spot_content"> + <view class="device_item"> + <view class="device_item_title"> + <span>HSHS-001</span> + </view> + <view class="device_item_value"> + <span class="label">设备名称:</span> + <span>混凝土搅拌机</span> + </view> + <view class="device_item_value"> + <span class="label">型号规格:</span> + <span>混凝土搅拌机</span> + </view> + <view class="device_item_value"> + <span class="label">设备类型:</span> + <span>混凝土搅拌机</span> + </view> + </view> + <view class="device_form"> + <u-form + ref="form" + labelWidth="auto" + :model="formSpot" + :rules="rulesSpot"> + <u-form-item + labelPosition="left" + label="点检时间" + prop="checkTime" + borderBottom + @click="ckickTime()"> + <u-input + v-model="formSpot.checkTime" + border="none" + placeholder="请选择点检时间" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + <u-icon + slot="right" + name="calendar" + ></u-icon> + </u-form-item> + <u-form-item + labelPosition="left" + label="点检类型" + prop="checkTypeName" + borderBottom + @click="clickCheckType()"> + <u-input + v-model="formSpot.checkTypeName" + border="none" + placeholder="请选择点检类型" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + <u-icon + slot="right" + name="arrow-right" + ></u-icon> + </u-form-item> + <u-form-item label="点检内容及结果" labelPosition="top" prop="checkContent"> + <view style="margin: 5px 0; width: 100%;"> + <u-textarea + v-model="formSpot.checkContent" + height="100" + border="surround" + placeholder="请输入点检内容及结果"> + </u-textarea> + </view> + </u-form-item> + <u-form-item label="上传照片" labelPosition="top" prop="checkContent"> + <view style="margin: 5px 0; width: 100%;"> + <u-upload + :fileList="fileList" + name="1" + accept="image" + uploadIcon="plus" + @afterRead="afterRead" + @delete="deleteImage" + ></u-upload> + </view> + </u-form-item> + <view class="login_content_button"> + <u-button + type="primary" + :color="colorStyle" + @click="submitForm()">提交</u-button> + </view> + </u-form> + </view> + </view> + <u-datetime-picker + :show="showTime" + v-model="defaultTime" + mode="datetime" + @cancel="cancelTime" + @confirm="confirmTime"> + </u-datetime-picker> + <u-picker + :show="showCheckType" + :columns="checkTypeData" + keyName="dictName" + closeOnClickOverlay + @cancel="cancelCheckType()" + @confirm="confirmCheckType()" + @close="showCheckType = false" + ></u-picker> + </view> +</template> + +<script> + import baseUrl from '../../api/http.js'; +import { changeTime, throttle } from '../../plugins/public.js'; + export default { + data() { + return { + formSpot: { + checkTime: '', + checkTypeName: '', + }, + rulesSpot: { + checkTime: [{ + required: true, + message: '请选择点检时间', + trigger: 'blur', + }], + checkTypeName: [{ + required: true, + message: '请选择点检类型', + trigger: 'blur', + }], + checkContent: [{ + required: true, + message: '请输入点检内容及结果', + trigger: 'blur', + }] + }, + fileList: [], + colorStyle: 'linear-gradient(to right, rgb(79, 142, 244), rgb(85, 109, 254))', + showTime: false, + defaultTime: Number(new Date()), + deviceId: '' + } + }, + onReady() { + this.$refs.form.setRules(this.rulesSpot); + }, + onLoad(option) { + this.deviceId = option.deviceId; + this.getChackAllTypes(); + }, + methods: { + // 获取点检类型 + async getChackAllTypes(){ + const { data } = await this.$api.spot.searchDictionary({ + pageNum: 1, + pageSize: 100000000, + dictType: 'check_type' + }); + this.checkTypeData = data.list; + }, + // 读取图片后 + afterRead(event) { + console.log(event); + this.fileList.push({ + status: 'loading', + message: '上传中', + }) + uni.uploadFile({ + url: `${baseUrl}/file/file/upload`, + fileType: 'image', + filePath: event.file.url, + name: 'file', + success: (res) => { + const data = JSON.parse(res.data); + this.$set(this.fileList, this.fileList.length - 1, { + id: this.fileList.length + 1, + status: 'success', + message: '', + data: data.data, + url: `http://filemanage.thhy-tj.com:8888/${data.data}` + }) + }, + fail: (error) => { + uni.$u.toast('上传失败!'); + } + }) + }, + // 删除图片 + deleteImage(event) { + this.fileList.splice(event.index, 1); + }, + // 选择时间 + ckickTime() { + this.showTime = true; + this.$set(this.formSpot, 'checkTime', ''); + }, + // 点击取消选择时间 + cancelTime() { + this.showTime = false; + this.$set(this.formSpot, 'checkTime', ''); + }, + // 点击选择时间 + confirmTime({ value }) { + this.$set(this.formSpot, 'checkTime', changeTime(value)); + this.showTime = false; + }, + // 选择点检类型 + clickCheckType() { + this.showCheckType = true; + this.$set(this.formSpot, 'checkTypeName', ''); + this.$set(this.formSpot, 'checkType', ''); + }, + // 点击取消选择时间 + cancelCheckType() { + this.showCheckType = false; + this.$set(this.formSpot, 'checkTypeName', ''); + this.$set(this.formSpot, 'checkType', ''); + }, + // 点击选择点检类型 + confirmCheckType({ value }) { + this.showCheckType = false; + this.$set(this.formSpot, 'checkTypeName', value[0].checkTypeName); + this.$set(this.formSpot, 'checkType', value[0].checkType); + }, + // 提交点检信息 + submitForm: throttle(function() { + this.$refs.form.validate().then((valid) => { + if(valid) { + const params = Object.assign({}, this.formSpot); + delete params.checkTypeName; + params.deviceId = this.deviceId; + if(this.fileList.length > 0) { + params.fileList = this.fileList.map(item => { + return { + file: item.data + } + }) + } + this.$api.spot.insertSpotCheckInfo(params).then(res => { + if(res.success) { + uni.$u.toast('添加成功!'); + setTimeout(() => { + uni.navigateBack(); + }, 1500) + } else { + uni.$u.toast(res.statusMsg); + } + }) + } + }) + }, 3000), + } + } +</script> + +<style scoped lang="scss"> +.device_spot { + position: relative; + width: 100%; + height: 100vh; + background: rgba(246, 246, 246, 1); + + .header_semicircle { + width: 100%; + height: 100px; + background: #1977FF; + border-radius: 0 0 50% 50%; + } + + .device_spot_content { + position: absolute; + top: 10px; + left: 50%; + transform: translateX(-50%); + display: flex; + flex-direction: column; + padding: 15px; + width: calc(100% - 60px); + height: calc(100% - 40px); + background: #FFFFFF; + border-radius: 6px; + overflow-y: auto; + box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.04); + + .device_item { + display: flex; + flex-direction: column; + justify-content: space-around; + padding: 10px 15px; + // height: 280px; + background: #F6FAFF; + border-radius: 4px; + border-top: 3px solid rgba(25, 119, 255, 1); + + .device_item_title { + position: relative; + padding: 0 10px; + margin: 5px 0; + color: rgba(25, 119, 255, 1); + font-size: 18px; + + &:before { + content: ""; + position: absolute; + top: 50%; + left: 0%; + transform: translateY(-50%); + width: 3px; + height: 80%; + background-color: rgba(25, 119, 255, 1); + } + } + + .device_item_value { + margin: 5px 0; + } + + .label { + display: inline-block; + color: #999999; + white-space: nowrap; + } + + .value { + color: #1977FF; + } + } + + .device_form { + // margin-top: 20px; + } + } +} +</style> \ No newline at end of file diff --git a/sz_app/pages/spotCheck/index.vue b/sz_app/pages/spotCheck/index.vue new file mode 100644 index 0000000..bc8c683 --- /dev/null +++ b/sz_app/pages/spotCheck/index.vue @@ -0,0 +1,255 @@ +<template> + <view class="spot_index"> + <u-navbar + title="点检列表" + bgColor="#1977FF" + :autoBack="true" + :placeholder="true" + leftIconColor="#FFFFFF" + :titleStyle="{ + color: '#FFFFFF' + }"> + <view slot="right"> + <span @click="scanDevice()">点检</span> + </view> + </u-navbar> + <view class="header_semicircle"></view> + <scroll-view class="spot_content" :scroll-top="scrollTop" refresher-enabled="true" scroll-y="true" refresher-background="#EAEAEA" + @scrolltolower="scrolltoLower" :refresher-triggered="triggered" @refresherrefresh="refresherrefresh"> + <view + class="spot_item" + v-for="item in spotList" + :key="item.id" + @click="navgetToDetail(item)"> + <view class="spot_item_title"> + <span>设备编号:{{item.bigNumber}}</span> + <span>详情</span> + </view> + <view class="spot_item_content"> + <view class=""> + <span class="label">设备名称:</span> + <span>{{item.bigDeviceName}}</span> + </view> + <view class=""> + <span class="label">型号规格:</span> + <span>{{item.bigDeviceModel}}</span> + </view> + <view class=""> + <span class="label">设备类型:</span> + <span>{{item.bigTypeStr}}</span> + </view> + <view class=""> + <span class="label">点检时间:</span> + <span class="value">{{item.checkTime}}</span> + </view> + <view class=""> + <span class="label">责任人:</span> + <span>{{item.adminUserName}}</span> + </view> + <view class=""> + <span class="label">责任人电话:</span> + <span>{{item.adminUserPhone}}</span> + </view> + </view> + </view> + <u-loadmore :status="status" :icon-type="iconType" :load-text="loadText" /> + </scroll-view> + </view> +</template> + +<script> +import { throttle } from '../../plugins/public'; + export default { + data() { + return { + scrollTop: 0, + triggered: true, + status: 'loading', + iconType: 'flower', + loadText: { + loading: '努力加载中', + nomore: '没有更多数据了' + }, + showState: false, + columnData: [[{ + label: '未匹配', + id: 1 + },{ + label: '匹配成功入模', + id: 2 + },{ + label: '匹配失败无法入模', + id: 3 + }]], + pageNum: 1, + pageSize: 10, + loadPage: '', + spotList: [{id: 1}, {id: 2}, {id: 3}], + } + }, + onShow() { + this.searchData(); + }, + methods: { + // 查询模具质检列表 + async searchSpotCheckList() { + const { data } = await this.$api.spot.searchSpotCheckList({ + pageNum: this.pageNum, + pageSize: this.pageSize + }) + return data; + }, + // 查询信息 + searchData() { + this.triggered = true; + this.spotList = []; + this.searchSpotCheckList().then(data => { + this.spotList = data.list; + this.loadPage = data.pages; + this.triggered = false; + this.status = 'nomore'; + }).catch(() => { + this.triggered = false; + this.status = 'nomore'; + uni.$u.toast('没有更数据了'); + }) + }, + //自定义下拉刷新 + refresherrefresh: throttle(function() { + this.status = 'loading'; + this.pageNum = 1; + this.searchData(); + uni.$u.toast('刷新成功'); + }, 500), + //触底刷新 + scrolltoLower: throttle(function() { + this.status = 'loading'; + if(this.pageNum >= this.loadPage) { + setTimeout(() => { + this.status = 'nomore' + uni.$u.toast('没有更多数据了'); + },1000) + return + } else { + this.pageNum += 1; + this.searchSpotCheckList().then((data) => { + this.loadPage = data.pages; + this.spotList.push(...data.list); + this.status = 'nomore'; + }) + } + }, 3000), + // 点检 + scanDevice() { + const that = this; + uni.$off('scancodedate'); + uni.$on('scancodedate', function(data) { + console.log(data.code); + if(data.code) { + uni.navigateTo({ + url: './deviceSpot' + }) + } + // that.$api.spot.scanCheckMould({ + // mouldNum: data.code + // }).then((res) => { + // if(res.success) { + // uni.$u.toast('扫描完成!'); + // console.log(res,'==='); + // } else { + // uni.$u.toast(res.statusMsg); + // } + // }) + uni.$off('scancodedate'); + }) + }, + // 跳转详情 + navgetToDetail(item) { + uni.navigateTo({ + url: './spotDetail?id=' + item.id + }) + } + } + } +</script> + +<style scoped lang="scss"> + .spot_index { + position: relative; + width: 100%; + height: 100vh; + background: rgba(246, 246, 246, 1); + + .header_semicircle { + width: 100%; + height: 100px; + background: #1977FF; + border-radius: 0 0 50% 50%; + } + + .spot_content { + position: absolute; + top: 70px; + left: 50%; + transform: translateX(-50%); + display: flex; + flex-direction: column; + width: calc(100% - 30px); + height: calc(100% - 70px); + + .spot_item { + padding: 10px; + margin: 12px 0; + // width: 100%; + height: 250px; + background: #FFFFFF; + border-radius: 6px; + box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.04); + + &:first-child { + margin-top: 0; + } + + .spot_item_title { + position: relative; + padding: 0 10px; + display: flex; + justify-content: space-between; + color: rgba(25, 119, 255, 1); + font-size: 16px; + + &:before { + content: ''; + position: absolute; + top: 50%; + left: 0; + transform: translateY(-50%); + width: 3px; + height: 80%; + background-color: rgba(25, 119, 255, 1); + } + } + + .spot_item_content { + display: flex; + flex-direction: column; + justify-content: space-around; + padding: 10px; + margin-top: 10px; + height: calc(90% - 30px); + background: rgba(25,119,255,0.04); + + .label { + display: inline-block; + width: 100px; + color: #999999; + } + + .value { + color: #1977FF; + } + } + } + } + } +</style> \ No newline at end of file diff --git a/sz_app/pages/spotCheck/spotDetail.vue b/sz_app/pages/spotCheck/spotDetail.vue new file mode 100644 index 0000000..3aeae43 --- /dev/null +++ b/sz_app/pages/spotCheck/spotDetail.vue @@ -0,0 +1,133 @@ +<template> + <view class="spot_detail"> + <u-form + ref="form" + labelWidth="auto" + :model="formData" + :labelStyle="{ + color: '#999999' + }"> + <u-form-item labelPosition="left" label="设备编号" borderBottom> + <u-input + v-model="formData.bigDeviceModel" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="设备名称" borderBottom> + <u-input + v-model="formData.bigDeviceName" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="型号规格" borderBottom> + <u-input + v-model="formData.bigDeviceModel" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="设备类型" borderBottom> + <u-input + v-model="formData.bigTypeStr" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="点检时间" borderBottom> + <u-input + v-model="formData.checkTime" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="责任人" borderBottom> + <u-input + v-model="formData.adminUserName" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="责任人电话" borderBottom> + <u-input + v-model="formData.adminUserPhone" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="left" label="点检类型" borderBottom> + <u-input + v-model="formData.checkType" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="right"> + </u-input> + </u-form-item> + <u-form-item labelPosition="top" label="点检内容及结果" borderBottom> + <u-input + v-model="formData.checkContent" + border="none" + disabled + disabledColor="#FFFFFF" + inputAlign="left"> + </u-input> + </u-form-item> + <u-form-item labelPosition="top" label="上传照片" borderBottom> + <view style="margin: 5px 0; width: 100%; display: flex;"> + <u-image + v-for="item in formData.fileList" + :key="item.id" + :src="`http://filemanage.thhy-tj.com:8888${item.file}`" + width="100px" + height="100px" + radius="4"> + </u-image> + </view> + </u-form-item> + </u-form> + </view> +</template> + +<script> + + export default { + data() { + return { + formData: {}, + } + }, + onLoad(option) { + console.log(option,'=='); + this.$api.spot.getSpotCheckDetail({ + id: option.id + }).then((res) => { + this.formData = res.success ? res.data : {}; + }) + }, + methods: { + + } + } +</script> + +<style scoped lang="scss"> +.spot_detail { + padding: 15px; +} +</style> \ No newline at end of file diff --git a/web/.env.development b/web/.env.development index a2cd8ab..1644fb6 100644 --- a/web/.env.development +++ b/web/.env.development @@ -3,4 +3,5 @@ # VUE_APP_BASE_URL = 'https://logadd.com:8443/pipe' # VUE_APP_BASE_URL = 'https://ssfp.thhy-tj.com/api' VUE_APP_BASE_URL = 'http://111.30.93.212:8089/suapi' +# VUE_APP_BASE_URL = 'http://192.168.0.247:8880' # VUE_APP_BASE_URL = 'http://111.30.93.212:8089/pipesu' \ No newline at end of file diff --git a/web/.env.production b/web/.env.production index 3dd7b05..8784e7a 100644 --- a/web/.env.production +++ b/web/.env.production @@ -1,3 +1,4 @@ # VUE_APP_BASE_URL = 'https://pipe.thhy-tj.com:8880' -VUE_APP_BASE_URL = 'http://111.30.93.212:10100' \ No newline at end of file +VUE_APP_BASE_URL = 'http://111.30.93.212:8089/suapi' +# VUE_APP_BASE_URL = 'http://111.30.93.247:8880' \ No newline at end of file diff --git a/web/src/api/index.js b/web/src/api/index.js index 53df892..1d18307 100644 --- a/web/src/api/index.js +++ b/web/src/api/index.js @@ -22,6 +22,7 @@ import Analyse from './modules/analyse'; // 数据分析模块 import Safety from './modules/safety'; // 安全管理模块 import Scan from './modules/scan'; // 扫码跳转到对应页面 +import Green from './modules/green'; // 扫码跳转到对应页面 import Quality from './modules/quality'; // 质量管理界面 export default { @@ -46,5 +47,6 @@ Analyse, Safety, Scan, + Green, Quality } diff --git a/web/src/api/modules/green.js b/web/src/api/modules/green.js new file mode 100644 index 0000000..5de779b --- /dev/null +++ b/web/src/api/modules/green.js @@ -0,0 +1,14 @@ +/** + * 绿色施工 + */ +import axios from '../request'; + +export default { + // 查询环境监测 + searchEnvironMonitorList: (params) => + axios.post('/materials/helmet/dataValuesList ', params), + // 查询焊接烟尘信息 + searchSmokeList: params => + axios.post('/materials/helmet/dataSmockList', params), + +} \ No newline at end of file diff --git a/web/src/views/EquipmentManage/EquipSpot.vue b/web/src/views/EquipmentManage/EquipSpot.vue index 036c4b9..9feb288 100644 --- a/web/src/views/EquipmentManage/EquipSpot.vue +++ b/web/src/views/EquipmentManage/EquipSpot.vue @@ -179,8 +179,8 @@ bigNumber: this.bigNumber, pageNum: this.pageNum, pageSize: this.pageSize, - startTime: this.timeData ? this.timeData[0] : '', - endTime: this.timeData ? this.timeData[1] : '' + startTime: this.timeData ? this.timeData[0] + ' 00:00:00' : '', + endTime: this.timeData ? this.timeData[1] + ' 23:59:59' : '' }).then(res => { if(res.success) { this.total = res.data.total; diff --git a/web/src/views/GreenBuild/EnvironMonitor.vue b/web/src/views/GreenBuild/EnvironMonitor.vue index 61c5bb7..e2954e0 100644 --- a/web/src/views/GreenBuild/EnvironMonitor.vue +++ b/web/src/views/GreenBuild/EnvironMonitor.vue @@ -1,3 +1,101 @@ <template> - <div>环境监测</div> -</template> \ No newline at end of file + <div class="main"> + <div class="main_header"> + <div class="header_item"> + <span class="header_label">时间范围:</span> + <el-date-picker + v-model="dataTime" + type="daterange" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期" + value-format="yyyy-MM-dd"> + </el-date-picker> + </div> + <div class="header_item"> + <el-button icon="el-icon-search" @click="searchEnvironMonitorList(true)">查询</el-button> + <!-- <el-button icon="el-icon-search" v-if="showButton('search')">查询</el-button> --> + </div> + </div> + <div class="main_content"> + <el-table + v-loading="loading" + :data="monitorList" + height="100%"> + <el-table-column label="序号" align="center" > + <template #default="scope"> + <div> + <span>{{(pageNum - 1) * pageSize + scope.$index + 1}}</span> + </div> + </template> + </el-table-column> + <el-table-column prop="uploadTime" label="采集时间" align="center" ></el-table-column> + <el-table-column prop="deviceName" label="设备" align="center"></el-table-column> + <el-table-column prop="pm25" label="PM2.5(微克/立方米)" width="200" align="center" ></el-table-column> + <el-table-column prop="pm10" label="PM10(微克/立方米)" width="200" align="center" ></el-table-column> + <el-table-column prop="tsp" label="TSP(微克/立方米)" width="200" align="center" ></el-table-column> + <el-table-column prop="temperature" label="温度(摄氏度)" align="center" ></el-table-column> + <el-table-column prop="humidity" label="湿度(%)" align="center" ></el-table-column> + <el-table-column prop="bigDeviceModel" label="大气压(千帕)" align="center" ></el-table-column> + <el-table-column prop="windSpeed" label="风速(米/秒)" align="center" ></el-table-column> + <el-table-column prop="windDirection" label="风向" align="center" ></el-table-column> + <el-table-column prop="noise" label="噪声(分贝)" align="center" ></el-table-column> + </el-table> + </div> + <div class="main_footer"> + + </div> + </div> +</template> + +<script> +import { buttonPinia } from '../../pinia'; +export default { + data() { + return { + dataTime: '', + pageNum: 1, + pageSize: 10, + total: 0, + loading: false, + monitorList: [] + } + }, + mounted() { + this.searchEnvironMonitorList(true); + }, + methods: { + // 查询环境监测 + searchEnvironMonitorList(bol) { + if(bol) { + this.pageNum = 1; + } + this.loading = true; + this.monitorList = []; + this.$api.Green.searchEnvironMonitorList({ + strTime: this.dataTime ? this.dataTime[0] : '', + endTime: this.dataTime ? this.dataTime[1] : '', + pageNum: this.pageNum, + pageSize: this.pageSize + }).then(res => { + if(res.success) { + this.total = res.data.total; + this.monitorList = res.data.list; + } + this.loading = false; + }).catch(() => { + this.loading = false; + }) + }, + // 判断按钮权限信息 + showButton(str) { + const pinia = buttonPinia(); + return pinia.$state.buttonInfo.includes(str); + } + } +}; +</script> + +<style lang="scss" scoped> +@import '@/style/layout-main.scss'; +</style> \ No newline at end of file diff --git a/web/src/views/GreenBuild/WeldSmoke.vue b/web/src/views/GreenBuild/WeldSmoke.vue index d9b1573..dc7e116 100644 --- a/web/src/views/GreenBuild/WeldSmoke.vue +++ b/web/src/views/GreenBuild/WeldSmoke.vue @@ -1,3 +1,105 @@ <template> - <div>焊接烟尘</div> -</template> \ No newline at end of file + <div class="main"> + <div class="main_header"> + <div class="header_item"> + <span class="header_label">时间范围:</span> + <el-date-picker + v-model="dataTime" + type="daterange" + range-separator="至" + start-placeholder="开始日期" + end-placeholder="结束日期" + value-format="yyyy-MM-dd"> + </el-date-picker> + </div> + <div class="header_item"> + <el-button icon="el-icon-search" @click="searchSmokeList(true)">查询</el-button> + <!-- <el-button icon="el-icon-search" v-if="showButton('search')">查询</el-button> --> + </div> + </div> + <div class="main_content"> + <el-table + v-loading="loading" + :data="smokeList" + height="100%"> + <el-table-column label="序号" align="center" > + <template #default="scope"> + <div> + <span>{{(pageNum - 1) * pageSize + scope.$index + 1}}</span> + </div> + </template> + </el-table-column> + <el-table-column prop="bigDeviceName" label="采集时间" align="center" ></el-table-column> + <el-table-column prop="bigNumber" label="设备" align="center"></el-table-column> + <el-table-column prop="dc" label="粉尘浓度(mg/m³)" align="center" ></el-table-column> + <el-table-column prop="t" label="温度(℃)" align="center" ></el-table-column> + <el-table-column prop="dp" label="压差(pa)" align="center" ></el-table-column> + <el-table-column prop="oc" label="氧气浓度(%)" align="center" ></el-table-column> + <el-table-column prop="fans" label="风速(m/s)" align="center" ></el-table-column> + <el-table-column prop="alarm" label="设备报警" align="center" ></el-table-column> + <el-table-column label="风机启动" align="center" > + <template #default="{ row }"> + <div> + {{row.fanrun ? row.fanrun == 1 ? '运行' : '未运行' : ''}} + </div> + </template> + </el-table-column> + </el-table> + </div> + <div class="main_footer"> + + </div> + </div> +</template> + +<script> +import { buttonPinia } from '../../pinia'; +export default { + data() { + return { + dataTime: '', + pageNum: 1, + pageSize: 10, + total: 0, + loading: false, + smokeList: [] + } + }, + mounted() { + this.searchSmokeList(true); + }, + methods: { + // 查询焊接烟尘信息 + searchSmokeList(bol) { + if(bol) { + this.pageNum = 1; + } + this.loading = true; + this.smokeList = []; + this.$api.Green.searchSmokeList({ + strTime: this.dataTime ? this.dataTime[0] : '', + endTime: this.dataTime ? this.dataTime[1] : '', + pageNum: this.pageNum, + pageSize: this.pageSize + }).then(res => { + if(res.success) { + this.total = res.data.total; + this.smokeList = res.data.list; + } + this.loading = false; + }).catch(() => { + this.loading = false; + }) + }, + // 判断按钮权限信息 + showButton(str) { + const pinia = buttonPinia(); + return pinia.$state.buttonInfo.includes(str); + } + } +}; +</script> + +<style lang="scss" scoped> +@import '@/style/layout-main.scss'; +</style> \ No newline at end of file -- Gitblit v1.9.3