yangle
2024-09-10 0b426ccbc9f26d842c173fe677c0ea6a57940a0a
WebTM/views/ÏúÊÛ¹ÜÀí/Ó¦ÊÕµ¥/Xs_ReceivableBill.html
@@ -92,7 +92,7 @@
                                                <input type="hidden" name="HMainSourceInterID" id="HMainSourceInterID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <input type="hidden" name="HMainSourceEntryID" id="HMainSourceEntryID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <input type="hidden" name="HMainSourceBillType" id="HMainSourceBillType" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="text" name="HMainSourceBillNo" id="HMainSourceBillNo" class="layui-input" value="" style="float: left; width: 150px; background-color: #efefef4d;" readonly>
                                                <input type="text" name="HMainSourceBillNo" id="HMainSourceBillNo" class="layui-input" value="" style="float: left; width: 150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HMainSource" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
@@ -580,6 +580,339 @@
            });
            //#endregion
            //#region å›žè½¦é€‰æ‹©æºå•
            $('#HMainSourceBillNo').on('keydown', function (event) {
                var HSourceBillNo = $('#HMainSourceBillNo').val();//(源单单据号)
                if (event.keyCode == 13) {
                    var ajaxLoad = layer.load();
                    var url;
                    //判断文本框是否有数据    new
                    if (HSourceBillNo == "") {
                        return;
                    }
                    if ($("#BillType").val() == "1401") {
                        //源单类型是销售订单
                        url = "/Xs_SeOrderBill/PushList";
                    } else if ($("#BillType").val() == "1205") {
                        //源单类型是销售出库单
                        url = "/Kf_SellOutBill/PushList";
                    }
                    $.ajax({
                        url: GetWEBURL() + url,
                        type: "GET",
                        data: { "HBillNo": HSourceBillNo, "user": sessionStorage["HUserName"] },
                        success: function (result) {
                            if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                                var dataArray = result.data;
                                if ($("#BillType").val() == "1401") {
                                    form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                                        "HMainSourceInterID": "0"
                                        , "HMainSourceEntryID": "0"
                                        /*, "HMainSourceBillNo": ""*/
                                        , "HMainSourceBillType": $("#BillType").val()
                                        , "HDeptID": dataArray[0].HDeptID
                                        , "HDeptName": dataArray[0].部门
                                        , "HMangerID": dataArray[0].HManagerID
                                        , "HMangerName": dataArray[0].主管
                                        , "HEmpID": dataArray[0].HEmpID
                                        , "HEmpName": dataArray[0].业务员
                                        , "HCusID": dataArray[0].HCusID
                                        , "HCusName": dataArray[0].客户
                                        , "HCurID": dataArray[0].HCurID
                                        , "HCurName": dataArray[0].币别
                                        , "HExRate": dataArray[0].汇率
                                        , "HSSID": dataArray[0].HSSID
                                        , "HSSName": dataArray[0].结算方式
                                        , "HSellSID": dataArray[0].HSellSID
                                        , "HSellSName": dataArray[0].销售方式
                                    });
                                    if ($("#HPriceType").val() == "成本价") {
                                        //子表成本价Entry  èµ‹å€¼
                                        var rowdataEntry = [];
                                        for (var i = 0; i < dataArray.length; i++) {
                                            var HQty = dataArray[i].数量 - dataArray[i].关联数量;                           //数量
                                            var HPrice = dataArray[i].HNoTaxCost;               //成本价
                                            var HMoney = HQty * HPrice;                     //金额=数量*单价
                                            var HTaxRate = dataArray[i].税率 * 0.01;           //税率
                                            var HTaxMoney = Number((HMoney * HTaxRate));         //税额=金额*税率
                                            var HlineTotal = HMoney + HTaxMoney;            //价税合计=金额+税额
                                            var HExRate = $("#HExRate").val();                      //汇率
                                            var HlineTotalBB = Number(((HMoney + HTaxMoney) * HExRate));      //本位币价税合计=(税额+金额)*汇率
                                            var HMoneyBB = HMoney * HExRate;
                                            rowdataEntry.push(
                                                {
                                                    "HMaterID": dataArray[i].HMaterID
                                                    , "物料代码": dataArray[i].物料代码
                                                    , "物料名称": dataArray[i].物料名称
                                                    , "规格型号": dataArray[i].规格型号
                                                    , "HUnitID": dataArray[i].HUnitID
                                                    , "计量单位": dataArray[i].计量单位
                                                    , "HQty": dealDoubleToFixed(HQty, 1)
                                                    , "HPrice": dealDoubleToFixed(dataArray[i].HNoTaxCost, 3)
                                                    , "HTaxPrice": dealDoubleToFixed(dataArray[i].HTaxCost, 3)
                                                    , 'HDiscountRate': "0"                                                     //
                                                    , 'HRelTaxPrice': "0"
                                                    , "HTaxRate": dataArray[i].税率
                                                    , 'HTaxMoney': dealDoubleToFixed(HTaxMoney, 2)                                                         //
                                                    , "HMoney": dealDoubleToFixed(HMoney, 2)
                                                    , 'HMoneyBB': dealDoubleToFixed(HMoneyBB, 2)
                                                    , 'HlineTotal': dealDoubleToFixed(HlineTotal, 2)
                                                    , 'HlineTotalBB': dealDoubleToFixed(HlineTotalBB, 2)
                                                    , "HRemark": ""
                                                    , "HSourceInterID": dataArray[i].hmainid
                                                    , "HSourceEntryID": dataArray[i].hsubid
                                                    , "HSourceBillNo": dataArray[i].单据号
                                                    , "HSourceBillType": dataArray[i].HBillType
                                                    , "HRelationQty": "0"
                                                    , "HRelationMoney": "0"
                                                    , 'HPOOrderInterID': "0"
                                                    , 'HPOOrderEntryID': "0"
                                                    , 'HPOOrderBillNo': ""
                                                    , 'HSeOrderTaxPrice': dealDoubleToFixed(dataArray[i].HTaxPrice, 3)
                                                    , "HSeOrderInterID": dataArray[i].hmainid
                                                    , "HSeOrderEntryID": dataArray[i].hsubid
                                                    , "HSeOrderBillNo": dataArray[i].单据号
                                                }
                                            );
                                        }
                                    } else {
                                        //子表Entry  èµ‹å€¼
                                        var rowdataEntry = [];
                                        for (var i = 0; i < dataArray.length; i++) {
                                            var HQty = dataArray[i].数量 - dataArray[i].关联数量;                           //数量
                                            var HPrice = dataArray[i].单价;               //单价
                                            var HMoney = HQty * HPrice;                     //金额=数量*单价
                                            var HTaxRate = dataArray[i].税率 * 0.01;           //税率
                                            var HTaxMoney = Number((HMoney * HTaxRate));         //税额=金额*税率
                                            var HlineTotal = HMoney + HTaxMoney;            //价税合计=金额+税额
                                            var HExRate = $("#HExRate").val();                      //汇率
                                            var HlineTotalBB = Number(((HMoney + HTaxMoney) * HExRate));      //本位币价税合计=(税额+金额)*汇率
                                            var HMoneyBB = HMoney * HExRate;
                                            rowdataEntry.push(
                                                {
                                                    "HMaterID": dataArray[i].HMaterID
                                                    , "物料代码": dataArray[i].物料代码
                                                    , "物料名称": dataArray[i].物料名称
                                                    , "规格型号": dataArray[i].规格型号
                                                    , "HUnitID": dataArray[i].HUnitID
                                                    , "计量单位": dataArray[i].计量单位
                                                    , "HQty": dealDoubleToFixed(HQty, 1)
                                                    , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                                                    , "HTaxPrice": dealDoubleToFixed(dataArray[i].HTaxPrice, 3)
                                                    , 'HDiscountRate': "0"                                                     //
                                                    , 'HRelTaxPrice': "0"
                                                    , "HTaxRate": dataArray[i].税率
                                                    , 'HTaxMoney': dealDoubleToFixed(HTaxMoney, 2)                                                         //
                                                    , "HMoney": dealDoubleToFixed(HMoney, 2)
                                                    , 'HMoneyBB': dealDoubleToFixed(HMoneyBB, 2)
                                                    , 'HlineTotal': dealDoubleToFixed(HlineTotal, 2)
                                                    , 'HlineTotalBB': dealDoubleToFixed(HlineTotalBB, 2)
                                                    , "HRemark": ""
                                                    , "HSourceInterID": dataArray[i].hmainid
                                                    , "HSourceEntryID": dataArray[i].hsubid
                                                    , "HSourceBillNo": dataArray[i].单据号
                                                    , "HSourceBillType": dataArray[i].HBillType
                                                    , "HRelationQty": "0"
                                                    , "HRelationMoney": "0"
                                                    , 'HPOOrderInterID': "0"
                                                    , 'HPOOrderEntryID': "0"
                                                    , 'HPOOrderBillNo': ""
                                                    , 'HSeOrderTaxPrice': dealDoubleToFixed(dataArray[i].HTaxPrice, 3)
                                                    , "HSeOrderInterID": dataArray[i].hmainid
                                                    , "HSeOrderEntryID": dataArray[i].hsubid
                                                    , "HSeOrderBillNo": dataArray[i].单据号
                                                }
                                            );
                                        }
                                    }
                                    optionEntry.data = rowdataEntry;
                                    table.render(optionEntry);
                                    //子表汇总
                                    for (var i = 0; i < rowdataEntry.length; i++) {
                                        var item = rowdataEntry[i];
                                        for (var j = i + 1; j < rowdataEntry.length; j++) {
                                            if (rowdataEntry[j].HMaterID == item.HMaterID) {
                                                rowdataEntry[i].HQty += rowdataEntry[j].HQty;
                                                rowdataEntry[i].HMoney = rowdataEntry[i].HQty * rowdataEntry[i].HPrice//金额=数量*单价
                                                rowdataEntry[i].HTaxMoney = Number((rowdataEntry[i].HMoney * rowdataEntry[i].HTaxRate).toFixed(4))//税额
                                                rowdataEntry[i].HlineTotal = rowdataEntry[i].HMoney + rowdataEntry[i].HTaxMoney //价税合计
                                                var HExRate = $("#HExRate").val();
                                                rowdataEntry[i].HlineTotalBB = Number(((rowdataEntry[i].HMoney + rowdataEntry[i].HTaxMoney) * HExRate).toFixed(4)) //本位币价税合计
                                                rowdataEntry[i].HMoneyBB = Number((rowdataEntry[i].HMoney * HExRate).toFixed(4)) //本位币金额
                                                rowdataEntry.splice(j, 1);
                                                j = j - 1;
                                            }
                                        }
                                    }
                                    set_InitGridHaveSource();
                                    option.data = rowdataEntry;
                                    haveSource = true;
                                } else if ($("#BillType").val() == "1205") {
                                    form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                                        "HMainSourceInterID": "0"
                                        , "HMainSourceEntryID": "0"
                                        /*, "HMainSourceBillNo": ""*/
                                        , "HMainSourceBillType": $("#BillType").val()
                                        , "HDeptID": dataArray[0].HDeptID
                                        , "HDeptName": dataArray[0].部门
                                        , "HMangerID": dataArray[0].hmanagerid
                                        , "HMangerName": dataArray[0].主管
                                        , "HEmpID": dataArray[0].HEmpID
                                        , "HEmpName": dataArray[0].业务员
                                        , "HCusID": dataArray[0].hsupid
                                        , "HCusName": dataArray[0].客户
                                        , "HCurID": dataArray[0].HCurID
                                        , "HCurName": dataArray[0].币别
                                        , "HExRate": dataArray[0].汇率
                                        , "HSSID": "0"
                                        , "HSSName": ""
                                        , "HSellSID": dataArray[0].HSellSID
                                        , "HSellSName": dataArray[0].销售方式
                                    });
                                    if ($("#HPriceType").val() == "成本价") {
                                        //子表  èµ‹å€¼
                                        var rowdataEntry = [];
                                        for (var i = 0; i < dataArray.length; i++) {
                                            var HQty = dataArray[i].数量 - dataArray[i].关联数量;                           //数量
                                            rowdataEntry.push(
                                                {
                                                    "HMaterID": dataArray[i].hmaterid
                                                    , "物料代码": dataArray[i].物料代码
                                                    , "物料名称": dataArray[i].物料名称
                                                    , "规格型号": dataArray[i].规格型号
                                                    , "HUnitID": dataArray[i].hunitid
                                                    , "计量单位": dataArray[i].计量单位
                                                    , "HQty": dealDoubleToFixed(HQty, 1)
                                                    , "HPrice": dealDoubleToFixed(dataArray[i].成本单价, 3)
                                                    , "HTaxPrice": dealDoubleToFixed(dataArray[i].含税单价, 3)
                                                    , 'HDiscountRate': "0"                                                     //
                                                    , 'HRelTaxPrice': "0"
                                                    , "HTaxRate": dataArray[i].税率
                                                    , 'HTaxMoney': dealDoubleToFixed(HQty * dataArray[i].成本单价 * dataArray[0].税率, 2)                                                         //
                                                    , "HMoney": dealDoubleToFixed(HQty * dataArray[i].成本单价, 2)
                                                    , 'HMoneyBB': dealDoubleToFixed(HQty * dataArray[i].成本单价 * dataArray[0].汇率, 2)
                                                    , 'HlineTotal': dealDoubleToFixed(HQty * dataArray[i].含税单价, 2)
                                                    , 'HlineTotalBB': dealDoubleToFixed(HQty * dataArray[i].含税单价 * dataArray[0].汇率, 2)
                                                    , "HRemark": ""
                                                    , "HSourceInterID": dataArray[i].hmainid
                                                    , "HSourceEntryID": dataArray[i].hsubid
                                                    , "HSourceBillNo": dataArray[i].单据号
                                                    , "HSourceBillType": dataArray[i].HBillType
                                                    , "HRelationQty": "0"
                                                    , "HRelationMoney": "0"
                                                    , 'HPOOrderInterID': "0"
                                                    , 'HPOOrderEntryID': "0"
                                                    , 'HPOOrderBillNo': ""
                                                    , 'HSeOrderTaxPrice': dealDoubleToFixed(dataArray[i].含税单价, 3)
                                                    , "HSeOrderInterID": dataArray[i].HSourceBillType == "1401" ? dataArray[i].HSourceInterID : "0"
                                                    , "HSeOrderEntryID": dataArray[i].HSourceBillType == "1401" ? dataArray[i].HSourceEntryID : "0"
                                                    , "HSeOrderBillNo": dataArray[i].HSourceBillType == "1401" ? dataArray[i].源单单号 : ""
                                                }
                                            );
                                        }
                                    }
                                    else {
                                        //子表  èµ‹å€¼
                                        var rowdataEntry = [];
                                        for (var i = 0; i < dataArray.length; i++) {
                                            var HQty = dataArray[i].数量 - dataArray[i].关联数量;                           //数量
                                            rowdataEntry.push(
                                                {
                                                    "HMaterID": dataArray[i].hmaterid
                                                    , "物料代码": dataArray[i].物料代码
                                                    , "物料名称": dataArray[i].物料名称
                                                    , "规格型号": dataArray[i].规格型号
                                                    , "HUnitID": dataArray[i].hunitid
                                                    , "计量单位": dataArray[i].计量单位
                                                    , "HQty": dealDoubleToFixed(HQty, 1)
                                                    , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                                                    , "HTaxPrice": dealDoubleToFixed(dataArray[i].含税单价, 3)
                                                    , 'HDiscountRate': "0"                                                     //
                                                    , 'HRelTaxPrice': "0"
                                                    , "HTaxRate": dataArray[i].税率
                                                    , 'HTaxMoney': dealDoubleToFixed(HQty * dataArray[i].单价 * dataArray[0].税率, 2)                                                         //
                                                    , "HMoney": dealDoubleToFixed(HQty * dataArray[i].单价, 2)
                                                    , 'HMoneyBB': dealDoubleToFixed(HQty * dataArray[i].单价 * dataArray[0].汇率, 2)
                                                    , 'HlineTotal': dealDoubleToFixed(HQty * dataArray[i].含税单价, 2)
                                                    , 'HlineTotalBB': dealDoubleToFixed(HQty * dataArray[i].含税单价 * dataArray[0].汇率, 2)
                                                    , "HRemark": ""
                                                    , "HSourceInterID": dataArray[i].hmainid
                                                    , "HSourceEntryID": dataArray[i].hsubid
                                                    , "HSourceBillNo": dataArray[i].单据号
                                                    , "HSourceBillType": dataArray[i].HBillType
                                                    , "HRelationQty": "0"
                                                    , "HRelationMoney": "0"
                                                    , 'HPOOrderInterID': "0"
                                                    , 'HPOOrderEntryID': "0"
                                                    , 'HPOOrderBillNo': ""
                                                    , 'HSeOrderTaxPrice': dealDoubleToFixed(dataArray[i].含税单价, 3)
                                                    , "HSeOrderInterID": dataArray[i].HSourceBillType == "1401" ? dataArray[i].HSourceInterID : "0"
                                                    , "HSeOrderEntryID": dataArray[i].HSourceBillType == "1401" ? dataArray[i].HSourceEntryID : "0"
                                                    , "HSeOrderBillNo": dataArray[i].HSourceBillType == "1401" ? dataArray[i].源单单号 : ""
                                                }
                                            );
                                        }
                                    }
                                    optionEntry.data = rowdataEntry;
                                    table.render(optionEntry);
                                    //子表汇总
                                    for (var i = 0; i < rowdataEntry.length; i++) {
                                        var item = rowdataEntry[i];
                                        for (var j = i + 1; j < rowdataEntry.length; j++) {
                                            if (rowdataEntry[j].HMaterID == item.HMaterID) {
                                                rowdataEntry[i].HQty += rowdataEntry[j].HQty;
                                                rowdataEntry[i].HMoney = rowdataEntry[i].HQty * rowdataEntry[i].HPrice//金额=数量*单价
                                                rowdataEntry[i].HTaxMoney = Number((rowdataEntry[i].HMoney * rowdataEntry[i].HTaxRate).toFixed(4))//税额
                                                rowdataEntry[i].HlineTotal = rowdataEntry[i].HMoney + rowdataEntry[i].HTaxMoney //价税合计
                                                var HExRate = $("#HExRate").val();
                                                rowdataEntry[i].HlineTotalBB = Number(((rowdataEntry[i].HMoney + rowdataEntry[i].HTaxMoney) * HExRate).toFixed(4)) //本位币价税合计
                                                rowdataEntry[i].HMoneyBB = Number((rowdataEntry[i].HMoney * HExRate).toFixed(4)) //本位币金额
                                                rowdataEntry.splice(j, 1);
                                                j = j - 1;
                                            }
                                        }
                                    }
                                    set_InitGridHaveSource();
                                    option.data = rowdataEntry;
                                    haveSource = true;
                                }
                                table.render(option);
                                layer.close(ajaxLoad);
                                layer.msg("查询成功", { time: 1 * 1000, icon: 1 });
                            } else {
                                layer.alert(result.Message, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                                layer.close(ajaxLoad);
                            }
                        }, error: function () {
                            layer.alert(result.Message + "发生错误!", { icon: 5 });
                            layer.close(ajaxLoad);
                        }
                    });
                }
            });
            //#endregion
            //#endregion
            //#region å¤é€‰æ¡†çŠ¶æ€å˜æ›´