Merge branch 'master' of ssh://117.78.1.188:29418/dkyChenJiang
| | |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | | import org.springframework.ui.ModelMap; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.PathVariable; |
| | | import org.springframework.web.bind.annotation.PostMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.ResponseBody; |
| | | import org.springframework.web.bind.annotation.*; |
| | | import com.javaweb.common.annotation.Log; |
| | | import com.javaweb.common.enums.BusinessType; |
| | | import com.javaweb.geo.domain.DeviceLog; |
| | |
| | | import com.javaweb.common.core.domain.AjaxResult; |
| | | import com.javaweb.common.utils.poi.ExcelUtil; |
| | | import com.javaweb.common.core.page.TableDataInfo; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | /** |
| | | * 设备出入库记录Controller |
| | |
| | | * 新增设备出入库记录 |
| | | */ |
| | | @GetMapping("/add") |
| | | public String add() { |
| | | public String add(String projectId, ModelMap mmap) { |
| | | mmap.put("projectId", projectId); |
| | | return prefix + "/add"; |
| | | } |
| | | |
| | |
| | | public AjaxResult remove(String ids) { |
| | | return toAjax(deviceLogService.deleteDeviceLogByIds(ids)); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 导入设备出入库记录 |
| | | */ |
| | | @RequiresPermissions("geo:deviceLog:import") |
| | | @Log(title = "导入设备出入库记录") |
| | | @PostMapping( "/importDeviceLog/{projectId}") |
| | | @ResponseBody |
| | | public AjaxResult importDeviceLog(@PathVariable("projectId") String projectId, @RequestParam("file") MultipartFile file, boolean updateSupport) throws Exception{ |
| | | String message = deviceLogService.importDeviceLog(projectId,file,updateSupport); |
| | | return AjaxResult.success(message); |
| | | } |
| | | } |
| | |
| | | package com.javaweb.geo.controller; |
| | | |
| | | import java.util.List; |
| | | |
| | | import org.apache.shiro.authz.annotation.RequiresPermissions; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Controller; |
| | |
| | | |
| | | /** |
| | | * 钻孔Controller |
| | | * |
| | | * |
| | | * @author zmk |
| | | * @date 2022-10-20 |
| | | */ |
| | | @Controller |
| | | @RequestMapping("/geo/hole") |
| | | public class HoleController extends BaseController |
| | | { |
| | | public class HoleController extends BaseController { |
| | | |
| | | private String prefix = "geo/hole"; |
| | | |
| | | @Autowired |
| | |
| | | |
| | | @RequiresPermissions("geo:hole:view") |
| | | @GetMapping() |
| | | public String hole(String id,ModelMap mmap) |
| | | { |
| | | mmap.put("projectId", id); |
| | | public String hole(String id, ModelMap mmap) { |
| | | mmap.put("projectId", id); |
| | | return prefix + "/hole"; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 查询钻孔列表 |
| | |
| | | @RequiresPermissions("geo:hole:list") |
| | | @PostMapping("/list") |
| | | @ResponseBody |
| | | public TableDataInfo list(Hole hole) |
| | | { |
| | | public TableDataInfo list(Hole hole) { |
| | | startPage(); |
| | | List<Hole> list = holeService.selectHoleList(hole); |
| | | return getDataTable(list); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 导出钻孔列表 |
| | |
| | | @Log(title = "钻孔", businessType = BusinessType.EXPORT) |
| | | @PostMapping("/export") |
| | | @ResponseBody |
| | | public AjaxResult export(Hole hole) |
| | | { |
| | | public AjaxResult export(Hole hole) { |
| | | List<Hole> list = holeService.selectHoleList(hole); |
| | | ExcelUtil<Hole> util = new ExcelUtil<Hole>(Hole.class); |
| | | return util.exportExcel(list, "hole"); |
| | |
| | | * 新增钻孔 |
| | | */ |
| | | @GetMapping("/add") |
| | | public String add() |
| | | { |
| | | public String add(String projectId, ModelMap mmap) { |
| | | mmap.put("projectId", projectId); |
| | | return prefix + "/add"; |
| | | } |
| | | |
| | |
| | | @Log(title = "钻孔", businessType = BusinessType.INSERT) |
| | | @PostMapping("/add") |
| | | @ResponseBody |
| | | public AjaxResult addSave(Hole hole) |
| | | { |
| | | public AjaxResult addSave(Hole hole) { |
| | | return toAjax(holeService.insertHole(hole)); |
| | | } |
| | | |
| | |
| | | * 修改钻孔 |
| | | */ |
| | | @GetMapping("/edit/{ids}") |
| | | public String edit(@PathVariable("ids") String ids, ModelMap mmap) |
| | | { |
| | | public String edit(@PathVariable("ids") String ids, ModelMap mmap) { |
| | | Hole hole = holeService.selectHoleById(ids); |
| | | mmap.put("hole", hole); |
| | | return prefix + "/edit"; |
| | |
| | | @Log(title = "钻孔", businessType = BusinessType.UPDATE) |
| | | @PostMapping("/edit") |
| | | @ResponseBody |
| | | public AjaxResult editSave(Hole hole) |
| | | { |
| | | public AjaxResult editSave(Hole hole) { |
| | | return toAjax(holeService.updateHole(hole)); |
| | | } |
| | | |
| | |
| | | */ |
| | | @RequiresPermissions("geo:hole:remove") |
| | | @Log(title = "钻孔", businessType = BusinessType.DELETE) |
| | | @PostMapping( "/remove") |
| | | @PostMapping("/remove") |
| | | @ResponseBody |
| | | public AjaxResult remove(String ids) |
| | | { |
| | | public AjaxResult remove(String ids) { |
| | | return toAjax(holeService.deleteHoleByIds(ids)); |
| | | } |
| | | |
| | |
| | | return prefix + "/projectData"; |
| | | } |
| | | |
| | | |
| | | |
| | | /** |
| | | * 查询项目资料列表 |
| | | */ |
| | |
| | | /** 设备id */ |
| | | private String deviceId; |
| | | |
| | | /** 设备编码 */ |
| | | private String deviceCode; |
| | | |
| | | /** 设备名称 */ |
| | | @Excel(name = "设备名称") |
| | | private String deviceName; |
| | |
| | | this.deviceName = deviceName; |
| | | } |
| | | |
| | | public String getDeviceName() |
| | | public String getDeviceCode() { |
| | | return deviceCode; |
| | | } |
| | | |
| | | public void setDeviceCode(String deviceCode) { |
| | | this.deviceCode = deviceCode; |
| | | } |
| | | |
| | | public String getDeviceName() |
| | | { |
| | | return deviceName; |
| | | } |
| | |
| | | .append("projectId", getProjectId()) |
| | | .append("projectName", getProjectName()) |
| | | .append("deviceId", getDeviceId()) |
| | | .append("deviceCode", getDeviceCode()) |
| | | .append("deviceName", getDeviceName()) |
| | | .append("type", getType()) |
| | | .append("transactionDate", getTransactionDate()) |
New file |
| | |
| | | package com.javaweb.geo.enums; |
| | | |
| | | import java.util.HashMap; |
| | | import java.util.Map; |
| | | |
| | | public class CityConst { |
| | | |
| | | private static Map<Integer,String> cityMap = new HashMap<Integer, String>(); |
| | | |
| | | static{ |
| | | cityMap.put(1, "东城区"); |
| | | cityMap.put(2, "西城区"); |
| | | cityMap.put(5, "朝阳区"); |
| | | cityMap.put(6, "丰台区"); |
| | | cityMap.put(7, "石景山"); |
| | | |
| | | cityMap.put(8, "海淀区"); |
| | | cityMap.put(9, "门头沟区"); |
| | | |
| | | cityMap.put(10, "房山区"); |
| | | |
| | | cityMap.put(11, "通州区"); |
| | | |
| | | cityMap.put(12, "顺义区"); |
| | | |
| | | cityMap.put(13, "昌平区"); |
| | | cityMap.put(14, "大兴区"); |
| | | cityMap.put(15, "怀柔区"); |
| | | cityMap.put(16, "平谷区"); |
| | | cityMap.put(17, "密云县"); |
| | | cityMap.put(18, "延庆县"); |
| | | cityMap.put(99, "外埠"); |
| | | |
| | | } |
| | | |
| | | public static String getCitName(Integer key){ |
| | | |
| | | if(key != null && cityMap.containsKey(key)){ |
| | | return cityMap.get(key); |
| | | } |
| | | return null; |
| | | |
| | | } |
| | | } |
New file |
| | |
| | | package com.javaweb.geo.enums; |
| | | |
| | | public enum RecordType { |
| | | |
| | | /** |
| | | * 出入库状态 |
| | | */ |
| | | deviceLog_in("in","入库"), |
| | | deviceLog_out("out","出库"), |
| | | |
| | | /** |
| | | * 记录分类(必填,直接填写汉字,因考虑历史数据原因, |
| | | * “机长”表示司钻员) |
| | | * 回次、岩土、取土、标贯、动探、水位、取水、负责人、工程师、机长、钻机 |
| | | */ |
| | | hc("回次","回次"), |
| | | yt("岩土","岩土"), |
| | | qt("取土","取土"), |
| | | bg("标贯","标贯"), |
| | | dt("动探","动探"), |
| | | sw("水位","水位"), |
| | | qs("取水","取水"), |
| | | fzr("负责人","负责人"), |
| | | gcs("工程师","工程师"), |
| | | jz("机长","机长"), |
| | | zj("钻机","钻机"), |
| | | |
| | | |
| | | |
| | | /** |
| | | * 项目状态 |
| | | */ |
| | | projectStatus0("0","项目未完成"), |
| | | projectStatus1("1","项目验收完成"), |
| | | |
| | | /** |
| | | * 是否删除 |
| | | */ |
| | | isDelete0("0","未删除"), |
| | | isDelete1("1","已删除"), |
| | | |
| | | /** |
| | | * 勘探点状态 1-验收通过,2-验收不通过,3-废孔 |
| | | */ |
| | | holeStatus1("1","验收通过"), |
| | | holeStatus2("2","验收不通过"), |
| | | holeStatus3("3","废孔"); |
| | | |
| | | |
| | | private String id ; |
| | | private String name ; |
| | | |
| | | RecordType(String id, String name) { |
| | | this.id = id; |
| | | this.name = name; |
| | | } |
| | | |
| | | public String getId() { |
| | | return id; |
| | | } |
| | | |
| | | public void setId(String id) { |
| | | this.id = id; |
| | | } |
| | | |
| | | public String getName() { |
| | | return name; |
| | | } |
| | | |
| | | public void setName(String name) { |
| | | this.name = name; |
| | | } |
| | | |
| | | /** |
| | | * 根据id获取name |
| | | */ |
| | | public static String getValueByKey(String id) { |
| | | RecordType[] recordTypes = values(); |
| | | for (RecordType item: recordTypes) { |
| | | if (item.getId().equals(id)) { |
| | | return item.getName(); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | /** |
| | | * 根据name获取id |
| | | */ |
| | | public static String getKeyByName(String name) { |
| | | RecordType[] recordTypes = values(); |
| | | for (RecordType item: recordTypes) { |
| | | if (item.getName().equals(name)) { |
| | | return item.getId(); |
| | | } |
| | | } |
| | | return null; |
| | | } |
| | | |
| | | public static void main(String[] args) { |
| | | String valueByKey = RecordType.getKeyByName("水文-水文测井"); |
| | | System.out.println(valueByKey); |
| | | |
| | | } |
| | | |
| | | } |
| | |
| | | package com.javaweb.geo.service; |
| | | |
| | | import com.javaweb.geo.domain.DeviceLog; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | |
| | | * @return 结果 |
| | | */ |
| | | public int deleteDeviceLogById(String id); |
| | | |
| | | /** |
| | | * 导入设备出入库记录 |
| | | */ |
| | | String importDeviceLog(String projectId, MultipartFile file, boolean updateSupport); |
| | | } |
| | |
| | | package com.javaweb.geo.service.impl; |
| | | |
| | | import java.io.File; |
| | | import java.util.List; |
| | | |
| | | import cn.hutool.poi.excel.ExcelReader; |
| | | import cn.hutool.poi.excel.ExcelUtil; |
| | | import com.javaweb.common.config.Global; |
| | | import com.javaweb.common.utils.DateUtils; |
| | | import com.javaweb.common.utils.IdGenerate; |
| | | import com.javaweb.geo.domain.Device; |
| | | import com.javaweb.geo.domain.Project; |
| | | import com.javaweb.geo.enums.RecordType; |
| | | import com.javaweb.geo.service.IDeviceService; |
| | | import com.javaweb.geo.service.IProjectService; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | import com.javaweb.geo.mapper.DeviceLogMapper; |
| | |
| | | import com.javaweb.geo.service.IDeviceLogService; |
| | | import com.javaweb.common.core.text.Convert; |
| | | import org.springframework.util.ObjectUtils; |
| | | import org.springframework.web.multipart.MultipartFile; |
| | | import tk.mybatis.mapper.genid.GenIdUtil; |
| | | |
| | | /** |
| | |
| | | */ |
| | | @Service |
| | | public class DeviceLogServiceImpl implements IDeviceLogService { |
| | | |
| | | @Autowired |
| | | private DeviceLogMapper deviceLogMapper; |
| | | |
| | | @Autowired |
| | | private IProjectService projectService; |
| | | |
| | | @Autowired |
| | | private IDeviceService deviceService; |
| | | |
| | | private String fileSaveDir = Global.getProfile() + "\\template\\" ; |
| | | |
| | | /** |
| | | * 查询设备出入库记录 |
| | |
| | | if(ObjectUtils.isEmpty(deviceLog.getId())){ |
| | | deviceLog.setId(IdGenerate.nextId()); |
| | | } |
| | | deviceLog.setCreateTime(DateUtils.getNowDate()); |
| | | deviceLog.setCreateDate(DateUtils.getNowDate()); |
| | | return deviceLogMapper.insertDeviceLog(deviceLog); |
| | | } |
| | | |
| | |
| | | public int deleteDeviceLogById(String id) { |
| | | return deviceLogMapper.deleteDeviceLogById(id); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * 导入设备出入库记录 |
| | | */ |
| | | @Override |
| | | public String importDeviceLog(String projectId,MultipartFile file, boolean updateSupport) { |
| | | // 关联项目信息 |
| | | Project project = projectService.selectProjectById(projectId); |
| | | |
| | | try { |
| | | String dest = saveExcel(file); |
| | | List<DeviceLog> list = readData(dest); |
| | | for (DeviceLog item : list) { |
| | | // 转换项目信息 |
| | | item.setProjectId(projectId); |
| | | item.setProjectName(project.getFullName()); |
| | | |
| | | // 转换出入库类型 |
| | | String proTypeCode = RecordType.getKeyByName(item.getType()); |
| | | item.setType(proTypeCode); |
| | | |
| | | // 转换设备编码 |
| | | String deviceCode = item.getDeviceCode(); |
| | | if (!ObjectUtils.isEmpty(deviceCode)){ |
| | | Device param = new Device(); |
| | | param.setCode(deviceCode); |
| | | List<Device> devices = deviceService.selectDeviceList(param); |
| | | if (!ObjectUtils.isEmpty(devices)){ |
| | | Device device = devices.get(0); |
| | | item.setDeviceId(device.getId()); |
| | | item.setDeviceCode(device.getCode()); |
| | | item.setDeviceName(device.getName()); |
| | | } |
| | | } |
| | | |
| | | item.setCreateDate(DateUtils.getNowDate()); |
| | | insertDeviceLog(item); |
| | | } |
| | | } catch (Exception e) { |
| | | return e.toString(); |
| | | } |
| | | return "导入完毕" ; |
| | | } |
| | | |
| | | private String saveExcel(MultipartFile file) { |
| | | String filename = file.getOriginalFilename(); |
| | | File dir = new File(fileSaveDir); |
| | | if (!dir.exists()) { |
| | | dir.mkdir(); |
| | | } |
| | | String addr = fileSaveDir + filename; |
| | | try { |
| | | File dest = new File(addr); |
| | | file.transferTo(dest); |
| | | } catch (Exception e) { |
| | | return null; |
| | | } |
| | | return addr; |
| | | } |
| | | |
| | | private List<DeviceLog> readData(String filepath) { |
| | | ExcelReader reader = ExcelUtil.getReader(filepath, 0); |
| | | reader.addHeaderAlias("出入库单子号", "code"); |
| | | reader.addHeaderAlias("设备编码", "deviceCode"); |
| | | reader.addHeaderAlias("出入库类型", "type"); |
| | | reader.addHeaderAlias("出入库时间", "transactionDate"); |
| | | reader.addHeaderAlias("经办人", "optUser"); |
| | | reader.addHeaderAlias("使用人", "applyUser"); |
| | | reader.addHeaderAlias("出入库数量", "number"); |
| | | reader.addHeaderAlias("备注", "remark"); |
| | | |
| | | List<DeviceLog> list = reader.readAll(DeviceLog.class); |
| | | return list; |
| | | } |
| | | } |
| | |
| | | import java.util.List; |
| | | |
| | | import com.javaweb.common.utils.DateUtils; |
| | | import com.javaweb.common.utils.IdGenerate; |
| | | import com.javaweb.geo.domain.*; |
| | | import com.javaweb.geo.mapper.*; |
| | | import com.javaweb.geo.service.*; |
| | |
| | | |
| | | /** |
| | | * 钻孔Service业务层处理 |
| | | * |
| | | * |
| | | * @author zmk |
| | | * @date 2022-10-20 |
| | | */ |
| | |
| | | |
| | | /** |
| | | * 查询钻孔 |
| | | * |
| | | * |
| | | * @param ids 钻孔ID |
| | | * @return 钻孔 |
| | | */ |
| | | @Override |
| | | public Hole selectHoleById(String ids) |
| | | { |
| | | public Hole selectHoleById(String ids) { |
| | | return holeMapper.selectHoleById(ids); |
| | | } |
| | | |
| | | /** |
| | | * 查询钻孔列表 |
| | | * |
| | | * |
| | | * @param hole 钻孔 |
| | | * @return 钻孔 |
| | | */ |
| | | @Override |
| | | public List<Hole> selectHoleList(Hole hole) |
| | | { |
| | | public List<Hole> selectHoleList(Hole hole) { |
| | | return holeMapper.selectHoleList(hole); |
| | | } |
| | | |
| | | /** |
| | | * 新增钻孔 |
| | | * |
| | | * |
| | | * @param hole 钻孔 |
| | | * @return 结果 |
| | | */ |
| | | @Override |
| | | public int insertHole(Hole hole) |
| | | { |
| | | public int insertHole(Hole hole) { |
| | | if(ObjectUtils.isEmpty(hole.getIds())){ |
| | | hole.setIds(IdGenerate.nextId()); |
| | | } |
| | | hole.setCreateTime(DateUtils.getNowDate()); |
| | | return holeMapper.insertHole(hole); |
| | | } |
| | | |
| | | /** |
| | | * 修改钻孔 |
| | | * |
| | | * |
| | | * @param hole 钻孔 |
| | | * @return 结果 |
| | | */ |
| | | @Override |
| | | public int updateHole(Hole hole) |
| | | { |
| | | public int updateHole(Hole hole) { |
| | | hole.setUpdateTime(DateUtils.getNowDate()); |
| | | return holeMapper.updateHole(hole); |
| | | } |
| | | |
| | | /** |
| | | * 删除钻孔对象 |
| | | * |
| | | * |
| | | * @param ids 需要删除的数据ID |
| | | * @return 结果 |
| | | */ |
| | |
| | | |
| | | // 批量删除钻孔下面的关联数据 |
| | | String[] strings = Convert.toStrArray(ids); |
| | | if (!ObjectUtils.isEmpty(strings)){ |
| | | if (!ObjectUtils.isEmpty(strings)) { |
| | | for (String holeId : strings) { |
| | | |
| | | // =======标贯========== |
| | |
| | | |
| | | /** |
| | | * 删除钻孔信息 |
| | | * |
| | | * |
| | | * @param ids 钻孔ID |
| | | * @return 结果 |
| | | */ |
| | | @Override |
| | | public int deleteHoleById(String ids) |
| | | { |
| | | public int deleteHoleById(String ids) { |
| | | return holeMapper.deleteHoleById(ids); |
| | | } |
| | | } |
| | |
| | | <result property="projectId" column="project_id" /> |
| | | <result property="projectName" column="project_name" /> |
| | | <result property="deviceId" column="device_id" /> |
| | | <result property="deviceCode" column="device_code" /> |
| | | <result property="deviceName" column="device_name" /> |
| | | <result property="type" column="type" /> |
| | | <result property="transactionDate" column="transaction_date" /> |
| | |
| | | </resultMap> |
| | | |
| | | <sql id="selectDeviceLogVo"> |
| | | select id, code, project_id, project_name, device_id, device_name, type, transaction_date, opt_user, apply_user, number, create_date, remark from js_device_log |
| | | select id, code, project_id, project_name, device_id, device_code, device_name, type, transaction_date, opt_user, apply_user, number, create_date, remark from js_device_log |
| | | </sql> |
| | | |
| | | <select id="selectDeviceLogList" parameterType="DeviceLog" resultMap="DeviceLogResult"> |
| | | <include refid="selectDeviceLogVo"/> |
| | | <where> |
| | | <if test="projectId != null and projectId != ''"> and project_id = #{projectId}</if> |
| | | <if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if> |
| | | <if test="code != null and code != ''"> and code = #{code}</if> |
| | | <if test="projectId != null and projectId != ''"> and project_id = #{projectId}</if> |
| | | <if test="projectName != null and projectName != ''"> and project_name like concat('%', #{projectName}, '%')</if> |
| | | <if test="deviceId != null and deviceId != ''"> and device_id = #{deviceId}</if> |
| | | <if test="deviceCode != null and deviceCode != ''"> and device_code = #{deviceCode}</if> |
| | | <if test="deviceName != null and deviceName != ''"> and device_name like concat('%', #{deviceName}, '%')</if> |
| | | <if test="type != null and type != ''"> and type = #{type}</if> |
| | | <if test="optUser != null and optUser != ''"> and opt_user = #{optUser}</if> |
| | | <if test="applyUser != null and applyUser != ''"> and apply_user = #{applyUser}</if> |
| | | </where> |
| | | ORDER BY create_date |
| | | </select> |
| | | |
| | | <select id="selectDeviceLogById" parameterType="String" resultMap="DeviceLogResult"> |
| | |
| | | <if test="projectId != null and projectId != ''">project_id,</if> |
| | | <if test="projectName != null and projectName != ''">project_name,</if> |
| | | <if test="deviceId != null and deviceId != ''">device_id,</if> |
| | | <if test="deviceCode != null and deviceCode != ''">device_code,</if> |
| | | <if test="deviceName != null and deviceName != ''">device_name,</if> |
| | | <if test="type != null and type != ''">type,</if> |
| | | <if test="transactionDate != null and transactionDate != ''">transaction_date,</if> |
| | |
| | | <if test="projectId != null and projectId != ''">#{projectId},</if> |
| | | <if test="projectName != null and projectName != ''">#{projectName},</if> |
| | | <if test="deviceId != null and deviceId != ''">#{deviceId},</if> |
| | | <if test="deviceCode != null and deviceCode != ''">#{deviceCode},</if> |
| | | <if test="deviceName != null and deviceName != ''">#{deviceName},</if> |
| | | <if test="type != null and type != ''">#{type},</if> |
| | | <if test="transactionDate != null and transactionDate != ''">#{transactionDate},</if> |
| | |
| | | <if test="projectId != null and projectId != ''">project_id = #{projectId},</if> |
| | | <if test="projectName != null and projectName != ''">project_name = #{projectName},</if> |
| | | <if test="deviceId != null and deviceId != ''">device_id = #{deviceId},</if> |
| | | <if test="deviceCode != null and deviceCode != ''">device_code = #{deviceCode},</if> |
| | | <if test="deviceName != null and deviceName != ''">device_name = #{deviceName},</if> |
| | | <if test="type != null and type != ''">type = #{type},</if> |
| | | <if test="transactionDate != null and transactionDate != ''">transaction_date = #{transactionDate},</if> |
| | |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:device:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | | <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:device:export"> |
| | | <i class="fa fa-download"></i> 导出 |
| | | </a> |
| | | <!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:device:export">--> |
| | | <!-- <i class="fa fa-download"></i> 导出--> |
| | | <!-- </a>--> |
| | | </div> |
| | | <div class="col-sm-12 select-table table-striped"> |
| | | <table id="bootstrap-table"></table> |
| | |
| | | <input name="projectName" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">设备编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="deviceCode" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">设备名称:</label> |
| | | <div class="col-sm-8"> |
| | |
| | | <th:block th:include="include :: footer" /> |
| | | <script th:inline="javascript"> |
| | | var prefix = ctx + "geo/deviceLog" |
| | | var projectId = [[${projectId}]]; |
| | | |
| | | $("#form-deviceLog-add").validate({ |
| | | focusCleanup: true |
| | | }); |
| | | |
| | | function submitHandler() { |
| | | if ($.validate.form()) { |
| | | $.operate.save(prefix + "/add", $('#form-deviceLog-add').serialize()); |
| | | let formData = $('#form-deviceLog-add').serialize(); |
| | | let data = formData + "&projectId=" + projectId; |
| | | $.operate.save(prefix + "/add", data); |
| | | } |
| | | } |
| | | </script> |
| | |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:deviceLog:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | | <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:deviceLog:export"> |
| | | <i class="fa fa-download"></i> 导出 |
| | | </a> |
| | | <!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:deviceLog:export">--> |
| | | <!-- <i class="fa fa-download"></i> 导出--> |
| | | <!-- </a>--> |
| | | <a class="btn btn-info" onclick="$.table.importExcel()" shiro:hasPermission="geo:deviceLog:import"> |
| | | <i class="fa fa-upload"></i> 导入 |
| | | </a> |
| | | </div> |
| | | <div class="col-sm-12 select-table table-striped"> |
| | | <table id="bootstrap-table"></table> |
| | |
| | | $(function() { |
| | | var options = { |
| | | url: prefix + "/list?projectId="+projectId, |
| | | createUrl: prefix + "/add", |
| | | createUrl: prefix + "/add?projectId="+projectId, |
| | | updateUrl: prefix + "/edit/{id}", |
| | | removeUrl: prefix + "/remove", |
| | | exportUrl: prefix + "/export", |
| | | importUrl: prefix + "/importDeviceLog/"+projectId, |
| | | modalName: "设备出入库记录", |
| | | columns: [{ |
| | | checkbox: true |
| | | }, |
| | | { |
| | | field : 'id', |
| | | field : 'id', |
| | | title : '主键', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'code', |
| | | field : 'code', |
| | | title : '出入库单子号' |
| | | }, |
| | | { |
| | | field : 'projectName', |
| | | field : 'projectName', |
| | | title : '项目名称' |
| | | }, |
| | | { |
| | | field : 'deviceCode', |
| | | title : '设备编码' |
| | | }, |
| | | { |
| | | field : 'deviceName', |
| | | field : 'deviceName', |
| | | title : '设备名称' |
| | | }, |
| | | { |
| | | field : 'type', |
| | | field : 'type', |
| | | title : '出入库类型', |
| | | formatter: function(value, row, index) { |
| | | return $.table.selectDictLabel(typeDatas, value); |
| | | } |
| | | }, |
| | | { |
| | | field : 'transactionDate', |
| | | field : 'transactionDate', |
| | | title : '出入库时间' |
| | | }, |
| | | { |
| | | field : 'optUser', |
| | | field : 'optUser', |
| | | title : '经办人' |
| | | }, |
| | | { |
| | | field : 'applyUser', |
| | | field : 'applyUser', |
| | | title : '使用人' |
| | | }, |
| | | { |
| | | field : 'number', |
| | | field : 'number', |
| | | title : '出入库数量' |
| | | }, |
| | | { |
| | | field : 'remark', |
| | | field : 'remark', |
| | | title : '备注' |
| | | }, |
| | | { |
| | |
| | | }; |
| | | $.table.init(options); |
| | | }); |
| | | |
| | | //下载 |
| | | function importTemplate() { |
| | | var filename="设备出入库记录模板.xls"; |
| | | window.location.href = ctx + "common/download?fileName=" + encodeURI(filename) + "&delete=" + false; |
| | | } |
| | | </script> |
| | | </body> |
| | | |
| | | <!-- 导入区域 --> |
| | | <script id="importTpl" type="text/template"> |
| | | <form enctype="multipart/form-data" class="mt20 mb10"> |
| | | <div class="col-xs-offset-1"> |
| | | <input type="file" id="file" name="file"/> |
| | | <div class="mt10 pt5"> |
| | | <input type="checkbox" id="updateSupport" name="updateSupport" title="导入设备出入库信息信息"> 是否更新已经存在的数据 |
| | | <a onclick="importTemplate()" class="btn btn-default btn-xs"><i class="fa fa-file-excel-o"></i> 下载模板</a> |
| | | </div> |
| | | <font color="red" class="pull-left mt10"> |
| | | 提示:仅允许导入“xls”或“xlsx”格式文件! |
| | | </font> |
| | | </div> |
| | | </form> |
| | | </script> |
| | | |
| | | </html> |
| | |
| | | <input name="projectName" th:field="*{projectName}" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">设备编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="deviceCode" th:field="*{deviceCode}" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">设备名称:</label> |
| | | <div class="col-sm-8"> |
| | |
| | | <body class="white-bg"> |
| | | <div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
| | | <form class="form-horizontal m" id="form-hole-add"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目序列号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="projectId" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点编号:</label> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="code" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">描述、技术要求:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="description" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点类型:</label> |
| | | <div class="col-sm-8"> |
| | | <select name="type" class="form-control m-b"> |
| | | <option value="">所有</option> |
| | | </select> |
| | | <span class="help-block m-b-none"><i class="fa fa-info-circle"></i> 代码生成请选择字典属性</span> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">孔口高程:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="elevation" class="form-control" type="text"> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点经度:</label> |
| | | <label class="col-sm-3 control-label">钻孔经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="longitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点纬度:</label> |
| | | <label class="col-sm-3 control-label">钻孔纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="latitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标X:</label> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">进度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyX" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标Y:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyY" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标Z:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyZ" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">测量坐标纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyLatitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">测量坐标经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyLongitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="mapLatitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="mapLongitude" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位时间:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="input-group date"> |
| | | <span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
| | | <input name="mapTime" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的地点:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="position" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的时间:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="input-group date"> |
| | | <span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
| | | <input name="locateTime" class="form-control" placeholder="yyyy-MM-dd" type="text"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的原因:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="reason" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照1:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="pic1" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照2:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="pic2" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照3:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="pic3" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔状态:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="radio-box"> |
| | | <input type="radio" name="status" value=""> |
| | | <label th:for="status" th:text="未知"></label> |
| | | </div> |
| | | <span class="help-block m-b-none"><i class="fa fa-info-circle"></i> 代码生成请选择字典属性</span> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">是否删除:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="isDeleted" class="form-control" type="text"> |
| | | <input name="pic1" class="form-control" type="text" placeholder="请输入进度数字(例:10代表10%)"> |
| | | </div> |
| | | </div> |
| | | </form> |
| | | </div> |
| | | <th:block th:include="include :: footer" /> |
| | | <th:block th:include="include :: datetimepicker-js" /> |
| | | <script type="text/javascript"> |
| | | |
| | | <script th:inline="javascript"> |
| | | var prefix = ctx + "geo/hole" |
| | | var projectId = [[${projectId}]]; |
| | | |
| | | $("#form-hole-add").validate({ |
| | | focusCleanup: true |
| | | }); |
| | | |
| | | function submitHandler() { |
| | | if ($.validate.form()) { |
| | | $.operate.save(prefix + "/add", $('#form-hole-add').serialize()); |
| | | let formData = $('#form-hole-add').serialize(); |
| | | let data = formData + "&projectId=" + projectId; |
| | | $.operate.save(prefix + "/add", data); |
| | | } |
| | | } |
| | | |
| | |
| | | <form class="form-horizontal m" id="form-hole-edit" th:object="${hole}"> |
| | | <input name="ids" th:field="*{ids}" type="hidden"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点编号:</label> |
| | | <label class="col-sm-3 control-label">钻孔编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="code" th:field="*{code}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">描述、技术要求:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="description" th:field="*{description}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点类型:</label> |
| | | <div class="col-sm-8"> |
| | | <select name="type" class="form-control m-b" th:with="type=${@dict.getType('hole_type')}" disabled="disabled"> |
| | | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}" th:field="*{type}"></option> |
| | | </select> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">孔口高程:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="elevation" th:field="*{elevation}" class="form-control" type="text" disabled="disabled" > |
| | | <input name="elevation" th:field="*{elevation}" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">设计孔深:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="depth" th:field="*{depth}" class="form-control" type="text" disabled="disabled"> |
| | | <input name="depth" th:field="*{depth}" class="form-control" type="text" > |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点经度:</label> |
| | | <label class="col-sm-3 control-label">钻孔经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="longitude" th:field="*{longitude}" class="form-control" type="text" disabled="disabled"> |
| | | <input name="longitude" th:field="*{longitude}" class="form-control" type="text" > |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">勘探点纬度:</label> |
| | | <label class="col-sm-3 control-label">钻孔纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="latitude" th:field="*{latitude}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标X:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyX" th:field="*{surveyX}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标Y:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyY" th:field="*{surveyY}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">相对坐标Z:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyZ" th:field="*{surveyZ}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">测量坐标纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyLatitude" th:field="*{surveyLatitude}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">测量坐标经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="surveyLongitude" th:field="*{surveyLongitude}" class="form-control" type="text" disabled="disabled" > |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位纬度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="mapLatitude" th:field="*{mapLatitude}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位经度:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="mapLongitude" th:field="*{mapLongitude}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔定位时间:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="input-group date"> |
| | | <!-- <span class="input-group-addon"><i class="fa fa-calendar"></i></span>--> |
| | | <input name="mapTime" th:value="${#dates.format(hole.mapTime, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的地点:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="position" th:field="*{position}" class="form-control" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的时间:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="input-group date"> |
| | | <span class="input-group-addon"><i class="fa fa-calendar"></i></span> |
| | | <input name="locateTime" th:value="${#dates.format(hole.locateTime, 'yyyy-MM-dd')}" class="form-control" placeholder="yyyy-MM-dd" type="text" disabled="disabled"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">无法定位的原因:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="reason" th:field="*{reason}" class="form-control" type="text" disabled="disabled"> |
| | | <input name="latitude" th:field="*{latitude}" class="form-control" type="text" > |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">钻孔状态:</label> |
| | | <div class="col-sm-8"> |
| | | <div class="radio-box" th:each="dict : ${@dict.getType('hole_status')}"> |
| | | <input type="radio" th:id="${'status_' + dict.dictCode}" name="status" th:value="${dict.dictValue}" th:field="*{status}" disabled="disabled"> |
| | | <input type="radio" th:id="${'status_' + dict.dictCode}" name="status" th:value="${dict.dictValue}" th:field="*{status}" > |
| | | <label th:for="${'status_' + dict.dictCode}" th:text="${dict.dictLabel}"></label> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照1:</label> |
| | | <label class="col-sm-3 control-label">进度:</label> |
| | | <div class="col-sm-8"> |
| | | <img border="0" th:src="*{pic1}" /> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照2:</label> |
| | | <div class="col-sm-8"> |
| | | <img border="0" th:src="*{pic2}" /> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">现场拍照3:</label> |
| | | <div class="col-sm-8"> |
| | | <img border="0" th:src="*{pic3}" /> |
| | | <input name="pic1" th:field="*{pic1}" class="form-control" type="text" placeholder="请输入进度数字(例:10代表10%)"> |
| | | </div> |
| | | </div> |
| | | </form> |
| | |
| | | <div class="select-list"> |
| | | <ul> |
| | | <li> |
| | | <p>勘探点类型:</p> |
| | | <select name="type" th:with="type=${@dict.getType('hole_type')}"> |
| | | <option value="">所有</option> |
| | | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
| | | </select> |
| | | </li> |
| | | <li> |
| | | <p>勘探点编号:</p> |
| | | <p>钻孔编号:</p> |
| | | <input type="text" name="code"/> |
| | | </li> |
| | | <li> |
| | |
| | | </div> |
| | | |
| | | <div class="btn-group-sm" id="toolbar" role="group"> |
| | | <a class="btn btn-success" onclick="$.operate.add()" shiro:hasPermission="geo:hole:add"> |
| | | <i class="fa fa-plus"></i> 添加 |
| | | </a> |
| | | <a class="btn btn-primary single disabled" onclick="$.operate.edit()" shiro:hasPermission="geo:hole:edit"> |
| | | <i class="fa fa-edit"></i> 修改 |
| | | </a> |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:hole:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | |
| | | var statusDatas = [[${@dict.getType('hole_status')}]]; |
| | | var prefix = ctx + "geo/hole"; |
| | | var projectId=[[${projectId}]]; |
| | | |
| | | $(function() { |
| | | var options = { |
| | | url: prefix + "/list?projectId="+projectId, |
| | | createUrl: prefix + "/add", |
| | | createUrl: prefix + "/add?projectId="+projectId, |
| | | updateUrl: prefix + "/edit/{id}", |
| | | removeUrl: prefix + "/remove", |
| | | exportUrl: prefix + "/export", |
| | |
| | | }, |
| | | { |
| | | field : 'code', |
| | | title : '勘探点编号' |
| | | }, |
| | | { |
| | | field : 'description', |
| | | title : '描述、技术要求', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'type', |
| | | title : '勘探点类型', |
| | | formatter: function(value, row, index) { |
| | | return $.table.selectDictLabel(typeDatas, value); |
| | | } |
| | | title : '钻孔编号' |
| | | }, |
| | | { |
| | | field : 'elevation', |
| | |
| | | }, |
| | | { |
| | | field : 'longitude', |
| | | title : '勘探点经度', |
| | | title : '钻孔经度', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'latitude', |
| | | title : '勘探点纬度', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'surveyX', |
| | | title : '相对坐标X', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'surveyY', |
| | | title : '相对坐标Y', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'surveyZ', |
| | | title : '相对坐标Z', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'surveyLatitude', |
| | | title : '测量坐标纬度', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'surveyLongitude', |
| | | title : '测量坐标经度', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'mapLatitude', |
| | | title : '钻孔定位纬度' |
| | | }, |
| | | { |
| | | field : 'mapLongitude', |
| | | title : '钻孔定位经度' |
| | | }, |
| | | { |
| | | field : 'mapTime', |
| | | title : '钻孔定位时间', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'position', |
| | | title : '无法定位的地点', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'locateTime', |
| | | title : '无法定位的时间', |
| | | visible: false |
| | | }, |
| | | { |
| | | field : 'reason', |
| | | title : '无法定位的原因', |
| | | title : '钻孔纬度', |
| | | visible: false |
| | | }, |
| | | { |
| | |
| | | return $.table.selectDictLabel(statusDatas, value); |
| | | } |
| | | }, |
| | | { |
| | | field : 'pic1', |
| | | title : '进度', |
| | | }, |
| | | { |
| | | title: '操作', |
| | | align: 'center', |
| | | formatter: function(value, row, index) { |
| | | var actions = []; |
| | | actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.ids + '\')"><i class="fa fa-edit"></i>详情</a> '); |
| | | actions.push('<a class="btn btn-success btn-xs ' + editFlag + '" href="javascript:void(0)" onclick="$.operate.edit(\'' + row.ids + '\')"><i class="fa fa-edit"></i>修改</a> '); |
| | | actions.push('<a class="btn btn-danger btn-xs ' + removeFlag + '" href="javascript:void(0)" onclick="$.operate.remove(\'' + row.ids + '\')"><i class="fa fa-remove"></i>删除</a>'); |
| | | return actions.join(''); |
| | | } |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
| | | <head> |
| | | <th:block th:include="include :: header('新增项目')" /> |
| | | <th:block th:include="include :: header('新增场地')" /> |
| | | <th:block th:include="include :: select2-css" /> |
| | | <th:block th:include="include :: datetimepicker-css" /> |
| | | </head> |
| | |
| | | <div class="wrapper wrapper-content animated fadeInRight ibox-content"> |
| | | <form class="form-horizontal m" id="form-project-add"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目编号:</label> |
| | | <label class="col-sm-3 control-label">场地编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="code" class="form-control" required type="text"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目名称:</label> |
| | | <label class="col-sm-3 control-label">场地名称:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="fullName" class="form-control" required type="text"> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目负责人:</label> |
| | | <label class="col-sm-3 control-label">场地负责人:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="leader" class="form-control" type="text"> |
| | | </div> |
| | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">开始时间:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="startTime" type="text" class="form-control" id="start-time" placeholder="选择项目起始时间"> |
| | | <input name="startTime" type="text" class="form-control" id="start-time" placeholder="选择场地起始时间"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">结束时间:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="endTime" type="text" class="form-control" id="end-time" placeholder="选择项目结束时间"> |
| | | <input name="endTime" type="text" class="form-control" id="end-time" placeholder="选择场地结束时间"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh" xmlns:th="http://www.thymeleaf.org" > |
| | | <head> |
| | | <th:block th:include="include :: header('修改项目')" /> |
| | | <th:block th:include="include :: header('修改场地')" /> |
| | | <th:block th:include="include :: select2-css" /> |
| | | <th:block th:include="include :: datetimepicker-css" /> |
| | | </head> |
| | |
| | | <form class="form-horizontal m" id="form-project-edit" th:object="${project}"> |
| | | <input name="ids" th:field="*{ids}" type="hidden"> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目编号:</label> |
| | | <label class="col-sm-3 control-label">场地编号:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="code" th:field="*{code}" class="form-control" type="text"> |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目名称:</label> |
| | | <label class="col-sm-3 control-label">场地名称:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="fullName" th:field="*{fullName}" class="form-control" type="text"> |
| | | </div> |
| | |
| | | </div> |
| | | </div> |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">项目负责人:</label> |
| | | <label class="col-sm-3 control-label">场地负责人:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="leader" th:field="*{leader}" class="form-control" type="text"> |
| | | </div> |
| | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">开始时间:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="startTime" th:field="*{startTime}" type="text" class="form-control" id="start-time" placeholder="选择项目起始时间"> |
| | | <input name="startTime" th:field="*{startTime}" type="text" class="form-control" id="start-time" placeholder="选择场地起始时间"> |
| | | </div> |
| | | </div> |
| | | |
| | | <div class="form-group"> |
| | | <label class="col-sm-3 control-label">结束时间:</label> |
| | | <div class="col-sm-8"> |
| | | <input name="endTime" th:field="*{endTime}" type="text" class="form-control" id="end-time" placeholder="选择项目结束时间"> |
| | | <input name="endTime" th:field="*{endTime}" type="text" class="form-control" id="end-time" placeholder="选择场地结束时间"> |
| | | </div> |
| | | </div> |
| | | |
| | |
| | | |
| | | <div class="box-header active"> |
| | | <div class="box-title"> |
| | | <i class="fa fa-desktop"></i> <a class="afont" th:href="@{/geo/project/info(id=${project.ids})}" target="mainFrame" onclick="selected(this)">项目详情</a> |
| | | <i class="fa fa-desktop"></i> <a class="afont" th:href="@{/geo/project/info(id=${project.ids})}" target="mainFrame" onclick="selected(this)">场地详情</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-map-marker"></i> <a class="afont" th:href="@{/geo/hole(id=${project.ids})}" target="mainFrame" onclick="selected(this)">勘探点</a> |
| | | </div> |
| | | <i class="glyphicon glyphicon-map-marker"></i> <a class="afont" th:href="@{/geo/hole(id=${project.ids})}" target="mainFrame" onclick="selected(this)">钻孔</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-th-list"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='3')}" target="mainFrame" onclick="selected(this)">测井</a> |
| | | <i class="glyphicon glyphicon-th-list"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='3')}" target="mainFrame" onclick="selected(this)">施工现场管理</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-align-justify"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='4')}" target="mainFrame" onclick="selected(this)">斜测</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-home"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='5')}" target="mainFrame" onclick="selected(this)">室内试验</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-object-align-left"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='6')}" target="mainFrame" onclick="selected(this)">工程测绘</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-tint"></i> <a class="afont" th:href="@{/geo/projectData(id=${project.ids},type='7')}" target="mainFrame" onclick="selected(this)">水质分析</a> |
| | | </div> |
| | | </div> |
| | | <div class="box-header "> |
| | | <div class="box-title"> |
| | | <i class="glyphicon glyphicon-facetime-video"></i> <a class="afont" th:href="@{/geo/projectCamera(id=${project.ids},type='7')}" target="mainFrame" onclick="selected(this)">现场监控设备</a> |
| | | <i class="glyphicon glyphicon-facetime-video"></i> <a class="afont" th:href="@{/geo/projectCamera(id=${project.ids})}" target="mainFrame" onclick="selected(this)">现场监控设备</a> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | <iframe id="mainFrame" name="mainFrame" class="ui-layout-content p0" |
| | | th:src="@{/geo/project/info(id=${project.ids})}"></iframe> |
| | | </div> |
| | | |
| | | |
| | | |
| | | |
| | | <th:block th:include="include :: footer" /> |
| | | <th:block th:include="include :: layout-latest-js" /> |
| | | <th:block th:include="include :: ztree-js" /> |
| | |
| | | <!DOCTYPE html> |
| | | <html lang="zh" xmlns:th="http://www.thymeleaf.org" xmlns:shiro="http://www.pollix.at/thymeleaf/shiro"> |
| | | <head> |
| | | <th:block th:include="include :: header('项目列表')" /> |
| | | <th:block th:include="include :: header('场地列表')" /> |
| | | </head> |
| | | <body class="gray-bg"> |
| | | <div class="container-div"> |
| | |
| | | <ul> |
| | | |
| | | <li> |
| | | <p>项目名称:</p> |
| | | <p>场地名称:</p> |
| | | <input type="text" name="fullName"/> |
| | | </li> |
| | | <li> |
| | | <p>项目编号:</p> |
| | | <p>场地编号:</p> |
| | | <input type="text" name="code"/> |
| | | </li> |
| | | <li> |
| | |
| | | updateUrl: prefix + "/edit/{id}", |
| | | removeUrl: prefix + "/remove", |
| | | exportUrl: prefix + "/export", |
| | | modalName: "项目", |
| | | modalName: "场地", |
| | | columns: [{ |
| | | checkbox: true |
| | | }, |
| | | { |
| | | field : 'code', |
| | | title : '项目编号', |
| | | title : '场地编号', |
| | | sortable:true |
| | | }, |
| | | { |
| | | field : 'fullName', |
| | | title : '项目名称', |
| | | title : '场地名称', |
| | | formatter: function(value, row, index) { |
| | | return '<a onclick="navigate(\'' + row.ids + '\')">'+row.fullName+'</a>' |
| | | }, |
| | |
| | | }, |
| | | { |
| | | field : 'leaderName', |
| | | title : '项目负责人' |
| | | title : '场地负责人' |
| | | }, |
| | | { |
| | | field : 'createTime', |
| | |
| | | }, |
| | | { |
| | | field : 'status', |
| | | title : '项目状态', |
| | | title : '场地状态', |
| | | formatter: function(value, row, index) { |
| | | if(row.status =='0'){ |
| | | return "未验收"; |
| | |
| | | |
| | | function navigate(id){ |
| | | |
| | | $.modal.openTab("项目导航",ctx+"/geo/project/navigate?ids="+id); |
| | | $.modal.openTab("场地导航",ctx+"/geo/project/navigate?ids="+id); |
| | | } |
| | | </script> |
| | | </body> |
| | |
| | | <div class="select-list"> |
| | | <ul> |
| | | <li> |
| | | <p>项目id:</p> |
| | | <input type="text" name="projectId"/> |
| | | </li> |
| | | <li> |
| | | <p>名称:</p> |
| | | <input type="text" name="name"/> |
| | | </li> |
| | | <li> |
| | | <p>视频编号:</p> |
| | | <input type="text" name="code"/> |
| | | </li> |
| | | <li> |
| | | <p>经度:</p> |
| | | <input type="text" name="lng"/> |
| | | </li> |
| | | <li> |
| | | <p>纬度:</p> |
| | | <input type="text" name="lat"/> |
| | | </li> |
| | | <li> |
| | | <p>Ip地址:</p> |
| | |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:projectCamera:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | | <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectCamera:export"> |
| | | <i class="fa fa-download"></i> 导出 |
| | | </a> |
| | | <!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectCamera:export">--> |
| | | <!-- <i class="fa fa-download"></i> 导出--> |
| | | <!-- </a>--> |
| | | </div> |
| | | <div class="col-sm-12 select-table table-striped"> |
| | | <table id="bootstrap-table"></table> |
| | |
| | | <div class="row"> |
| | | <div class="col-sm-12 search-collapse"> |
| | | <form id="formId"> |
| | | <div class="select-list"> |
| | | |
| | | <!-- 条件表达式 --> |
| | | <div th:if="${type}=='3'" class="select-list"> |
| | | <ul> |
| | | <li> |
| | | <p>资料名称:</p> |
| | | <input type="text" name="name"/> |
| | | </li> |
| | | <li> |
| | | <p>资料类型:</p> |
| | | <select name="dataType" th:with="type=${@dict.getType('project_data_type')}"> |
| | | <option value="">所有</option> |
| | | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
| | | </select> |
| | | </li> |
| | | <li> |
| | | <p>文件类型:</p> |
| | | <p>业务类型:</p> |
| | | <select name="fileType" th:with="type=${@dict.getType('project_data_file_type')}"> |
| | | <option value="">所有</option> |
| | | <option th:each="dict : ${type}" th:text="${dict.dictLabel}" th:value="${dict.dictValue}"></option> |
| | |
| | | </li> |
| | | </ul> |
| | | </div> |
| | | <!-- 条件表达式 --> |
| | | <div th:if="${type}!='3'" class="select-list"> |
| | | <ul> |
| | | <li> |
| | | <p>资料名称:</p> |
| | | <input type="text" name="name"/> |
| | | </li> |
| | | <li> |
| | | <p>标签:</p> |
| | | <input type="text" name="labels"/> |
| | | </li> |
| | | <li> |
| | | <a class="btn btn-primary btn-rounded btn-sm" onclick="$.table.search()"><i class="fa fa-search"></i> 搜索</a> |
| | | <a class="btn btn-warning btn-rounded btn-sm" onclick="$.form.reset()"><i class="fa fa-refresh"></i> 重置</a> |
| | | </li> |
| | | </ul> |
| | | </div> |
| | | |
| | | </form> |
| | | </div> |
| | | |
| | |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:projectData:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | | <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectData:export"> |
| | | <i class="fa fa-download"></i> 导出 |
| | | </a> |
| | | <!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectData:export">--> |
| | | <!-- <i class="fa fa-download"></i> 导出--> |
| | | <!-- </a>--> |
| | | </div> |
| | | <div class="col-sm-12 select-table table-striped"> |
| | | <table id="bootstrap-table"></table> |
| | |
| | | { |
| | | field : 'name', |
| | | title : '资料名称' |
| | | }, |
| | | { |
| | | field : 'dataType', |
| | | title : '资料类型', |
| | | formatter: function(value, row, index) { |
| | | return $.table.selectDictLabel(dataTypeDatas, value); |
| | | } |
| | | }, |
| | | { |
| | | field : 'fileType', |
| | |
| | | <a class="btn btn-danger multiple disabled" onclick="$.operate.removeAll()" shiro:hasPermission="geo:projectPerson:remove"> |
| | | <i class="fa fa-remove"></i> 删除 |
| | | </a> |
| | | <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectPerson:export"> |
| | | <i class="fa fa-download"></i> 导出 |
| | | </a> |
| | | <!-- <a class="btn btn-warning" onclick="$.table.exportExcel()" shiro:hasPermission="geo:projectPerson:export">--> |
| | | <!-- <i class="fa fa-download"></i> 导出--> |
| | | <!-- </a>--> |
| | | </div> |
| | | <div class="col-sm-12 select-table table-striped"> |
| | | <table id="bootstrap-table"></table> |