jquery之营销系统(补偿记录)

var appPath = getAppPath();    
$(function(){
  $("#opreateHtml").window("close");
  $("#coupon").show();
  $("#integral").hide();
  $("#addcompensatingContentCoupon").combobox({
        url:appPath+"/page/compensationtypeAct/ecCouponTypeSelect",
        valueField:"id",  
        textField:"text",
        panelHeight:"auto",
        editable:false
    });
  $("#compensatingContent").combobox({
        url:appPath+"/page/compensationtypeAct/ecCouponTypeSelect",
        valueField:"id",  
        textField:"text",
        panelHeight:"auto",
        editable:false
    });
  $("#deliveryGrid").datagrid({
    url:appPath+"/page/compensationtypeAct/getPage",
    height:"full",
    striped:true,
    remoteSort:false,
    pagination:true,
    rownumbers:false,
    singleSelect:false,
    queryParams:getQueryParam(),
    columns:[[
              {field:"opt",title:"操作",width:60,align:"center",
                  formatter:function(value,rowData,rowIndex){
                    var html="<img class=‘op-enable‘ style=‘heigh:50px‘ src=‘"+appPath+"/js/lib/jquery-easyui/themes/icons/cancel.png‘ onClick=‘deletes("+rowData.id+")‘ title=‘删除‘/>";
                    return html;
                  }
               },
              {field:‘giveExcuse‘,title:‘补偿理由‘,width:100,align:‘center‘,sortable:true},
              {field:‘compensatingForm‘,title:‘补偿形式‘,width:100,align:‘center‘,sortable:true,
                  formatter:function(value){
                      if(value=="coupon"){
                          return "优惠券";
                      }else if(value=="integral"){
                          return "积分";
                      }else{
                          return value;
                      }
                  }
              },
              {field:‘compensatingContent‘,title:‘补偿内容‘,width:100,align:‘center‘,sortable:true},
              {field:‘opts‘,title:‘补偿操作‘,width:250,align:‘center‘,sortable:true,
                  formatter:function(value,rowData,rowIndex){
                      return "<label id=‘bcSa"+rowData.id+"‘>&nbsp;<input type=‘inputText‘  id=‘memberIdOrOrderId"+rowData.id+"‘ value=‘请输入会员账号/订单号‘ />&nbsp;" +
                               "<input type=‘button‘  onClick=‘bcSave("+rowData.id+")‘ value=‘补偿‘/></label>" +
                               "<label id=‘bcSh"+rowData.id+"‘><a href=‘javascript:void(0);‘ onclick=‘bcShow("+rowData.id+")‘>补偿</a>&nbsp;</label>";
                  }  
              }
   ]],
   onLoadSuccess: function(data) {
       for (var int = 0; int < data.total; int++) {
          $("#bcSa"+data.rows[int].id).hide();
       }
   },
   toolbar:[
      {
          id:‘btnadd‘,
          text:‘创建补偿类型‘,
          iconCls:‘icon-add‘,
          handler:function(){    
             showWin(null);
          }    
      }
   ]
 });
});

function getQueryParam(){
  var compensationtype =new Object();
      compensationtype.compensatingContent=$("#compensatingContent").combobox("getValue");
      compensationtype.giveExcuse=$.trim($("#giveExcuse").val());
      compensationtype.compensatingForm=$("#compensatingForm").combobox("getValue");
  return compensationtype;
}

function doQuery(){
  $("#deliveryGrid").datagrid(‘load‘,getQueryParam());
}

function deletes(id){
    var ids = id+‘,‘;
    $.messager.confirm(‘提示‘,"确定要删除此数据吗?",function(r){
       if(r){
            $.post(
                   appPath+"/page/compensationtypeAct/deleteIdsLogic",
                   {"ids":ids},
                   function(data){
                     $.messager.alert(‘提示‘,‘删除成功‘,‘‘);
                      doQuery();  
                   });
       }
    });
}

function showWin(){
  if(!checkUserButtonRight(‘compensationtype‘)){
        return ;
  }
  $("#idHidden").val("");
  $("#addcompensatingContentIntegral").val("");
  $("#addcompensatingContentCoupon").combobox("setValue","");
  $("#addgiveExcuse").val("");
  $("#addcompensatingForm").val("");
  var iconStr="icon-add";
  var title="添加补偿类型";
  $(‘#opreateHtml‘).window({
    title:title,
    iconCls:iconStr,
    width:350,
    height:220,
    left:200,
    modal: true,
    shadow: true,
    collapsible:false,
    minimizable:false,
    maximizable:false
  });
  $(‘#opreateHtml‘).window(‘move‘,{top:100});
  $(‘#opreateHtml‘).window(‘open‘);
}

function closeWin(id){
  $(‘#opreateHtml‘).window(‘close‘);
}

function save(){
  var compensationtype=new Object();
  compensationtype.id=$("#idHidden").val();
  if($("#addgiveExcuse").val()==null||$("#addgiveExcuse").val()==""){
      $.messager.alert(‘提示‘,‘请填写补偿理由‘,‘info‘);
      return;
  }
  compensationtype.giveExcuse=$("#addgiveExcuse").val();
  compensationtype.compensatingForm=$(‘input:radio[name="addcompensatingForm"]:checked‘).val();
  if($(‘input:radio[name="addcompensatingForm"]:checked‘).val()=="coupon"){
      if($("#addcompensatingContentCoupon").combobox("getValue")==null||$("#addcompensatingContentCoupon").combobox("getValue")==""){
          $.messager.alert(‘提示‘,‘请选择优惠券‘,‘info‘);
          return;
      }
      compensationtype.compensatingContent=$("#addcompensatingContentCoupon").combobox("getValue");
  }else if($(‘input:radio[name="addcompensatingForm"]:checked‘).val()=="integral"){
      if($("#addcompensatingContentIntegral").val()==null||$("#addcompensatingContentIntegral").val()==""){
          $.messager.alert(‘提示‘,‘请填写积分‘,‘info‘);
          return;
      }
      compensationtype.compensatingContent=$("#addcompensatingContentIntegral").val();
  }
  doAjax({
    url:appPath+‘/page/compensationtypeAct/saveOrUpdate‘,
    type:‘post‘,
    data:compensationtype,
    success:function(data){
      $.messager.alert(‘提示‘,‘保存成功‘,‘info‘);    
      $(‘#opreateHtml‘).window(‘close‘);
      doQuery();
    }
  });
}

function addcompensatingFormShow(type){
    switch(type){
    case "coupon":
        $("#coupon").show();
        $("#integral").hide();
        break;
    case "integral":
        $("#integral").show();
        $("#coupon").hide();
        break;
    default:
         $("#coupon").show();
         $("#integral").hide();
        break;
    }
}

//补偿
function bcSave(id){
    //添加补偿
    var compensatingLog = new Object();
    compensatingLog.compensationtypeId =id;
    compensatingLog.memberId = $("#memberIdOrOrderId"+id).val();
    doAjax({
        url : appPath + ‘/page/compensatingLogAct/save‘,
        type : ‘post‘,
        data : compensatingLog,
        success : function(data) {
            if(data==‘ok‘){
                $.messager.alert(‘提示信息‘, ‘添加成功‘, ‘info‘);
                $("#bcSh"+id).show();
                $("#bcSa"+id).hide();
                $("#memberIdOrOrderId"+id).val("请输入会员账号/订单号");
            }else{
                $.messager.alert(‘提示信息‘, data, ‘info‘);
            }
        }
    });
}

function bcShow(id){
    $("#memberIdOrOrderId"+id).val("请输入会员账号/订单号");
    $("#memberIdOrOrderId"+id).focus(function(){
          $("#memberIdOrOrderId"+id).val("");
    });
    $("#bcSh"+id).hide();
    $("#bcSa"+id).show();
}

//jsp

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<c:set var="ctx" value="${pageContext.request.contextPath}" />
<jsp:include page="/jsp/common/header.jsp"></jsp:include>
<script src="${ctx }/js/promote/compensationtype.js"></script>
<table class="queryTable">
  <tr>
    <td class="queryTitle" width="80px">补偿理由</td>
    <td class="queryContent" ><input class="inputText" type="text" id="giveExcuse" /></td>
    <td class="queryTitle" width="80px">补偿形式</td>
    <td class="queryContent" >
       <select id="compensatingForm" class="easyui-combobox" style="width: 100px" panelHeight="auto">
            <option value>请选择</option>
            <option value="coupon">优惠券</option>
            <option value="integral">积分</option>
        </select>
     </td>
   </tr>
   <tr>
    <td class="queryTitle" width="80px">补偿类型</td>
    <td class="queryContent" ><input class="inputText" type="text" id="compensatingContent" /></td>
    <td class="queryBtnTd" colspan="2"><a href="javascript:void(0)" class="easyui-linkbutton" iconCls="icon-search"  onclick="doQuery()">查&nbsp;&nbsp;询</a></td>
  </tr>
</table>

<table id="deliveryGrid"></table>

<div id="opreateHtml" class="easyui-window" title="" iconCls="icon-edit" style="width:300px; height:220px;text-align:center; background: #fafafa;">
  <div class="easyui-layout" fit="true">
    <div region="center" border="false" style="background:#fff;border:0px solid #ccc;">
       <form>
           <input type="hidden" id="idHidden" name="idHidden" value="" />
           <table class="queryTable" style="width: 300px;margin: auto;margin-top: 10px">
             <tr>
               <td class="queryTitle" width="80px">补偿理由</td>
               <td class="queryContent" ><input class="inputText" type="text" id="addgiveExcuse" /></td>
            </tr>
            <tr>
               <td class="queryTitle" width="80px">补偿形式</td>
               <td class="queryContent" >
                   <input type="radio" id="form1" name="addcompensatingForm"  value="coupon" checked="checked" onclick="addcompensatingFormShow(‘coupon‘)">优惠券&nbsp;&nbsp;
                   <input type="radio" id="form2" name="addcompensatingForm"  value="integral" onclick="addcompensatingFormShow(‘integral‘)">积分
               </td>
            </tr>
            <tr id="coupon">
               <td class="queryTitle" width="80px">选择优惠券</td>
               <td class="queryContent" ><input class="inputText" type="text" id="addcompensatingContentCoupon" /></td>
            </tr>
            <tr id="integral">
               <td class="queryTitle" width="100px">请输入补偿积分</td>
               <td class="queryContent" ><input class="easyui-numberbox" precision="0" type="text"  id="addcompensatingContentIntegral" /></td>
            </tr>
           </table>
       </form>
    </div>
  <div region="south" border="false" style="text-align:center;height:30px;line-height:30px;">
     <a class="easyui-linkbutton" iconCls="icon-ok" href="javascript:void(0);" onclick="save();">保存</a>&nbsp;&nbsp;
     <a class="easyui-linkbutton" iconCls="icon-cancel" href="javascript:void(0);" onclick="closeWin();">关闭</a>
  </div>
</div>
</div>
//java

/**
   *@description 保存或者更新
   */
   @RequestMapping(value="/save")
   @ResponseBody
   public String updateOrSave(HttpServletRequest request,HttpServletResponse response,CompensatingLog compensatingLog)
   {
        Long memberId=0l;
        //会员是否存在(由于输入的可能是会员账号(登录名)或是订单ID)
        String loginName=compensatingLog.getMemberId();
        Member mm=memberCommonService.getMemberByLoginname(loginName);
        OrderInfo o=new OrderInfo();
        try {
            if(mm==null){
                o.setOrderId(new Long(loginName));
                OrderInfo order=compensatingLogService.getOrderObj(o);
                if(order==null){
                    return "不存在此会员或是此订单";
                }else{
                    memberId=order.getMemberId();
                }
            }else{
                memberId=mm.getMemberId();
            }
        } catch (NumberFormatException e) {
            return "不存在此会员或是此订单";
        }
        Compensationtype type=new Compensationtype();
        type.setId(new Long(compensatingLog.getCompensationtypeId()));
        Compensationtype compensationtype=compensationtypeService.getCompensationtype(type);
        //根据补偿ID查询(积分,优惠券)优惠券类型的所有发放批次取都大于三十天中的有限期最短的可用优惠券进行发放
        if(compensationtype.getCompensatingForm().equals("coupon")){
            //发放优惠券调用发放优惠券的接口
            EcCouponPublish ecCouponPublish=new EcCouponPublish();
            ecCouponPublish.setCouponTypeId(new Integer(compensationtype.getCompensatingContent()));
            List<EcCouponPublish> couponList=ecCouponPublishService.getUnUsedEcCouponPublishTime(ecCouponPublish);
            int publishId=0;
            if(couponList.size()>0){
                 publishId=couponList.get(0).getPublishId();
            }else{
                 return "此类型优惠券没有批次大于30天的可用优惠券";
            }
            
            CouponsAssignParam  param = new CouponsAssignParam();
            /*会员id*/
            param.setMemberId(memberId);
            /*批次号*/
            param.setPublishId(publishId);
            /*领取数量*/
            param.setAssignCouponsCount(1);
            /*调用服务  saveCouponsByMemberToPublishId*/
            ServiceMessage<List<EcCoupons>> msg = ecCouponsService.saveCouponsByMemberToPublishId(param);
            if(!msg.getStatus().equals(MsgStatus.NORMAL)){
                logger.error("优惠券SOA服务异常");
                return msg.getMessage();
           }
        }else if(compensationtype.getCompensatingForm().equals("integral")){
            //积分调用积分的接口
            MemberPointsHis mem=new MemberPointsHis();
            mem.setMemberId(memberId);
            mem.setPoints(new Integer(compensationtype.getCompensatingContent()));
            MemberPointsSetting set=new MemberPointsSetting();
            set.setPointsType("manual_points"); //member_points_setting表中的人工添加
            ServiceMessage<MemberPointsHis> msgRes=memberPointHisService.changePointsNoRankId(mem, set); //添加积分
            if(!msgRes.getStatus().equals(MsgStatus.NORMAL)){
                logger.error("积分SOA服务异常");
                return "补偿积分添加失败";
           }
        }
        String userId=request.getSession().getAttribute("userId").toString();
        super.bindingProperty(compensatingLog, userId);
        compensatingLog.setMemberId(memberId.toString());
        compensatingLogService.save(compensatingLog);
        return "ok";
   }
}

时间: 2024-10-10 08:19:37

jquery之营销系统(补偿记录)的相关文章

jquery之营销系统(会员促销)

var appPath = getAppPath();var cnt = 0;var loadCnt = 0;$(function() {    $("#opreateHtml").window("close");    $("#opreateHtmlGoods").window("close");    $("#opreateHtmlCategory").window("close")

jquery之营销系统

// //////////////////////////优惠券开始////////////////////////////// 给附加条件选择框添加事件function inputFuJia() {    hideLable();    $.each($("input[id^='fujia_']"), function(i, lable) {        $(lable).click(function() {            if (this.name == 'mian')

升讯威微信营销系统开发实践:(2)功能设计与架构设计

微信开发系列教程,将以一个实际的微信平台项目为案例,深入浅出的讲解微信开发.应用各环节的实现方案和技术细节. 本系列教程的最终目标是完成一个功能完善并达到高可用性能指标的微信管理软件,所以除了与微信本身紧密相关的对接和应用技术,还会讲到其它相关的所有知识点,从技术选型,架构设计,数据层的设计,API的设计,数据传输协议的设计,再到细节的前端的设计及技术应用,后台开发中的各方面技术,都会涉及.同时,在架构设计中,会考虑到运维领域的诸多问题,会涉及到部署环节中负载均衡及CDN分发,服务器流量及带宽控

AOFAX外呼营销系统外呼系统语音外呼

近日,广州某大型图书馆携手深圳AOFAX呼叫中心技术公司达成电话客服系统的建设方案的统一意见,并由AOFAX提供现场部署服务,目前系统已经正常运行. 为了让图书馆工作人员给读者提供高质量微笑服务,负责人李部长从2014年5月开始着手招标文档和公示,经过几个月的投标和竞标工作,AOFAX呼叫中心技术公司脱颖而出,各项功能严格匹配招标文书,并以最佳性价比获得各方的好评. 时代的步伐像车轮般循序渐进,新事物也必然代替旧事物. 传统交换机和热线电话的局限性越发明显,取而代之的是集团电话.程控交换机.企业

2015-10-5系统崩溃记录

2015-10-5系统崩溃记录 在3系统级别切换至5系统级别的时候,出现了报错 [[email protected] linux]# init 5 Calling the system activity data collector (sadc)- 并且在切换到3系统级别的时候也是出现了同样的提示 Calling the system activity data collector (sadc)- 立刻拍摄当前系统快照,并且恢复上一次系统快照,进行系统级别切换的操作 之前快照版本的系统没有任何问

微信营销系统,谁主浮沉?

导读 微商的兴起也让传统企业变得蠢蠢欲动,很多企业甚至是个人,都有微信公众平台,都开通微信服务号,别人都利用微信赚了大钱,自己不做微商会显得 格格不入,当然,在庞大的市场需求下,部分企业也开始做起了微信营销平台和微信营销系统的开发,也就是微信营销CMS,简单点来说就是企业可以利用这个平 台做微信营销,相当于网站的后台CMS管理系统.如今网络上发展得比较成熟的几家做微信营销CMS系统有小猪CMS和微盟等,而小猪 CMS(www.pigcms.com)的发展更具特色. 草根站长失利,依靠微信发家 据

微群控新媒体营销系统硬件搭建细节问题

现在朋友圈比较流行的微群控新媒体营销系统看起来很好,但是实际上在前期硬件搭建的时候,还是需要注意很多细节问题的,要不然,可能最后系统不好运行起来,也不好实现自己想要的效果,在这里,奥创软件研究院为大家分析下一些注意事项. 首先要注意的,就是USB hub 硬件设备的选择,最好要选择传输稳定的,不管是USB 3.0 或者2.0都可以,但是一定要稳定,而且最好是独立供电的,这样当你通过电脑连接50个甚至100个手机的时候,就可以避免由于电压不够导致的经常断线等问题. 接下来要注意的,就是电脑主板的选

MiniCRT 64位 linux 系统移植记录:64位gcc的几点注意

32位未修改源码与修改版的代码下载: git clone git@github.com:youzhonghui/MiniCRT.git MiniCRT 64位 linux 系统移植记录 MiniCRT是<程序员的自我修养:链接,转载于库>的作者俞甲子写的小型的C运行时库.里面提供了printf,malloc,free,fopen等比较常用的函数实现. 之所以要捣鼓这个东西,是因为要自己写一个链接器,链接标准库的时候出了麻烦,一些符号在整个libc中都找不到定义,标准库又太大,研究源码,翻文档都

升讯威微信营销系统开发实践:(3)中控服务器的设计 .Net 还是 Java?

.Net 还是 Java?  :) 最近园子里又出现了.Net 和 Java 的口水贴,如果你觉得本文的内容根本就是 a piece of cake,不值一提,轻轻松松就能码出可靠健壮的实现,或许还可以讨论下.Net 和 Java 的问题,否则我想你还是歇歇吧,对你来说都是一样的,用好一样就行了,否则 .Net 1.1 都能完爆你. .Net的应用领域没有有些人想的那么窄,只能说你眼界实在是太浅了..Net在国外是否受待见?自己去国外招聘网站看一看就是了,又没被墙的,呵呵. 技术不过关不要赖平台