WebTM/views/ÁìÁÏ·¢»õ/ÏúÊÛ³ö¿â/Kf_SellOutBill.html
@@ -15,6 +15,7 @@
    <script src="../../../layuiadmin/Scripts/webConfig.js"></script>
    <script src="../../../layuiadmin/PubCustom.js"></script>
    <script src="../../../layuiadmin/zgqCustom/zgqCustom.js"></script>
    <script src="../../../layuiadmin/PageTitle.js"></script>
    <style type="text/css">
        .layui-form-item .layui-inline {
            margin-right: 0;
@@ -45,6 +46,8 @@
                    <div class="layui-card-header">
                        <div class="layui-btn-group">
                            <button type="button" id="set_SaveBill" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Saver">保存</button>
                            <button type="button" id="set_CheckBill" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="set_CheckBill">审核</button>
                            <button type="button" id="btn-print" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="btn-print">打印</button>
                            <button type="button" class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="Exit">退出</button>
                        </div>
                    </div>
@@ -64,46 +67,120 @@
                                            <div class="layui-input-inline">
                                                <input type="text" class="layui-input" name="HBillNo" id="HBillNo" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HInterID" id="HInterID" value="0">
                                                <input type="hidden" name="HSTOCKORGID" id="HSTOCKORGID" lay-verify="HSTOCKORGID" value="0">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">日期</label>
                                            <label class="layui-form-label">日期<label style="color:red"> * </label></label>
                                            <div class="layui-input-block">
                                                <input type="date" class="layui-input" lay-verify="HDate" name="HDate" id="HDate" style="width:190px;">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">源单类型</label>
                                            <div class="layui-input-inline">
                                                <input type="date" class="layui-input" lay-verify="HDate" name="HDate" id="HDate" style="padding-left: 80px;">
                                                <!--<select name="BillType" id="BillType" lay-filter="BillType" style="width: 180px; ">-->
                                                    <!--动态获取源单-->
                                                <!--</select>-->
                                                <select name="BillType" id="BillType" lay-filter="BillType" style="width: 180px; ">
                                                    <option style="color:blue;" selected="selected" value="1401">销售订单</option>
                                                    <option style="color:blue;"  value="1402">发货通知单</option>
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">源单号</label>
                                            <div class="layui-input-inline">
                                                <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>
                                                <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>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">销售员</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HEmpName" id="HEmpName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HEmpID" id="HEmpID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HEmpList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">销售部门</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HDeptName" id="HDeptName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="text" name="HDeptName" id="HDeptName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HDeptID" id="HDeptID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HDeptList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HDeptList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">销售员</label>
                                            <label class="layui-form-label">主管</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HEmpName" id="HEmpName" " class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="hidden" name="HEmpID" id="HEmpID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HEmpList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                                <input type="text" name="HManagerName" id="HManagerName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HManagerID" id="HManagerID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HManagerList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">客户<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HSupName" id="HSupName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HSupID" id="HSupID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HSupList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">币别</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HCurName" id="HCurName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HCurID" id="HCurID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HCurList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">汇率<label style="color:red"> * </label></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HExRate" id="HExRate" autocomplete="off" value="0" style="background-color: #efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">联系人</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HLinkMan" id="HLinkMan" autocomplete="off" style="background-color:#efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">联系电话</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HLinkPhone" id="HLinkPhone" autocomplete="off" style="background-color:#efefef4d;" readonly>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">销售方式</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HSellSName" id="HSellSName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="text" name="HSellSName" id="HSellSName" class="layui-input" value="" style="background-color:#efefef4d;" readonly>
                                                <input type="hidden" name="HSellSID" id="HSellSID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HSellSList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                                <!--<button type="button" lay-submit="" class="layui-btn" lay-filter="HSellSList" style="width:40px;">
                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                </button>-->
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -116,18 +193,6 @@
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline" style="width:900px;">
                                            <label class="layui-form-label">客户</label>
                                            <div class="layui-input-inline" style="width:700px;">
                                                <input type="text" name="HSupName" id="HSupName" class="layui-input" value="" style="float:left;width:465px;">
                                                <input type="hidden" name="HSupID" id="HSupID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HSupList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">仓管</label>
                                            <div class="layui-input-inline">
@@ -148,20 +213,85 @@
                                                </button>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">源单类型</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HSourceBillType" id="HSourceBillType" value="0">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">选单号</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="Box2" id="Box2" autocomplete="off">
                                            <label class="layui-form-label">备注</label>
                                            <div class="layui-input-block">
                                                <input class="layui-input" name="HRemark" id="HRemark" autocomplete="off" style="width: 1135px;">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">客户余额</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCusBalance" id="HCusBalance" autocomplete="off" style="background-color: #efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">信用额度</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCreditRating_Now" id="HCreditRating_Now" autocomplete="off" style="background-color: #efefef4d;" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">可用额度</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HAvailableBalance" id="HAvailableBalance" autocomplete="off" style="background-color: #efefef4d;" readonly>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">项目代码</label>
                                            <div class="layui-input-inline">
                                                <input type="text" class="layui-input" lay-verify="HProjectNumber" name="HProjectNumber" id="HProjectNumber" value="" style="background-color: #efefef4d;float: left; width: 150px;" readonly>
                                                <input type="hidden" name="HProjectID" id="HProjectID" lay-verify="HProjectID" value="0">
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearchHProNumber" id="btnSearchHProNumber" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">项目名称</label>
                                            <div class="layui-input-block">
                                                <input type="text" class="layui-input" lay-verify="HProjectName" name="HProjectName" id="HProjectName" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">班组</label>
                                            <div class="layui-input-inline">
                                                <input type="text" class="layui-input" lay-verify="HGroupName" name="HGroupName" id="HGroupName" value="" style="background-color: #efefef4d;float: left; width: 150px;" readonly>
                                                <input type="hidden" name="HGroupID" id="HGroupID" lay-verify="HGroupID" value="0">
                                                <button class="layui-btn layuiadmin-btn-order" type="button" lay-submit="" lay-filter="btnSearchHGroup" id="btnSearchHGroup" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">单价类型</label>
                                            <div class="layui-input-inline">
                                                <select name="HPriceType" id="HPriceType" lay-filter="HPriceType" style="width: 180px; ">
                                                    <option  value="成本价" selected="selected">成本价</option>
                                                    <option  value="结算价">结算价</option>
                                                </select>
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin-top:10px;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">组织<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 501px;">
                                                <select name="HOrgID" id="HOrgID" lay-verify="HOrgID">
                                                    <!--动态渲染组织-->
                                                </select>
                                            </div>
                                        </div>
                                    </div>
                                    <!--隐藏字段-->
                                    <div class="layui-row" style="display:none;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">运输公司</label>
                                            <div class="layui-input-inline">
@@ -183,54 +313,39 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">联系电话</label>
                                            <label class="layui-form-label"></label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HLinkPhone" id="HLinkPhone" autocomplete="off">
                                                <input class="layui-input" name="HConveyMoney" id="HConveyMoney" autocomplete="off" value="0">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">联系人</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HLinkMan" id="HLinkMan" autocomplete="off">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">备注</label>
                                            <div class="layui-input-block">
                                                <input class="layui-input" name="HRemark" id="HRemark" autocomplete="off" style="width: 1135px;">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row" style="margin-top:10px;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label" style="width: 85px;">组织<label style="color:red"> * </label></label>
                                            <div class="layui-input-block" style="margin-left: 120px; width: 501px;">
                                                <select name="HOrgID" id="HOrgID" lay-verify="HOrgID">
                                                    <!--动态渲染组织-->
                                                </select>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">客户余额</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="" id="" autocomplete="off" readonly>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">客户信用额度</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="" id="" autocomplete="off" readonly>
                                            </div>
                                        </div>
                                    </div>
                                    <!--隐藏字段-->
                                    <div class="layui-row" style="display:none;">
                                        <div class="layui-inline">
                                            <label class="layui-form-label">运费</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCarriage" id="HCarriage" autocomplete="off" value="0" onfocus="this.select();">
                                                <input class="layui-input" name="HCarriage" id="HCarriage" autocomplete="off" value="0">
                                            </div>
                                        </div>
                                    </div>
                                    <div class="layui-row" style="display:none;">
                                        <div class="layui-inline">
                                            <div class="layui-input-inline">
                                                <input type="hidden" name="HSTOCKORGID" id="HSTOCKORGID" lay-verify="HSTOCKORGID" value="0">
                                                <input type="hidden" name="HOWNERID" id="HOWNERID" lay-verify="HOWNERID" value="0">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">调出仓库</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HSCWHName" id="HSCWHName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="hidden" name="HSCWHID" id="HSCWHID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HSCWHList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">核销人</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCheckStatusMan" id="HCheckStatusMan" autocomplete="off">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
@@ -240,35 +355,9 @@
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">币别</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HCurName" id="HCurName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="hidden" name="HCurID" id="HCurID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HCurList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">销售订单号</label>
                                            <label class="layui-form-label">内部单据号</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HInnerBillNo" id="HInnerBillNo" autocomplete="off">
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">主管</label>
                                            <div class="layui-input-inline">
                                                <input type="text" name="HManagerName" id="HManagerName" class="layui-input" value="" style="float:left;width:150px;">
                                                <input type="hidden" name="HManagerID" id="HManagerID" class="layui-input" value="0" style="float:left;width:150px;">
                                                <button type="button" lay-submit="" class="layui-btn" lay-filter="HManagerList" style="width:40px;">
                                                    <i class="layui-icon layui-icon-search layuiadmin-button-btn" style="margin-left:-9px;"></i>
                                                </button>
                                            </div>
                                        </div>
                                        <div class="layui-inline">
                                            <label class="layui-form-label">核销人</label>
                                            <div class="layui-input-inline">
                                                <input class="layui-input" name="HCheckStatusMan" id="HCheckStatusMan" autocomplete="off">
                                            </div>
                                        </div>
                                    </div>
@@ -374,6 +463,7 @@
    <script>
        //#region æŠ˜å æ³¨é‡Š
        var HDataTemp = {};
        //#endregion
        layui.config({
            base: '../../../layuiadmin/' //静态资源所在路径
@@ -396,7 +486,7 @@
            var HOrgIDBar = 0;
            //子表渲染参数
            var option = {};
            window.option = {};
            //#endregion
@@ -406,6 +496,13 @@
            get_LoginIs();
            //#endregion
            //#region ã€åŠ¨æ€èŽ·å–æ¨¡å—åç§°ã€‘
            //var HModuleType = "1205";
            ////通过单据类型,从数据库动态获取单据模块命名,引用js文件 PageTitle.js
            //var HPageTitle = get_PageTitle(HModuleType) == "" ? $("h1").html() : get_PageTitle(HModuleType);
            //$("h1").html('<b>' + HPageTitle + '</b>');
         //#endregion
            //#region èŽ·å–é¡µé¢è·³è½¬å‚æ•°
            var params = get_UrlVars();
            if (typeof (params[params[0]]) == "undefined") {
@@ -414,6 +511,7 @@
                var OperationType = params[params[0]];//操作类型
                var linterid = params[params[1]];//源单id
                var HSouceBillType = params[params[2]];//源单类型
                var closeType = params[params[3]];//客户应收账款明细 åŒå‡»å¼¹çª—弹出只能查看不能编辑  ç¦ç”¨æŒ‰é’®
            }
            //#endregion
@@ -422,25 +520,34 @@
            //#region åˆ¤æ–­æ“ä½œç±»åž‹å¹¶åˆå§‹åŒ–界面
            if (OperationType == 1) {                                                   //无源单新增
                $("#HItemID").val(0);
                $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
               /* $("#HItemID").val(0);*/
                //生成单据号和内码
                get_MAXNum();
                //根据用户获取对应职员、部门、销售主管
                getCzyglByUser();
                //初始化日期、创建人、创建时间
                $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
                $("#HMaker").val(sessionStorage["HUserName"]);
                $("#HMakeDate").val(Format(new Date(), "yyyy-MM-dd"));
            }
            else if (OperationType == 3) {                                              //编辑
                if (closeType == 10) {
                    $('#set_SaveBill').addClass("layui-btn-disabled").attr("disabled", true);
                    $('#set_CheckBill').addClass("layui-btn-disabled").attr("disabled", true);
                    $('#btn-print').addClass("layui-btn-disabled").attr("disabled", true);
                }
                //修改时主表ID
                $("#HInterID").val(linterid);
                //编辑状态时,根据内码,获取信息并写入界面
                RoadBillMain(linterid);
            }
            else if (OperationType == 4) {                                              //浏览
                $("#HItemID").val(linterid);
                //编辑状态时,根据内码,获取信息并写入界面
                RoadBillMain(linterid);
                $('#set_SaveBill').addClass("layui-btn-disabled").attr("disabled", true);//保存后加载数据时保存按钮禁用
                //判断单据是否由扫码生成,是则保存按钮禁用
                getBarCodeNoteBySellOutBill();
            }
            else if (OperationType == 4) {                     //下推
                setInit_PushBill();
            }
            else {
                layer.alert("未知操作类型!", { icon: 5 });
@@ -448,19 +555,17 @@
            //#endregion
            //设置组织
            $("#HUSEORGID").val(sessionStorage["OrganizationID"]);
            var rowdata = [{
                "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": "0", "发货仓库": "", "HQtyMust": "0",
                "HQty": "0", "HQty_Full": "0", "HQty_Empty": "0", "HQty_Back": "0", "HPrice": "0", "HMoney": "0", "HCostPrice": "0", "HCostMoney": "0",
                "HSalePrice": "0", "HSeOrderInterID": 0, "HSeOrderEntryID": 0, "HSeOrderBillNo": "", "HRemark": ""
            }];
            DisPlay_HideColumn();
            //初始化组织
            Organ();
            //动态获取源单
            //HBillType
            //#region é¡µé¢åˆå§‹åŒ–后,根据客户获取客户余额
            getCustomerBalance($("#HSupID").val());
            //#endregion
            //#endregion
            //#region è§¦å‘事件:包括form.on(){}格式的所有点击事件、选择事件等
@@ -468,15 +573,56 @@
            //#region è¡¨å¤´æ“ä½œæŒ‰é’®
            //#region é€€å‡ºæŒ‰é’®
            form.on('submit(Exit)', function () {
                Pub_Close(1);
                if (params[1] != null) {
                    Pub_Close(1);
                } else if (params[1] == null) {
                    Pub_Close(2);
                }
            })
            //#endregion
            //#region å®¡æ ¸æŒ‰é’®
            form.on('submit(set_CheckBill)', function (data) {
                set_CheckBill(0);
            });
            //#endregion
            //#region æ‰“印按钮
            form.on('submit(btn-print)', function (data) {
                get_PrintReport();
            });
            //#endregion
            //#region ä¿å­˜æŒ‰é’®
            form.on('submit(Saver)', function (data) {
                //if (AllowLoadData(data)) {
                set_SaveBill(data);
                //}
                if (OperationType == 1 || OperationType == 4) {
                    //#region åˆ¤æ–­æºå•状态
                    for (var i = 0; i < option.data.length; i++) {
                        var HSourceBillData = "";
                        var HSourceBillData = getPushSourceBillInit(option.data[i].HSourceInterID, option.data[i].HSourceEntryID);            //获取源单数据
                        if (HSourceBillData != "none") {
                            if (HSourceBillData == null) {
                                layer.alert("保存失败!第" + (i+1) + "行:未查询到源单单据!", { icon: 5 });
                                return;
                            } else if (HSourceBillData.状态 != "已审核") {
                                var err = "保存失败!原因:第" + (i + 1) + "行-源单单据状态为“" + HSourceBillData.状态 + "”,不允许保存!";
                                layer.alert(err, { icon: 5 });
                                return;
                            } else if (HSourceBillData.行状态 == "已关闭") {
                                layer.alert("保存失败!第" + (i + 1) + "行:该行记录行状态为'已关闭'状态!", { icon: 5 });
                                return;
                            }
                        } else {
                            return;
                        }
                    }
                    //#endregion
                }
                if (AllowLoadData(data)) {
                    set_SaveBill(data);
                }
            });
            //#endregion
            //#endregion
@@ -548,6 +694,24 @@
            });
            //#endregion
            //#region é€‰æ‹©æºå•按钮
            form.on('submit(HMainSource)', function () {
                get_checkMainSource();
            });
            //#endregion
            //#region é¡¹ç›®ä»£ç 
            form.on('submit(btnSearchHProNumber)', function () {
                get_checkSearchHProNumber();
            });
            //#endregion
            //#region ç­ç»„
            form.on('submit(btnSearchHGroup)', function () {
                get_checkSearchHGroup();
            });
            //#endregion
            //#endregion
            //#region å¤é€‰æ¡†çŠ¶æ€å˜æ›´
@@ -565,9 +729,65 @@
                    , data = checkStatus.data;
                //新增行表格数据
                var NewRow = {
                    "HMaterID": 0, "物料代码": "", "物料名称": "", "规格型号": "", "HUnitID": 0, "计量单位": "", "HWHID": "0", "发货仓库": "", "HQtyMust": "0",
                    "HQty": "0", "HQty_Full": "0", "HQty_Empty": "0", "HQty_Back": "0", "HPrice": "0", "HMoney": "0", "HCostPrice": "0", "HCostMoney": "0",
                    "HSalePrice": "0", "HSeOrderInterID": 0, "HSeOrderEntryID": 0, "HSeOrderBillNo": "", "HRemark": ""
                    "HMaterID": "0"
                    , "物料代码": ""
                    , "物料名称": ""
                    , "规格型号": ""
                    , "HUnitID": "0"
                    , "计量单位": ""
                    , "HQtyMust": "0"
                    , "HQty": "0"
                    , "HPieceQty": "0"
                    , "HPrice": "0"
                    , "HTaxPrice": "0"
                    , "HTaxRate": "0"
                    , "HMoney": "0"
                    , "HTaxMoney": "0"
                    , "HWHID": $("#HWHID").val()
                    , "发货仓库": $("#HWHName").val()
                    , "HRemark": ""
                    , "HQty_Full": "0"
                    , "HQty_Empty": "0"
                    , "HQty_Back": "0"
                    , "HCostPrice": "0"
                    , "HCostMoney": "0"
                    , "HSalePrice": "0"
                    , "HSeOrderInterID": 0
                    , "HSeOrderEntryID": 0
                    , "HSeOrderBillNo": ""
                    , "HSourceInterID": "0"
                    , "HSourceEntryID": "0"
                    , "HSourceBillNo": ""
                    , "HSourceBillType": ""
                    , "HRelationQty": "0"
                    , "HRelationMoney": "0"
                    , 'HSPID': "0"
                    , 'HSPName': ""
                    , 'HSPGroupID': "0"
                    , "HSPGroupName": ""
                    , 'HSCWHID': "0"
                    , 'HSCWHName': ""
                    , 'HSCSPID': "0"
                    , 'HSCSPName': ""
                    , 'HBatchNo': ""
                    , 'HPOOrderInterID': "0"
                    , 'HPOOrderEntryID': "0"
                    , 'HPOOrderBillNo': ""
                    , 'HPropertyID': "0"
                    , 'HPropertyName': ""
                    , 'HSecUnitID': "0"
                    , 'HSecUnitName': ""
                    , 'HSecUnitRate': "0"
                    , 'HEngineNum': ""
                    , 'HUnderPanNum': ""
                    , 'HLeaveFactCard': ""
                };
                switch (obj.event) {
@@ -615,12 +835,211 @@
                        }
                    });
                }
                else if (obj.event == 'HQtyMust' || obj.event == 'HQty' || obj.event == 'HQty_Full' || obj.event == 'HQty_Empty' || obj.event == 'HQty_Back' || obj.event == 'HPrice' || obj.event == 'HMoney' || obj.event == 'HCostPrice' || obj.event == 'HCostMoney' || obj.event == 'HSalePrice') {
                    $(obj.tr).find(".layui-table-edit").keyup(function () {
                        var $input = $(this), val = $input.val();
                        if (!val) val = "0";
                        $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, '')));
                    });
                //else if (obj.event == 'HQtyMust' || obj.event == 'HQty' || obj.event == 'HQty_Full' || obj.event == 'HQty_Empty' || obj.event == 'HQty_Back' || obj.event == 'HPrice' || obj.event == 'HMoney' || obj.event == 'HCostPrice' || obj.event == 'HCostMoney' || obj.event == 'HSalePrice') {
                //    $(obj.tr).find(".layui-table-edit").keyup(function () {
                //        var $input = $(this), val = $input.val();
                //        if (!val) val = "0";
                //        $input.val(parseInt(val.replace(/[^\d*\.?\d*]/g, '')));
                //    });
                //}
            });
            //#endregion
            //#region ç›‘听单元格编辑  å•元格编辑后 å˜æ›´
            table.on('edit(mainTable)', function (obj) {
                //数值格式校验工具
                var ref = /^\d+(\.\d+)?$/;          //非负数正则表达式
                var temp = "";
                // å•元格编辑之前的值
                var oldText = $(this).prev().text();
                var value = obj.value //得到修改后的值
                    , data = obj.data //得到所在行所有键值
                    , field = obj.field; //得到字段
                //layer.msg('[ID: ' + data.id + '] ' + field + ' å­—段更改为:' + value);
                switch (field) {
                    case "HQty":                                                       //数量
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp) || temp == 0) {
                            //恢复数据到编辑前
                            obj.update({
                                HQty: oldText
                            });
                            table.render(option);
                            layer.msg("数量请输入大于0的数字!");
                            return;
                        }
                        //数据校验合格,重算记录
                        var HQty = value * 1;                           //数量
                        var HPrice = obj.data.HPrice * 1;               //单价
                        var HTaxRate = obj.data.HTaxRate * 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 * (1 + HTaxRate);            //价税合计=金额 * (1 + ç¨Žçއ)
                        //设置数据小数位数
                        HQty = dealDoubleToFixed(HQty, 1);
                        HPrice = dealDoubleToFixed(HPrice, 3);
                        HTaxRate = HTaxRate;
                        HTaxPrice = dealDoubleToFixed(HTaxPrice, 3);
                        HMoney = dealDoubleToFixed(HMoney, 2);
                        HTaxMoney = dealDoubleToFixed(HTaxMoney, 2);
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HQty: HQty
                            , HPrice: HPrice
                            , HTaxRate: HTaxRate * 100
                            , HTaxPrice: HTaxPrice
                            , HMoney: HMoney
                            , HTaxMoney: HTaxMoney
                        });
                        table.render(option);
                        break;
                    case "HPrice":                                                       //单价
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp) || temp == 0) {
                            //恢复数据到编辑前
                            obj.update({
                                HPrice: oldText
                            });
                            table.render(option);
                            layer.msg("单价请输入大于0的数字!");
                            return;
                        }
                        //数据校验合格,重算记录
                        var HQty = obj.data.HQty * 1;                   //数量
                        var HPrice = value * 1;                         //单价
                        var HTaxRate = obj.data.HTaxRate * 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 * (1 + HTaxRate);            //价税合计=金额 * (1 + ç¨Žçއ)
                        //设置数据小数位数
                        HQty = dealDoubleToFixed(HQty, 1);
                        HPrice = dealDoubleToFixed(HPrice, 3);
                        HTaxRate = HTaxRate;
                        HTaxPrice = dealDoubleToFixed(HTaxPrice, 3);
                        HMoney = dealDoubleToFixed(HMoney, 2);
                        HTaxMoney = dealDoubleToFixed(HTaxMoney, 2);
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HQty: HQty
                            , HPrice: HPrice
                            , HTaxRate: HTaxRate * 100
                            , HTaxPrice: HTaxPrice
                            , HMoney: HMoney
                            , HTaxMoney: HTaxMoney
                        });
                        table.render(option);
                        break;
                    case "HTaxRate":                                                       //数量
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp)) {
                            //恢复数据到编辑前
                            obj.update({
                                HTaxRate: oldText
                            });
                            table.render(option);
                            layer.msg("税率请输入不小于0的数字!");
                            return;
                        }
                        //数据校验合格,重算记录
                        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 * (1 + HTaxRate);            //价税合计=金额 * (1 + ç¨Žçއ)
                        //设置数据小数位数
                        HQty = dealDoubleToFixed(HQty, 1);
                        HPrice = dealDoubleToFixed(HPrice, 3);
                        HTaxRate = HTaxRate;
                        HTaxPrice = dealDoubleToFixed(HTaxPrice, 3);
                        HMoney = dealDoubleToFixed(HMoney, 2);
                        HTaxMoney = dealDoubleToFixed(HTaxMoney, 2);
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HQty: HQty
                            , HPrice: HPrice
                            , HTaxRate: HTaxRate * 100
                            , HTaxPrice: HTaxPrice
                            , HMoney: HMoney
                            , HTaxMoney: HTaxMoney
                        });
                        table.render(option);
                        break;
                    case "HTaxPrice":                                                       //数量
                        //数据格式校验
                        temp = value + "";
                        if (!ref.test(temp)) {
                            //恢复数据到编辑前
                            obj.update({
                                HTaxPrice: oldText
                            });
                            table.render(option);
                            layer.msg("含税单据请输入不小于0的数字!");
                            return;
                        }
                        //数据校验合格,重算记录
                        var HQty = obj.data.HQty * 1;                   //数量
                        var HTaxRate = obj.data.HTaxRate * 0.01;        //税率
                        var HTaxPrice = value * 1;                          //含税单价=单价*(1+税率)
                        var HPrice = HTaxPrice / (1 + HTaxRate);        //单价=含税单据/(1+税率)
                        /*var HDiscountRate = obj.data.HDiscountRate * 1; //折扣率*/
                        /*var HRelTaxPrice = HTaxPrice * HDiscountRate;   //实际含税单价=含税单价*折扣率*/
                        //折扣额 = å«ç¨Žå•ä»· * (1 - æŠ˜æ‰£çއ) * æ•°é‡
                        var HMoney = HQty * HPrice;                     //金额=数量*单价
                        var HTaxMoney = HMoney * (1 + HTaxRate);            //价税合计=金额 * (1 + ç¨Žçއ)
                        //设置数据小数位数
                        HQty = dealDoubleToFixed(HQty, 1);
                        HPrice = dealDoubleToFixed(HPrice, 3);
                        HTaxRate = HTaxRate;
                        HTaxPrice = dealDoubleToFixed(HTaxPrice, 3);
                        HMoney = dealDoubleToFixed(HMoney, 2);
                        HTaxMoney = dealDoubleToFixed(HTaxMoney, 2);
                        //同步更新表格和缓存对应的值
                        obj.update({
                            HQty: HQty
                            , HPrice: HPrice
                            , HTaxRate: HTaxRate * 100
                            , HTaxPrice: HTaxPrice
                            , HMoney: HMoney
                            , HTaxMoney: HTaxMoney
                        });
                        table.render(option);
                        break;
                    default:
                }
            });
            //#endregion
@@ -646,14 +1065,44 @@
                $("#HInterID").val("0");
                $("#HBillNo").val("");
                $.ajax({
                    url: GetWEBURL() + "/Web/GetMAXNum",
                    url: GetWEBURL() + "/WEBSController/GetMaxBillNoAndID_Json",
                    type: "GET",
                    data: { "HBillType": '1205' },
                    success: function (d) {
                        //var HBillNo = d.data[0].HBillNo.replace("XSCK", "XSXT");
                        //$("#HBillNo").val(HBillNo);
                        $("#HBillNo").val(d.data[0].HBillNo);
                        $("#HInterID").val(d.data[0].HInterID);
                    }
                });
            }
            //#endregion
            //#region èŽ·å–å‚æ•°_传递的JSON格式参数
            function getUrlVars_JSON() {
                var datajson;
                var str = window.location.search; //获取链接中传递的参数
                var arr = str.substring(str.lastIndexOf("=")+1);
                datajson = $.parseJSON(decodeURI(arr));
                return datajson;
            }
            //#endregion
            //#region  æ—¶é—´è½¬æ¢
            function formatDate(date) {
                var d = new Date(date),
                    month = '' + (d.getMonth() + 1),
                    day = '' + d.getDate(),
                    year = d.getFullYear();
                if (month.length < 2) {
                    month = '0' + month;
                }
                if (day.length < 2) {
                    day = '0' + day;
                }
                return [year, month, day].join('-');
            }
            //#endregion
@@ -683,6 +1132,36 @@
            }
            //#endregion
            //#region æ ¹æ®è´¦å·èŽ·å–éƒ¨é—¨ã€èŒå‘˜ã€ä¸»ç®¡
            function getCzyglByUser() {
                $.ajax({
                    url: GetWEBURL() + "/Xs_SeOrderBill/getCzyglByUser",
                    async: false,
                    type: "GET",
                    data: {
                        "CurUserName": sessionStorage["HUserName"]
                    },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data[0];
                            $("#HEmpID").val(data.HEmpID);
                            $("#HEmpName").val(data.HEmpName);
                            $("#HDeptID").val(data.HDeptID);
                            $("#HDeptName").val(data.HDeptName);
                            $("#HManagerID").val(data.HManagerID);
                            $("#HManagerName").val(data.HManagerName);
                        } else {
                            layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                    }, error: function () {
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region å¼¹çª—选择方法
            //#region é€‰æ‹©é”€å”®éƒ¨é—¨
            function get_checkDept() {
@@ -692,19 +1171,19 @@
                    , area: ['90%', '90%']//大小
                    , title: '销售部门列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_DepartmentList.html', 'yes']
                    //, btn: ['确定', '取消']
                    //, btn1: function (index, layero) {//按钮【按钮一】的回调
                    //    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                    //    var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                    //    if (checkStatus.data.length === 0) {
                    //        return layer.msg('请选择数据');
                    //    }
                    //    $("#HDeptName").val(checkStatus.data[0].HName);
                    //    $("#HDeptID").val(checkStatus.data[0].HItemID);
                    //    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    //}
                    //, btn2: function (index, layero) { }
                    , content: ['../../基础资料/公用基础资料/Gy_DepartmentList.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HDeptName").val(checkStatus.data[0].部门名称);
                        $("#HDeptID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -717,19 +1196,19 @@
                    , area: ['90%', '90%']//大小
                    , title: '销售主管列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_EmployeeList.html?Type=HManager', 'yes']
                    //, btn: ['确定', '取消']
                    //, btn1: function (index, layero) {//按钮【按钮一】的回调
                    //    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                    //    var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                    //    if (checkStatus.data.length === 0) {
                    //        return layer.msg('请选择数据');
                    //    }
                    //    $("#HManagerName").val(checkStatus.data[0].HName);
                    //    $("#HManagerID").val(checkStatus.data[0].HItemID);
                    //    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    //}
                    //, btn2: function (index, layero) { }
                    , content: ['../../基础资料/公用基础资料/Gy_EmployeeList.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HManagerName").val(checkStatus.data[0].职员名称);
                        $("#HManagerID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -742,19 +1221,19 @@
                    , area: ['90%', '90%']//大小
                    , title: '销售员列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_EmployeeList.html?Type=HEmp', 'yes']
                    //, btn: ['确定', '取消']
                    //, btn1: function (index, layero) {//按钮【按钮一】的回调
                    //    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                    //    var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                    //    if (checkStatus.data.length === 0) {
                    //        return layer.msg('请选择数据');
                    //    }
                    //    $("#HEmpName").val(checkStatus.data[0].HName);
                    //    $("#HEmpID").val(checkStatus.data[0].HItemID);
                    //    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    //}
                    //, btn2: function (index, layero) { }
                    , content: ['../../基础资料/公用基础资料/Gy_EmployeeList.html', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HEmpName").val(checkStatus.data[0].职员名称);
                        $("#HEmpID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -767,7 +1246,19 @@
                    , area: ['90%', '90%']//大小
                    , title: '发货人列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_EmployeeList.html?Type=HWorker', 'yes']
                    , content: ['../../基础资料/公用基础资料/Gy_EmployeeList.html?Type=HSecManager', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HSecManagerName").val(checkStatus.data[0].职员名称);
                        $("#HSecManagerID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -780,7 +1271,19 @@
                    , area: ['90%', '90%']//大小
                    , title: '仓管列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_EmployeeList.html?Type=HKeeper', 'yes']
                    , content: ['../../基础资料/公用基础资料/Gy_EmployeeList.html?Type=HKeeper', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HKeeperName").val(checkStatus.data[0].职员名称);
                        $("#HKeeperID").val(checkStatus.data[0].HItemID);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
@@ -816,21 +1319,45 @@
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '出库仓库列表'//标题
                    , title: '仓库列表'//标题
                    , shift: 2//弹出动画
                    , content: ['../../Baseset/基础资料/Gy_WarehouseList.html?Type=HWHID', 'yes']
                    //, btn: ['确定', '取消']
                    //, btn1: function (index, layero) {//按钮【按钮一】的回调
                    //    var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                    //    var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                    //    if (checkStatus.data.length === 0) {
                    //        return layer.msg('请选择数据');
                    //    }
                    //    $("#HWHName").val(checkStatus.data[0].HName);
                    //    $("#HWHID").val(checkStatus.data[0].HItemID);
                    //    layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    //}
                    //, btn2: function (index, layero) { }
                    , content: ['../../基础资料/公用基础资料/Gy_Warehouse.html?Type=HWH', 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        $("#HWHName").val(checkStatus.data[0].仓库名称);
                        $("#HWHID").val(checkStatus.data[0].HItemID);
                        if (option.data.length > 0) {
                            for (var i = 0; i < option.data.length; i++) {
                                if (option.data[i]["HWHID"] == 0) {
                                    option.data[i]["HWHID"] = checkStatus.data[0].HItemID;
                                    option.data[i]["发货仓库"] = checkStatus.data[0].仓库名称;
                                }
                            }
                        }
                        table.render(option);
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                    , end: function () {
                        if (HDataTemp != {}) {
                            //根据表头 å‡ºåº“仓库 å¸¦å‡ºå­è¡¨ å‘货仓库
                            for (var i = 0; i < option.data.length; i++) {
                                if (option.data[i].HWHID + "" == "0") {
                                    option.data[i].HWHID = HDataTemp.HItemID;
                                    option.data[i].发货仓库 = HDataTemp.仓库名称;
                                }
                            }
                            table.render(option);
                            HDataTemp = {};
                        }
                    }
                })
            }
            //#endregion
@@ -899,6 +1426,139 @@
                })
            }
            //#endregion
            //#region é¡¹ç›®ä»£ç 
            function get_checkSearchHProNumber() {
                var HOrgID = $("#HOrgID").val();
                //打开工程项目小窗体
                layer.open({
                    type: 2
                    , skin: "layui-layer-rim"                           //加上边框
                    , title: "工程项目列表"                             //标题
                    , closeBtn: 1                                       //窗体右上角关闭 çš„ æ ·å¼
                    , shift: 2                                          //弹出动画
                    , area: ["90%", "90%"]                              //窗体大小
                    , maxmin: true                                      //设置最大最小按钮是否显示
                    , content: ["../../项目管理/工程项目/PM_ProjectBillList.html?openType=2&HOrgID=" + HOrgID, "yes"]
                    , btn: ["确定", "取消"]
                    , btn1: function (index, laero) {
                        //按钮一  çš„回调
                        var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                        if (checkStatus.data.length != 1) {
                            return layer.msg("请选择一条数据");
                        }
                        //判断项目是否关闭
                        if (checkStatus.data[0].关闭人 == null || checkStatus.data[0].关闭人 == "") {
                            $("#HProjectID").val(checkStatus.data[0].HInterID);
                            $("#HProjectNumber").val(checkStatus.data[0].项目代码);//工程项目代码
                            $("#HProjectName").val(checkStatus.data[0].项目名称);//工程项目代码
                        } else {
                            layer.msg("该项目已关闭,不可选择!");
                        }
                        layer.close(index);//关闭弹窗
                    }
                    , btn2: function (index, layero) { }
                    , end: function () { }
                })
            }
            //#endregion
            //#region ç­ç»„
            function get_checkSearchHGroup() {
                layer.open({
                    type: 2
                    , skin: "layui-layer-rim"                           //加上边框
                    , title: "班组列表"                             //标题
                    , closeBtn: 1                                       //窗体右上角关闭 çš„ æ ·å¼
                    , shift: 2                                          //弹出动画
                    , area: ["90%", "90%"]                              //窗体大小
                    , maxmin: true                                      //设置最大最小按钮是否显示
                    , content: ["../../基础资料/工资基础资料/Gy_Group.html?type=HGroup", "yes"]
                    , btn: ["确定", "取消"]
                    , btn1: function (index, laero) {
                        //按钮一  çš„回调
                        var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                        if (checkStatus.data.length != 1) {
                            return layer.msg("请选择一条数据");
                        }
                        $("#HGroupID").val(checkStatus.data[0].HItemID);
                        $("#HGroupName").val(checkStatus.data[0].班组名称);//工程项目代码
                        layer.close(index);//关闭弹窗
                    }
                    , btn2: function (index, layero) { }
                    , end: function () { }
                })
            }
            //#endregion
            //#region èŽ·å–æºå•ç±»åž‹
            function HBillType() {
                var HName = '销售出库单';
                //获取登录页组织列
                $.ajax({
                    type: "get",
                    async: false,
                    data: { "HName": HName, "Num":0},       //0蓝单 1红单 2不分红蓝单
                    url: GetWEBURL() + "/Web/GetHSourceBillType",
                    success: function (result) {
                        var HSourceBillTypes = "";
                        if (result.count == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            var data = result.data;
                            for (var i = 0; i < data.length; i++) {
                                HSourceBillTypes += '<option  style="color:blue;" value="' + data[i].HSourceBillType + '">' + data[i].HSourceBillTypeName + '</option>';
                            }
                            $("#BillType").append(HSourceBillTypes);
                            form.render('select');
                        }
                    }
                })
            }
            //#endregion
            //#region é€‰æ‹©æºå•
            function get_checkMainSource() {
                var HOrgID = $("#HOrgID").val();
                var url = "";
                if ($("#BillType").val() == "1401") {
                    url = "../../销售管理/销售订单/Xs_SeOrderBillList.html?openType=2&HOrgID=" + HOrgID;
                } else if ($("#BillType").val() == "1402") {
                    url = "../../销售管理/发货通知单/Xs_SeOutStockBillList.html?openType=2&HOrgID=" + HOrgID;
                }else {
                    return layer.msg('当前不支持改源单选择!!');
                }
                layer.open({
                    type: 2//弹窗类型
                    , skin: 'layui-layer-rim' //加上边框
                    , area: ['90%', '90%']//大小
                    , title: '源单列表'//标题
                    , shift: 2//弹出动画
                    , content: [url, 'yes']
                    , btn: ['确定', '取消']
                    , btn1: function (index, layero) {//按钮【按钮一】的回调
                        var iframeWindow = window['layui-layer-iframe' + index]  //获取弹框页面
                        var checkStatus = iframeWindow.layui.table.checkStatus('mainTable');//获取table的elem:"#test"
                        if (checkStatus.data.length === 0) {
                            return layer.msg('请选择数据');
                        }
                        if ($("#BillType").val() == "1401") {
                            setInitBySeOrderBill(checkStatus);
                        } else if ($("#BillType").val() == "1402") {
                            setInitBySeOutStockBill(checkStatus)
                        }
                        layer.close(index); //它获取的始终是最新弹出的某个层,值是由layer内部动态递增计算的
                    }
                    , btn2: function (index, layero) { }
                })
            }
            //#endregion
            //#endregion
            //#region å­è¡¨åˆå§‹åŒ–
@@ -906,40 +1566,140 @@
                option = {
                    elem: '#mainTable'
                    , toolbar: '#toolbarDemo'
                    , totalRow: true
                    , limit: 500
                    , height: 500
                    , loading: false
                    , cols: [[ //子表
                        { type: 'checkbox', totalRowText: '合计行' }
                        , { type: 'numbers', title: '序号', width: 100, totalRow: true }
                        , { field: 'HMaterID', title: 'HMaterID', width: 100, hide: true }
                        , { type: 'numbers', title: '序号', width: 100 }
                        , { field: 'HMaterID', title: 'HMaterID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '物料代码', title: '物料代码', width: 150, edit: 'text', event: "HMaterID" }//f7
                        , { field: '物料名称', title: '物料名称', width: 150, }
                        , { field: '规格型号', title: '规格型号', width: 100, }
                        , { field: 'HUnitID', title: 'HUnitID', width: 100, hide: true }
                        , { field: '计量单位', title: '计量单位', width: 100, edit: 'text', event: "HUnitID" }//f7
                        , { field: 'HQty', title: '实发数量', width: 100, edit: 'text', event: "HQty" }
                        , { field: '物料名称', title: '物料名称', width: 150, style: 'background-color:#efefef4d;' }
                        , { field: '规格型号', title: '规格型号', width: 100, style: 'background-color:#efefef4d;' }
                        , { field: 'HUnitID', title: 'HUnitID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '计量单位', title: '计量单位', width: 100, edit: 'text', event: "HUnitID"}//f7
                        , { field: 'HQtyMust', title: '应发数量', width: 100, totalRow: true, style: 'background-color:#efefef4d;'}
                        , { field: 'HQty', title: '实发数量', width: 100, totalRow: true, edit: 'text', event: "HQty" }
                        , { field: 'HPieceQty', title: '件数', width: 100, totalRow: true, edit: 'text'}
                        , { field: 'HPrice', title: '单价', width: 100, edit: 'text', event: "HPrice" }
                        , { field: 'HMoney', title: '金额', width: 100, edit: 'text', event: "HMoney" }
                        , { field: 'HWHID', title: 'HWHID', width: 100, edit: 'text', hide: true }
                        , { field: 'HTaxPrice', title: '含税单价', width: 100, edit: 'text', event: "HTaxPrice" }
                        , { field: 'HTaxRate', title: '税率', width: 100, edit: 'text' }
                        , { field: 'HMoney', title: '金额', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HTaxMoney', title: '价税合计', width: 100, totalRow: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HWHID', title: 'HWHID', width: 100, edit: 'text', hide: true, style: 'background-color:#efefef4d;' }
                        , { field: '发货仓库', title: '发货仓库', width: 100, edit: 'text', event: "HWHID" }
                        , { field: 'HRemark', title: '备注', width: 100, edit: 'text' }
                        , { field: 'HQtyMust', title: '应发数量', width: 100, edit: 'text', event: "HQtyMust", hide: true }
                        , { field: 'HQty_Full', title: '满车重量', width: 100, edit: 'text', event: "HQty_Full", hide: true }
                        , { field: 'HQty_Empty', title: '空车重量', width: 100, edit: 'text', event: "HQty_Empty", hide: true }
                        , { field: 'HQty_Back', title: '回车重量', width: 100, edit: 'text', event: "HQty_Back", hide: true }
                        , { field: 'HCostPrice', title: '成本单价', width: 100, edit: 'text', event: "HCostPrice", hide: true }
                        , { field: 'HCostMoney', title: '成本金额', width: 100, edit: 'text', event: "HCostMoney", hide: true }
                        , { field: 'HSalePrice', title: '销售单价', width: 100, edit: 'text', event: "HSalePrice", hide: true }
                        , { field: 'HSeOrderInterID', title: 'HSeOrderInterID', width: 100, edit: 'text', hide: true }
                        , { field: 'HSeOrderEntryID', title: 'HSeOrderEntryID', width: 100, edit: 'text', hide: true }
                        , { field: 'HSeOrderBillNo', title: '销售订单号', width: 100, edit: 'text', event: "HSeOrderBillNo", hide: true }
                        , { field: 'HSeOrderInterID', title: '销售订单内码', width: 100, edit: 'text', hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSeOrderEntryID', title: '销售订单子内码', width: 100, edit: 'text', hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSeOrderBillNo', title: '销售订单号', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSourceInterID', title: '源单内码', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSourceEntryID', title: '源单子内码', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSourceBillNo', title: '源单号', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSourceBillType', title: '源单类型', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HRelationQty', title: '关联数量', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HRelationMoney', title: '关联金额', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSPID', title: 'HSPID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSPName', title: '仓位', width: 100, hide: true }
                        , { field: 'HSPGroupID', title: 'HSPGroupID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSPGroupName', title: '仓位组', width: 100, hide: true }
                        , { field: 'HSCWHID', title: 'HSCWHID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSCWHName', title: '调出仓库', width: 100, hide: true }
                        , { field: 'HSCSPID', title: 'HSCSPID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSCSPName', title: '调出仓位', width: 100, hide: true }
                        , { field: 'HBatchNo', title: '批次', width: 100, hide: true }
                        , { field: 'HPOOrderInterID', title: '采购订单内码', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HPOOrderEntryID', title: '采购订单子内码', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HPOOrderBillNo', title: '采购订单号', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HPropertyID', title: 'HPropertyID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HPropertyName', title: '辅助属性', width: 100, hide: true }
                        , { field: 'HSecUnitID', title: 'HSecUnitID', width: 100, hide: true, style: 'background-color:#efefef4d;' }
                        , { field: 'HSecUnitName', title: '辅助计量单位', width: 100, hide: true }
                        , { field: 'HSecUnitRate', title: '换算率', width: 100, hide: true }
                        , { field: 'HEngineNum', title: '发动机号', width: 100, hide: true }
                        , { field: 'HUnderPanNum', title: '地盘号', width: 100, hide: true }
                        , { field: 'HLeaveFactCard', title: '出厂证', width: 100, hide: true }
                        , { fixed: 'right', title: '操作', toolbar: '#barDemo', width: 70 }
                    ]]
                }
                var rowdata = [{
                    "HMaterID": "0"
                    , "物料代码": ""
                    , "物料名称": ""
                    , "规格型号": ""
                    , "HUnitID": "0"
                    , "计量单位": ""
                    , "HQtyMust": "0"
                    , "HQty": "0"
                    , "HPieceQty": "0"
                    , "HPrice": "0"
                    , "HTaxPrice": "0"
                    , "HTaxRate": "0"
                    , "HMoney": "0"
                    , "HTaxMoney": "0"
                    , "HWHID": $("#HWHID").val()
                    , "发货仓库": $("#HWHName").val()
                    , "HRemark": ""
                    , "HQty_Full": "0"
                    , "HQty_Empty": "0"
                    , "HQty_Back": "0"
                    , "HCostPrice": "0"
                    , "HCostMoney": "0"
                    , "HSalePrice": "0"
                    , "HSeOrderInterID": "0"
                    , "HSeOrderEntryID": "0"
                    , "HSeOrderBillNo": ""
                    , "HSourceInterID": "0"
                    , "HSourceEntryID": "0"
                    , "HSourceBillNo": ""
                    , "HSourceBillType": ""
                    , "HRelationQty": "0"
                    , "HRelationMoney": "0"
                    , 'HSPID': "0"
                    , 'HSPName': ""
                    , 'HSPGroupID': "0"
                    , "HSPGroupName": ""
                    , 'HSCWHID': "0"
                    , 'HSCWHName': ""
                    , 'HSCSPID': "0"
                    , 'HSCSPName': ""
                    , 'HBatchNo': ""
                    , 'HPOOrderInterID': "0"
                    , 'HPOOrderEntryID': "0"
                    , 'HPOOrderBillNo': ""
                    , 'HPropertyID': "0"
                    , 'HPropertyName': ""
                    , 'HSecUnitID': "0"
                    , 'HSecUnitName': ""
                    , 'HSecUnitRate': "0"
                    , 'HEngineNum': ""
                    , 'HUnderPanNum': ""
                    , 'HLeaveFactCard': ""
                }];
                option.data = rowdata;
                table.render(option);
@@ -962,40 +1722,62 @@
                            allVal = result.data[0];
                            var data = result.data[0];
                            //根据客户带出联系人、联系电话
                            getCustomerByCusID(data.hsupid);
                            form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                                "HBillNo": data.单据号
                                , "HDate": formatDate(data.日期)
                                , "HInnerBillNo": data.销售订单号
                                , "HEmpID": data.HEmpID
                                , "HEmpName": data.业务员
                                , "HSupID": data.hsupid
                                , "HSupName": data.客户
                                , "HWHID": data.HWHID_Main
                                , "HWHName": data.仓库
                                , "HSellSID": data.HSellSID
                                , "HSellSName": data.销售方式
                                , "HDeptID": data.HDeptID
                                , "HDeptName": data.部门
                                , "HEmpID": data.HEmpID
                                , "HEmpName": data.业务员
                                , "HManagerID": data.hmanagerid
                                , "HManagerName": data.主管
                                , "BillType": data.HSourceBillType
                                , "HMainSourceInterID": data.HMainSourceInterID
                                , "HMainSourceEntryID": data.HMainSourceEntryID
                                , "HMainSourceBillNo": data.HMainSourceBillNo
                                , "HMainSourceBillType": data.HMainSourceBillType
                                , "HSupID": data.hsupid
                                , "HSupName": data.客户
                                , "HLinkMan": data.联系人
                                , "HLinkPhone": data.联系电话
                                , "HSellSID": data.HSellSID
                                , "HSellSName": data.销售方式
                                , "HSecManagerID": data.hsecmanagerid
                                , "HSecManagerName": data.发货人
                                , "HKeeperID": data.hkeeperid
                                , "HKeeperName": data.保管员
                                , "HManagerID": data.hmanagerid
                                , "HManagerName": data.主管
                                , "HCheckStatusMan": data.核销人
                                , "HWHID": data.HWHID_Main
                                , "HWHName": data.主表仓库
                                , "HProjectID": data.HProjectID
                                , "HProjectNumber": data.项目编码
                                , "HProjectName": data.项目名称
                                , "HGroupID": data.HGroupID
                                , "HGroupName": data.班组
                                , "HPriceType": data.单价类型
                                , "HRemark": data.表头备注
                                , "HConveyCompID": data.HConveyCompID
                                , "HConveyCompName": data.运输公司
                                , "HConveyTypeID": data.HConveyTypeID
                                , "HConveyTypeName": data.运输方式
                                , "HConveyMoney": data.HConveyMoney
                                , "HCarriage": data.运费
                                , "HRemark": data.表头备注
                                , "HExplanation": data.摘要
                                , "HSTOCKORGID": data.HSTOCKORGID
                                , "HOWNERID": data.HOWNERID
                                , "HCurID": data.HCurID
                                , "HCurName": data.币别
                                , "HSourceBillType": data.源单类型
                                , "HLinkMan": data.联系人
                                , "HLinkPhone": data.联系电话
                                , "HExRate": data.汇率
                                , "HSCWHID": data.HSCWHID_Main
                                , "HSCWHName": data.主表调出仓库
                                , "HCheckStatusMan": data.核销人
                                , "HExplanation": data.摘要
                                , "HInnerBillNo": data.内部单据号
                                , "HMaker": data.制单人
                                , "HMakeDate": data.制单日期 == null ? "" : Format(new Date(data.制单日期), "yyyy-MM-dd")
                                , "HUpDater": data.修改人
@@ -1008,7 +1790,7 @@
                                , "HDeleteDate": data.作废日期 == null ? "" : Format(new Date(data.作废日期), "yyyy-MM-dd")
                            });
                            HOrgIDBar = data.HOrgID == null ? 0 : data.HOrgID;
                            HOrgIDBar = data.HSTOCKORGID == null ? 0 : data.HSTOCKORGID;
                            //子表  èµ‹å€¼
                            var rowdata = [];
@@ -1021,23 +1803,59 @@
                                        , "规格型号": result.data[i].规格型号
                                        , "HUnitID": result.data[i].hunitid
                                        , "计量单位": result.data[i].计量单位
                                        , "HQty": result.data[i].数量
                                        , "HPrice": result.data[i].单价
                                        , "HMoney": result.data[i].金额
                                        , "HQtyMust": dealDoubleToFixed(result.data[i].应发数量, 1)
                                        , "HQty": dealDoubleToFixed(result.data[i].数量, 1)
                                        , "HPieceQty": dealDoubleToFixed(result.data[i].件数, 1)
                                        , "HPrice": dealDoubleToFixed(result.data[i].单价, 3)
                                        , "HTaxPrice": dealDoubleToFixed(result.data[i].含税单价, 3)
                                        , "HTaxRate": result.data[i].税率
                                        , "HMoney": dealDoubleToFixed(result.data[i].数量 * result.data[i].单价, 2)
                                        , "HTaxMoney": dealDoubleToFixed(result.data[i].数量 * result.data[i].含税单价, 2)
                                        , "HWHID": result.data[i].hwhid
                                        , "发货仓库": result.data[i].发货仓库
                                        , "HRemark": result.data[i].表体备注
                                        , "HQtyMust": result.data[i].应发数量
                                        , "HQty_Full": result.data[i].满车重量
                                        , "HQty_Empty": result.data[i].空车重量
                                        , "HQty_Back": result.data[i].回车重量
                                        , "HCostPrice": result.data[i].成本单价
                                        , "HCostMoney": result.data[i].成本金额
                                        , "HSalePrice": result.data[i].销售单价
                                        , "HSeOrderInterID": result.data[i].HSeOrderInterID
                                        , "HSeOrderEntryID": result.data[i].HSeOrderEntryID
                                        , "HSeOrderBillNo": result.data[i].销售订单号
                                        , "HSourceInterID": result.data[i].HSourceInterID
                                        , "HSourceEntryID": result.data[i].HSourceEntryID
                                        , "HSourceBillNo": result.data[i].源单单号
                                        , "HSourceBillType": result.data[i].HSourceBillType
                                        , "HRelationQty": result.data[i].关联数量
                                        , "HRelationMoney": result.data[i].关联金额
                                        , 'HSPID': result.data[i].HSPID
                                        , 'HSPName': result.data[i].仓位
                                        , 'HSPGroupID': result.data[i].HSPGroupID
                                        , "HSPGroupName": result.data[i].仓位组
                                        , 'HSCWHID': result.data[i].HSCWHID
                                        , 'HSCWHName': result.data[i].调出仓库
                                        , 'HSCSPID': result.data[i].HSCSPID
                                        , 'HSCSPName': result.data[i].调出仓位
                                        , 'HBatchNo': result.data[i].批次
                                        , 'HPOOrderInterID': result.data[i].采购订单内码
                                        , 'HPOOrderEntryID': result.data[i].采购订单子内码
                                        , 'HPOOrderBillNo': result.data[i].采购订单号
                                        , 'HPropertyID': result.data[i].HPropertyID
                                        , 'HPropertyName': result.data[i].辅助属性
                                        , 'HSecUnitID': result.data[i].HSecUnitID
                                        , 'HSecUnitName': result.data[i].辅助计量单位
                                        , 'HSecUnitRate': result.data[i].换算率
                                        , 'HEngineNum': result.data[i].发动机号
                                        , 'HUnderPanNum': result.data[i].地盘号
                                        , 'HLeaveFactCard': result.data[i].出厂证
                                    }
                                )
                            }
@@ -1053,6 +1871,128 @@
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region ä¸‹æŽ¨é¡µé¢åˆå§‹åŒ–
            function setInit_PushBill() {
                //生成单据号和内码
                get_MAXNum();
                //初始化日期、制单人、制单日期
                $("#HDate").val(Format(new Date(), "yyyy-MM-dd"));
                $("#HMaker").val(sessionStorage["HUserName"]);
                $("#HMakerDate").val(Format(new Date(), "yyyy-MM-dd"));
                //设置源单类型
                $("#BillType").val(HSouceBillType);
                //禁用组织选项
                $("#HOrgID").attr("disabled", true);
                //获取
                var data = getUrlVars_JSON().data;
                var dataArray = [];
                for (var i = 0; i < data.length; i++) {
                    var temp = getPushSourceBillInit(data[i].hmainid, data[i].hsubid);
                    if (temp != "none") {
                        dataArray.push(temp);
                    } else {
                        return;
                    }
                }
                form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                    "HDeptID": dataArray[0].HDeptID
                    , "HDeptName": dataArray[0].部门
                    , "HEmpID": dataArray[0].HEmpID
                    , "HEmpName": dataArray[0].业务员
                    , "HManagerID": dataArray[0].HManagerID
                    , "HManagerName": dataArray[0].主管
                    , "HMainSourceInterID": "0"
                    , "HMainSourceEntryID": "0"
                    , "HMainSourceBillNo": ""
                    , "HMainSourceBillType": $("#BillType").val()
                    , "HSupID": dataArray[0].HCusID
                    , "HSupName": dataArray[0].客户
                    , "HLinkMan": dataArray[0].联系人
                    , "HLinkPhone": dataArray[0].联系电话
                    , "HSellSID": dataArray[0].HSellSID
                    , "HSellSName": dataArray[0].销售方式
                    , "HCurID": dataArray[0].HCurID
                    , "HCurName": dataArray[0].币别
                    , "HExRate": dataArray[0].汇率
                });
                //子表  èµ‹å€¼
                var rowdata = [];
                for (var i = 0; i < dataArray.length; i++) {
                    rowdata.push(
                        {
                            "HMaterID": dataArray[i].HMaterID
                            , "物料代码": dataArray[i].物料代码
                            , "物料名称": dataArray[i].物料名称
                            , "规格型号": dataArray[i].规格型号
                            , "HUnitID": dataArray[i].HUnitID
                            , "计量单位": dataArray[i].计量单位
                            , "HQtyMust": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HQty": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HPieceQty": "0"
                            , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                            , "HTaxPrice": dealDoubleToFixed(dataArray[i].含税单价, 3)
                            , "HTaxRate": dataArray[i].税率
                            , "HMoney": dealDoubleToFixed(dataArray[i].金额, 2)
                            , "HTaxMoney": dealDoubleToFixed(dataArray[i].价税合计, 2)
                            , "HWHID": $("#HWHID").val()
                            , "发货仓库": $("#HWHName").val()
                            , "HRemark": ""
                            , "HQty_Full": "0"
                            , "HQty_Empty": "0"
                            , "HQty_Back": "0"
                            , "HCostPrice": "0"
                            , "HCostMoney": "0"
                            , "HSalePrice": "0"
                            , "HSeOrderInterID": dataArray[i].hmainid
                            , "HSeOrderEntryID": dataArray[i].hsubid
                            , "HSeOrderBillNo": dataArray[i].单据号
                            , "HSourceInterID": dataArray[i].hmainid
                            , "HSourceEntryID": dataArray[i].hsubid
                            , "HSourceBillNo": dataArray[i].单据号
                            , "HSourceBillType": dataArray[i].HBillType
                            , "HRelationQty": "0"
                            , "HRelationMoney": "0"
                            , 'HSPID': "0"
                            , 'HSPName': ""
                            , 'HSPGroupID': "0"
                            , "HSPGroupName": ""
                            , 'HSCWHID': "0"
                            , 'HSCWHName': ""
                            , 'HSCSPID': "0"
                            , 'HSCSPName': ""
                            , 'HBatchNo': ""
                            , 'HPOOrderInterID': "0"
                            , 'HPOOrderEntryID': "0"
                            , 'HPOOrderBillNo': ""
                            , 'HPropertyID': "0"
                            , 'HPropertyName': ""
                            , 'HSecUnitID': "0"
                            , 'HSecUnitName': ""
                            , 'HSecUnitRate': "0"
                            , 'HEngineNum': ""
                            , 'HUnderPanNum': ""
                            , 'HLeaveFactCard': ""
                        }
                    );
                }
                option.data = rowdata;
                table.render(option);
            }
            //#endregion
@@ -1116,18 +2056,23 @@
                    return false;
                }
                if ($("#HDeptID").val() == "0") {
                    layer.msg("部门未选择!");
                    return false;
                }
                //if ($("#HDeptID").val() == "0") {
                //    layer.msg("部门未选择!");
                //    return false;
                //}
                //if ($("#HEmpID").val() == "0") {
                //    layer.msg("销售员未选择!");
                //    return false;
                //}
                //if ($("#HMangerID").val() == "0") {
                //    layer.msg("销售主管未选择!");
                //    return false;
                //}
                if ($("#HCusID").val() == "0") {
                    layer.msg("客户未选择!");
                    return false;
                }
                if ($("#HEmpID").val() == "0") {
                    layer.msg("业务员未选择!");
                    return false;
                }
@@ -1136,181 +2081,88 @@
                    return false;
                }
                if ($("#HMangerID").val() == "0") {
                    layer.msg("主管未选择!");
                    return false;
                }
                if ($("#HSSID").val() == "0") {
                    layer.msg("结算方式未选择!");
                    return false;
                }
                if ($("#HPayCusID").val() == "0") {
                    layer.msg("结算方未选择!");
                    return false;
                }
                if ($("#HDate").val() == "") {
                    layer.msg("日期未设置!");
                    return false;
                }
                if ($("#HSSDate").val() == "") {
                    layer.msg("结算日期未设置!");
                    return false;
                }
                temp = $("HExRate").val() + "";
                temp = $("#HExRate").val() + "";
                if (temp == 0) {
                    layer.msg("汇率不能为0!");
                    return false;
                } else if (!ref.test(temp)) {
                    layer.msg("汇率请输入大于0的数字!");
                    return false;
                }
                }
                //#endregion
                //#region å­è¡¨ æ•°æ®æ£€éªŒ
                for (var i = 0; i < option.data.length; i++) {
                    if (option.data[i]["HMaterID"] == "0") {
                        layer.msg("第" + i + "行:物料未选择!");
                        layer.msg("第" + (i+1) + "行:物料未选择!");
                        return false;
                    }
                    if (option.data[i]["HUnitID"] == "0") {
                        layer.msg("第" + i + "行:计量单位未选择!");
                        layer.msg("第" + (i + 1) + "行:计量单位未选择!");
                        return false;
                    }
                    if (option.data[i]["HDate"] == "") {
                        layer.msg("第" + i + "行:交货日期不能为空!");
                        return false;
                    }
                    //数量格式校验
                    //实发数量格式校验
                    temp = option.data[i]["HQty"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:数量不能为0!");
                        layer.msg("第" + (i + 1) + "行:实发数量不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:数量请输入大于0的数字!");
                        layer.msg("第" + (i + 1) + "行:实发数量请输入大于0的数字!");
                        return false;
                    }
                    //不含税单价格式校验
                    //单价格式校验
                    temp = option.data[i]["HPrice"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:不含税单价不能为0!");
                        layer.msg("第" + (i + 1) + "行:单价不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:不含税单价请输入大于0的数字!");
                        layer.msg("第" + (i + 1) + "行:单价请输入大于0的数字!");
                        return false;
                    }
                    //含税单价格式校验
                    temp = option.data[i]["HTaxPrice"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:含税单价不能为0!");
                        layer.msg("第" + (i + 1) + "行:含税单价不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:含税单价请输入大于0的数字!");
                        layer.msg("第" + (i + 1) + "行:含税单价请输入大于0的数字!");
                        return false;
                    }
                    //税率格式校验
                    temp = option.data[i]["HTaxRate"] + "";
                    if (!ref.test(temp)) {
                        layer.msg("第" + (i + 1) + "行:税率请输入不小于0的数字!");
                        return false;
                    }
                    //金额格式校验
                    temp = option.data[i]["HMoney"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:金额不能为0!");
                        layer.msg("第" + (i + 1) + "行:金额不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:金额请输入大于0的数字!");
                        return false;
                    }
                    //折扣率格式校验
                    temp = option.data[i]["HDiscountRate"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:折扣率不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:折扣率请输入大于0的数字!");
                        return false;
                    }
                    //实际含税单价格式校验
                    temp = option.data[i]["HRelTaxPrice"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:实际含税单价不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:实际含税单价请输入大于0的数字!");
                        return false;
                    }
                    //税率格式校验
                    temp = option.data[i]["HTaxRate"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:税率不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:税率请输入大于0的数字!");
                        return false;
                    }
                    //税额格式校验
                    temp = option.data[i]["HTaxMoney"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:税额不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:税额请输入大于0的数字!");
                        layer.msg("第" + (i + 1) + "行:金额请输入大于0的数字!");
                        return false;
                    }
                    //价税合计格式校验
                    temp = option.data[i]["HlineTotal"] + "";
                    temp = option.data[i]["HTaxMoney"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:价税合计不能为0!");
                        layer.msg("第" + (i + 1) + "行:价税合计不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:价税合计请输入大于0的数字!");
                        layer.msg("第" + (i + 1) + "行:价税合计请输入大于0的数字!");
                        return false;
                    }
                    //本位币价税合计格式校验
                    temp = option.data[i]["HlineTotalBB"] + "";
                    if (temp == "0") {
                        layer.msg("第" + i + "行:本位币价税合计不能为0!");
                        return false;
                    } else if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:本位币价税合计请输入大于0的数字!");
                        return false;
                    }
                    //出库数量格式校验
                    temp = option.data[i]["HOutStockQty"] + "";
                    if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:出库数量请输入大于0的数字!");
                        return false;
                    }
                    //开票数量格式校验
                    temp = option.data[i]["HInvoiceQty"] + "";
                    if (!ref.test(temp)) {
                        layer.msg("第" + i + "行:开票数量请输入大于0的数字!");
                        return false;
                    }
                }
                //#endregion
                //#region å­è¡¨ å…³é”®å­—重复校验
                var num = [];
                for (var i = 0; i < option.data.length; i++) {
                    if ($.inArray(option.data[i]["HMaterID"], num) == -1) {
                        num.push(option.data[i]["HMaterID"]);
                    } else {
                        layer.msg("第" + (i + 1) + "行,物料:" + option.data[i]["HMaterID"] + "重复!");
                    //发货仓库非空验证
                    if (option.data[i]["HWHID"] == "0") {
                        layer.msg("第" + (i + 1) + "行:发货仓库未选择!");
                        return false;
                    }
                }
@@ -1333,6 +2185,8 @@
                    if (event.key == "F7") {
                        //物料
                        if (obj.event == "HMaterID") {
                            var HOrgID = $("#HOrgID").val();
                            layer.open({
                                type: 2
                                , skin: "layui-layer-rim" //加上边框
@@ -1341,7 +2195,7 @@
                                , shift: 2 //弹出动画
                                , area: ["90%", "90%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ['../../Baseset/基础资料/Gy_MaterialList.html', 'yes']
                                , content: ['../../基础资料/公用基础资料/Gy_Material.html?openType=2&HOrgID=' + HOrgID, 'yes']
                                , btn: ["确定", "取消"]
                                , btn1: function (index, laero) {
                                    //按钮一  çš„回调
@@ -1354,14 +2208,28 @@
                                    //更新表格缓存的数据
                                    obj.update({
                                        "HMaterID": checkStatus.data[0].HItemID
                                        , "物料代码": checkStatus.data[0].HNumber
                                        , "物料名称": checkStatus.data[0].HName
                                        , "规格型号": checkStatus.data[0].HModel
                                        "HMaterID": checkStatus.data[0].HItemID,
                                        "物料代码": checkStatus.data[0].物料代码,
                                        "物料名称": checkStatus.data[0].物料名称,
                                        "规格型号": checkStatus.data[0].规格型号
                                        , "HUnitID": checkStatus.data[0].HUnitID
                                        , "计量单位": checkStatus.data[0].HUnitName
                                        , "计量单位": checkStatus.data[0].计量单位名称
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                                , end: function () {
                                    if (typeof (HDataTemp.HItemID) != "undefined") {
                                        //更新表格缓存的数据
                                        obj.update({
                                            "HMaterID": HDataTemp.HItemID
                                            , "物料代码": HDataTemp.物料代码
                                            , "物料名称": HDataTemp.物料名称
                                            , "规格型号": HDataTemp.规格型号
                                            , "HUnitID": HDataTemp.HUnitID
                                            , "计量单位": HDataTemp.计量单位名称
                                        })
                                        HDataTemp = {};
                                    }
                                }
                            })
                        }
@@ -1375,7 +2243,7 @@
                                , shift: 2 //弹出动画
                                , area: ["90%", "90%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ['../../Baseset/基础资料/Gy_UnitList.html', 'yes']
                                , content: ['../../基础资料/公用基础资料/Gy_Unit.html', 'yes']
                                , btn: ["确定", "取消"]
                                , btn1: function (index, laero) {
                                    //按钮一  çš„回调
@@ -1387,10 +2255,20 @@
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "计量单位": checkStatus.data[0].HName
                                        "计量单位": checkStatus.data[0].计量单位名称
                                        , "HUnitID": checkStatus.data[0].HItemID
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                                , end: function () {
                                    if (typeof (HDataTemp.HItemID) != "undefined") {
                                        //更新表格缓存的数据
                                        obj.update({
                                            "HUnitID": HDataTemp.HItemID
                                            , "计量单位": HDataTemp.计量单位名称
                                        })
                                        HDataTemp = {};
                                    }
                                }
                            })
                        }
@@ -1404,7 +2282,7 @@
                                , shift: 2 //弹出动画
                                , area: ["90%", "90%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ['../../Baseset/基础资料/Gy_WarehouseList.html', 'yes']
                                , content: ['../../基础资料/公用基础资料/Gy_Warehouse.html?type=HWHSub', 'yes']
                                , btn: ["确定", "取消"]
                                , btn1: function (index, laero) {
                                    //按钮一  çš„回调
@@ -1416,43 +2294,50 @@
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "发货仓库": checkStatus.data[0].HName
                                        , "HWHID": checkStatus.data[0].HItemID
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                            })
                        }
                        //销售订单
                        if (obj.event == "HSeOrderBillNo") {
                            layer.open({
                                type: 2
                                , skin: "layui-layer-rim" //加上边框
                                , title: "销售订单列表"  //标题
                                , closeBtn: 1  //窗体右上角关闭 çš„ æ ·å¼
                                , shift: 2 //弹出动画
                                , area: ["90%", "90%"] //窗体大小
                                , maxmin: true //设置最大最小按钮是否显示
                                , content: ['../../销售管理/销售订单/Xs_SeOrderBillList.html', 'yes']
                                , btn: ["确定", "取消"]
                                , btn1: function (index, laero) {
                                    //按钮一  çš„回调
                                    var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                                    var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                                    if (checkStatus.data.length != 1) {
                                        return layer.msg("请选择一条数据");
                                    }
                                    //更新表格缓存的数据
                                    obj.update({
                                        "HSeOrderInterID": checkStatus.data[0].hmainid
                                        , "HSeOrderEntryID": checkStatus.data[0].hsubid
                                        , "HSeOrderBillNo": checkStatus.data[0].单据号
                                        "HWHID": checkStatus.data[0].HItemID,
                                        "发货仓库": checkStatus.data[0].仓库名称
                                    })
                                    layer.close(index);//关闭弹窗
                                }
                                , end: function () {
                                    obj.update({
                                        "HWHID": OptionData.HItemID
                                        , "发货仓库": OptionData.仓库名称
                                    })
                                }
                            })
                        }
                        ////销售订单
                        //if (obj.event == "HSeOrderBillNo") {
                        //    layer.open({
                        //        type: 2
                        //        , skin: "layui-layer-rim" //加上边框
                        //        , title: "销售订单列表"  //标题
                        //        , closeBtn: 1  //窗体右上角关闭 çš„ æ ·å¼
                        //        , shift: 2 //弹出动画
                        //        , area: ["90%", "90%"] //窗体大小
                        //        , maxmin: true //设置最大最小按钮是否显示
                        //        , content: ['../../销售管理/销售订单/Xs_SeOrderBillList.html', 'yes']
                        //        , btn: ["确定", "取消"]
                        //        , btn1: function (index, laero) {
                        //            //按钮一  çš„回调
                        //            var iframeWindow = window["layui-layer-iframe" + index];//获取弹框页面
                        //            var checkStatus = iframeWindow.layui.table.checkStatus("mainTable");//获取选中的数据
                        //            if (checkStatus.data.length != 1) {
                        //                return layer.msg("请选择一条数据");
                        //            }
                        //            //更新表格缓存的数据
                        //            obj.update({
                        //                "HSeOrderInterID": checkStatus.data[0].hmainid
                        //                , "HSeOrderEntryID": checkStatus.data[0].hsubid
                        //                , "HSeOrderBillNo": checkStatus.data[0].单据号
                        //            })
                        //            layer.close(index);//关闭弹窗
                        //        }
                        //    })
                        //}
                        obj.event = "";
                        return false;
                    }
@@ -1482,9 +2367,25 @@
            //#region åœ¨æœ«å°¾å¢žåŠ ä¸€è¡Œ
            function btnAddLine(NewRow) {
                if (option.data.length > 0) {
                    NewRow.HisStockGoods = option.data[0]["HisStockGoods"];
                } else {
                    NewRow.HisStockGoods = "false";
                }
                table.cache["mainTable"].push(NewRow);
                option.data = table.cache["mainTable"];
                table.render(option);
                //刷新表格同时根据option中HisStockGoods值设置下拉列表
                setSelectHisStockGoodsByTableRender();
                //根据是否取库存获取定金比例
                //setHEarnestRateByHisStockGoods();
                //设置表头所需金额
                set_HBillMoney($("#HEarnestRate").val() * 1);
                //rows++;
                layer.msg('增加一行按钮!')
            }
@@ -1639,12 +2540,15 @@
                    success: function (data1) {
                        if (data1.data.length != 0) {
                            var dataCol = [];//数据库查询出的列数据
                            var titleData = ["HMaterID", "HUnitID", "HWHID", "HSeOrderInterID", "HSeOrderEntryID", "应发数量", "满车重量", "空车重量", "回车重量", "成本单价", "成本金额", "销售单价", "销售订单号"];//不需要显示的字段 å¯æ‰©å±•
                            var titleData = ["HMaterID", "HUnitID", "HWHID", "满车重量", "空车重量", "回车重量", "成本单价", "成本金额", "销售单价", "销售订单内码", "销售订单子内码", "销售订单号","源单内码","源单子内码","源单号","源单类型","关联数量","关联金额","HSPID","仓位","HSPGroupID","仓位组","HSCWHID","调出仓库","HSCSPID","调出仓位","批次","采购订单内码","采购订单子内码","采购订单号","HPropertyID","辅助属性","HSecUnitID","辅助计量单位","换算率","发动机号","地盘号","出厂证"];//不需要显示的字段 å¯æ‰©å±•
                            //titleData = [];
                            dataCol = data1.data[0].HGridString.split(',');
                            for (var i = 0; i < option.cols[0].length - 2; i++) {
                                if (i > dataCol.length - 1) {
                                    return;
                                }
                                var dataCols = dataCol[i].split('|');
                                //隐藏列
                                if (dataCols[1] == 1) {
@@ -1712,6 +2616,430 @@
                })
            }
            //#endregion
            //#region é€‰æ‹©æºå•-销售订单
            function setInitBySeOrderBill(checkStatus) {
                var dataArray = [];
                var HCusName = getPushSourceBillInit(checkStatus.data[0].hmainid, checkStatus.data[0].hsubid).客户;
                var HEmpName = getPushSourceBillInit(checkStatus.data[0].hmainid, checkStatus.data[0].hsubid).业务员;
                for (var i = 0; i < checkStatus.data.length; i++) {
                    var temp = getPushSourceBillInit(checkStatus.data[i].hmainid, checkStatus.data[i].hsubid);
                    if (temp != "none") {
                        dataArray.push(temp);
                        if (temp.状态 != "已审核") {
                            layer.msg("下推失败!单据号【" + temp.单据号 + "】单据状态不为已审核状态!");
                            return;
                        }
                        if (temp.行状态 == "已关闭") {
                            layer.msg("下推失败!单据号【" + temp.单据号 + "】下选中的记录中存在已关闭状态的记录!");
                            return;
                        }
                        if (temp.客户 != HCusName) {
                            layer.msg("下推失败!已经选中的记录中存在不同客户!");
                            return;
                        }
                        if (temp.业务员 != HEmpName) {
                            layer.msg("下推失败!已经选中的记录中存在不同业务员!");
                            return;
                        }
                    } else {
                        return;
                    }
                }
                form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                    "HDeptID": dataArray[0].HDeptID
                    , "HDeptName": dataArray[0].部门
                    , "HEmpID": dataArray[0].HEmpID
                    , "HEmpName": dataArray[0].业务员
                    , "HManagerID": dataArray[0].HManagerID
                    , "HManagerName": dataArray[0].主管
                    , "HMainSourceInterID": "0"
                    , "HMainSourceEntryID": "0"
                    , "HMainSourceBillNo": ""
                    , "HMainSourceBillType": $("#BillType").val()
                    , "HSupID": dataArray[0].HCusID
                    , "HSupName": dataArray[0].客户
                    , "HLinkMan": dataArray[0].联系人
                    , "HLinkPhone": dataArray[0].联系电话
                    , "HSellSID": dataArray[0].HSellSID
                    , "HSellSName": dataArray[0].销售方式
                    , "HCurID": dataArray[0].HCurID
                    , "HCurName": dataArray[0].币别
                    , "HExRate": dataArray[0].汇率
                    , "HProjectID": dataArray[0].HProjectID
                    , "HProjectNumber": dataArray[0].项目编码
                    , "HProjectName": dataArray[0].项目名称
                });
                //子表  èµ‹å€¼
                var rowdata = [];
                for (var i = 0; i < dataArray.length; i++) {
                    rowdata.push(
                        {
                            "HMaterID": dataArray[i].HMaterID
                            , "物料代码": dataArray[i].物料代码
                            , "物料名称": dataArray[i].物料名称
                            , "规格型号": dataArray[i].规格型号
                            , "HUnitID": dataArray[i].HUnitID
                            , "计量单位": dataArray[i].计量单位
                            , "HQtyMust": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HQty": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HPieceQty": "0"
                            , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                            , "HTaxPrice": dealDoubleToFixed(dataArray[i].含税单价, 3)
                            , "HTaxRate": dataArray[i].税率
                            , "HMoney": dealDoubleToFixed(dataArray[i].金额, 2)
                            , "HTaxMoney": dealDoubleToFixed(dataArray[i].价税合计, 2)
                            , "HWHID": $("#HWHID").val()
                            , "发货仓库": $("#HWHName").val()
                            , "HRemark": ""
                            , "HQty_Full": "0"
                            , "HQty_Empty": "0"
                            , "HQty_Back": "0"
                            , "HCostPrice": "0"
                            , "HCostMoney": "0"
                            , "HSalePrice": "0"
                            , "HSeOrderInterID": dataArray[i].hmainid
                            , "HSeOrderEntryID": dataArray[i].hsubid
                            , "HSeOrderBillNo": dataArray[i].单据号
                            , "HSourceInterID": dataArray[i].hmainid
                            , "HSourceEntryID": dataArray[i].hsubid
                            , "HSourceBillNo": dataArray[i].单据号
                            , "HSourceBillType": dataArray[i].HBillType
                            , "HRelationQty": "0"
                            , "HRelationMoney": "0"
                            , 'HSPID': "0"
                            , 'HSPName': ""
                            , 'HSPGroupID': "0"
                            , "HSPGroupName": ""
                            , 'HSCWHID': "0"
                            , 'HSCWHName': ""
                            , 'HSCSPID': "0"
                            , 'HSCSPName': ""
                            , 'HBatchNo': ""
                            , 'HPOOrderInterID': "0"
                            , 'HPOOrderEntryID': "0"
                            , 'HPOOrderBillNo': ""
                            , 'HPropertyID': "0"
                            , 'HPropertyName': ""
                            , 'HSecUnitID': "0"
                            , 'HSecUnitName': ""
                            , 'HSecUnitRate': "0"
                            , 'HEngineNum': ""
                            , 'HUnderPanNum': ""
                            , 'HLeaveFactCard': ""
                        }
                    );
                }
                option.data = rowdata;
                table.render(option);
            }
            //#endregion
            //#region é€‰æ‹©æºå•-发货通知单
            function setInitBySeOutStockBill(checkStatus) {
                var dataArray = [];
                for (var i = 0; i < checkStatus.data.length; i++) {
                    var temp = getPushSeOutStockBillInit(checkStatus.data[i].hmainid, checkStatus.data[i].hsubid);
                    if (temp != "none") {
                        dataArray.push(temp);
                        if (temp.审核人 != "") {
                            layer.msg("下推失败!单据号【" + temp.单据号 + "】单据状态不为已审核状态!");
                            return;
                        }
                        if (temp.关闭人 != "") {
                            layer.msg("下推失败!单据号【" + temp.单据号 + "】下选中的记录中存在已关闭状态的记录!");
                            return;
                        }
                    } else {
                        return;
                    }
                }
                form.val("component-form-group", { //formTest å³ class="layui-form" æ‰€åœ¨å…ƒç´ å±žæ€§ lay-filter="" å¯¹åº”的值
                    "HDeptID": dataArray[0].HDeptID
                    , "HDeptName": dataArray[0].部门
                    , "HEmpID": dataArray[0].HEmpID
                    , "HEmpName": dataArray[0].业务员
                    , "HManagerID": dataArray[0].HManagerID
                    , "HManagerName": dataArray[0].主管
                    , "HMainSourceInterID": "0"
                    , "HMainSourceEntryID": "0"
                    , "HMainSourceBillNo": ""
                    , "HMainSourceBillType": $("#BillType").val()
                    , "HSupID": dataArray[0].HCusID
                    , "HSupName": dataArray[0].客户
                    , "HLinkMan": dataArray[0].联系人
                    , "HLinkPhone": dataArray[0].联系电话
                    , "HSellSID": "0"
                    , "HSellSName": dataArray[0].销售方式
                    , "HCurID": dataArray[0].HCurID
                    , "HCurName": dataArray[0].币别
                    , "HExRate": dataArray[0].汇率
                    , "HProjectID": dataArray[0].HProjectID
                    , "HProjectNumber": dataArray[0].项目编码
                    , "HProjectName": dataArray[0].项目名称
                });
                //子表  èµ‹å€¼
                var rowdata = [];
                for (var i = 0; i < dataArray.length; i++) {
                    rowdata.push(
                        {
                            "HMaterID": dataArray[i].HMaterID
                            , "物料代码": dataArray[i].物料代码
                            , "物料名称": dataArray[i].物料名称
                            , "规格型号": dataArray[i].规格型号
                            , "HUnitID": dataArray[i].HUnitID
                            , "计量单位": dataArray[i].计量单位
                            , "HQtyMust": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HQty": dealDoubleToFixed(dataArray[i].数量, 1)
                            , "HPieceQty": "0"
                            , "HPrice": dealDoubleToFixed(dataArray[i].单价, 3)
                            , "HTaxPrice": "0"
                            , "HTaxRate": dataArray[i].税率
                            , "HMoney": dealDoubleToFixed(dataArray[i].金额, 2)
                            , "HTaxMoney": "0"
                            , "HWHID": $("#HWHID").val()
                            , "发货仓库": $("#HWHName").val()
                            , "HRemark": ""
                            , "HQty_Full": "0"
                            , "HQty_Empty": "0"
                            , "HQty_Back": "0"
                            , "HCostPrice": "0"
                            , "HCostMoney": "0"
                            , "HSalePrice": "0"
                            , "HSeOrderInterID": dataArray[i].hmainid
                            , "HSeOrderEntryID": dataArray[i].hsubid
                            , "HSeOrderBillNo": dataArray[i].单据号
                            , "HSourceInterID": dataArray[i].hmainid
                            , "HSourceEntryID": dataArray[i].hsubid
                            , "HSourceBillNo": dataArray[i].单据号
                            , "HSourceBillType": dataArray[i].HBillType
                            , "HRelationQty": "0"
                            , "HRelationMoney": "0"
                            , 'HSPID': "0"
                            , 'HSPName': ""
                            , 'HSPGroupID': "0"
                            , "HSPGroupName": ""
                            , 'HSCWHID': "0"
                            , 'HSCWHName': ""
                            , 'HSCSPID': "0"
                            , 'HSCSPName': ""
                            , 'HBatchNo': ""
                            , 'HPOOrderInterID': "0"
                            , 'HPOOrderEntryID': "0"
                            , 'HPOOrderBillNo': ""
                            , 'HPropertyID': "0"
                            , 'HPropertyName': ""
                            , 'HSecUnitID': "0"
                            , 'HSecUnitName': ""
                            , 'HSecUnitRate': "0"
                            , 'HEngineNum': ""
                            , 'HUnderPanNum': ""
                            , 'HLeaveFactCard': ""
                        }
                    );
                }
                option.data = rowdata;
                table.render(option);
            }
            //#endregion
            //#region åå®¡æ ¸/审核数据
            function set_CheckBill(num) {
                var InterID = $("#HInterID").val();
                //逻辑审核方法
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/Kf_SellOutBill/AuditKf_SellOutBill", //方法所在页面和方法名
                    data: { "HInterID": InterID, "IsAudit": num, "CurUserName": sessionStorage["HUserName"] },
                    success: function (result) {
                        if (result.count == 1) {
                            layer.msg(result.Message, { time: 1 * 1000, icon: 1 }, function () {
                                // å¾—到frame索引
                                var index = layer.getFrameIndex(window.name);
                                //关闭当前frame
                                layer.close(index);
                            });
                        } else {
                            layer.alert(result.code + result.Message, { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region æ‰“印
            function get_PrintReport() {
                //#region åˆ¤æ–­æºå•状态
                var HSourceBillData = "";
                var HSourceBillData = getSourceBillStatus_SellOutBill();            //获取源单数据
                if (HSourceBillData != "none") {
                    if (HSourceBillData.length == 0) {
                        layer.alert("打印失败!未查询到单据信息!", { icon: 5 });
                        return;
                    } else if (HSourceBillData[0]["状态"] != "已审核") {
                        layer.alert("打印失败!单据状态未为'已审核'状态!", { icon: 5 });
                        return;
                    }
                } else {
                    return;
                }
                //#endregion
                var InterID = $("#HInterID").val();
                $.ajax({
                    type: "GET",
                    url: GetWEBURL() + "/Kf_SellOutBill/CheckSellOutBill_IsExist", //方法所在页面和方法名
                    data: { "HInterID": InterID },
                    success: function (result) {
                        if (result.count == 1) {
                            layer.open({
                                type: 2
                                , area: ['50%', '50%']
                                , title: '打印模版选择'
                                , shade: 0.6 //遮罩透明度
                                , maxmin: false //允许全屏最小化
                                , anim: 0 //0-6的动画形式,-1不开启
                                , content: ['../../BaseSet/SRM_OpenTmpList.html?linterid=' + InterID + '&MyMsg=' + InterID + '&Type=Kf_SellOutBillList', 'yes']
                                , resize: false
                            })
                        } else {
                            layer.alert(result.code + result.Message, { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#region æ ¹æ®ä¸»å†…码与子内码获取源单销售订单数据
            function getPushSourceBillInit(HSourceInterID, HSourceEntryID) {
                var res = "none";
                $.ajax({
                    url: GetWEBURL() + "/Xs_SeOrderBill/loadXs_SeOrderBill_Push",
                    async: false,
                    type: "GET",
                    data: {
                        "HInterID": HSourceInterID
                        , "HSubID": HSourceEntryID
                    },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            res = result.data[0];
                        } else {
                            res = result.data;
                            //layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                    }, error: function () {
                        res = "none";
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
                return res;
            }
            //#endregion
            //#region æ ¹æ®ä¸»å†…码与子内码获取源单发货通知单数据
            function getPushSeOutStockBillInit(HSourceInterID, HSourceEntryID) {
                var res = "none";
                $.ajax({
                    url: GetWEBURL() + "/Kf_SellOutBill/loadXs_SeOutStockBill_Push",
                    async: false,
                    type: "GET",
                    data: {
                        "HInterID": HSourceInterID
                        , "HSubID": HSourceEntryID
                    },
                    success: function (result) {
                        if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                            res = result.data[0];
                        } else {
                            res = result.data;
                            //layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                        }
                    }, error: function () {
                        res = "none";
                        layer.alert("发生错误!", { icon: 5 });
                    }
                });
                return res;
            }
            //#endregion
            //#region èŽ·å–é”€å”®å‡ºåº“å•å•æ®çŠ¶æ€
            function getSourceBillStatus_SellOutBill() {
                var HSourceBillData = "none";
                var sWhere = " and hmainid = " + $("#HInterID").val();
                $.ajax({
                    url: GetWEBURL() + '/Kf_SellOutBill/GetSellOutBillList',
                    async: false,
                    type: "GET",
                    data: { "sWhere": sWhere, "user": sessionStorage["HUserName"] },
                    success: function (data1) {
                        if (data1.count == 1) {
                            HSourceBillData = data1.data;
                        } else {
                            layer.alert(data1.code + "单据状态判断失败!", { icon: 5 });
                        }
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
                return HSourceBillData;
            }
            //#endregion
            //#region èŽ·å–é”€å”®å‡ºåº“å•å¯¹åº”çš„æ¡ç æ˜Žç»†
            function getBarCodeNoteBySellOutBill() {
                $.ajax({
                    url: GetWEBURL() + '/Kf_SellOutBill/BarCodeNote',
                    async: false,
                    type: "GET",
                    data: { "HInterID": linterid },
                    success: function (data1) {
                        if (data1.count == 1) {
                            if (data1.data[2].length > 0) {
                                layer.alert("当前单据由扫码生成,不可以编辑!", { icon: 5 });
                                $('#set_SaveBill').addClass("layui-btn-disabled").attr("disabled", true);
                            }
                        } else {}
                    }, error: function () {
                        layer.alert("接口请求失败!", { icon: 5 });
                    }
                });
            }
            //#endregion
            //#endregion
@@ -1726,8 +3054,12 @@
        function GetHSupValue(obj)  //返回客户
        {
            $("#HSupName").val(obj[0].HName);
            $("#HSupID").val(obj[0].HItemID);
            //$("#HSupName").val(obj[0].HName);
            //$("#HSupID").val(obj[0].HItemID);
            //根据客户获取相关信息
            getCustomerByCusID(obj[0].HItemID);
            //根据客户获取客户余额
            getCustomerBalance(obj[0].HItemID);
        }
        function GetHManagerValue(obj)  //返回主管
@@ -1742,11 +3074,11 @@
            $("#HDeptID").val(obj[0].HItemID);
        }
        function GetHWHValue(obj)  //返回仓库
        {
            $("#HWHName").val(obj[0].HName);
            $("#HWHID").val(obj[0].HItemID);
        }
        //function GetHWHValue(obj)  //返回仓库
        //{
        //    //$("#HWHName").val(obj[0].HName);
        //    //$("#HWHID").val(obj[0].HItemID);
        //}
        function GetSellStyleValue(obj)  //返回销售方式
        {
@@ -1756,13 +3088,13 @@
        function GetHKeeperValue(obj)  //返回保管员
        {
            $("#HKeeperName").val(obj[0].HName);
            $("#HKeeperName").val(obj[0].职员名称);
            $("#HKeeperID").val(obj[0].HItemID);
        }
        function GetHWorkerValue(obj)  //返回发货人(操作工)
        function GetHSecManagerValue(obj)  //返回发货人(操作工)
        {
            $("#HSecManagerName").val(obj[0].HName);
            $("#HSecManagerName").val(obj[0].职员名称);
            $("#HSecManagerID").val(obj[0].HItemID);
        }
@@ -1778,6 +3110,161 @@
            $("#HConveyCompID").val(obj[0].HItemID);
        }
        //function GetHSCWHNAMEValue(obj) { //返回出库仓库
        //    $("#HWHName").val(obj[0].HName);
        //    $("#HWHID").val(obj[0].HItemID);
        //}
        function GetHGroupValue(obj)  //返回班组
        {
            $("#HGroupID").val(obj[0].HItemID);
            $("#HGroupName").val(obj[0].班组名称);
        }
        //项目代码
        function GetProjectBillValue(obj) {
            if (obj[0].关闭人 == null || obj[0].关闭人 == "") {
                $("#HProjectID").val(obj[0].HInterID);
                $("#HProjectNumber").val(obj[0].项目代码);//工程项目代码
                $("#HProjectName").val(obj[0].项目名称);//工程项目代码
            } else {
                layer.msg("该项目已关闭,不可选择!");
            }
        }
        //双击返回仓库
        function GetHWHSubValue(data) {
            OptionData = data[0]
        }
        function GetHWHValue(obj)  //返回仓库
        {
            $("#HWHName").val(obj[0].仓库名称);
            $("#HWHID").val(obj[0].HItemID);
            if (option.data.length > 0) {
                for (var i = 0; i < option.data.length; i++) {
                    if (option.data[i]["HWHID"] == 0 || option.data[i]["发货仓库"] == undefined) {
                        option.data[i]["HWHID"] = obj[0].HItemID;
                        option.data[i]["发货仓库"] = obj[0].仓库名称;
                    }
                }
            }
            layui.table.render(option);
        }
        function GetMaterValue(obj)           //物料名称
        {
            HDataTemp = obj[0];
        }
        function GetUnitValue(obj)           //计量单位
        {
            HDataTemp = obj[0];
        }
        function GetHSubWHValue(obj)  //子表发货仓库
        {
            HDataTemp = obj[0];
        }
        //#region æ ¹æ®å®¢æˆ·èŽ·å–å¸åˆ«ã€æ±‡çŽ‡ã€ç»“ç®—æ–¹å¼ã€å®¢æˆ·ä¿¡ç”¨é¢åº¦ã€è”ç³»äººã€è”ç³»ç”µè¯
        function getCustomerByCusID(HCusID) {
            $.ajax({
                url: GetWEBURL() + "/Xs_SeOrderBill/getCustomerByCusID",
                async: false,
                type: "GET",
                data: {
                    "HCusID": HCusID
                },
                success: function (result) {
                    if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                        var data = result.data[0];
                        $("#HSupID").val(data.HCusID);
                        $("#HSupName").val(data.HCusName);
                        $("#HCreditRating_Now").val(data.HCreditRating_Now);
                        $("#HLinkMan").val(data.HLinkMan);
                        $("#HLinkPhone").val(data.HLinkPhone);
                    } else {
                        layer.alert(result.msg, { icon: 5, btn: ['退出'], time: 100000, offset: 't' });
                    }
                }, error: function () {
                    layer.alert("发生错误!", { icon: 5 });
                }
            });
        }
        //#endregion
        //#region æ ¹æ®å®¢æˆ·èŽ·å–å®¢æˆ·ä½™é¢
        function getCustomerBalance(HCusID) {
            $.ajax({
                url: GetWEBURL() + "/Xs_CusRatingChangeBill/getCustomerBalance",
                async: false,
                type: "GET",
                data: {
                    "HCusID": HCusID
                    , "CurUserName": sessionStorage["HUserName"]
                },
                success: function (result) {
                    if (result.code == 1) { // è¯´æ˜ŽéªŒè¯æˆåŠŸäº†ï¼Œ
                        var data = result.data[0];
                        $("#HCusBalance").val(data.HCusBalance == null ? 0 : data.HCusBalance);
                        $("#HCreditRating_Now").val(data.HCreditRating_Now == null ? 0 : data.HCreditRating_Now);
                        $("#HAvailableBalance").val(data.HAvailableBalance == null ? 0 : data.HAvailableBalance);
                    } else {
                        $("#HCusBalance").val("");
                        $("#HCreditRating_Now").val("");
                        $("#HAvailableBalance").val("");
                        //layer.alert(result.Message, { icon: 5});
                    }
                }, error: function () {
                    layer.alert("发生错误!", { icon: 5 });
                    $("#HCusBalance").val("");
                    $("#HCreditRating_Now").val("");
                    $("#HAvailableBalance").val("");
                }
            });
        }
        //#endregion
        //#region å¤„理小数显示位数(data:需要处理的数据;num:数据的类型(如1:数量;2:金额;3:单价))
        function dealDoubleToFixed(data, num) {
            //用于设置小数位数
            var dotLength = 0;
            if (num == 1) {                                    //当数据为数量时,最多保留6位小数
                //设置最多保留6位小数
                dotLength = 6;
            } else if (num == 2) {                             //当数据为金额时,最多保留2位小数
                //设置最多保留2位小数
                dotLength = 2;
            } else if (num == 3) {                             //当数据为单价时,最多保留4位小数
                //设置最多保留4位小数
                dotLength = 4;
            }
            //判断是否存在小数点及其索引位置
            data = data + "";
            var index = data.indexOf(".");
            //处理数据并返回
            if (index < 0) {
                return data * 1;
            } else {
                //获取小数位数
                var length = data.length - index - 1;
                if (length <= dotLength) {
                    return data * 1;
                } else {
                    data = data * 1;
                    return data.toFixed(dotLength);
                }
            }
        }
            //#endregion
    </script>
</body>
</html>