Commit 1db73949 by chongli

修改开单人信息

parent 69138115
...@@ -55,6 +55,7 @@ import com.ctrip.fun.admin.service.golf.CourseProductService; ...@@ -55,6 +55,7 @@ import com.ctrip.fun.admin.service.golf.CourseProductService;
import com.ctrip.fun.admin.service.golf.CourseResourceService; import com.ctrip.fun.admin.service.golf.CourseResourceService;
import com.ctrip.fun.admin.service.golf.CourseService; import com.ctrip.fun.admin.service.golf.CourseService;
import com.ctrip.fun.admin.service.golf.GameService; import com.ctrip.fun.admin.service.golf.GameService;
import com.ctrip.fun.admin.service.market.CommuneExtService;
import com.ctrip.fun.admin.service.market.EventGameGroupService; import com.ctrip.fun.admin.service.market.EventGameGroupService;
import com.ctrip.fun.admin.service.market.EventGamePlayerService; import com.ctrip.fun.admin.service.market.EventGamePlayerService;
import com.ctrip.fun.admin.service.membership.CardTypeService; import com.ctrip.fun.admin.service.membership.CardTypeService;
...@@ -64,6 +65,7 @@ import com.ctrip.fun.admin.service.notification.FollowingService; ...@@ -64,6 +65,7 @@ import com.ctrip.fun.admin.service.notification.FollowingService;
import com.ctrip.fun.admin.service.operation.SupplierService; import com.ctrip.fun.admin.service.operation.SupplierService;
import com.ctrip.fun.admin.service.order.OpCourseOrderService; import com.ctrip.fun.admin.service.order.OpCourseOrderService;
import com.ctrip.fun.admin.service.order.OpTourOrderService; import com.ctrip.fun.admin.service.order.OpTourOrderService;
import com.ctrip.fun.admin.service.order.OpVoucherOrderService;
import com.ctrip.fun.admin.service.order.OrderCustomerService; import com.ctrip.fun.admin.service.order.OrderCustomerService;
import com.ctrip.fun.admin.service.order.market.AdvertiserService; import com.ctrip.fun.admin.service.order.market.AdvertiserService;
import com.ctrip.fun.admin.service.order.market.CampaignService; import com.ctrip.fun.admin.service.order.market.CampaignService;
...@@ -126,6 +128,7 @@ import com.ctrip.fun.common.vo.order.CustomerBean; ...@@ -126,6 +128,7 @@ import com.ctrip.fun.common.vo.order.CustomerBean;
import com.ctrip.fun.common.vo.order.EventActivityOrderProcessBean; import com.ctrip.fun.common.vo.order.EventActivityOrderProcessBean;
import com.ctrip.fun.common.vo.order.EventCustomerInfoBean; import com.ctrip.fun.common.vo.order.EventCustomerInfoBean;
import com.ctrip.fun.common.vo.order.EventCustomerInfoQuery; import com.ctrip.fun.common.vo.order.EventCustomerInfoQuery;
import com.ctrip.fun.common.vo.order.OpOrderQuery;
import com.ctrip.fun.common.vo.order.OrderProcessEnum; import com.ctrip.fun.common.vo.order.OrderProcessEnum;
import com.ctrip.fun.common.vo.order.OrderProcessLogBean; import com.ctrip.fun.common.vo.order.OrderProcessLogBean;
import com.ctrip.fun.common.vo.order.TourOrderListBean; import com.ctrip.fun.common.vo.order.TourOrderListBean;
...@@ -163,6 +166,7 @@ import com.ctrip.fun.common.vo.statistics.query.OrderStatisticsByCourseIdQuery; ...@@ -163,6 +166,7 @@ import com.ctrip.fun.common.vo.statistics.query.OrderStatisticsByCourseIdQuery;
import com.ctrip.fun.common.vo.statistics.query.OrderStatisticsQuery; import com.ctrip.fun.common.vo.statistics.query.OrderStatisticsQuery;
import com.ctrip.fun.common.vo.tour.TourBasicBean; import com.ctrip.fun.common.vo.tour.TourBasicBean;
import com.ctrip.fun.common.vo.tour.TourBasicQuery; import com.ctrip.fun.common.vo.tour.TourBasicQuery;
import com.ctrip.fun.common.vo.user.ActiveCustomerQuery;
import com.ctrip.fun.common.vo.user.OutsideUserBean; import com.ctrip.fun.common.vo.user.OutsideUserBean;
import com.ctrip.fun.common.vo.user.TransferOutsideUserAmtBean; import com.ctrip.fun.common.vo.user.TransferOutsideUserAmtBean;
import com.ctrip.fun.common.vo.user.UserBean; import com.ctrip.fun.common.vo.user.UserBean;
...@@ -254,6 +258,12 @@ public class JsonController { ...@@ -254,6 +258,12 @@ public class JsonController {
@Autowired @Autowired
private VoucherShareLogService voucherShareLogService = null; private VoucherShareLogService voucherShareLogService = null;
@Autowired
private CommuneExtService communeExtService = null;
@Autowired
private OpVoucherOrderService opVoucherOrderService = null;
@Value("${imageEndpoint}") @Value("${imageEndpoint}")
private String imageEndpoint; private String imageEndpoint;
...@@ -1459,6 +1469,39 @@ public class JsonController { ...@@ -1459,6 +1469,39 @@ public class JsonController {
} }
return response; return response;
} }
@RequestMapping(value = "/activeCustomer/{activeCustomerId}/updateOpenOrderPerson", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.OK)
@ResponseBody
public Response<UserExtBean> updateActiveCustomerSales(HttpServletRequest request,@PathVariable Integer activeCustomerId,@RequestParam String recommendPhone) {
Response<UserExtBean> response = new Response<UserExtBean>();
response.setStatus(ResponseStatusEnum.SUCCESS.getValue());
response.setMessage(ResponseStatusEnum.SUCCESS.getMsg());
ActiveCustomerQuery query = new ActiveCustomerQuery();
query.setId(activeCustomerId);
query.setSaleMobile(recommendPhone);
communeExtService.updateOpenOrderPerson(request.getAttribute("userName").toString(),query);
response.setBody(null);
return response;
}
@RequestMapping(value = "/voucherOrder/{voucherOrderId}/updateOpenOrderPerson", method = RequestMethod.POST)
@ResponseStatus(HttpStatus.OK)
@ResponseBody
public Response<UserExtBean> updateVoucherOrderSales(HttpServletRequest request,@PathVariable Integer voucherOrderId,@RequestParam String recommendPhone) {
Response<UserExtBean> response = new Response<UserExtBean>();
response.setStatus(ResponseStatusEnum.SUCCESS.getValue());
response.setMessage(ResponseStatusEnum.SUCCESS.getMsg());
OpOrderQuery query = new OpOrderQuery();
query.setOrderId(voucherOrderId);
query.setRecommendPhone(recommendPhone);
opVoucherOrderService.updateOpenOrderPerson(request.getAttribute("userName").toString(), query);
response.setBody(null);
return response;
}
@RequestMapping(value = "/advertisement/{pageId}", method = RequestMethod.GET) @RequestMapping(value = "/advertisement/{pageId}", method = RequestMethod.GET)
@ResponseStatus(HttpStatus.OK) @ResponseStatus(HttpStatus.OK)
@ResponseBody @ResponseBody
......
...@@ -508,4 +508,20 @@ public class CommuneExtService extends BaseService { ...@@ -508,4 +508,20 @@ public class CommuneExtService extends BaseService {
} }
public Response<Object> updateOpenOrderPerson(String userId,ActiveCustomerQuery params) {
String uri = super.getServiceUri("uri.communeExt.activeCustomer.updateOpenOrderPerson");
Request<ActiveCustomerQuery> request = new Request<ActiveCustomerQuery>(userId, params);
HttpEntity<Request<ActiveCustomerQuery>> entity = new HttpEntity<Request<ActiveCustomerQuery>>(request);
Response<Object> response = super.exchange(uri, HttpMethod.POST, entity,
new ParameterizedTypeReference<Response<Object>>() {
}).getBody();
return response;
}
} }
...@@ -45,6 +45,24 @@ public class OpVoucherOrderService extends AbstractOpOrderService<VoucherOrderPr ...@@ -45,6 +45,24 @@ public class OpVoucherOrderService extends AbstractOpOrderService<VoucherOrderPr
} }
return responseBean; return responseBean;
} }
public Integer updateOpenOrderPerson(String userId,OpOrderQuery query) {
String uri = super.getServiceUri("uri.voucherOrder.updateOpenOrderPerson");
Integer result = null;
Request<OpOrderQuery> request = new Request<OpOrderQuery>(userId, query);
HttpEntity<Request<OpOrderQuery>> entity = new HttpEntity<Request<OpOrderQuery>>(request);
Response<Integer> response = super.exchange(uri, HttpMethod.POST, entity,
new ParameterizedTypeReference<Response<Integer>>() {
}).getBody();
if (response.getStatus() == 0) {
result = response.getBody();
} else {
logger.error(String.format("[获取订单列表] status: %d, msg: %s", response.getStatus(), response.getMessage()));
}
return result;
}
@Override @Override
public OpVoucherOrderBean getDetail(String userId, Integer orderId) { public OpVoucherOrderBean getDetail(String userId, Integer orderId) {
......
...@@ -67,6 +67,8 @@ uri.order.getOrderStatusFromCtrip=/fun-golf-service/{orderType}/getOrderStatusFr ...@@ -67,6 +67,8 @@ uri.order.getOrderStatusFromCtrip=/fun-golf-service/{orderType}/getOrderStatusFr
uri.order.updateOnlineOrderFlag=/fun-golf-service/{orderType}/updateOnlineOrderFlag uri.order.updateOnlineOrderFlag=/fun-golf-service/{orderType}/updateOnlineOrderFlag
uri.order.updateOrderItemSupplier=/fun-golf-service/{orderType}/updateOrderItemSupplier uri.order.updateOrderItemSupplier=/fun-golf-service/{orderType}/updateOrderItemSupplier
# tourOrder
uri.voucherOrder.updateOpenOrderPerson=/fun-golf-service/voucherOrder/updateOpenOrderPerson
# tourOrder # tourOrder
uri.tourOrder.changeCustomerInfo=/fun-golf-service/tourOrder/changeCustomerInfo uri.tourOrder.changeCustomerInfo=/fun-golf-service/tourOrder/changeCustomerInfo
...@@ -489,6 +491,7 @@ uri.communeExt.importCommuneExts=/fun-golf-service/communeExt/importCommuneExts ...@@ -489,6 +491,7 @@ uri.communeExt.importCommuneExts=/fun-golf-service/communeExt/importCommuneExts
uri.communeExt.activeCustomer.list=/fun-golf-service/activeCustomer/list uri.communeExt.activeCustomer.list=/fun-golf-service/activeCustomer/list
uri.communeExt.activeCustomer.updateState=/fun-golf-service/activeCustomer/updateState uri.communeExt.activeCustomer.updateState=/fun-golf-service/activeCustomer/updateState
uri.communeExt.activeCustomer.updateOpenOrderPerson=/fun-golf-service/activeCustomer/updateOpenOrderPerson
......
...@@ -13,6 +13,69 @@ $("#communeBtn").click(function(){ ...@@ -13,6 +13,69 @@ $("#communeBtn").click(function(){
sendRequest(params); sendRequest(params);
}); });
function changeMobilePhoneToEdit(orderId){
$("#activeCustomerId").val(orderId);
$("#tableList").empty();
$("#changeMobilePhoneToEdit").modal('show');
}
function queryMobilePhoneInModal(){
var recommendPhone = $("#courseSelector").find("input[name=recommendPhone]").val();
if(recommendPhone==""){
alert("请输入开单人手机号");
return
}
$.ajax({
url: "/j/getUserInfoByPhone",
type: "get",
data: {
mobilePhone: recommendPhone
},
success: function (obj) {
var source = $("#table_course").html();
var template = Handlebars.compile(source);
$('#tableList').html(template(obj.body))
}
});
}
function updateMobilePhone(){
var activeCustomerId = $("#activeCustomerId").val();
var recommendPhone = $("#courseSelector").find("input[name=recommendPhone]").val();
$('#changeMobilePhoneToEdit').modal('hide');
jQuery.ajax({
type:"POST",
contentType:"application/x-www-form-urlencoded",
url:"/j/activeCustomer/" + activeCustomerId + "/updateOpenOrderPerson",
data:{
recommendPhone:recommendPhone.trim()
},
success:function(data){
data = eval(data);
if(data.status == 0){
alert("修改成功");
}else{
alert("修改失败!" + data.message);
}
},
error:function(){
alert("修改失败!");
}
});
}
var openInNewTab = function(url) { var openInNewTab = function(url) {
var a = document.createElement("a"); var a = document.createElement("a");
a.setAttribute("href", url); a.setAttribute("href", url);
...@@ -131,7 +194,7 @@ $('#communeNoModal').on('hidden.bs.modal', function (e) { ...@@ -131,7 +194,7 @@ $('#communeNoModal').on('hidden.bs.modal', function (e) {
</td> </td>
<td>${item.auditUser!}</td> <td>${item.auditUser!}</td>
<td> <td>
<a href="${item.picUrl!}" target="_blank">凭据</a>&nbsp; <a href="${item.picUrl!}" target="_blank">凭据</a>&nbsp; <a href="javascript:void(0);" target="_blank" onclick="changeMobilePhoneToEdit('${item.id!}')">修改开单人</a>&nbsp;
<#if (((item.auditState/128)?floor) %2) == 1> <#if (((item.auditState/128)?floor) %2) == 1>
<#elseif item.auditState == 1> <#elseif item.auditState == 1>
<a href="#" onclick="updateState('${item.id!}',2);">确认收款</a>&nbsp; <a href="#" onclick="updateState('${item.id!}',2);">确认收款</a>&nbsp;
...@@ -196,4 +259,49 @@ $('#communeNoModal').on('hidden.bs.modal', function (e) { ...@@ -196,4 +259,49 @@ $('#communeNoModal').on('hidden.bs.modal', function (e) {
</button> </button>
</div> </div>
</div> </div>
<div class="modal hide fade" id="changeMobilePhoneToEdit">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>修改开单人</h3>
</div>
<div class="modal-body" id='courseSelector'>
<div class="input-append">
<input type="hidden" id="activeCustomerId" value="111111111111111111" />
<input type="text" name="recommendPhone" value="" placeholder="开单人手机号" class="input-medium" autocomplete="off"/>
<button class="btn" data-toggle="modal" onclick="queryMobilePhoneInModal()">开单人信息确认</button> <button style="margin-left:50px;" class="btn" data-toggle="modal" onclick="updateMobilePhone()">确认修改</button>
</div>
<table class="table table-bordered table-striped">
<tbody id="tableList">
</tbody>
</table>
<div class="pagination pagination-mini">
<p style="color:red;">
1. 请先核实开单人信息再确认
</p>
</div>
</div>
</div>
<script id="table_course" type="text/x-handlebars-template">
<tr>
<td>用户名:{{userName}}</td> <td>性别:{{gender}}</td>
</tr>
<tr>
<td>生日:{{birth}}</td> <td>手机号归属地:{{city}} {{province}}</td>
</tr>
<tr>
<td>UID:<a href="/system/user/{{uid}}/detailByUid" target="_Blank" >{{uid}}</a></td> <td>余额:{{prePayCardAmount}}</td>
</tr>
<tr>
<td>注册时间:{{registerTime}}</td> <td>昵称:{{umNickName}}</td>
</tr>
<tr>
<td>邮箱:{{email}}</td> <td>最后登录时间:{{lastLoginTime}}</td>
</tr>
</script>
</@com.layout> </@com.layout>
\ No newline at end of file
<#include "../common/pageJsContent.ftl"/> <#assign pageJsContent>
<script>
function changeMobilePhoneToEdit(voucherOrderId){
$("#voucherOrderId").val(voucherOrderId);
$("#tableList").empty();
$("#changeMobilePhoneToEdit").modal('show');
}
function queryMobilePhoneInModal(){
var recommendPhone = $("#courseSelector").find("input[name=recommendPhone]").val();
if(recommendPhone==""){
alert("请输入开单人手机号");
return
}
$.ajax({
url: "/j/getUserInfoByPhone",
type: "get",
data: {
mobilePhone: recommendPhone
},
success: function (obj) {
var source = $("#table_course").html();
var template = Handlebars.compile(source);
$('#tableList').html(template(obj.body))
}
});
}
function updateMobilePhone(){
var voucherOrderId = $("#voucherOrderId").val();
var recommendPhone = $("#courseSelector").find("input[name=recommendPhone]").val();
$('#changeMobilePhoneToEdit').modal('hide');
jQuery.ajax({
type:"POST",
contentType:"application/x-www-form-urlencoded",
url:"/j/voucherOrder/" + voucherOrderId + "/updateOpenOrderPerson",
data:{
recommendPhone:recommendPhone.trim()
},
success:function(data){
data = eval(data);
if(data.status == 0){
alert("修改成功");
}else{
alert("修改失败!" + data.message);
}
},
error:function(){
alert("修改失败!");
}
});
}
</script>
</#assign>
<#assign pageCssContent>
<style>
.table th, .table td{ text-align:center;vertical-align:middle;}
.widthShow {
width: 1100px;
}
</style>
</#assign>
<@com.layout title="全部订单" module="voucherOrder" current="list_all" pageJs=pageJsContent> <@com.layout title="全部订单" module="voucherOrder" current="list_all" pageJs=pageJsContent>
<#include "../common/voucherOrderSearchForm.ftl"/> <#include "../common/voucherOrderSearchForm.ftl"/>
<table class="table table-bordered table-striped table-font"> <table class="table table-bordered table-striped table-font">
...@@ -12,6 +79,7 @@ ...@@ -12,6 +79,7 @@
<th>订单来源</th> <th>订单来源</th>
<th>推荐人</th> <th>推荐人</th>
<th>推荐人手机号</th> <th>推荐人手机号</th>
<th colspan=1>操作</th>
</tr> </tr>
<#list list as item> <#list list as item>
...@@ -25,6 +93,7 @@ ...@@ -25,6 +93,7 @@
<td>${item.platform!}</td> <td>${item.platform!}</td>
<td>${item.recommendUserName!}</td> <td>${item.recommendUserName!}</td>
<td>${item.recommendPhone!}</td> <td>${item.recommendPhone!}</td>
<td><a href="javascript:void(0);" target="_blank" onclick="changeMobilePhoneToEdit('${item.orderId!}')">修改开单人</a>&nbsp;</td>
</tr> </tr>
</#list> </#list>
...@@ -44,4 +113,49 @@ ...@@ -44,4 +113,49 @@
<@paginator.statistics /> <@paginator.statistics />
</div> </div>
</div> </div>
<div class="modal hide fade" id="changeMobilePhoneToEdit">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3>修改开单人</h3>
</div>
<div class="modal-body" id='courseSelector'>
<div class="input-append">
<input type="hidden" id="voucherOrderId" value="111111111111111111" />
<input type="text" name="recommendPhone" value="" placeholder="开单人手机号" class="input-medium" autocomplete="off"/>
<button class="btn" data-toggle="modal" onclick="queryMobilePhoneInModal()">开单人信息确认</button> <button style="margin-left:50px;" class="btn" data-toggle="modal" onclick="updateMobilePhone()">确认修改</button>
</div>
<table class="table table-bordered table-striped">
<tbody id="tableList">
</tbody>
</table>
<div class="pagination pagination-mini">
<p style="color:red;">
1. 请先核实开单人信息再确认
</p>
</div>
</div>
</div>
<script id="table_course" type="text/x-handlebars-template">
<tr>
<td>用户名:{{userName}}</td> <td>性别:{{gender}}</td>
</tr>
<tr>
<td>生日:{{birth}}</td> <td>手机号归属地:{{city}} {{province}}</td>
</tr>
<tr>
<td>UID:<a href="/system/user/{{uid}}/detailByUid" target="_Blank" >{{uid}}</a></td> <td>余额:{{prePayCardAmount}}</td>
</tr>
<tr>
<td>注册时间:{{registerTime}}</td> <td>昵称:{{umNickName}}</td>
</tr>
<tr>
<td>邮箱:{{email}}</td> <td>最后登录时间:{{lastLoginTime}}</td>
</tr>
</script>
</@com.layout> </@com.layout>
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 sign in to comment