ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOpenCityController.java
@@ -10,7 +10,9 @@ import com.stylefeng.guns.core.shiro.ShiroKit; import com.stylefeng.guns.core.util.DateUtil; import com.stylefeng.guns.core.util.SinataUtil; import com.stylefeng.guns.modular.system.dao.TOpenCitySiteMapper; import com.stylefeng.guns.modular.system.model.TOpenCityBusiness; import com.stylefeng.guns.modular.system.model.TOpenCitySite; import com.stylefeng.guns.modular.system.model.TRegion; import com.stylefeng.guns.modular.system.service.ITOpenCityBusinessService; import com.stylefeng.guns.modular.system.service.ITRegionService; @@ -26,10 +28,13 @@ import com.stylefeng.guns.modular.system.model.TOpenCity; import com.stylefeng.guns.modular.system.service.ITOpenCityService; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 城市管理控制器 @@ -51,7 +56,8 @@ @Autowired private ITOpenCityBusinessService tOpenCityBusinessService; @Autowired private TOpenCitySiteMapper tOpenCitySiteMapper; /** * 跳转到城市管理首页 */ @@ -78,7 +84,6 @@ TOpenCity tOpenCity = tOpenCityService.selectById(tOpenCityId); model.addAttribute("item",tOpenCity); LogObjectHolder.me().set(tOpenCity); //省 List<TRegion> provinceList = tRegionService.selectList(new EntityWrapper<TRegion>().eq("parent_id", 0)); model.addAttribute("provinceList",provinceList); @@ -91,6 +96,16 @@ //经营业务 List<Map<String,Object>> businessList = tOpenCityService.getBusinessByCityId(tOpenCityId); model.addAttribute("businessList",businessList); // 机场/动车站点 List<TOpenCitySite> siteList = tOpenCitySiteMapper.selectList(new EntityWrapper<TOpenCitySite>() .eq("openCityId", tOpenCityId) .ne("flag",3)); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy.MM.dd"); for (TOpenCitySite openCitySite : siteList) { String format = simpleDateFormat.format(openCitySite.getInsertTime()); openCitySite.setInsertTime1(format); } model.addAttribute("siteList",siteList); return PREFIX + "tOpenCity_edit.html"; } @@ -127,7 +142,10 @@ */ @RequestMapping(value = "/add") @ResponseBody public Object add(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId) { public Object add(TOpenCity tOpenCity,@RequestParam String businessTypeStr, String sites, Integer areaId,Integer cityId, Integer provinceId) { //获取code if (SinataUtil.isNotEmpty(areaId)){ TRegion area = tRegionService.selectById(areaId); @@ -163,6 +181,35 @@ //添加经营业务 testJSONStrToJSONArray(businessTypeStr,tOpenCity.getId()); // 添加机场/动车站点 JSONArray jsonArray = JSON.parseArray(sites); int size = jsonArray.size(); for (int i = 0; i < size; i++){ JSONObject jsonObject = jsonArray.getJSONObject(i); TOpenCitySite openCitySite = new TOpenCitySite(); openCitySite.setOpenCityId(tOpenCity.getId()); String string = jsonObject.getString("lonAndLat"); // 去除转义符 String unescaped = string.replaceAll("& #40;", "(").replaceAll("& #41;", ")"); // 提取括号中的内容 Pattern pattern = Pattern.compile("\\(([^)]+)\\)"); Matcher matcher = pattern.matcher(unescaped); if (matcher.find()) { String lonAndLat = matcher.group(1); System.out.println("括号中的内容: " + lonAndLat); // 使用逗号分割字符串 String[] parts = lonAndLat.split(","); // 提取需要的部分 String lon = parts[0]; String lat = parts[1]; openCitySite.setLon(lon); openCitySite.setLat(lat); } openCitySite.setFlag(1); openCitySite.setName(jsonObject.getString("name")); openCitySite.setInsertTime(DateUtil.parse(jsonObject.getString("time")+" 00:00:00","yyyy-MM-dd HH:mm:ss")); tOpenCitySiteMapper.insert(openCitySite); } return SUCCESS_TIP; } @@ -224,7 +271,7 @@ */ @RequestMapping(value = "/update") @ResponseBody public Object update(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId) { public Object update(TOpenCity tOpenCity,@RequestParam String businessTypeStr,Integer areaId,Integer cityId,Integer provinceId,String sites) { if (SinataUtil.isNotEmpty(areaId)){ TRegion area = tRegionService.selectById(areaId); tOpenCity.setCode(area.getCode()); @@ -279,6 +326,61 @@ tOpenCityBusinessService.update(business,new EntityWrapper<TOpenCityBusiness>().eq("openCityId",tOpenCity.getId())); //添加经营业务 testJSONStrToJSONArray(businessTypeStr,tOpenCity.getId()); // TOpenCitySite openCitySite = new TOpenCitySite(); // // 删除站点 // tOpenCitySiteMapper.update(openCitySite,new EntityWrapper<TOpenCitySite>().eq("openCityId",tOpenCity.getId())); List<TOpenCitySite> openCityId = tOpenCitySiteMapper.selectList(new EntityWrapper<TOpenCitySite>() .eq("openCityId", tOpenCity.getId())); for (TOpenCitySite openCitySite : openCityId) { openCitySite.setFlag(3); tOpenCitySiteMapper.updateById(openCitySite); } // 添加站点 // 添加机场/动车站点 JSONArray jsonArray = JSON.parseArray(sites); int size = jsonArray.size(); for (int i = 0; i < size; i++){ JSONObject jsonObject = jsonArray.getJSONObject(i); String string = jsonObject.getString("lonAndLat"); // 去除转义符 String unescaped = string.replaceAll("& #40;", "(").replaceAll("& #41;", ")"); // 提取括号中的内容 Pattern pattern = Pattern.compile("\\(([^)]+)\\)"); Matcher matcher = pattern.matcher(unescaped); String lon = ""; String lat = ""; if (matcher.find()) { String lonAndLat = matcher.group(1); System.out.println("括号中的内容: " + lonAndLat); // 使用逗号分割字符串 String[] parts = lonAndLat.split(","); // 提取需要的部分 lon = parts[0]; lat = parts[1]; } if (SinataUtil.isNotEmpty(jsonObject.getInteger("busId")) && jsonObject.getInteger("busId") != 0){ // 修改 TOpenCitySite openCitySite1 = tOpenCitySiteMapper.selectById(jsonObject.getInteger("busId")); openCitySite1.setLon(lon); openCitySite1.setLat(lat); openCitySite1.setName(jsonObject.getString("name")); openCitySite1.setFlag(2); openCitySite1.setType(jsonObject.getInteger("siteType")); tOpenCitySiteMapper.updateById(openCitySite1); }else{ // 新增 TOpenCitySite openCitySite3 = new TOpenCitySite(); openCitySite3.setOpenCityId(tOpenCity.getId()); openCitySite3.setLon(lon); openCitySite3.setLat(lat); openCitySite3.setFlag(1); openCitySite3.setName(jsonObject.getString("name")); openCitySite3.setType(jsonObject.getInteger("siteType")); openCitySite3.setInsertTime(DateUtil.parse(jsonObject.getString("time")+" 00:00:00","yyyy-MM-dd HH:mm:ss")); tOpenCitySiteMapper.insert(openCitySite3); } } return SUCCESS_TIP; } ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/controller/general/TOrderTapeController.java
@@ -77,6 +77,16 @@ } /** * 删除行程录音管理 */ @RequestMapping(value = "/getDetailById") @ResponseBody public Object getDetailById(@RequestParam Integer tOrderTapeId) { TOrderTape tOrderTape = tOrderTapeService.selectById(tOrderTapeId); return ResultUtil.success(tOrderTape); } /** * 批量删除行程录音管理 */ @RequestMapping(value = "/deleteBatch") ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/TOpenCitySiteMapper.java
New file @@ -0,0 +1,17 @@ package com.stylefeng.guns.modular.system.dao; import com.baomidou.mybatisplus.mapper.BaseMapper; import com.stylefeng.guns.modular.system.model.TOpenCitySite; /** * <p> * 开通城市表 Mapper 接口 * </p> * * @author 吕雪 * @since 2020-06-02 */ public interface TOpenCitySiteMapper extends BaseMapper<TOpenCitySite> { } ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/dao/mapping/TOpenCitySiteMapper.xml
New file @@ -0,0 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.stylefeng.guns.modular.system.dao.TOpenCitySiteMapper"> </mapper> ManagementNTTravel/guns-admin/src/main/java/com/stylefeng/guns/modular/system/model/TOpenCitySite.java
New file @@ -0,0 +1,161 @@ package com.stylefeng.guns.modular.system.model; import com.baomidou.mybatisplus.activerecord.Model; import com.baomidou.mybatisplus.annotations.DataSource; import com.baomidou.mybatisplus.annotations.TableField; import com.baomidou.mybatisplus.annotations.TableId; import com.baomidou.mybatisplus.annotations.TableName; import com.baomidou.mybatisplus.enums.IdType; import io.swagger.models.auth.In; import java.io.Serializable; import java.util.Date; import java.util.Objects; /** * <p> * 开通城市表 * </p> * * @author 吕雪 * @since 2020-06-02 */ @TableName("t_open_city_site") public class TOpenCitySite extends Model<TOpenCitySite> { private static final long serialVersionUID = 1L; @Override public boolean equals(Object o) { if (this == o) return true; if (o == null || getClass() != o.getClass()) return false; TOpenCitySite that = (TOpenCitySite) o; return Objects.equals(id, that.id) && Objects.equals(lon, that.lon) && Objects.equals(lat, that.lat) && Objects.equals(name, that.name) && Objects.equals(insertTime, that.insertTime) && Objects.equals(openCityId, that.openCityId); } @Override public int hashCode() { return Objects.hash(id, lon, lat, name, insertTime, openCityId); } public String getInsertTime1() { return insertTime1; } public void setInsertTime1(String insertTime1) { this.insertTime1 = insertTime1; } @Override public String toString() { return "TOpenCitySite{" + "id=" + id + ", lon='" + lon + '\'' + ", lat='" + lat + '\'' + ", name='" + name + '\'' + ", insertTime=" + insertTime + ", openCityId=" + openCityId + '}'; } public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getLon() { return lon; } public void setLon(String lon) { this.lon = lon; } public String getLat() { return lat; } public void setLat(String lat) { this.lat = lat; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Date getInsertTime() { return insertTime; } public void setInsertTime(Date insertTime) { this.insertTime = insertTime; } public Integer getOpenCityId() { return openCityId; } public void setOpenCityId(Integer openCityId) { this.openCityId = openCityId; } /** * 主键id */ @TableId(value = "id", type = IdType.AUTO) private Integer id; /** * 经度 */ private String lon; /** * 纬度 */ private String lat; public Integer getFlag() { return flag; } public void setFlag(Integer flag) { this.flag = flag; } private Integer flag; /** * 类型 1机场2站点 */ private Integer type; public Integer getType() { return type; } public void setType(Integer type) { this.type = type; } /** * 站点名称 */ private String name; private Date insertTime; @TableField(exist = false) private String insertTime1; private Integer openCityId; @Override protected Serializable pkVal() { return this.id; } } ManagementNTTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_add.html
@@ -1,4 +1,6 @@ @layout("/common/_container.html"){ <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.15&key=77b37f0753049c4e712ea79a24e0719c"></script> <div class="ibox float-e-margins"> <div class="ibox-content"> <div class="form-horizontal" id="openCityForm"> @@ -64,13 +66,29 @@ <div class="form-group"> <label class="col-sm-3 control-label">机场/动车站点:</label> <div class="col-sm-2" > <input class="form-control" style="width: 250px;" type="text" id="address" onchange="TOpenCityInfoDlg.searchByStationName(this,1)"> </div> <div class="col-sm-3" > <#input id="businessSort" name=" " value="" /> <#input id="siteName" name="站点名称" value="" /> </div> <div class="col-sm-3"> <select class="form-control" id="siteType"> <option value="">选择站点类型</option> <option value="1">机场</option> <option value="2">动车</option> </select> </div> <div class="col-sm-2"> <#button btnCss="info" name="添加站点" id="ensure" icon="fa-check" clickFun="addBusinessType()"/> <#button btnCss="info" name="添加站点" id="ensure" icon="fa-check" clickFun="addSite()"/> </div> </div> <div class="col-sm-10" style="margin-left: 397px;width: 70%;" > <!-- 创建地图容器--> <div id="container" style="height: 500px;" ></div> </div> <div hidden id="longitude"></div> <div hidden id="latitude"></div> <div class="form-group"> <label class="col-sm-3 control-label">已添加站点列表:</label> <div class="col-sm-9"> @@ -79,8 +97,9 @@ <thead> <tr> <th style="width: 300px;">添加时间</th> <th style="width: 300px;">经营业务</th> <th style="width: 300px;">排序</th> <th style="width: 300px;">站点名称</th> <th style="width: 300px;">经纬度</th> <th style="width: 300px;">站点类型</th> <th style="width: 100px;">操作</th> </tr> </thead> @@ -104,4 +123,7 @@ </div> </div> <script src="${ctxPath}/static/modular/system/tOpenCity/tOpenCity_info.js"></script> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/css/select2.min.css"> <!--<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.6.0/jquery.min.js"></script>--> <script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.13/js/select2.min.js"></script> @} ManagementNTTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOpenCity/tOpenCity_edit.html
@@ -1,4 +1,5 @@ @layout("/common/_container.html"){ <script type="text/javascript" src="http://webapi.amap.com/maps?v=1.4.15&key=77b37f0753049c4e712ea79a24e0719c"></script> <div class="ibox float-e-margins"> <div class="ibox-content"> <div class="form-horizontal" id="openCityForm"> @@ -77,7 +78,67 @@ </div> </div> </div> <div class="form-group"> <label class="col-sm-3 control-label">机场/动车站点:</label> <div class="col-sm-2" > <input class="form-control" style="width: 250px;" type="text" id="address" onchange="TOpenCityInfoDlg.searchByStationName(this,1)"> </div> <div class="col-sm-3" > <#input id="siteName" name="站点名称" value="" /> </div> <div class="col-sm-3"> <select class="form-control" id="siteType"> <option value="">选择站点类型</option> <option value="1">机场</option> <option value="2">动车</option> </select> </div> <div class="col-sm-2"> <#button btnCss="info" name="添加站点" id="ensure" icon="fa-check" clickFun="addSite()"/> </div> </div> <div class="col-sm-10" style="margin-left: 397px;width: 70%;" > <!-- 创建地图容器--> <div id="container" style="height: 500px;" ></div> </div> <div hidden id="longitude"></div> <div hidden id="latitude"></div> <div class="form-group"> <label class="col-sm-3 control-label">已添加站点列表:</label> <div class="col-sm-9"> <div style="height: 200px; border: 1px solid #e5e6e7;overflow-y: auto;"> <table class="table table-striped table-bordered table-hover table-condensed"> <thead> <tr> <th style="width: 300px;">添加时间</th> <th style="width: 300px;">站点名称</th> <th style="width: 300px;">经纬度</th> <th style="width: 300px;">站点类型</th> <th style="width: 100px;">操作</th> </tr> </thead> <tbody id="site"> @for(obj in siteList){ <tr class="siteClass"> <td> <input type="hidden" id="busId" name="busId" value="${obj.id}"> <input type="hidden" id="time" name="time" value="${obj.insertTime1}">${obj.insertTime1}</td> <td><input type="hidden" id="name" name="name" value="${obj.name}">${obj.name}</td> <td><input type="hidden" id="lonAndLat" name="lonAndLat" value="(${obj.lon},${obj.lat})">(${obj.lon},${obj.lat})</td> @if(obj.type == 1){ <td><input type="hidden" id="siteType" name="siteType" value="1">机场</td> @}else{ <td><input type="hidden" id="siteType" name="siteType" value="2">动车</td> @} <td><button onclick="deleteSub(this)">移除</button></td></td> </tr> @} </tbody> </table> </div> </div> </div> </div> </div> ManagementNTTravel/guns-admin/src/main/webapp/WEB-INF/view/system/tOrderTape/tOrderTape.html
@@ -36,6 +36,7 @@ @} </div> <#table id="TOrderTapeTable"/> <audio id="recording" src="" style="display: none;"></audio> </div> </div> </div> ManagementNTTravel/guns-admin/src/main/webapp/static/modular/system/tOpenCity/tOpenCity_info.js
@@ -112,6 +112,16 @@ sort:$(this).find("input[name*='sort']").val(), }) }); var subArr1=[]; $(".siteClass").each(function () { subArr1.push({ busId:$(this).find("input[name*='busId']").val(), time:$(this).find("input[name*='time']").val(), name:$(this).find("input[name*='name']").val(), lonAndLat:$(this).find("input[name*='lonAndLat']").val(), siteType:$(this).find("input[name*='siteType']").val(), }) }); if(subArr.length <= 0){ Feng.error("请选择经营业务"); return; @@ -137,6 +147,7 @@ }); ajax.set(this.tOpenCityInfoData); ajax.set("businessTypeStr",JSON.stringify(subArr)); ajax.set("sites",JSON.stringify(subArr1)); ajax.set("areaName",provinceValue); ajax.set("cityName",cityValue); ajax.set("provinceName",areaValue); @@ -165,6 +176,16 @@ sort:$(this).find("input[name*='sort']").val(), }) }); var subArr1=[]; $(".siteClass").each(function () { subArr1.push({ busId:$(this).find("input[name*='busId']").val(), time:$(this).find("input[name*='time']").val(), name:$(this).find("input[name*='name']").val(), lonAndLat:$(this).find("input[name*='lonAndLat']").val(), siteType:$(this).find("input[name*='siteType']").val(), }) }); if(subArr.length <= 0){ Feng.error("请选择经营业务"); return; @@ -190,6 +211,7 @@ }); ajax.set(this.tOpenCityInfoData); ajax.set("businessTypeStr",JSON.stringify(subArr)); ajax.set("sites",JSON.stringify(subArr1)); ajax.set("areaName",provinceValue); ajax.set("cityName",cityValue); ajax.set("provinceName",areaValue); @@ -286,7 +308,52 @@ '<td><input type="hidden" id="sort" name="sort" value="'+businessSort+'">' + businessSort + '</td><td><button onclick="deleteSub(this)">移除</button></td></tr>'; $("#coun").append(str); } function addSite(){ var siteName=$("#siteName").val(); var siteType=$("#siteType").val(); var type = siteType; if ("" == siteName){ Feng.info("站点名称不能为空"); return; } if ("" == siteType){ Feng.info("请选择站点类型"); return; } if (siteType == 1){ siteType = "机场" }else{ siteType = "动车" } //获取所有的值 var subArr=[]; $(".siteClass").each(function () { subArr.push({ name:$(this).find("input[name*='name']").val(), time:$(this).find("input[name*='time']").val(), }) }); for(var i=0;i<subArr.length;i++){ var name = subArr[i].name; if (name == siteName) { Feng.info("站点名称已存在,请重新填写"); return; } } var lon = $("#longitude").val(); var lat = $("#latitude").val(); var lonAndLat = "("+lon+","+lat+")"; var str = '<tr class="siteClass">' + '<td><input type="hidden" id="busId" name="busId" value="0">' + '<input type="hidden" id="time" name="time" value="'+getNowFormatDate()+'">' + getNowFormatDate() + '</td>' + '<td><input type="hidden" id="name" name="name" value="'+siteName+'">' + siteName + '</td>' + '<td><input type="hidden" id="lonAndLat" name="lonAndLat" value="'+lonAndLat+'">' + lonAndLat + '</td>' + '<td><input type="hidden" id="siteType" name="siteType" value="'+type+'">' + siteType + '</td>' + '<td><button onclick="deleteSub(this)">移除</button></td></tr>'; $("#site").append(str); } function deleteSub(e) { $(e).parent().parent().remove(); } @@ -307,3 +374,100 @@ var currentdate = year + seperator1 + month + seperator1 + strDate; return currentdate; } var map = new AMap.Map('container', { resizeEnable: true, // 允许缩放 zoom: 15 // 设置地图的缩放级别,0 - 20 }); var marker; //搜索地图 TOpenCityInfoDlg.searchByStationName = function(e,type){ var keyword=""; if(type==2){ keyword = $(e).parent().prev().find("input").val(); }else { if($("#address").val()!=null && $("#address").val()!=''){ keyword = $("#address").val(); } } type=1; AMap.plugin('AMap.Geocoder', function() { var geocoder = new AMap.Geocoder(); console.log(geocoder) console.log(keyword) geocoder.getLocation(keyword, function(status, result) { console.log(status,result) if (status === 'complete' && result.info === 'OK') { // 经纬度 var lng = result.geocodes[0].location.lng; var lat = result.geocodes[0].location.lat; $("#longitude").val(lng) $("#latitude").val(lat) // 地图实例 map = new AMap.Map('container', { resizeEnable: true, // 允许缩放 center: [lng, lat], // 设置地图的中心点 zoom: 15 // 设置地图的缩放级别,0 - 20 }); //地图画点 //addMarker(lng,lat); if(type==1 || type==2){ showInfoClick(); if(lng == null){ }else{ addMarker(lng,lat); } }else{ addMarker(lng,lat); } } else { console.log('定位失败!'); } }); }); } //地图点击事件 function showInfoClick(){ map.on('click', function (e) { addMarker(e.lnglat.getLng(),e.lnglat.getLat()); }); } //删除点 function removeMarkers(){ if(marker!=null){ map.remove(marker); } } // 实例化点标记 function addMarker(lon,lat) { removeMarkers(); marker = new AMap.Marker({ map: map, position: new AMap.LngLat(lon, lat), // 经纬度 }); //加经纬度 $("#lon").val(lon); $("#lat").val(lat); var lnglatXY = [lon, lat];//地图上所标点的坐标 AMap.service('AMap.Geocoder',function() {//回调函数 geocoder = new AMap.Geocoder({ }); geocoder.getAddress(lnglatXY, function (status, result) { if (status === 'complete' && result.info === 'OK') { //获得了有效的地址信息: //即,result.regeocode.formattedAddress // alert(result.regeocode.formattedAddress) //document.getElementById("address").value=result.regeocode.formattedAddress;//将获取到的地址信息赋值给文本框,保存进数据库 var address = result.regeocode.formattedAddress; var city = result.regeocode.addressComponent.city; var province = result.regeocode.addressComponent.province; var district = result.regeocode.addressComponent.district; $("#address").val(address); } else { //获取地址失败 } }); }) } ManagementNTTravel/guns-admin/src/main/webapp/static/modular/system/tOrderTape/tOrderTape.js
@@ -78,9 +78,14 @@ }, {title: '操作', visible: true, align: 'center', valign: 'middle',width:'16%', formatter: function (value, row) { if(row.state == 1) { return '<a href="#" onclick="TOrderTape.orderDetail('+row.orderId+','+row.orderType+')" style="color:cornflowerblue">查看订单</a>' +' ' + '<a href="#" onclick="TOrderTape.openTCharteredServiceDetail('+row.id+')" style="color:cornflowerblue">播放录音</a>' +' ' + '<a href="#" onclick="TOrderTape.playAudio('+row.id+')" style="color:cornflowerblue">播放录音</a>' +' ' + '<a href="#" onclick="TOrderTape.delete('+row.id+')" style="color:cornflowerblue">删除</a>' }else { return '<a href="#" onclick="TOrderTape.orderDetail('+row.orderId+','+row.orderType+')" style="color:cornflowerblue">查看订单</a>' +' ' + '<a href="#" onclick="TOrderTape.delete('+row.id+')" style="color:cornflowerblue">删除</a>' } } } ]; @@ -100,6 +105,23 @@ } }; TOrderTape.playAudio = function (id) { var ajax = new $ax(Feng.ctxPath + "/tOrderTape/getDetailById", function (data) { console.log(data.data) var audio = document.getElementById('recording'); audio.setAttribute("src", data.data.fileLink); if (audio.paused) { audio.play(); // 播放录音 } else { audio.pause(); // 如果正在播放,则暂停 } }, function (data) { console.log(data); }); ajax.set("tOrderTapeId", id); ajax.start(); }; /** * 打开查看订单详情 */