销售订单:选择 物料后,根据 主表客户 带出税率,并重算记录中的数量、单价、含税单价、金额、价税合计
2个文件已修改
73 ■■■■ 已修改文件
WebTM/Properties/PublishProfiles/JFTM.pubxml.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/views/销售管理/销售订单/Add_Edit_Xs_SeOrderBillList.html 71 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebTM/Properties/PublishProfiles/JFTM.pubxml.user
@@ -4704,7 +4704,7 @@
      <publishTime>11/03/2023 21:45:51</publishTime>
    </File>
    <File Include="views/销售管理/销售订单/Add_Edit_Xs_SeOrderBillList.html">
      <publishTime>11/08/2023 12:11:40</publishTime>
      <publishTime>11/08/2023 13:15:40</publishTime>
    </File>
    <File Include="views/销售管理/销售订单/Xs_SeOrderBillDyColList.html">
      <publishTime>04/11/2023 16:34:43</publishTime>
WebTM/views/ÏúÊÛ¹ÜÀí/ÏúÊÛ¶©µ¥/Add_Edit_Xs_SeOrderBillList.html
@@ -1642,15 +1642,64 @@
                                        return layer.msg("请选择一条数据");
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "HMaterID": checkStatus.data[0].HItemID
                                        , "物料代码": checkStatus.data[0].HNumber
                                        , "物料名称": checkStatus.data[0].HName
                                        , "规格型号": checkStatus.data[0].HModel
                                        , "HUnitID": checkStatus.data[0].HUnitID
                                        , "计量单位": checkStatus.data[0].HUnitName
                                    })
                                    //数值格式校验工具
                                    var ref = /^\d+(\.\d+)?$/;          //非负数正则表达式
                                    var temp = "";
                                    //获取选择物料前后的税率
                                    var value = subHTaxRate;                    //选择物料后根据客户得到的税率
                                    var oldText = obj.data.HTaxRate;            //该记录中原有的税率
                                    //税率数据格式校验
                                    temp = value + "";
                                    if (!ref.test(temp)) {
                                        //税率恢复到编辑前,设置物料等信息
                                        obj.update({
                                            HTaxRate: oldText
                                            , "HMaterID": checkStatus.data[0].HItemID
                                            , "物料代码": checkStatus.data[0].HNumber
                                            , "物料名称": checkStatus.data[0].HName
                                            , "规格型号": checkStatus.data[0].HModel
                                            , "HUnitID": checkStatus.data[0].HUnitID
                                            , "计量单位": checkStatus.data[0].HUnitName
                                        });
                                        table.render(option);
                                        layer.msg("获取到的税率不合法,已自动变更为原有税率!");
                                    } else {
                                        //数据校验合格,重算记录
                                        var HQty = obj.data.HQty * 1;                   //数量
                                        var HPrice = obj.data.HPrice * 1;               //单价
                                        var HTaxRate = value * 0.01;                       //税率
                                        /*var HDiscountRate = obj.data.HDiscountRate * 1; //折扣率*/
                                        var HTaxPrice = HPrice * (1 + HTaxRate);        //含税单价=单价*(1+税率)
                                        /*var HRelTaxPrice = HTaxPrice * HDiscountRate;   //实际含税单价=含税单价*折扣率*/
                                        //折扣额 = å«ç¨Žå•ä»· * (1 - æŠ˜æ‰£çއ) * æ•°é‡
                                        var HMoney = HQty * HPrice;                     //金额=数量*单价
                                        var HTaxMoney = HMoney * HTaxRate;              //税额=金额*税率
                                        var HlineTotal = HMoney + HTaxMoney;            //价税合计=金额+税额
                                        //同步更新表格和缓存对应的值
                                        obj.update({
                                            HQty: HQty
                                            , HPrice: HPrice
                                            , HTaxRate: HTaxRate * 100
                                            , HTaxPrice: HTaxPrice
                                            , HMoney: HMoney
                                            , HlineTotal: HlineTotal
                                            , "HMaterID": checkStatus.data[0].HItemID
                                            , "物料代码": checkStatus.data[0].HNumber
                                            , "物料名称": checkStatus.data[0].HName
                                            , "规格型号": checkStatus.data[0].HModel
                                            , "HUnitID": checkStatus.data[0].HUnitID
                                            , "计量单位": checkStatus.data[0].HUnitName
                                        });
                                        table.render(option);
                                    }
                                    layer.close(index);//关闭弹窗
                                }
                            })
@@ -1828,6 +1877,9 @@
            //以上是layui模块
        });
        //子表税率,根据客户带出
        var subHTaxRate = 0;
        // åŸºç¡€èµ„料返回数据
        function GetHEmpValue(obj)  //返回业务员
        {
@@ -1875,6 +1927,7 @@
                        $("#HSSID").val(data.HSSID);
                        $("#HSSName").val(data.HSSName);
                        subHTaxRate = data.HTaxRate;
                    } else {
                        layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });