Commit 9dafd861 authored by renchao's avatar renchao

炮孔设计模块,设计爆区爆破量模块代码编写

parent d94ef302
...@@ -17,7 +17,6 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -17,7 +17,6 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import java.time.LocalDateTime;
/** /**
* <p> * <p>
...@@ -103,7 +102,7 @@ public class TProcessesBlastdesignHoleController { ...@@ -103,7 +102,7 @@ public class TProcessesBlastdesignHoleController {
@RequestMapping(value = "/getByUid", method = RequestMethod.GET) @RequestMapping(value = "/getByUid", method = RequestMethod.GET)
public R getByUid(String Uid) { public R getByUid(String Uid) {
TProcessesBlastdesignHoleQuery param = new TProcessesBlastdesignHoleQuery(); TProcessesBlastdesignHoleQuery param = new TProcessesBlastdesignHoleQuery();
param.setUid(param.getUid()); param.setUid(Uid);
return itProcessesBlastdesignHoleService.getByUid(param); return itProcessesBlastdesignHoleService.getByUid(param);
} }
} }
......
...@@ -10,6 +10,7 @@ import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleResultV ...@@ -10,6 +10,7 @@ import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleResultV
import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleVo; import cn.wise.sc.acquisition.business.model.vo.TProcessesBlastdesignHoleVo;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignHoleService; import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignHoleService;
import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignVolumeService; import cn.wise.sc.acquisition.business.service.ITProcessesBlastdesignVolumeService;
import cn.wise.sc.acquisition.business.util.BeanUtilsNewCopy;
import cn.wise.sc.acquisition.business.util.DateUtil; import cn.wise.sc.acquisition.business.util.DateUtil;
import cn.wise.sc.acquisition.business.wrapper.page.Query; import cn.wise.sc.acquisition.business.wrapper.page.Query;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
...@@ -38,7 +39,7 @@ import org.springframework.stereotype.Service; ...@@ -38,7 +39,7 @@ import org.springframework.stereotype.Service;
public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcessesBlastdesignHoleMapper, TProcessesBlastdesignHole> implements ITProcessesBlastdesignHoleService { public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcessesBlastdesignHoleMapper, TProcessesBlastdesignHole> implements ITProcessesBlastdesignHoleService {
@Autowired @Autowired
ITProcessesBlastdesignVolumeService itProcessesBlastdesignVolumeService; private ITProcessesBlastdesignVolumeService itProcessesBlastdesignVolumeService;
@Override @Override
public R getPage(TProcessesBlastdesignHoleQuery tProcessesBlastdesignHoleQuery, Query query) { public R getPage(TProcessesBlastdesignHoleQuery tProcessesBlastdesignHoleQuery, Query query) {
...@@ -59,11 +60,11 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses ...@@ -59,11 +60,11 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
} }
//查询分页数据 //查询分页数据
Page<TProcessesBlastdesignHoleVo> data = baseMapper.getPage(page, queryWrapper); Page<TProcessesBlastdesignHoleVo> data = baseMapper.getPage(page, queryWrapper);
//查询,根据筛选条件的总条数的孔深合计,不分页 孔深合计 //查询,根据筛选条件的总条数的孔深合计,不分页 孔深合计 表连接sql需要 a.字段
Double depthSum = baseMapper.getSumByCondition(new StringBuffer() Double depthSum = baseMapper.getSumByCondition(new StringBuffer()
.append(ProjectEnum.TableAlias.A.getLabel()) .append(ProjectEnum.TableAlias.A.getLabel())
.append(ProjectEnum.TProcessesBlastdesignVolume.DEPTH.getLabel()).toString(), queryWrapper); .append(ProjectEnum.TProcessesBlastdesignVolume.DEPTH.getLabel()).toString(), queryWrapper);
return R.ok(new TProcessesBlastdesignHoleResultVo<>(data,depthSum)); return R.ok(new TProcessesBlastdesignHoleResultVo<>(data, depthSum));
} }
...@@ -92,21 +93,24 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses ...@@ -92,21 +93,24 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
} }
//条件封装 //条件封装
TProcessesBlastdesignHole tProcessesBlastdesignHole = new TProcessesBlastdesignHole(); //如果修改了孔距,排距,台阶高度 需要重新计算单孔爆破量, 单孔爆破量(m3)=孔距*排距*台阶高度
BeanUtils.copyProperties(query, tProcessesBlastdesignHole); //所以直接copy上面根据uid查出来的数据 copy ->非空值<- 将query的值更新到查出来的对象上 进行计算并更新到数据库即可
BeanUtilsNewCopy.copyPropertiesIgnoreNull(query, temp);
//计算单孔爆破量
calculateHoleBlastVolume(temp);
QueryWrapper<TProcessesBlastdesignHole> queryWrapper = new QueryWrapper<>(); QueryWrapper<TProcessesBlastdesignHole> queryWrapper = new QueryWrapper<>();
queryWrapper.eq(ProjectEnum.TProcessesBlastdesignHole.UID.getLabel(), query.getUid()); queryWrapper.eq(ProjectEnum.TProcessesBlastdesignHole.UID.getLabel(), query.getUid());
//修改 //修改
int update = baseMapper.update(tProcessesBlastdesignHole, queryWrapper); int update = baseMapper.update(temp, queryWrapper);
if (update > 0) { if (update > 0) {
return R.ok("修改成功"); return R.ok("修改成功");
} else { } else {
log.info(JSON.toJSONString(tProcessesBlastdesignHole)); log.info(JSON.toJSONString(temp));
return R.failed("修改失败"); return R.failed("修改失败");
} }
} }
@Override @Override
public R deleteByUid(TProcessesBlastdesignHoleQuery query) { public R deleteByUid(TProcessesBlastdesignHoleQuery query) {
log.info(JSON.toJSONString(query)); log.info(JSON.toJSONString(query));
...@@ -162,9 +166,7 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses ...@@ -162,9 +166,7 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
TProcessesBlastdesignHole tProcessesBlastdesignHole = new TProcessesBlastdesignHole(); TProcessesBlastdesignHole tProcessesBlastdesignHole = new TProcessesBlastdesignHole();
BeanUtils.copyProperties(query, tProcessesBlastdesignHole); BeanUtils.copyProperties(query, tProcessesBlastdesignHole);
//单孔爆破量(m3)=孔距*排距*台阶高度 //单孔爆破量(m3)=孔距*排距*台阶高度
tProcessesBlastdesignHole.setHoleBlastVolume(tProcessesBlastdesignHole.getHoleSpace() calculateHoleBlastVolume(tProcessesBlastdesignHole);
* tProcessesBlastdesignHole.getRowSpace()
* tProcessesBlastdesignHole.getStepHeight());
//增加 //增加
log.info(JSON.toJSONString(tProcessesBlastdesignHole)); log.info(JSON.toJSONString(tProcessesBlastdesignHole));
int insert = baseMapper.insert(tProcessesBlastdesignHole); int insert = baseMapper.insert(tProcessesBlastdesignHole);
...@@ -185,4 +187,13 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses ...@@ -185,4 +187,13 @@ public class TProcessesBlastdesignHoleServiceImpl extends ServiceImpl<TProcesses
//查询并且返回 //查询并且返回
return R.ok(baseMapper.selectById(query.getUid())); return R.ok(baseMapper.selectById(query.getUid()));
} }
/**
* 计算并设值 单孔爆破量(m3)=孔距*排距*台阶高度
*/
private void calculateHoleBlastVolume(TProcessesBlastdesignHole tProcessesBlastdesignHole) {
tProcessesBlastdesignHole.setHoleBlastVolume(tProcessesBlastdesignHole.getHoleSpace()
* tProcessesBlastdesignHole.getRowSpace()
* tProcessesBlastdesignHole.getStepHeight());
}
} }
package cn.wise.sc.acquisition.business.util;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.BeanWrapper;
import org.springframework.beans.BeanWrapperImpl;
import java.util.HashSet;
import java.util.Set;
/**
* author: renchao
*/
public class BeanUtilsNewCopy {
/**
* 获取对象属性
* @param source
* @return
*/
private static String[] getNullPropertyNames (Object source) {
final BeanWrapper src = new BeanWrapperImpl(source);
java.beans.PropertyDescriptor[] pds = src.getPropertyDescriptors();
Set<String> emptyNames = new HashSet<String>();
for(java.beans.PropertyDescriptor pd : pds) {
Object srcValue = src.getPropertyValue(pd.getName());
if (srcValue == null) emptyNames.add(pd.getName());
}
String[] result = new String[emptyNames.size()];
return emptyNames.toArray(result);
}
/**
* 封装同名称属性复制,但是空属性不复制过去
* @param src
* @param target
*/
public static void copyPropertiesIgnoreNull(Object src, Object target){
BeanUtils.copyProperties(src, target, getNullPropertyNames(src));
}
}
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