diff --git a/ArcFace64.dat b/ArcFace64.dat
index 898f484e2..812f78343 100644
--- a/ArcFace64.dat
+++ b/ArcFace64.dat
@@ -1 +1 @@
-EWEPEPEOGMGTELIZJUGECKIUJDBCJTCNISGPBNHLJTJUBHEWGNAKGEGAIOHJDQAJGNCFDRFZJEDMJTGEDVIQGKEJIKACHIIXDEELIWCCEEELCVCEHFHAJGIPGIIKJRASJFEHAMIKCIGXAPGEHIIZGFBBJMFJJNGFHUGDGDFGFAITGDAXBGAZGKAMBMDABKBAERDUHDAUDOEBIBGBBMCUIZGABKCABIDMFHFRILIIANEBEWBOAIJHBYFAIREBFQFFCHHREKFTFJJQIAGFDSDZHMHUCGBVHIAUENBCJIBBJDIHHDIQFKFNDEBJCKCFGLJKBMHFAZHTHOIRGLJFDUHWEVFGFHDKIBEKFVCGAQJGCYBZAMHDJBJREAIOJPIAJDCJFXHKHPJTHUBTJPDWISESIEIPISDWDRAMFVFFBJCTFVFAARGJHFIMELIQJEAHFRFQDTERDCCGDCIKCAGBJVDLGHEXEBAWAMAFITJDANGBCRDPBPEECBAVAEAYJVHCBNCPHOFUJNGGJFFREZFAAKGEGQCQHDBZBWENDKCGHTFXCXAIEHGWEPFOGYFIFSHOCRJCBOHDDLDCCAJGBGAPCXDMHMAYAHBFHNCYJTEHENIJEBDNBPFLBDBUGADIGTEWEAHEEGHGJBDXEEJMBLAKHYJHBPEKBEHHHQDECQEMGEFRCIHLIVGXBXFQBTJECKEPCSDRGPFLAZADHCENEJCQJIHPDNJTCBDXCCAFEFGIJNEBBIHSFFFMEEDADRCHFKEXHNEIAFHAAGHAJQCTGDGVFOIYBRJEJVEUJJDOEIJCIQBMCUASHBIVHNDADKALISDXFADZICEJCPASDRGSERDWHXIGAYBJFVELGJGXEHDQJTHYBXHVHNIAIWIOIJGRCBAXAIIHFJGGAHGDAPAHCHHHJHETHBBDIUJOJBCVIMJLEKDJIUBDHHBRAEGMEBBUHKHKCABLHQARARFTFRCZGTEGANJTBGJTFTCJGXHDHXEHEGBMGDABADDCAFABHKFRAWDQJAEFCNGMCTBWADCGCUACALIAHFDEAEJUESGFCTFAHZFOFKHSILFFIHJLAWHEFMFJFKBODTCDJGEPBXHQHYBSHWBADOJCIAHLJJCUBYFLHPDMJTJGJVFZEEDKIMGJHUBTJDATAKFICECEBMHBIKJQCTFDEZFBAHJNFLJGIKAJCGDOIHJSEE
\ No newline at end of file
+EWEPEPEOGMGTELIZJUGECKIUJDBCJTCNISGPBNHLJTJUBHEWGNAKGEGAIOHJDQAJGNCFDRFZJEDMJTGEDVIQGKEJIKACHIIXDEELIWCCEEELCVCEHFHAJGIPGIIKJRASJFEHAMIKCIGXAPGEHIIZGFBBJMFJJNGFHUGDGDFGFAITGDAXBGAZGKAMBMDABKBAERDUHDAUDOEBIBGBBMCUIZGABKCABIDMFHFRILIIANEBEWBOAIJHBYFAIREBFQFFCHHREKFTFJJQIAGFDSDZHMHUCGBVHIAUENBCJIBBJDIHHDIQFKFNDEBJCKCFGLJKBMHFAZHTHOIRGLJFDUHWEVFGFHDKIBEKFVCGAQJGCYBZAMHDJBJREAIOJPIAJDCJFXHKHPJTHUBTJPDWISESIEIPISDWDRAMFVFFBJCTFVFAARGJHFIMELIQJEAHFRFQDTERDCCGDCIKCAGBJVDLGHEXEBAWAMAFITJDANGBCRDPBPEECBAVAEBRGBDMFGGNDQAYCJFJAHJGGFBEBGEOHZDPILAHJEDIDIFWIOJGJFCTGOHQDEBOEGERJVFXIDJJESFKAPASCMCSAXISBQBSEHDDGZHBAREVALCSCAELEGBJIXIRDKAVADBVCNDPHFIYJJGTDEAPITIHBVFEGNBFJODDFEFZGMIKAYDEDIGWDFECBCJVIAAWDIBVGOFOASFOIRARITJOGOERHZAAEAGUIKCVHRCBHJDRJLBACOFZFTENEWDYCNCWDZHUHTFJDIDFEWDGATCAFUERJDCHFZHDAKJHJGDGINIHEPDAABJEIXHOIDAMDTEHCEGKALDAFTEPGZGHHHEVHSHXIZIWISEYFWGMAEIGEZJCDHJIJPBECUIKEYGJHYGLFAJFDPIBARAFGNEEJGDZAYEIAHGYJJELBHBAIXHWGZECJOHFAJCEBBBAINITDTECIFFTHNBJJUCZGYBVEAEBILFOGXEHBKEYELDKFKFVAWESBAHMCOANDEJLIYFMFFDFCAJNJQJGJSHWAEFHIQCJCLGQIYGYEEJBAKIMGACJFNJUDEGQEUCXHPCWBXHAHDASDHJJFLAHIDJLJFCDBMGVIFBBCRIDCSITGLIEAKAUDCFIGHBZARBFESBEDVJVBQIKGQATGBECBSJJDFDKAMDOAPEUCTAXJLGQBXFCIHEGFNDJESCHEHHPBWBQIO
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index cb11c3673..46bee0c68 100644
--- a/pom.xml
+++ b/pom.xml
@@ -725,7 +725,7 @@
net.sf.mpxj
mpxj
- 8.3.3
+ 10.11.0
diff --git a/src/main/java/com/zhgd/xmgl/device/water/controller/CallBackController.java b/src/main/java/com/zhgd/xmgl/device/water/controller/CallBackController.java
index bf921a6d0..f2e7234ff 100644
--- a/src/main/java/com/zhgd/xmgl/device/water/controller/CallBackController.java
+++ b/src/main/java/com/zhgd/xmgl/device/water/controller/CallBackController.java
@@ -12,6 +12,7 @@ import com.zhgd.xmgl.modules.water.entity.WaterSupplierRecord;
import com.zhgd.xmgl.modules.water.mapper.WaterSupplierRecordMapper;
import com.zhgd.xmgl.modules.water.service.IWaterMeterRecordDetailService;
import com.zhgd.xmgl.modules.water.service.IWaterMeterService;
+import com.zhgd.xmgl.util.Base64;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections.MapUtils;
import org.slf4j.Logger;
@@ -119,7 +120,7 @@ public class CallBackController {
QueryWrapper ammeterQueryWrapper = new QueryWrapper<>();
ammeterQueryWrapper.lambda().eq(WaterMeter::getDeviceId, jsonObject.getString("deviceId"));
WaterMeter one = ammeterService.getOne(ammeterQueryWrapper);
- if (decodeJson.containsKey("hex")) {
+ for (Map.Entry entry : decodeJson.entrySet()) {
WaterSupplierRecord waterSupplierRecord = waterSupplierRecordMapper.selectProjectWaterSupplier(one.getProjectSn());
WaterMeter waterMeter = new WaterMeter();
waterMeter.setId(one.getId());
@@ -127,7 +128,7 @@ public class CallBackController {
ammeterService.updateById(waterMeter);
- String strdata = decodeJson.getString("hex");
+ String strdata = Base64.decodeBase64ByHex(String.valueOf(entry.getValue()));
String tonnage = strdata.substring(28, 36) + "." + strdata.substring(36, 38);
WaterMeterRecordDetail ammeterRecordDetail = new WaterMeterRecordDetail();
ammeterRecordDetail.setAddTime(new Date());
@@ -136,9 +137,10 @@ public class CallBackController {
ammeterRecordDetail.setProjectSn(one.getProjectSn());
waterMeterRecordDetailService.save(ammeterRecordDetail);
- String tp = MeterUtils.answerDevice(jsonObject.get("deviceId").toString(), "admin", waterSupplierRecord.getSupplierProductId(),
- waterSupplierRecord.getMasterKey(), waterSupplierRecord.getAppKey(), waterSupplierRecord.getAppSecret(), null, null);
- log.info(tp);
+ //不需要阀控,不需要回调
+ //String tp = MeterUtils.answerDevice(jsonObject.get("deviceId").toString(), "admin", waterSupplierRecord.getSupplierProductId(),
+ // waterSupplierRecord.getMasterKey(), waterSupplierRecord.getAppKey(), waterSupplierRecord.getAppSecret(), null, null);
+ //log.info(tp);
}
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/bigdevice/mapper/xml/LifterWorkCycleMapper.xml b/src/main/java/com/zhgd/xmgl/modules/bigdevice/mapper/xml/LifterWorkCycleMapper.xml
index c24f130e1..434e65060 100644
--- a/src/main/java/com/zhgd/xmgl/modules/bigdevice/mapper/xml/LifterWorkCycleMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/bigdevice/mapper/xml/LifterWorkCycleMapper.xml
@@ -11,7 +11,7 @@
AND a.start_time >=CONCAT(DATE_FORMAT(#{param.startTime},'%Y-%m-%d'),' 00:00:00')
- z
+
AND a.end_time <=CONCAT(DATE_FORMAT(#{param.endTime},'%Y-%m-%d'),' 23:59:59')
diff --git a/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectRecordMapper.xml
index d8df61baf..1963973a5 100644
--- a/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectRecordMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/dangerous/mapper/xml/HiddenDangerInspectRecordMapper.xml
@@ -376,7 +376,7 @@
IFNULL(SUM((IF(status = 1 or status = 4, 1, 0))), 0) allRectificationNum,
IFNULL(SUM((IF(!(status = 1 or status = 4) or status is null, 1, 0))),
0) allNoRectificationNum,
- IFNULL(SUM((IF(YEARWEEK(change_limit_time, 1) = YEARWEEK(now(), 7), 1, 0))),
+ IFNULL(SUM((IF(YEARWEEK(inspect_time, 1) = YEARWEEK(now(), 7), 1, 0))),
0) weekTotalNum
from hidden_danger_inspection_record
WHERE project_sn = #{projectSn}
diff --git a/src/main/java/com/zhgd/xmgl/modules/electrical/mapper/xml/ElectricalDataMapper.xml b/src/main/java/com/zhgd/xmgl/modules/electrical/mapper/xml/ElectricalDataMapper.xml
index 811277df0..ddc4516a5 100644
--- a/src/main/java/com/zhgd/xmgl/modules/electrical/mapper/xml/ElectricalDataMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/electrical/mapper/xml/ElectricalDataMapper.xml
@@ -34,6 +34,6 @@
and a.upload_time <=CONCAT(DATE_FORMAT(#{param.endTime},'%Y-%m-%d'),' 23:59:59')
-
+ ORDER BY a.upload_time DESC
\ No newline at end of file
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialApproachRecordController.java b/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialApproachRecordController.java
new file mode 100644
index 000000000..021c44a8d
--- /dev/null
+++ b/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialApproachRecordController.java
@@ -0,0 +1,237 @@
+package com.zhgd.xmgl.modules.material.controller;
+
+import com.alibaba.fastjson.JSON;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.zhgd.jeecg.common.api.vo.Result;
+import com.zhgd.jeecg.common.system.query.QueryGenerator;
+import com.zhgd.jeecg.common.util.oConvertUtils;
+import com.zhgd.xmgl.modules.material.entity.MaterialApproachRecord;
+import com.zhgd.xmgl.modules.material.service.IMaterialApproachRecordService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
+import lombok.extern.slf4j.Slf4j;
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+
+
+/**
+ * @Title: Controller
+ * @Description: 材料进场记录
+ * @author: zp
+ * @date: 2023-02-23
+ * @version: V1.0
+ */
+@RestController
+@RequestMapping("/xmgl/materialApproachRecord")
+@Slf4j
+@Api(tags = "MaterialApproachRecordController相关Api")
+public class MaterialApproachRecordController {
+ @Autowired
+ private IMaterialApproachRecordService materialApproachRecordService;
+
+ /**
+ * 分页列表查询
+ *
+ * @param materialApproachRecord
+ * @param pageNo 页码
+ * @param pageSize 条数
+ * @param req
+ * @return
+ */
+ @ApiOperation(value = " 分页列表查询材料进场记录 信息", notes = "分页列表查询材料进场记录 信息", httpMethod = "GET")
+ @GetMapping(value = "/page")
+ public Result> queryPageList(MaterialApproachRecord materialApproachRecord,
+ @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+ @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+ HttpServletRequest req) {
+
+ QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(materialApproachRecord, req.getParameterMap());
+ Page page = new Page(pageNo, pageSize);
+ IPage pageList = materialApproachRecordService.page(page, queryWrapper);
+ return Result.success(pageList);
+ }
+
+ /**
+ * 列表查询
+ *
+ * @param materialApproachRecord
+ * @param pageNo 页码
+ * @param pageSize 条数
+ * @param req
+ * @return
+ */
+ @ApiOperation(value = " 列表查询材料进场记录 信息", notes = "列表查询材料进场记录 信息", httpMethod = "GET")
+ @GetMapping(value = "/list")
+ public Result> queryList(MaterialApproachRecord materialApproachRecord,
+ @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo,
+ @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize,
+ HttpServletRequest req) {
+
+ QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(materialApproachRecord, req.getParameterMap());
+ return Result.success(materialApproachRecordService.list(queryWrapper));
+ }
+
+ /**
+ * 添加
+ *
+ * @param materialApproachRecord
+ * @return
+ */
+ @ApiOperation(value = " 添加材料进场记录 信息", notes = "添加材料进场记录 信息", httpMethod = "POST")
+ @PostMapping(value = "/add")
+ public Result add(@RequestBody MaterialApproachRecord materialApproachRecord) {
+ materialApproachRecordService.save(materialApproachRecord);
+ return Result.ok();
+ }
+
+ /**
+ * 编辑
+ *
+ * @param materialApproachRecord
+ * @return
+ */
+ @ApiOperation(value = "编辑材料进场记录 信息", notes = "编辑材料进场记录 信息", httpMethod = "POST")
+ @PostMapping(value = "/edit")
+ public Result edit(@RequestBody MaterialApproachRecord materialApproachRecord) {
+ materialApproachRecordService.updateById(materialApproachRecord);
+ return Result.ok();
+ }
+
+ /**
+ * 通过id删除
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "删除材料进场记录 信息", notes = "删除材料进场记录 信息", httpMethod = "POST")
+ @ApiImplicitParam(name = "id", value = "材料进场记录 ID", paramType = "query", required = true, dataType = "Integer")
+ @PostMapping(value = "/delete")
+ public Result delete(@RequestBody String id) {
+ materialApproachRecordService.removeById(JSON.parseObject(id).get("id").toString());
+ return Result.ok();
+ }
+
+ /**
+ * 批量删除
+ *
+ * @param ids
+ * @return
+ */
+ @ApiOperation(value = "批量删除材料进场记录 信息", notes = "批量删除材料进场记录 信息", httpMethod = "DELETE")
+ @ApiImplicitParam(name = "id", value = "材料进场记录 ID字符串", paramType = "query", required = true, dataType = "String")
+ @DeleteMapping(value = "/deleteBatch")
+ public Result deleteBatch(@RequestParam(name = "ids", required = true) String ids) {
+ if (ids == null || "".equals(ids.trim())) {
+ throw new IllegalArgumentException("参数不识别!");
+ } else {
+ this.materialApproachRecordService.removeByIds(Arrays.asList(ids.split(",")));
+ }
+ return Result.ok();
+ }
+
+ /**
+ * 通过id查询
+ *
+ * @param id
+ * @return
+ */
+ @ApiOperation(value = "通过id查询材料进场记录 信息", notes = "通过id查询材料进场记录 信息", httpMethod = "GET")
+ @ApiImplicitParam(name = "id", value = "材料进场记录 ID", paramType = "query", required = true, dataType = "Integer")
+ @GetMapping(value = "/queryById")
+ public Result queryById(@RequestParam(name = "id", required = true) String id) {
+ MaterialApproachRecord materialApproachRecord = materialApproachRecordService.getById(id);
+ return Result.success(materialApproachRecord);
+ }
+
+ /**
+ * 导出excel
+ *
+ * @param request
+ * @param response
+ */
+ @ApiOperation(value = "导出excel材料进场记录 信息", notes = "导出excel材料进场记录 信息", httpMethod = "POST")
+ @RequestMapping(value = "/exportXls")
+ public ModelAndView exportXls(HttpServletRequest request, HttpServletResponse response) {
+ // Step.1 组装查询条件
+ QueryWrapper queryWrapper = null;
+ try {
+ String paramsStr = request.getParameter("paramsStr");
+ if (oConvertUtils.isNotEmpty(paramsStr)) {
+ String deString = URLDecoder.decode(paramsStr, "UTF-8");
+ MaterialApproachRecord materialApproachRecord = JSON.parseObject(deString, MaterialApproachRecord.class);
+ queryWrapper = QueryGenerator.initQueryWrapper(materialApproachRecord, request.getParameterMap());
+ }
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ }
+
+ //Step.2 AutoPoi 导出Excel
+ ModelAndView mv = new ModelAndView(new JeecgEntityExcelView());
+ List pageList = materialApproachRecordService.list(queryWrapper);
+ //导出文件名称
+ mv.addObject(NormalExcelConstants.FILE_NAME, "材料进场记录 列表");
+ mv.addObject(NormalExcelConstants.CLASS, MaterialApproachRecord.class);
+ mv.addObject(NormalExcelConstants.PARAMS, new ExportParams("材料进场记录 列表数据", "导出人:Jeecg", "导出信息"));
+ mv.addObject(NormalExcelConstants.DATA_LIST, pageList);
+ return mv;
+ }
+
+ /**
+ * 通过excel导入数据
+ *
+ * @param request
+ * @param response
+ * @return
+ */
+ @ApiOperation(value = "通过excel导入材料进场记录 信息", notes = "通过excel导入材料进场记录 信息", httpMethod = "POST")
+ @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+ public Result> importExcel(HttpServletRequest request, HttpServletResponse response) {
+ MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
+ Map fileMap = multipartRequest.getFileMap();
+ for (Map.Entry entity : fileMap.entrySet()) {
+ MultipartFile file = entity.getValue();// 获取上传文件对象
+ ImportParams params = new ImportParams();
+ params.setTitleRows(2);
+ params.setHeadRows(1);
+ params.setNeedSave(true);
+ try {
+ List listMaterialApproachRecords = ExcelImportUtil.importExcel(file.getInputStream(), MaterialApproachRecord.class, params);
+ for (MaterialApproachRecord materialApproachRecordExcel : listMaterialApproachRecords) {
+ materialApproachRecordService.save(materialApproachRecordExcel);
+ }
+ return Result.ok("文件导入成功!数据行数:" + listMaterialApproachRecords.size());
+ } catch (Exception e) {
+ log.error(e.getMessage());
+ return Result.error("文件导入失败!");
+ } finally {
+ try {
+ file.getInputStream().close();
+ } catch (IOException e) {
+ e.printStackTrace();
+ }
+ }
+ }
+ return Result.ok("文件导入失败!");
+ }
+
+}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialDetectionReportController.java b/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialDetectionReportController.java
index 7b3c72b7f..bf4fdb514 100644
--- a/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialDetectionReportController.java
+++ b/src/main/java/com/zhgd/xmgl/modules/material/controller/MaterialDetectionReportController.java
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.xmgl.modules.material.entity.MaterialDetectionReport;
+import com.zhgd.xmgl.modules.material.entity.qo.DetectionDateQO;
import com.zhgd.xmgl.modules.material.entity.qo.MaterialDetectionReportQO;
import com.zhgd.xmgl.modules.material.entity.qo.SumQualifiedRatioVO;
import com.zhgd.xmgl.modules.material.service.MaterialDetectionReportService;
@@ -65,8 +66,8 @@ public class MaterialDetectionReportController {
@ApiImplicitParam(name = "projectSn", value = "项目sn", dataType = "string", dataTypeClass = String.class, paramType = "query"),
@ApiImplicitParam(name = "size", value = "返回条数,默认10条", dataType = "string", dataTypeClass = String.class, defaultValue = "10", paramType = "query")
})
- public Result> limitByDetectionDate(String projectSn, @RequestParam(name = "size", defaultValue = "10") Integer size) {
- return Result.success(materialDetectionReportService.limitByDetectionDate(projectSn, size));
+ public Result> limitByDetectionDate(DetectionDateQO qo) {
+ return Result.success(materialDetectionReportService.limitByDetectionDate(qo));
}
/**
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialApproachRecord.java b/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialApproachRecord.java
new file mode 100644
index 000000000..4af930571
--- /dev/null
+++ b/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialApproachRecord.java
@@ -0,0 +1,69 @@
+package com.zhgd.xmgl.modules.material.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
+
+/**
+ * @Description: 材料进场记录
+ * @author: zp
+ * @date: 2023-02-23
+ * @version: V1.0
+ */
+@Data
+@TableName("material_approach_record")
+@ApiModel(value = "MaterialApproachRecord实体类", description = "MaterialApproachRecord")
+public class MaterialApproachRecord implements Serializable {
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * id
+ */
+ @TableId(type = IdType.AUTO)
+ @ApiModelProperty(value = "id")
+ private Integer id;
+ /**
+ * 进场时间
+ */
+ @Excel(name = "进场时间", width = 15, format = "yyyy-MM-dd")
+ @JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @ApiModelProperty(value = "进场时间")
+ private Date entryTime;
+ /**
+ * 材料类型
+ */
+ @Excel(name = "材料类型", width = 15)
+ @ApiModelProperty(value = "材料类型")
+ private String materialType;
+ /**
+ * 生产厂家
+ */
+ @Excel(name = "生产厂家", width = 15)
+ @ApiModelProperty(value = "生产厂家")
+ private String manufacturer;
+ /**
+ * 车牌号
+ */
+ @Excel(name = "车牌号", width = 15)
+ @ApiModelProperty(value = "车牌号")
+ private String licensePlateNumber;
+ /**
+ * 进场量
+ */
+ @Excel(name = "进场量", width = 15)
+ @ApiModelProperty(value = "进场量")
+ private Double approachVolume;
+
+ @ApiModelProperty(value = "projectSn")
+ private String projectSn;
+}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialDetectionReport.java b/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialDetectionReport.java
index d44cb4d4f..45d881012 100644
--- a/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialDetectionReport.java
+++ b/src/main/java/com/zhgd/xmgl/modules/material/entity/MaterialDetectionReport.java
@@ -82,5 +82,12 @@ public class MaterialDetectionReport implements Serializable {
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private Date updateDate;
+
+ @ApiModelProperty(value = "楼层")
+ private String floor;
+
+ @ApiModelProperty(value = "材料种类")
+ private String materialType;
+
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/DetectionDateQO.java b/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/DetectionDateQO.java
new file mode 100644
index 000000000..97255d90e
--- /dev/null
+++ b/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/DetectionDateQO.java
@@ -0,0 +1,24 @@
+package com.zhgd.xmgl.modules.material.entity.qo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel
+public class DetectionDateQO {
+ /**
+ * 事件类型
+ */
+ @TableField(value = "event_type")
+ @ApiModelProperty(value = "事件类型")
+ private String eventType;
+
+ @ApiModelProperty(value = "楼层")
+ private String floor;
+
+ private String projectSn;
+
+ private Integer size;
+}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/MaterialDetectionReportQO.java b/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/MaterialDetectionReportQO.java
index 6cfb64cf8..643d5a6e8 100644
--- a/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/MaterialDetectionReportQO.java
+++ b/src/main/java/com/zhgd/xmgl/modules/material/entity/qo/MaterialDetectionReportQO.java
@@ -91,5 +91,10 @@ public class MaterialDetectionReportQO implements Serializable {
*/
@ApiModelProperty(value = "更新时间 yyyy-MM-dd HH:mm:ss 结束时间")
private String endUpdateDate;
+
+ @ApiModelProperty(value = "楼层")
+ private String floor;
+ @ApiModelProperty(value = "材料种类")
+ private String materialType;
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/entity/vo/MeasuredRealQuantityVO.java b/src/main/java/com/zhgd/xmgl/modules/material/entity/vo/MeasuredRealQuantityVO.java
index efb5477c1..a0379baae 100644
--- a/src/main/java/com/zhgd/xmgl/modules/material/entity/vo/MeasuredRealQuantityVO.java
+++ b/src/main/java/com/zhgd/xmgl/modules/material/entity/vo/MeasuredRealQuantityVO.java
@@ -59,4 +59,9 @@ public class MeasuredRealQuantityVO implements Serializable {
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd")
@DateTimeFormat(pattern = "yyyy-MM-dd")
private Date surveyingDate;
+ /**
+ * 实测实量楼层
+ */
+ @ApiModelProperty(value = "实测实量楼层")
+ private String floorName;
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/mapper/MaterialApproachRecordMapper.java b/src/main/java/com/zhgd/xmgl/modules/material/mapper/MaterialApproachRecordMapper.java
new file mode 100644
index 000000000..b10862712
--- /dev/null
+++ b/src/main/java/com/zhgd/xmgl/modules/material/mapper/MaterialApproachRecordMapper.java
@@ -0,0 +1,19 @@
+package com.zhgd.xmgl.modules.material.mapper;
+
+import java.util.List;
+
+import com.zhgd.xmgl.modules.material.entity.MaterialApproachRecord;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: 材料进场记录
+ * @author: zp
+ * @date: 2023-02-23
+ * @version: V1.0
+ */
+@Mapper
+public interface MaterialApproachRecordMapper extends BaseMapper {
+
+}
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialApproachRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialApproachRecordMapper.xml
new file mode 100644
index 000000000..5e971cc34
--- /dev/null
+++ b/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialApproachRecordMapper.xml
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialDetailsMapper.xml b/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialDetailsMapper.xml
index 1bc30b3c6..972b3a27c 100644
--- a/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialDetailsMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/material/mapper/xml/MaterialDetailsMapper.xml
@@ -59,6 +59,8 @@
left join zjsj_material_details zmd on zmt.id = zmd.type_id
where zmt.project_sn = #{projectSn}
group by zmt.id
+ ORDER BY
+ consume_value DESC
+
\ No newline at end of file
diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java b/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java
index 2f623621a..ffa3a75df 100644
--- a/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java
+++ b/src/main/java/com/zhgd/xmgl/modules/project/service/IProjectService.java
@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.entity.vo.ZwProjectDataVo;
import com.zhgd.xmgl.modules.project.entity.Project;
+import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectType;
import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO;
import java.util.List;
@@ -61,4 +62,6 @@ public interface IProjectService extends IService {
* @return 项目工期
*/
ProjectDurationVO getProjectDuration(String projectSn);
+
+ List groupByProjectType(Map map);
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProgressTaskServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProgressTaskServiceImpl.java
index f73611a01..80c78abbd 100644
--- a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProgressTaskServiceImpl.java
+++ b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProgressTaskServiceImpl.java
@@ -403,20 +403,25 @@ public class ProgressTaskServiceImpl extends ServiceImpl {
Date startDate = progressTask.getStartDate();
+ Date finishDate = progressTask.getFinishDate();
Date actualStartDate = progressTask.getActualStartDate();
-
+ Date actualFinishDate = progressTask.getActualFinishDate();
+ long datePeriod = finishDate.getTime() - startDate.getTime();
int status;
- if (actualStartDate == null || (startDate.getTime() < actualStartDate.getTime())) {
- // 实际开始时间晚于预计开始时间
- status = 3;
- } else if (startDate.getTime() > actualStartDate.getTime()) {
- // 实际开始时间比预计开始时间早
+ //状态 1:提前 2正常 3延迟
+ if (actualStartDate != null && actualFinishDate != null && actualFinishDate.getTime() - actualStartDate.getTime() < datePeriod) {
+ //1:提前
status = 1;
- } else {
- // 实际开始时间等于预计开始时间
+ } else if ((actualStartDate == null && actualFinishDate == null) ||
+ (actualStartDate != null && actualFinishDate != null && actualFinishDate.getTime() - actualStartDate.getTime() == datePeriod) ||
+ (actualStartDate != null && actualFinishDate == null && System.currentTimeMillis() - actualStartDate.getTime() <= datePeriod)) {
+ //2正常
status = 2;
+ } else {
+ //3延迟
+ status = 3;
}
- return new ActualProgressVO(progressTask.getTaskName(), startDate, progressTask.getFinishDate(), actualStartDate, status);
+ return new ActualProgressVO(progressTask.getTaskName(), startDate, progressTask.getFinishDate(), actualStartDate, status, actualFinishDate);
}).collect(Collectors.toList());
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java
index fa10c4282..6253016d1 100644
--- a/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java
+++ b/src/main/java/com/zhgd/xmgl/modules/project/service/impl/ProjectServiceImpl.java
@@ -32,6 +32,7 @@ import com.zhgd.xmgl.modules.environment.service.IEnvironmentDevService;
import com.zhgd.xmgl.modules.massrebound.service.IFunctionRoomService;
import com.zhgd.xmgl.modules.project.entity.Project;
import com.zhgd.xmgl.modules.project.entity.ProjectConfig;
+import com.zhgd.xmgl.modules.project.entity.vo.GroupByProjectType;
import com.zhgd.xmgl.modules.project.entity.vo.ProjectDurationVO;
import com.zhgd.xmgl.modules.project.mapper.ProjectConfigMapper;
import com.zhgd.xmgl.modules.project.mapper.ProjectEnterpriseMapper;
@@ -494,4 +495,10 @@ public class ProjectServiceImpl extends ServiceImpl impl
return projectDuration;
}
+ @Override
+ public List groupByProjectType(Map map) {
+ List groupByProjectTypes = projectMapper.groupByProjectType(map);
+ return groupByProjectTypes;
+ }
+
}
diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRegion.java b/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRegion.java
index c01879e8f..72532d20d 100644
--- a/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRegion.java
+++ b/src/main/java/com/zhgd/xmgl/modules/quality/entity/QualityRegion.java
@@ -1,17 +1,16 @@
package com.zhgd.xmgl.modules.quality.entity;
-import java.io.Serializable;
-import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
-import lombok.Data;
-import org.springframework.format.annotation.DateTimeFormat;
-import org.jeecgframework.poi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import java.io.Serializable;
+import java.util.Date;
/**
* @Description: 质量—检查部位
* @author: pds
@@ -41,18 +40,24 @@ public class QualityRegion implements Serializable {
@ApiModelProperty(value="整改人ID")
private java.lang.Long dutyId ;
- /**通知人*/
+ /**
+ * 通知人
+ */
@Excel(name = "通知人", width = 15)
- @ApiModelProperty(value="通知人ID")
- private java.lang.String intendanceIds ;
- /**父级区域ID*/
+ @ApiModelProperty(value = "通知人ID")
+ private java.lang.String intendanceIds;
+ /**
+ * 父级区域ID
+ */
@Excel(name = "父级区域ID", width = 15)
- @ApiModelProperty(value="父级区域ID")
- private java.lang.Integer parentRegion ;
- /**说明*/
+ @ApiModelProperty(value = "父级区域ID")
+ private java.lang.Long parentRegion;
+ /**
+ * 说明
+ */
@Excel(name = "说明", width = 15)
- @ApiModelProperty(value="说明")
- private java.lang.String remark ;
+ @ApiModelProperty(value = "说明")
+ private java.lang.String remark;
/**项目唯一标识*/
@Excel(name = "项目唯一标识", width = 15)
@ApiModelProperty(value="项目唯一标识")
diff --git a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityRegionServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityRegionServiceImpl.java
index 3e4f897e5..e15a01b90 100644
--- a/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityRegionServiceImpl.java
+++ b/src/main/java/com/zhgd/xmgl/modules/quality/service/impl/QualityRegionServiceImpl.java
@@ -65,7 +65,7 @@ public class QualityRegionServiceImpl extends ServiceImpl param=new HashMap<>();
param.put("projectSn",qualityRegion.getProjectSn());
diff --git a/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml b/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml
index b784237b8..1dd287908 100644
--- a/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml
+++ b/src/main/java/com/zhgd/xmgl/modules/video/mapper/xml/AiAnalyseHardWareAlarmRecordMapper.xml
@@ -444,12 +444,12 @@
-