Commit dffa6df3 authored by renchao's avatar renchao

爆破工序,穿孔工序模块代码编写

parent 9dafd861
package cn.wise.sc.acquisition.business.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author renchao
* @since 2021-04-30
*/
@RestController
@RequestMapping("/business/t-mine-stope")
public class TMineStopeController {
}
package cn.wise.sc.acquisition.business.controller;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastQuery;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastService;
import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.baomidou.mybatisplus.extension.api.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@RestController
@Api(tags = "生成工序-爆破工序")
@RequestMapping("/business/t-processes-blast")
public class TProcessesBlastController {
@Autowired
ITProcessesBlastService itProcessesBlastService;
/**
* 根据条件查询爆破工序 分页
*
* @return
*/
@ApiOperation(value = "根据条件查询爆破工序 可分页模糊查询")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "BlastDate", value = "搜索关键字,爆破时间", paramType = "query", dataType = "String")
})
@RequestMapping(value = "/getPage", method = RequestMethod.GET)
public R getPage(Query query, String BlastDate) {
TProcessesBlastQuery param = new TProcessesBlastQuery();
if (StringUtils.isNotBlank(BlastDate)){
param.setBlastDate(DateUtil.strToTime(BlastDate));
}
return itProcessesBlastService.getPage(param, query);
}
/**
* 根据uid修改爆破工序
*
* @param tProcessesBlastdesignHoleQuery
* @return
*/
@ApiOperation(value = "根据uid修改爆破工序")
@RequestMapping(value = "/updateByUid", method = RequestMethod.POST)
public R updateByUid(@RequestBody TProcessesBlastQuery tProcessesBlastdesignHoleQuery) {
return itProcessesBlastService.updateByUid(tProcessesBlastdesignHoleQuery);
}
}
......@@ -10,6 +10,7 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
......@@ -28,7 +29,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping("/business/t-processes-blastdesign-hole")
@Api(tags = "炮孔设计")
@Api(tags = "生成工序-炮孔设计")
public class TProcessesBlastdesignHoleController {
@Autowired
......@@ -46,7 +47,9 @@ public class TProcessesBlastdesignHoleController {
@RequestMapping(value = "/getPage", method = RequestMethod.GET)
public R getPage(String designDate, Query query) {
TProcessesBlastdesignHoleQuery param = new TProcessesBlastdesignHoleQuery();
param.setDesignDate(DateUtil.strToTime(designDate));
if (StringUtils.isNotBlank(designDate)){
param.setDesignDate(DateUtil.strToTime(designDate));
}
return itProcessesBlastdesignHoleService.getPage(param, query);
}
......
......@@ -27,7 +27,7 @@ import org.springframework.web.bind.annotation.RestController;
*/
@RestController
@RequestMapping("/business/t-processes-blastdesign-volume")
@Api(tags = "设计爆区爆破量(基本信息)")
@Api(tags = "生成工序-设计爆区爆破量(基本信息)")
public class TProcessesBlastdesignVolumeController {
@Autowired
......
package cn.wise.sc.acquisition.business.controller;
import cn.wise.sc.acquisition.business.model.query.TProcessesDrillingQuery;
import cn.wise.sc.acquisition.business.service.ITProcessesDrillingService;
import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.baomidou.mybatisplus.extension.api.R;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@RestController
@Api(tags = "生成工序-穿孔工序")
@RequestMapping("/business/t-processes-drilling")
public class TProcessesDrillingController {
@Autowired
private ITProcessesDrillingService itProcessesDrillingService;
/**
* 根据条件查询穿孔工序 分页
* @return
*/
@ApiOperation(value = "根据条件查询穿孔工序 可分页模糊查询")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "DrillingDate", value = "搜索关键字,设计日期", paramType = "query", dataType = "String")
})
@RequestMapping(value = "/getPage", method = RequestMethod.GET)
public R getPage(Query query, String DrillingDate) {
TProcessesDrillingQuery param = new TProcessesDrillingQuery();
if (StringUtils.isNotBlank(DrillingDate)){
param.setDrillingDate(DateUtil.strToTime(DrillingDate));
}
return itProcessesDrillingService.getPage(param, query);
}
/**
* 根据uid修改穿孔工序
*
* @param tProcessesBlastdesignHoleQuery
* @return
*/
@ApiOperation(value = "根据uid修改穿孔工序")
@RequestMapping(value = "/updateByUid", method = RequestMethod.POST)
public R updateByUid(@RequestBody TProcessesDrillingQuery tProcessesBlastdesignHoleQuery) {
return itProcessesDrillingService.updateByUid(tProcessesBlastdesignHoleQuery);
}
}
......@@ -25,7 +25,7 @@ import javax.servlet.http.HttpServletResponse;
* @author renchao
* @since 2021-04-25
*/
@Api(tags = "送验单分析结果")
@Api(tags = "样品化验-送验单分析结果")
@RestController
@RequestMapping("/business/t-sample-laboratorysheet")
public class TSampleLaboratorysheetController {
......
......@@ -24,7 +24,7 @@ import javax.servlet.http.HttpServletResponse;
* @author ztw
* @since 2021-04-22
*/
@Api(tags = "送验单接口")
@Api(tags = "样品化验-送验单接口")
@RestController
@RequestMapping("/business/t-sample-list")
public class TSampleListController {
......
package cn.wise.sc.acquisition.business.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-30
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_Mine_Stope")
public class TMineStope implements Serializable {
private static final long serialVersionUID=1L;
/**
* ID号
*/
@TableId("Uid")
private String Uid;
/**
* 采区名称
*/
@TableField("StopeName")
private String StopeName;
/**
* 平台名称
*/
@TableField("StepName")
private String StepName;
/**
* 爆区名称
*/
@TableField("BlastAreaName")
private String BlastAreaName;
/**
* 是否使用
*/
@TableField("IsUsing")
private Boolean IsUsing;
}
package cn.wise.sc.acquisition.business.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_Processes_Blast")
public class TProcessesBlast implements Serializable {
private static final long serialVersionUID=1L;
/**
* ID号
*/
@TableId(value = "Uid")
private String Uid;
/**
* 采区名称
*/
@TableField("StopeName")
private String StopeName;
/**
* 平台名称
*/
@TableField("StepName")
private String StepName;
/**
* 爆区名称
*/
@TableField("BlastAreaName")
private String BlastAreaName;
/**
* 炮孔编号
*/
@TableField("HoleID")
private String HoleID;
/**
* 爆破日期
*/
@TableField("BlastDate")
private LocalDateTime BlastDate;
/**
* 爆破人员
*/
@TableField("BlastPeople")
private String BlastPeople;
/**
* 验孔日期
*/
@TableField("CheckHoleDate")
private LocalDateTime CheckHoleDate;
/**
* 验孔人员
*/
@TableField("CheckHolePeople")
private String CheckHolePeople;
/**
* 项目经理
*/
@TableField("Manager")
private String Manager;
/**
* 主管项目领导
*/
@TableField("Supervisor")
private String Supervisor;
/**
* 生产技术部
*/
@TableField("TechDepart")
private String TechDepart;
/**
* 制表人
*/
@TableField("Tabulator")
private String Tabulator;
/**
* 实测孔深(m)
*/
@TableField("Depth")
private Double Depth;
@TableField("Bz")
private String Bz;
/**
* 日期标记,如:2020年11月
*/
@TableField("Tag")
private String Tag;
}
package cn.wise.sc.acquisition.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("T_Processes_Drilling")
public class TProcessesDrilling implements Serializable {
private static final long serialVersionUID=1L;
/**
* ID号
*/
@TableId(value = "Uid", type = IdType.ASSIGN_UUID)
private String Uid;
/**
* 采区名称
*/
@TableField("StopeName")
private String StopeName;
/**
* 平台名称
*/
@TableField("StepName")
private String StepName;
/**
* 爆区名称
*/
@TableField("BlastAreaName")
private String BlastAreaName;
/**
* 炮孔编号
*/
@TableField("HoleID")
private String HoleID;
/**
* 穿孔日期
*/
@TableField("DrillingDate")
private LocalDateTime DrillingDate;
/**
* 项目经理
*/
@TableField("Manager")
private String Manager;
/**
* 主管项目领导
*/
@TableField("Supervisor")
private String Supervisor;
/**
* 生产技术部
*/
@TableField("TechDepart")
private String TechDepart;
/**
* 制表人
*/
@TableField("Tabulator")
private String Tabulator;
/**
* 钻机编号
*/
@TableField("EquipmentID")
private String EquipmentID;
/**
* 司机
*/
@TableField("Driver")
private String Driver;
/**
* 钻机开始读数(H)
*/
@TableField("StartTime")
private Float StartTime;
/**
* 钻机结束读数(H)
*/
@TableField("EndTime")
private Float EndTime;
/**
* 钻机工作时间(H)
*/
@TableField("WorkTime")
private Float WorkTime;
/**
* 孔深(m)
*/
@TableField("Depth")
private Double Depth;
/**
* 排距(m)
*/
@TableField("RowSpace")
private Double RowSpace;
/**
* 孔距(m)
*/
@TableField("HoleSpace")
private Double HoleSpace;
/**
* 方位角
*/
@TableField("Azimuth")
private Double Azimuth;
/**
* 倾角
*/
@TableField("Inclination")
private Double Inclination;
/**
* 孔径(m)
*/
@TableField("Aperture")
private Double Aperture;
/**
* 开孔坐标X
*/
@TableField("X")
private Double x;
/**
* 开孔坐标Y
*/
@TableField("Y")
private Double y;
/**
* 开孔坐标Z
*/
@TableField("Z")
private Double z;
/**
* 单孔爆破量(m3)
*/
@TableField("HoleBlastVolume")
private Double HoleBlastVolume;
/**
* 爆破日期
*/
@TableField("BlastDate")
private LocalDateTime BlastDate;
/**
* 穿孔作业人
*/
@TableField("Operator")
private String Operator;
/**
* 测量验收人
*/
@TableField("Accepter")
private String Accepter;
/**
* 备注
*/
@TableField("Bz")
private String Bz;
/**
* 日期标记,如:2021年01月
*/
@TableField("Tag")
private String Tag;
}
......@@ -262,7 +262,9 @@ public class ProjectEnum {
*/
public enum TProcessesBlastdesignHole {
UID(1, "Uid","炮孔设计id");
UID(1, "Uid","炮孔设计id"),
BLASET_HOLE_ID(2, "BlastHoleID","炮孔编号");
// 成员变量
private int value;
......@@ -326,4 +328,122 @@ public class ProjectEnum {
return explain;
}
}
/**
* TProcessesBlast 枚举
*/
public enum TProcessesBlast {
UID(1, "Uid","爆破工序uid"),
BLAST_DATE(2, "BlastDate","别名a");
// 成员变量
private int value;
private String label;
private String explain;
// 构造方法
TProcessesBlast(int value, String label, String explain) {
this.value = value;
this.label = label;
this.explain = explain;
}
/**
* 根据value,获取label
*/
public static String getLabel(int value) {
for (TProcessesBlast c : TProcessesBlast.values()) {
if (c.value == value) {
return c.label;
}
}
return TProcessesBlast.BLAST_DATE.label;
}
/**
* 根据label,获取value
*/
public static int getValue(String label) {
for (TProcessesBlast c : TProcessesBlast.values()) {
if (StringUtils.equalsIgnoreCase(label, c.label)) {
return c.value;
}
}
return TProcessesBlast.BLAST_DATE.value;
}
public int getValue() {
return value;
}
public String getLabel() {
return label;
}
public String getexplain() {
return explain;
}
}
/**
* 保存图片类型判断 1.记录形式 2.二维码
*/
public enum TProcessesDrilling {
DRILLING_DATE(1, "DrillingDate","穿孔日期"),
DEPTH(5, "Depth","孔深");
// 成员变量
private int value;
private String label;
private String explain;
// 构造方法
TProcessesDrilling(int value, String label, String explain) {
this.value = value;
this.label = label;
this.explain = explain;
}
/**
* 根据value,获取label
*/
public static String getLabel(int value) {
for (TProcessesDrilling c : TProcessesDrilling.values()) {
if (c.value == value) {
return c.label;
}
}
return TProcessesDrilling.DRILLING_DATE.label;
}
/**
* 根据label,获取value
*/
public static int getValue(String label) {
for (TProcessesDrilling c : TProcessesDrilling.values()) {
if (StringUtils.equalsIgnoreCase(label, c.label)) {
return c.value;
}
}
return TProcessesDrilling.DRILLING_DATE.value;
}
public int getValue() {
return value;
}
public String getLabel() {
return label;
}
}
}
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TMineStope;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author renchao
* @since 2021-04-30
*/
public interface TMineStopeMapper extends BaseMapper<TMineStope> {
}
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TProcessesBlast;
import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
/**
* <p>
* Mapper 接口
* </p>
*
* @author renchao
* @since 2021-04-29
*/
public interface TProcessesBlastMapper extends BaseMapper<TProcessesBlast> {
Page<TProcessesBlastVo> getPage(Page<TProcessesBlast> page, @Param("ew") QueryWrapper<TProcessesBlast> queryWrapper);
}
package cn.wise.sc.acquisition.business.mapper;
import cn.wise.sc.acquisition.business.entity.TProcessesDrilling;
import cn.wise.sc.acquisition.business.model.vo.TProcessesDrillingVo;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
/**
* <p>
* Mapper 接口
* </p>
*
* @author renchao
* @since 2021-04-29
*/
public interface TProcessesDrillingMapper extends BaseMapper<TProcessesDrilling> {
Page<TProcessesDrillingVo> getPage(Page<TProcessesDrilling> page, @Param("ew") QueryWrapper<TProcessesDrilling> queryWrapper);
Double getSumByCondition(@Param("condition") String condition, @Param("ew") QueryWrapper<TProcessesDrilling> queryWrapper);
}
<?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="cn.wise.sc.acquisition.business.mapper.TMineStopeMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.acquisition.business.mapper.TProcessesBlastMapper">
<!-- 表和实体字段对照关系, 类似RestultMap -->
<sql id="TProcessesBlastColumns">
a.Uid,
a.StopeName,
a.StepName,
a.BlastAreaName,
a.HoleID,
a.BlastDate,
a.BlastPeople,
a.CheckHoleDate,
a.CheckHolePeople,
a.Manager,
a.Supervisor,
a.TechDepart,
a.Tabulator,
a.Depth,
a.Bz,
a.Tag
</sql>
<sql id="TProcessesDiggingHoleColumns">
b.HoleBlastVolume,
</sql>
<sql id="TProcessesDrillingColumns">
c.Depth AS DesignDepth,
</sql>
<sql id="TProcessesBlastdesignHoleJoins">
left join T_Processes_BlastDesign_Hole b on a.HoleID = b.BlastHoleID
left join T_Processes_Drilling c on a.HoleID = c.HoleID
</sql>
<!-- 获取所有getPage列表 -->
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TProcessesBlastVo">
SELECT
<include refid="TProcessesDiggingHoleColumns"/>
<include refid="TProcessesDrillingColumns"/>
<include refid="TProcessesBlastColumns"/>
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.acquisition.business.mapper.TProcessesDrillingMapper">
<!-- 表和实体字段对照关系, 类似RestultMap -->
<sql id="TProcessesDrillingColumns">
a.Uid,
a.StopeName,
a.StepName,
a.BlastAreaName,
a.HoleID,
a.DrillingDate,
a.Manager,
a.Supervisor,
a.TechDepart,
a.Tabulator,
a.EquipmentID,
a.Driver,
a.StartTime,
a.EndTime,
a.WorkTime,
<!--
a.Depth,
a.RowSpace,
a.HoleSpace,
a.Azimuth,
a.Inclination,
a.Aperture,
a.x,
a.y,
a.z,
a.HoleBlastVolume,
a.BlastDate,-->
a.Operator,
a.Accepter,
a.Bz,
a.Tag,
</sql>
<sql id="TProcessesDiggingHoleColumns">
b.Depth;/*孔深(m)*/
b.RowSpace;/*排距(m)*/
b.HoleSpace;/*孔距(m)*/
b.Azimuth;/*方位角*/
b.Inclination;/*倾角*/
b.Aperture;/*孔径(m)*/
b.x;/*开孔坐标X*/
b.y;/*开孔坐标Y*/
b.z;/*开孔坐标Z*/
b.HoleBlastVolume;/* 单孔爆破量(m3)=孔距*排距*台阶高度*/
</sql>
<sql id="TProcessesBlastColumns">
c.BlastDate
</sql>
<sql id="TProcessesBlastdesignHoleJoins">
left join T_Processes_BlastDesign_Hole b on a.HoleID = b.BlastHoleID
left join T_Processes_Blast c on a.HoleID = c.HoleID
</sql>
<!-- 获取所有getPage列表 -->
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TProcessesDrillingVo">
SELECT
<include refid="TProcessesDiggingHoleColumns"/>
<include refid="TProcessesDrillingColumns"/>
<include refid="TProcessesBlastColumns"/>
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
<!-- 获取所有getByQuery列表 -->
<select id="getSumByCondition" resultType="Double">
SELECT
sum(${condition})
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>
package cn.wise.sc.acquisition.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-30
*/
@Data
@ApiModel("矿山爆区表")
public class TMineStopeQuery implements Serializable {
private static final long serialVersionUID=1L;
/**
* ID号
*/
@ApiModelProperty("Uid")
private String Uid;
/**
* 采区名称
*/
@ApiModelProperty("StopeName")
private String StopeName;
/**
* 平台名称
*/
@ApiModelProperty("StepName")
private String StepName;
/**
* 爆区名称
*/
@ApiModelProperty("BlastAreaName")
private String BlastAreaName;
/**
* 是否使用
*/
@ApiModelProperty("IsUsing")
private Boolean IsUsing;
}
package cn.wise.sc.acquisition.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@ApiModel("爆破工序")
public class TProcessesBlastQuery {
/**
* ID号
*/
@ApiModelProperty("Uid")
private String Uid;
/**
* 采区名称
*/
@ApiModelProperty("StopeName")
private String StopeName;
/**
* 平台名称
*/
@ApiModelProperty("StepName")
private String StepName;
/**
* 爆区名称
*/
@ApiModelProperty("BlastAreaName")
private String BlastAreaName;
/**
* 炮孔编号
*/
@ApiModelProperty("HoleID")
private String HoleID;
/**
* 爆破日期
*/
@ApiModelProperty("BlastDate")
private LocalDateTime BlastDate;
/**
* 爆破人员
*/
@ApiModelProperty("BlastPeople")
private String BlastPeople;
/**
* 验孔日期
*/
@ApiModelProperty("CheckHoleDate")
private LocalDateTime CheckHoleDate;
/**
* 验孔人员
*/
@ApiModelProperty("CheckHolePeople")
private String CheckHolePeople;
/**
* 项目经理
*/
@ApiModelProperty("Manager")
private String Manager;
/**
* 主管项目领导
*/
@ApiModelProperty("Supervisor")
private String Supervisor;
/**
* 生产技术部
*/
@ApiModelProperty("TechDepart")
private String TechDepart;
/**
* 制表人
*/
@ApiModelProperty("Tabulator")
private String Tabulator;
/**
* 实测孔深(m)
*/
@ApiModelProperty("Depth")
private Double Depth;
@ApiModelProperty("Bz")
private String Bz;
/**
* 日期标记,如:2020年11月
*/
@ApiModelProperty("Tag")
private String Tag;
/**
* 设计孔深 来自TProcessesDrilling表
*/
@ApiModelProperty("设计孔深")
private Double DesignDepth;
/**
* 单孔爆破量 来自 TProcessesBlastdesignHole
*/
@ApiModelProperty("单孔爆破量")
private Double HoleBlastVolume;
}
package cn.wise.sc.acquisition.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@ApiModel("穿孔工序")
public class TProcessesDrillingQuery {
/**
* ID号
*/
@ApiModelProperty("Uid")
private String Uid;
/**
* 采区名称
*/
@ApiModelProperty("StopeName")
private String StopeName;
/**
* 平台名称
*/
@ApiModelProperty("StepName")
private String StepName;
/**
* 爆区名称
*/
@ApiModelProperty("BlastAreaName")
private String BlastAreaName;
/**
* 炮孔编号
*/
@ApiModelProperty("HoleID")
private String HoleID;
/**
* 穿孔日期
*/
@ApiModelProperty("DrillingDate")
private LocalDateTime DrillingDate;
/**
* 项目经理
*/
@ApiModelProperty("Manager")
private String Manager;
/**
* 主管项目领导
*/
@ApiModelProperty("Supervisor")
private String Supervisor;
/**
* 生产技术部
*/
@ApiModelProperty("TechDepart")
private String TechDepart;
/**
* 制表人
*/
@ApiModelProperty("Tabulator")
private String Tabulator;
/**
* 钻机编号
*/
@ApiModelProperty("EquipmentID")
private String EquipmentID;
/**
* 司机
*/
@ApiModelProperty("Driver")
private String Driver;
/**
* 钻机开始读数(H)
*/
@ApiModelProperty("StartTime")
private Float StartTime;
/**
* 钻机结束读数(H)
*/
@ApiModelProperty("EndTime")
private Float EndTime;
/**
* 钻机工作时间(H)
*/
@ApiModelProperty("WorkTime")
private Float WorkTime;
/**
* 孔深(m)
*/
@ApiModelProperty("Depth")
private Double Depth;
/**
* 排距(m)
*/
@ApiModelProperty("RowSpace")
private Double RowSpace;
/**
* 孔距(m)
*/
@ApiModelProperty("HoleSpace")
private Double HoleSpace;
/**
* 方位角
*/
@ApiModelProperty("Azimuth")
private Double Azimuth;
/**
* 倾角
*/
@ApiModelProperty("Inclination")
private Double Inclination;
/**
* 孔径(m)
*/
@ApiModelProperty("Aperture")
private Double Aperture;
/**
* 开孔坐标X
*/
@ApiModelProperty("X")
private Double x;
/**
* 开孔坐标Y
*/
@ApiModelProperty("Y")
private Double y;
/**
* 开孔坐标Z
*/
@ApiModelProperty("Z")
private Double z;
/**
* 单孔爆破量(m3)
*/
@ApiModelProperty("HoleBlastVolume")
private Double HoleBlastVolume;
/**
* 爆破日期
*/
@ApiModelProperty("BlastDate")
private LocalDateTime BlastDate;
/**
* 穿孔作业人
*/
@ApiModelProperty("Operator")
private String Operator;
/**
* 测量验收人
*/
@ApiModelProperty("Accepter")
private String Accepter;
/**
* 备注
*/
@ApiModelProperty("Bz")
private String Bz;
/**
* 日期标记,如:2021年01月
*/
@ApiModelProperty("Tag")
private String Tag;
}
package cn.wise.sc.acquisition.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@ApiModel("爆破工序")
public class TProcessesBlastVo {
/**
* ID号
*/
@ApiModelProperty("Uid")
private String Uid;
//
// /**
// * 采区名称
// */
// @ApiModelProperty("StopeName")
// private String StopeName;
//
// /**
// * 平台名称
// */
// @ApiModelProperty("StepName")
// private String StepName;
//
// /**
// * 爆区名称
// */
// @ApiModelProperty("BlastAreaName")
// private String BlastAreaName;
//
// /**
// * 炮孔编号
// */
// @ApiModelProperty("HoleID")
// private String HoleID;
//
// /**
// * 爆破日期
// */
// @ApiModelProperty("BlastDate")
// private LocalDateTime BlastDate;
//
// /**
// * 爆破人员
// */
// @ApiModelProperty("BlastPeople")
// private String BlastPeople;
//
// /**
// * 验孔日期
// */
// @ApiModelProperty("CheckHoleDate")
// private LocalDateTime CheckHoleDate;
//
// /**
// * 验孔人员
// */
// @ApiModelProperty("CheckHolePeople")
// private String CheckHolePeople;
//
// /**
// * 项目经理
// */
// @ApiModelProperty("Manager")
// private String Manager;
//
// /**
// * 主管项目领导
// */
// @ApiModelProperty("Supervisor")
// private String Supervisor;
//
// /**
// * 生产技术部
// */
// @ApiModelProperty("TechDepart")
// private String TechDepart;
//
// /**
// * 制表人
// */
// @ApiModelProperty("Tabulator")
// private String Tabulator;
//
//
//
// @ApiModelProperty("Bz")
// private String Bz;
//
// /**
// * 日期标记,如:2020年11月
// */
// @ApiModelProperty("Tag")
// private String Tag;
//
/**
* 实测孔深(m)
*/
@ApiModelProperty("Depth")
private Double Depth;
/**
* 设计孔深
*/
@ApiModelProperty("设计孔深")
private Double DesignDepth;
/**
* 单孔爆破量
*/
@ApiModelProperty("单孔爆破量")
private Double HoleBlastVolume;
}
package cn.wise.sc.acquisition.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Data
@ApiModel("穿孔工序")
public class TProcessesDrillingVo {
/**
* ID号
*/
@ApiModelProperty("Uid")
private String Uid;
/**
* 采区名称
*/
@ApiModelProperty("StopeName")
private String StopeName;
/**
* 平台名称
*/
@ApiModelProperty("StepName")
private String StepName;
/**
* 爆区名称
*/
@ApiModelProperty("BlastAreaName")
private String BlastAreaName;
/**
* 炮孔编号
*/
@ApiModelProperty("HoleID")
private String HoleID;
/**
* 穿孔日期
*/
@ApiModelProperty("DrillingDate")
private LocalDateTime DrillingDate;
/**
* 项目经理
*/
@ApiModelProperty("Manager")
private String Manager;
/**
* 主管项目领导
*/
@ApiModelProperty("Supervisor")
private String Supervisor;
/**
* 生产技术部
*/
@ApiModelProperty("TechDepart")
private String TechDepart;
/**
* 制表人
*/
@ApiModelProperty("Tabulator")
private String Tabulator;
/**
* 钻机编号
*/
@ApiModelProperty("EquipmentID")
private String EquipmentID;
/**
* 司机
*/
@ApiModelProperty("Driver")
private String Driver;
/**
* 钻机开始读数(H)
*/
@ApiModelProperty("StartTime")
private Float StartTime;
/**
* 钻机结束读数(H)
*/
@ApiModelProperty("EndTime")
private Float EndTime;
/**
* 钻机工作时间(H)
*/
@ApiModelProperty("WorkTime")
private Float WorkTime;
/**
* 孔深(m)
*/
@ApiModelProperty("Depth")
private Double Depth;
/**
* 排距(m)
*/
@ApiModelProperty("RowSpace")
private Double RowSpace;
/**
* 孔距(m)
*/
@ApiModelProperty("HoleSpace")
private Double HoleSpace;
/**
* 方位角
*/
@ApiModelProperty("Azimuth")
private Double Azimuth;
/**
* 倾角
*/
@ApiModelProperty("Inclination")
private Double Inclination;
/**
* 孔径(m)
*/
@ApiModelProperty("Aperture")
private Double Aperture;
/**
* 开孔坐标X
*/
@ApiModelProperty("X")
private Double x;
/**
* 开孔坐标Y
*/
@ApiModelProperty("Y")
private Double y;
/**
* 开孔坐标Z
*/
@ApiModelProperty("Z")
private Double z;
/**
* 单孔爆破量(m3)
*/
@ApiModelProperty("HoleBlastVolume")
private Double HoleBlastVolume;
/**
* 爆破日期
*/
@ApiModelProperty("BlastDate")
private LocalDateTime BlastDate;
/**
* 穿孔作业人
*/
@ApiModelProperty("Operator")
private String Operator;
/**
* 测量验收人
*/
@ApiModelProperty("Accepter")
private String Accepter;
/**
* 备注
*/
@ApiModelProperty("Bz")
private String Bz;
/**
* 日期标记,如:2021年01月
*/
@ApiModelProperty("Tag")
private String Tag;
}
......@@ -8,17 +8,25 @@ import lombok.Data;
* <p>
*
* </p>
*
* 生成工序的返回工具 暴恐爆破工序,炮孔设计等等
* @author renchao
* @since 2021-04-27
*/
@Data
public class TProcessesBlastdesignHoleResultVo<T> {
public class TProcessesProductVo<T> {
/**
* 设计孔深合计
*/
private Double depthSum;
/**
* 今日合计孔深
*/
private Double todayDepthSum;
/**
* 本月合计孔深
*/
private Double monthDepthSum;
/**
* 分页返回数据
......@@ -26,12 +34,19 @@ public class TProcessesBlastdesignHoleResultVo<T> {
private Page<T> data;
public TProcessesBlastdesignHoleResultVo() {
public TProcessesProductVo() {
}
public TProcessesBlastdesignHoleResultVo(Page<T> data, Double depthSum) {
public TProcessesProductVo(Page<T> data, Double depthSum) {
this.depthSum = depthSum;
this.data = data;
}
public TProcessesProductVo(Page<T> data, Double depthSum,Double todayDepthSum, Double monthDepthSum) {
this.depthSum = depthSum;
this.todayDepthSum = todayDepthSum;
this.monthDepthSum = monthDepthSum;
this.data = data;
}
}
package cn.wise.sc.acquisition.business.service;
import cn.wise.sc.acquisition.business.entity.TMineStope;
import cn.wise.sc.acquisition.business.model.query.TMineStopeQuery;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author renchao
* @since 2021-04-30
*/
public interface ITMineStopeService extends IService<TMineStope> {
R updateByQuery(TMineStopeQuery query);
R getByQuery(TMineStopeQuery query);
}
package cn.wise.sc.acquisition.business.service;
import cn.wise.sc.acquisition.business.entity.TProcessesBlast;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastQuery;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author renchao
* @since 2021-04-29
*/
public interface ITProcessesBlastService extends IService<TProcessesBlast> {
R getPage(TProcessesBlastQuery tProcessesBlastQuery, Query query);
R updateByUid(TProcessesBlastQuery query);
}
......@@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* 服务类
* </p>
*
* @author renchao
......@@ -25,4 +25,6 @@ public interface ITProcessesBlastdesignHoleService extends IService<TProcessesBl
R insertTProcessesBlastdesignHole(TProcessesBlastdesignHoleQuery query);
R getByUid(TProcessesBlastdesignHoleQuery query);
R getByBlastHoleID(TProcessesBlastdesignHoleQuery query);
}
package cn.wise.sc.acquisition.business.service;
import cn.wise.sc.acquisition.business.entity.TProcessesDrilling;
import cn.wise.sc.acquisition.business.model.query.TProcessesDrillingQuery;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author renchao
* @since 2021-04-29
*/
public interface ITProcessesDrillingService extends IService<TProcessesDrilling> {
R getPage(TProcessesDrillingQuery tProcessesDrillingQuery, Query query);
R updateByUid(TProcessesDrillingQuery query);
}
package cn.wise.sc.acquisition.business.service.impl;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TMineStope;
import cn.wise.sc.acquisition.business.enumation.ProjectEnum;
import cn.wise.sc.acquisition.business.mapper.TMineStopeMapper;
import cn.wise.sc.acquisition.business.model.query.TMineStopeQuery;
import cn.wise.sc.acquisition.business.service.ITMineStopeService;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author renchao
* @since 2021-04-30
*/
@Service
@Slf4j
public class TMineStopeServiceImpl extends ServiceImpl<TMineStopeMapper, TMineStope> implements ITMineStopeService {
@Override
public R updateByQuery(TMineStopeQuery query) {
log.info(JSON.toJSONString(query));
//参数校验
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotEmpty(query.getStopeName());
Rcode.NOT_PARAM.assertNotEmpty(query.getStepName());
Rcode.NOT_PARAM.assertNotEmpty(query.getBlastAreaName());
//封装
QueryWrapper<TMineStope> queryWrapper = new QueryWrapper<>();
queryWrapper
.eq(ProjectEnum.TProcessesBlastdesignVolume.STOPE_NAME.getLabel(),query.getStopeName())
.eq(ProjectEnum.TProcessesBlastdesignVolume.STEP_NAME.getLabel(),query.getStepName())
.eq(ProjectEnum.TProcessesBlastdesignVolume.BLAST_AREA_NAME.getLabel(),query.getBlastAreaName());
//查询并且返回
return R.ok(baseMapper.selectOne(queryWrapper));
}
@Override
public R getByQuery(TMineStopeQuery query) {
log.info(JSON.toJSONString(query));
//参数校验
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotEmpty(query.getStopeName());
Rcode.NOT_PARAM.assertNotEmpty(query.getStepName());
Rcode.NOT_PARAM.assertNotEmpty(query.getBlastAreaName());
//封装
QueryWrapper<TMineStope> queryWrapper = new QueryWrapper<>();
queryWrapper
.eq(ProjectEnum.TProcessesBlastdesignVolume.STOPE_NAME.getLabel(),query.getStopeName())
.eq(ProjectEnum.TProcessesBlastdesignVolume.STEP_NAME.getLabel(),query.getStepName())
.eq(ProjectEnum.TProcessesBlastdesignVolume.BLAST_AREA_NAME.getLabel(),query.getBlastAreaName());
//查询并且返回
return R.ok(baseMapper.selectOne(queryWrapper));
}
}
package cn.wise.sc.acquisition.business.service.impl;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TProcessesBlast;
import cn.wise.sc.acquisition.business.enumation.ProjectEnum;
import cn.wise.sc.acquisition.business.mapper.TProcessesBlastMapper;
import cn.wise.sc.acquisition.business.model.query.TMineStopeQuery;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastQuery;
import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastVo;
import cn.wise.sc.acquisition.business.service.ITMineStopeService;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastService;
import cn.wise.sc.acquisition.business.util.BeanUtilsNewCopy;
import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Service
@Slf4j
public class TProcessesBlastServiceImpl extends ServiceImpl<TProcessesBlastMapper, TProcessesBlast> implements ITProcessesBlastService {
@Autowired
private ITMineStopeService itMineStopeService;
@Override
public R getPage(TProcessesBlastQuery tProcessesBlastQuery, Query query) {
log.info(JSON.toJSONString(tProcessesBlastQuery));
//参数校验
//分页
Page<TProcessesBlast> page = new Page<>(query.getPageNum(), query.getPageSize());
//条件封装
QueryWrapper<TProcessesBlast> queryWrapper = new QueryWrapper<>();
//如果设计时间不为空 因为涉及到表连接,需要创建字段别名
if (tProcessesBlastQuery.getBlastDate() != null) {
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.append(ProjectEnum.TableAlias.A.getLabel()).append(ProjectEnum.TProcessesBlast.BLAST_DATE.getLabel());
//前端传来的时间可能为2021-04-05 17:37:33.000, 需要查询 2021-04-05 00:00:00 到 2021-04-05 23:59:59 的数据 故作处理
queryWrapper
.ge(stringBuilder.toString(), DateUtil.getBeginTimeStr(tProcessesBlastQuery.getBlastDate()))
.le(stringBuilder.toString(), DateUtil.getEndTimeStr(tProcessesBlastQuery.getBlastDate()));
}
//查询分页数据
Page<TProcessesBlastVo> data = baseMapper.getPage(page, queryWrapper);
return R.ok(data);
}
@Override
public R updateByUid(TProcessesBlastQuery query) {
log.info(JSON.toJSONString(query));
//参数校验
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotEmpty(query.getUid());
//判断数据是否存在
TProcessesBlast temp = baseMapper.selectById(query.getUid());
if (temp == null) {
return R.failed("数据不存在,uid:" + query.getUid());
}
//判断是否需要修改关联的 矿山爆区表
if (StringUtils.isNotBlank(query.getStepName())
|| StringUtils.isNotBlank(query.getBlastAreaName())
|| StringUtils.isNotBlank(query.getStopeName())) {
//判断矿山爆区表是否存在数据 不存在不能修改
//query里不一定StopeName,StepName,BlastAreaName都有,需要从temp中拿query没有的,
// 所以将query有的更新到temp中,再把temp中的复制到tMineStopeQuery
BeanUtilsNewCopy.copyPropertiesIgnoreNull(query,temp);
TMineStopeQuery tMineStopeQuery = new TMineStopeQuery();
BeanUtils.copyProperties(temp, tMineStopeQuery);
R volume = itMineStopeService.getByQuery(tMineStopeQuery);
if (volume.getData() == null) {
return R.failed("矿山爆区表数据不存在,StopeName,StepName,BlastAreaName");
}
}
//条件封装
TProcessesBlast tProcessesBlast = new TProcessesBlast();
BeanUtils.copyProperties(query,tProcessesBlast);
QueryWrapper<TProcessesBlast> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ProjectEnum.TProcessesBlast.UID.getLabel(), query.getUid());
//修改
int update = baseMapper.update(tProcessesBlast, queryWrapper);
if (update > 0) {
return R.ok("修改成功");
} else {
log.info(JSON.toJSONString(tProcessesBlast));
return R.failed("修改失败");
}
}
}
......@@ -6,7 +6,7 @@ import cn.wise.sc.acquisition.business.enumation.ProjectEnum;
import cn.wise.sc.acquisition.business.mapper.TProcessesBlastdesignHoleMapper;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastdesignHoleQuery;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastdesignVolumeQuery;
import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleResultVo;
import cn.wise.sc.acquisition.business.model.vo.TProcessesProductVo;
import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleVo;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignHoleService;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignVolumeService;
......@@ -15,7 +15,6 @@ import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.OrderItem;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
......@@ -64,7 +63,7 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
Double depthSum = baseMapper.getSumByCondition(new StringBuffer()
.append(ProjectEnum.TableAlias.A.getLabel())
.append(ProjectEnum.TProcessesBlastdesignVolume.DEPTH.getLabel()).toString(), queryWrapper);
return R.ok(new TProcessesBlastdesignHoleResultVo<>(data, depthSum));
return R.ok(new TProcessesProductVo<>(data, depthSum));
}
......@@ -81,11 +80,14 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
}
//判断是否需要修改关联的 设计爆区爆破量
if (StringUtils.isNotBlank(query.getStepName())
&& StringUtils.isNotBlank(query.getBlastAreaName())
&& StringUtils.isNotBlank(query.getStopeName())) {
|| StringUtils.isNotBlank(query.getBlastAreaName())
|| StringUtils.isNotBlank(query.getStopeName())) {
//判断设计爆区爆破量是否存在数据 不存在不能修改
//query里不一定StopeName,StepName,BlastAreaName都有,需要从temp中拿query没有的,
// 所以将query有的更新到temp中,再把temp中的复制到tMineStopeQuery
BeanUtilsNewCopy.copyPropertiesIgnoreNull(query,temp);
TProcessesBlastdesignVolumeQuery tProcessesBlastdesignVolumeQuery = new TProcessesBlastdesignHoleQuery();
BeanUtils.copyProperties(query, tProcessesBlastdesignVolumeQuery);
BeanUtils.copyProperties(temp, tProcessesBlastdesignVolumeQuery);
R volume = itProcessesBlastdesignVolumeService.getByQuery(tProcessesBlastdesignVolumeQuery);
if (volume.getData() == null) {
return R.failed("设计爆区爆破量表数据不存在,StopeName,StepName,BlastAreaName");
......@@ -188,6 +190,20 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
return R.ok(baseMapper.selectById(query.getUid()));
}
@Override
public R getByBlastHoleID(TProcessesBlastdesignHoleQuery query) {
log.info(JSON.toJSONString(query));
//参数校验
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotEmpty(query.getBlastHoleID());
//封装
QueryWrapper<TProcessesBlastdesignHole> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ProjectEnum.TProcessesBlastdesignHole.BLASET_HOLE_ID.getLabel(), query.getBlastHoleID());
//查询并且返回
baseMapper.selectOne(queryWrapper);
return R.ok(baseMapper.selectOne(queryWrapper));
}
/**
* 计算并设值 单孔爆破量(m3)=孔距*排距*台阶高度
*/
......
package cn.wise.sc.acquisition.business.service.impl;
import cn.wise.sc.acquisition.business.constant.Rcode;
import cn.wise.sc.acquisition.business.entity.TProcessesBlastdesignHole;
import cn.wise.sc.acquisition.business.entity.TProcessesDrilling;
import cn.wise.sc.acquisition.business.enumation.ProjectEnum;
import cn.wise.sc.acquisition.business.mapper.TProcessesDrillingMapper;
import cn.wise.sc.acquisition.business.model.query.TMineStopeQuery;
import cn.wise.sc.acquisition.business.model.query.TProcessesBlastdesignHoleQuery;
import cn.wise.sc.acquisition.business.model.query.TProcessesDrillingQuery;
import cn.wise.sc.acquisition.business.model.vo.TProcessesProductVo;
import cn.wise.sc.acquisition.business.service.ITMineStopeService;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignHoleService;
import cn.wise.sc.acquisition.business.service.ITProcessesDrillingService;
import cn.wise.sc.acquisition.business.util.BeanUtilsNewCopy;
import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.api.R;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.time.LocalDateTime;
/**
* <p>
* 服务实现类
* </p>
*
* @author renchao
* @since 2021-04-29
*/
@Service
@Slf4j
public class TProcessesDrillingServiceImpl extends ServiceImpl<TProcessesDrillingMapper, TProcessesDrilling> implements ITProcessesDrillingService {
@Autowired
private ITMineStopeService itMineStopeService;
@Autowired
private ITProcessesBlastdesignHoleService itProcessesBlastdesignHoleService;
@Override
public R getPage(TProcessesDrillingQuery tProcessesDrillingQuery, Query query) {
log.info(JSON.toJSONString(tProcessesDrillingQuery));
//参数校验
//分页
Page<TProcessesDrilling> page = new Page<>(query.getPageNum(), query.getPageSize());
//条件封装
QueryWrapper<TProcessesDrilling> queryWrapper = new QueryWrapper<>();
//如果设计时间不为空 因为涉及到表连接,需要创建字段别名
if (tProcessesDrillingQuery.getDrillingDate() != null) {
//前端传来的时间可能为2021-04-05 17:37:33.000, 需要查询 2021-04-05 00:00:00 到 2021-04-05 23:59:59 的数据 故作处理
queryWrapper
.ge(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getBeginTimeStr(tProcessesDrillingQuery.getDrillingDate()))
.le(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getEndTimeStr(tProcessesDrillingQuery.getDrillingDate()));
}
//查询分页数据
Page<TProcessesDrilling> data = baseMapper.selectPage(page, queryWrapper);
StringBuffer depth = new StringBuffer()
.append(ProjectEnum.TableAlias.A.getLabel())
.append(ProjectEnum.TProcessesDrilling.DEPTH.getLabel());
//查询,合计孔深
Double depthSum = baseMapper.getSumByCondition(depth.toString(), queryWrapper);
//查询,今日合计孔深
//初始化QueryWrapper
LocalDateTime now = LocalDateTime.now();
queryWrapper = new QueryWrapper<>();
queryWrapper
.ge(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getBeginTimeStr(now))
.le(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getEndTimeStr(now));
Double todayDepthSum = baseMapper.getSumByCondition(depth.toString(), queryWrapper);
//查询,本月合计孔深 上月26日到当前日期的实测孔深相加
//初始化QueryWrapper
queryWrapper = new QueryWrapper<>();
queryWrapper
.ge(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getBeginTimeStr(LocalDateTime.now().minusMonths(1).withDayOfMonth(26)))
.le(ProjectEnum.TProcessesDrilling.DRILLING_DATE.getLabel(), DateUtil.getEndTimeStr(LocalDateTime.now()));
Double monthDepthSum = baseMapper.getSumByCondition(depth.toString(), queryWrapper);
return R.ok(new TProcessesProductVo<>(data, depthSum, todayDepthSum, monthDepthSum));
}
@Override
public R updateByUid(TProcessesDrillingQuery query) {
log.info(JSON.toJSONString(query));
//参数校验
Rcode.NOT_PARAM.assertNotNull(query);
Rcode.NOT_PARAM.assertNotEmpty(query.getUid());
//判断数据是否存在
TProcessesDrilling temp = baseMapper.selectById(query.getUid());
if (temp == null) {
return R.failed("数据不存在,uid:" + query.getUid());
}
//判断是否需要修改关联的 矿山爆区表
if (StringUtils.isNotBlank(query.getStepName())
|| StringUtils.isNotBlank(query.getBlastAreaName())
|| StringUtils.isNotBlank(query.getStopeName())) {
//判断矿山爆区表是否存在数据 不存在不能修改
//query里不一定StopeName,StepName,BlastAreaName都有,需要从temp中拿query没有的,
// 所以将query有的更新到temp中,再把temp中的复制到tMineStopeQuery
BeanUtilsNewCopy.copyPropertiesIgnoreNull(query,temp);
TMineStopeQuery tMineStopeQuery = new TMineStopeQuery();
BeanUtils.copyProperties(temp, tMineStopeQuery);
R volume = itMineStopeService.getByQuery(tMineStopeQuery);
if (volume.getData() == null) {
return R.failed("矿山爆区表数据不存在,StopeName,StepName,BlastAreaName");
}
}
//条件封装
BeanUtilsNewCopy.copyPropertiesIgnoreNull(query, temp);
//计算单孔爆破量
//先获取台阶高度
TProcessesBlastdesignHoleQuery holeQuery = new TProcessesBlastdesignHoleQuery();
holeQuery.setBlastHoleID(temp.getHoleID());
R r = itProcessesBlastdesignHoleService.getByBlastHoleID(holeQuery);
//不为空计算台阶高度
if (r.getData() != null) {
TProcessesBlastdesignHole data = (TProcessesBlastdesignHole) r.getData();
Double volume = calculateHoleBlastVolume(temp.getHoleSpace(), temp.getRowSpace(), data.getStepHeight());
temp.setHoleBlastVolume(volume);
}
QueryWrapper<TProcessesDrilling> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ProjectEnum.TProcessesBlast.UID.getLabel(), query.getUid());
//修改
int update = baseMapper.update(temp, queryWrapper);
if (update > 0) {
return R.ok("修改成功");
} else {
log.info(JSON.toJSONString(temp));
return R.failed("修改失败");
}
}
/**
* 计算并设值 单孔爆破量(m3)=孔距*排距*台阶高度
*/
private Double calculateHoleBlastVolume(Double HoleSpace, Double RowSpace, Double StepHeight) {
return HoleSpace * RowSpace * StepHeight;
}
}
<?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="cn.wise.sc.acquisition.business.mapper.TMineStopeMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.acquisition.business.mapper.TProcessesBlastMapper">
<!-- 表和实体字段对照关系, 类似RestultMap -->
<sql id="TProcessesBlastColumns">
a.Uid,
a.StopeName,
a.StepName,
a.BlastAreaName,
a.HoleID,
a.BlastDate,
a.BlastPeople,
a.CheckHoleDate,
a.CheckHolePeople,
a.Manager,
a.Supervisor,
a.TechDepart,
a.Tabulator,
a.Depth,
a.Bz,
a.Tag
</sql>
<sql id="TProcessesDiggingHoleColumns">
b.HoleBlastVolume,
</sql>
<sql id="TProcessesDrillingColumns">
c.Depth AS DesignDepth,
</sql>
<sql id="TProcessesBlastdesignHoleJoins">
left join T_Processes_BlastDesign_Hole b on a.HoleID = b.BlastHoleID
left join T_Processes_Drilling c on a.HoleID = c.HoleID
</sql>
<!-- 获取所有getPage列表 -->
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TProcessesBlastVo">
SELECT
<include refid="TProcessesDiggingHoleColumns"/>
<include refid="TProcessesDrillingColumns"/>
<include refid="TProcessesBlastColumns"/>
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.acquisition.business.mapper.TProcessesDrillingMapper">
<!-- 表和实体字段对照关系, 类似RestultMap -->
<sql id="TProcessesDrillingColumns">
a.Uid,
a.StopeName,
a.StepName,
a.BlastAreaName,
a.HoleID,
a.DrillingDate,
a.Manager,
a.Supervisor,
a.TechDepart,
a.Tabulator,
a.EquipmentID,
a.Driver,
a.StartTime,
a.EndTime,
a.WorkTime,
<!--
a.Depth,
a.RowSpace,
a.HoleSpace,
a.Azimuth,
a.Inclination,
a.Aperture,
a.x,
a.y,
a.z,
a.HoleBlastVolume,
a.BlastDate,-->
a.Operator,
a.Accepter,
a.Bz,
a.Tag,
</sql>
<sql id="TProcessesDiggingHoleColumns">
b.Depth;/*孔深(m)*/
b.RowSpace;/*排距(m)*/
b.HoleSpace;/*孔距(m)*/
b.Azimuth;/*方位角*/
b.Inclination;/*倾角*/
b.Aperture;/*孔径(m)*/
b.x;/*开孔坐标X*/
b.y;/*开孔坐标Y*/
b.z;/*开孔坐标Z*/
b.HoleBlastVolume;/* 单孔爆破量(m3)=孔距*排距*台阶高度*/
</sql>
<sql id="TProcessesBlastColumns">
c.BlastDate
</sql>
<sql id="TProcessesBlastdesignHoleJoins">
left join T_Processes_BlastDesign_Hole b on a.HoleID = b.BlastHoleID
left join T_Processes_Blast c on a.HoleID = c.HoleID
</sql>
<!-- 获取所有getPage列表 -->
<select id="getPage" resultType="cn.wise.sc.acquisition.business.model.vo.TProcessesDrillingVo">
SELECT
<include refid="TProcessesDiggingHoleColumns"/>
<include refid="TProcessesDrillingColumns"/>
<include refid="TProcessesBlastColumns"/>
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
<!-- 获取所有getByQuery列表 -->
<select id="getSumByCondition" resultType="Double">
SELECT
sum(${condition})
FROM T_Processes_Blast a
<include refid="TProcessesBlastdesignHoleJoins"/>
<where>
${ew.sqlSegment}
</where>
</select>
</mapper>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment