动态批量处理

在项目开发过程中,我们经常遇到需要批量处理的情况,数据是动态的,所以在批量处理的时候最好是只处理改变的那个数据。

如上图,我们更改下拉框的选项,更改某条或者几条数据。

首先我们来看怎么嵌入下拉框:


动态下拉框的生成我们不再写,在第一行我们隐藏了一个<input>标签,这里我们就是通过改变数据,然后获取value来确定几条数据被改变。

 function test() {
        $("#t1>tbody>tr").each(function (i) {
            $("#payment_terms_id" + i).change(function () {
                $("#ss"+i).val("1");
            })
            $("#customer_type_id" + i).change(function () {
                $("#ss"+i).val("1");
            })
        })
    }

然后传入数据到后台时,我们取一个数组存放这些value

var paymentTerms = new Array();
            $("#t1>tbody>tr").each(function (i) {
                var customerID = $(this).data("customerid");
                var paymentTermsID = $(this).find("td:eq(7) > select").val();
                var customerTypeID = $(this).find("td:eq(6) > select").val();
                if( $("#ss"+i).val() >0){
                    paymentTerms.push({
                        customerID: customerID,
                        "paymentTermsID": paymentTermsID,
                        "customerTypeID":customerTypeID
                    });
                }
            });
$.ajax({
                url: "sh/customer_category/paymentTerms",
                type: "post",
                data: {"paymentTerms": JSON.stringify(paymentTerms)},
                dataType: "json",
                traditional: true,
                beforeSend: function () {
                    openLoading();
                },

转到controller层去处理:

@RequestMapping(value = "paymentTerms",method = RequestMethod.POST,produces = ResponseContentType.APPLICATION_JSON)
    @ResponseBody
    public ResponseResult updateCustomerPaymentTerms(String paymentTerms){
        Gson gson = new Gson();
        List<Customer> customers = gson.fromJson(paymentTerms, new TypeToken<List<Customer>>() {}.getType());

serviceImpl层

 @Override
    public int updateCustomerByPaymentTerms(List<Customer> customers) throws Exception {
        int i = 0;
        for (Customer s : customers) {
            i += updateCustomer(s, null);
        }
        return i;
    }

至此完成了批量处理的简单操作。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值