李宇
2021-01-27 d6c65a4e3d1ca7d9a7bd6806c99fee035d0a44eb
src/main/webapp/warehouse_reagent_use_person.xhtml
@@ -107,41 +107,232 @@
            <p:column headerText="条形码">
               <p:commandButton value="操作" styleClass="edit-btn" process="@form"
                  actionListener="#{warehouseStockMngController.onReagentCodeBtnClickForPerson(row)}"
                  update=":reagentCodeDialogForPerson">
                  update=":reagentCodeDialogForPerson,@(.startReagentCode),@(.endReagentCode)">
               </p:commandButton>
            </p:column>
         </p:dataTable>
      </p:panel>
   </h:form>
   <p:dialog id="apply-ui" header="领用单" widgetVar="printDialog" appendTo="@(body)" modal="true" resizable="false">
      <div id="printTarget">
         <div style=" margin: 11mm 27mm 0mm 30mm;">
            <h:form id="printDialog" style="width: 1100px">
               <p:outputPanel style="text-align: center;font-size: 14px;font-weight: 700;">#{warehouseStockMngController.printTable['head']}</p:outputPanel>
               <p:outputPanel style="text-align: center;font-size: 15px;margin: 20px;font-weight: 700;">#{warehouseStockMngController.printTable['title']}</p:outputPanel>
               <div>
                  <div style="display: flex;flex-direction: row;justify-content: flex-end;width: 1081px;">
                     <div style="width: 98px;">单据编号:</div>
                     <div style="width: 183px;">
<!--                                <input style="border: 0;" value="#{warehouseStockMngController.printTable['receiptNumber']}"/>-->
                                <p:inputText value="#{warehouseStockMngController.receiptNumber}" valueChangeListener="#{warehouseStockMngController.receiptNumberChange}">
                           <p:ajax event="valueChange" listener="#{warehouseStockMngController.receiptNumberChange()}"  />
                        </p:inputText>
                            </div>
                  </div>
               </div>
               <div style="margin: 10px 0;">
                  <div style="display: inline-flex;">
                     <div style="width: 100px;margin-left: 10px;">部门:</div>
                     <div style="width: 300px;">#{warehouseStockMngController.printTable['department']}</div>
                  </div>
                  <div style="display: inline-flex;">
                     <div style="width: 100px;">申购人:</div>
                     <div style="width: 200px;padding-top: 1px;">#{warehouseStockMngController.printTable['applyPerson']}</div>
                  </div>
                  <div style="display: inline-flex;float: right;">
                     <div style="width: 100px;">日期:</div>
                     <div style="width: 200px;padding-top: 1px;"><input style="border: 0;" value="#{warehouseStockMngController.printTable['date']}"/></div>
                  </div>
               </div>
               <div style="margin-bottom: 20px;">
                  <div style="display: inline-flex;">
                     <div style="width: 100px;margin-left: 10px;">课题组</div>
                     <div style="width: 300px;">#{warehouseStockMngController.printTable['project']}</div>
                  </div>
                  <div style="display: inline-flex;">
                     <div style="width: 100px;">使用地点:</div>
                     <div style="width: 200px;padding-top: 1px;">#{warehouseStockMngController.printTable['lab']}</div>
                  </div>
                  <div style="display: inline-flex;float: right;">
                     <div style="width: 100px;">联系方式:</div>
                     <div style="width: 200px;">
                        <input style="border: 0;" value="#{warehouseStockMngController.printTable['phone']}"/></div>
                  </div>
               </div>
               <p:dataTable id="printTB" styleClass="apply-list"
                         value="#{warehouseStockMngController.printTable['applyList']}" var="row" >
                  <p:column headerText="产品编号" width="150px;" style="text-align: center;">
                     <h:outputText value="#{row.productCode}" />
                  </p:column>
                  <p:column headerText="产品名称" width="150px;" style="text-align: center;">
                     <h:outputText value="#{row.productName}" />
                  </p:column>
                  <p:column headerText="管制品" width="100px;" style="text-align: center;">
                     <h:outputText value="#{row.controlProducts}" />
                  </p:column>
                  <p:column headerText="规格型号" width="160px;" style="text-align: center;">
                     <h:outputText value="#{row.reagentFormat}" />
                  </p:column>
                  <p:column headerText="包装" width="90px;" style="text-align: center;">
                     <h:outputText value="#{row.mainMetering==null?'':row.mainMetering.replace('null','')}" />
                  </p:column>
                  <p:column headerText="数量" width="90px;" style="text-align: center;">
                     <h:outputText value="#{row.num}" />
                  </p:column>
                  <p:column headerText="备注" width="170px;" style="text-align: center;">
                     <h:outputText value="#{row.memo}" />
                  </p:column>
               </p:dataTable>
               <div style="margin-top: 20px;margin-right: 94px;">
                  <div style="display: flex;flex-direction: row;justify-content: flex-end;">
                     <div style="width: 100px">签收人:</div>
                     <div style="width: 100px"></div>
                  </div>
               </div>
               <div style="margin: 10px 94px 10px 0;">
                  <div style="display: flex;flex-direction: row;justify-content: flex-end;">
                     <div style="width: 100px">日期:</div>
                     <div style="width: 100px"></div>
                  </div>
               </div>
               <p:panel styleClass="btn  no-print">
                  <p:commandButton value="关闭"
                               process="@this"
                               styleClass="yes-btn"
                               actionListener="#{warehouseStockMngController.onCancelBtnClick}"
                               style="position: relative;left: 20px;"
                               update=":centerRootPanel"
                               oncomplete="PF('printDialog').hide()">
                  </p:commandButton>
                  <div style="display: none" id="indirectPrint"></div>
                  <p:commandButton value="打印"
                               styleClass="yes-btn"
                               actionListener="#{warehouseStockMngController.associatedFlowReceiptNumber()}"
                               style="position: relative;left: 20px;"
                               >
                  </p:commandButton>
                  <script type="text/javascript" src="resources/js/print.js"/>
                  <script type="text/javascript">
                     $(function () {
                        $("#indirectPrint").on("click", function () {
                           jQuery.print('#printTarget')
                        })
                     })
                  </script>
               </p:panel>
            </h:form>
         </div>
      </div>
   </p:dialog>
   <p:dialog modal="true" header="领用详情" appendTo="@(body)" id="reagentCodeDialogForPerson"
      widgetVar="reagentCodeDialogForPerson" resizable="false" width="800" class="ui-dialog">
      widgetVar="reagentCodeDialogForPerson" resizable="false" width="1000" class="ui-dialog">
      <p:tabView dynamic="true" style="margin-left: 26px">
         <p:tab title="补贴条码">
         <p:tab title="补贴条码" id="applyInOrder">
            <h:form id="reagentCodeDialogForm2">
               <!--<p:panel styleClass="center-header content2">-->
               <p:panelGrid styleClass="center-header content2">
                  <p:row>
                     <p:column><p:outputLabel value="领用数量:"></p:outputLabel></p:column>
                     <p:column><p:inputNumber value="#{warehouseStockMngController.useNum}"
               <p:panelGrid styleClass="center-header content2" columns="6">
                  <p:column style="width: 60px !important;"><p:outputLabel value="仓库名:"/></p:column>
                     <p:selectOneMenu value="#{warehouseStockMngController.opeWarehouseReserve.warehouseId}" >
                           <p:ajax event="change" process="@this" listener="#{warehouseStockMngController.selectChangeReserve(warehouseStockMngController.opeWarehouseReserve.warehouseId)}"
                                 update="reserve"/>
                           <f:selectItems value="#{warehouseStockMngController.warehouseReserveList}"
                                       var="item"
                                       itemValue="#{item.warehouseId}"
                                       itemLabel="#{item.warehouseName}"/>
                     </p:selectOneMenu>
                     <p:column>
                        <p:outputLabel id="reserve"  value="可供库存:" style="width: 100px;">
                           <span style="color: #1c427b;font-weight: bolder;font-size: 20px">#{warehouseStockMngController.opeWarehouseReserve.reserve}</span>
                        </p:outputLabel>
                     </p:column>
                     <p:outputLabel value="领用数量:" style="width: 80px;"/>
                     <p:inputNumber value="#{warehouseStockMngController.useNum}"
                                        minValue="0" decimalPlaces="0"
                                        required="true" requiredMessage="请输入领用数量" id="useNum"/></p:column>
                     <p:column></p:column>
                     <p:column></p:column>
                  </p:row>
                  <p:row>
                     <p:column><p:outputLabel value="条形码开始">
                        <p:commandLink value="自动生成" process="@this useNum startReagentCode" action="#{warehouseStockMngController.handleEventForPerson}"  update="endReagentCode" >
                        </p:commandLink>
                     </p:outputLabel></p:column>
                     <p:column><p:inputText id="startReagentCode" value="#{warehouseStockMngController.startReagentCodeForPerson}" maxlength="32" required="true" requiredMessage="请输入条形码开始"/></p:column>
                     <p:column><p:outputLabel value="条形码结束"></p:outputLabel></p:column>
                     <p:column><p:inputText id="endReagentCode" value="#{warehouseStockMngController.endReagentCodeForPerson}" maxlength="32" required="true" requiredMessage="请输入条形码结束"/></p:column>
                  </p:row>
                                        required="true" requiredMessage="请输入领用数量" id="useNum"/>
                     <p:column>
                        <p:panel styleClass="btn" style="text-align: right">
                       <p:commandButton value="添加"
                                    process="@this,useNum"
                                    styleClass="yes-btn"
                                    actionListener="#{warehouseStockMngController.add2()}"
                                    update="@(.reagentCode),endReagentCode"
                                    style="position: relative;left: -8px;width: 62px;height: 34px;font-size: 12px;background-color: #ee7135">
                       </p:commandButton>
                        </p:panel>
                     </p:column>
               </p:panelGrid>
               <p:separator style="margin: 15px"/>
               <p:dataTable id="reagentCode" styleClass="reagentCode"
                            paginatorPosition="bottom"
                            lazy="true"
                            value="#{warehouseStockMngController.getDataTmp()}"
                            var="row"
                            rowKey="#{row.id}"
                             scrollable="false"
                             rows="5" pageLinks="5"
                            emptyMessage="无领用数据">
                     <p:column headerText="操作"  style="text-align: center;">
                        <p:commandButton  style="background: #e68280; border: 1px solid #e68280;color: white;" styleClass="store-btn"
                                      value="取消"
                                      actionListener="#{warehouseStockMngController.remove2(row)}"
                                      process="@this"
                                      update="@(.reagentCode),@(.endReagentCode)">
                        </p:commandButton>
                     </p:column>
                     <p:column headerText="仓库名" style="text-align: center;">
                        <h:outputText value="#{row.warehouseName}" />
                     </p:column>
                     <p:column headerText="试剂名称"  style="text-align: center;">
                        <h:outputText value="#{sysReagentService.getSysReagent(row.reagentId).name}" />
                     </p:column>
                     <p:column headerText="库存"  style="text-align: center;">
                        <h:outputText value="#{row.reserve}" />
                     </p:column>
                     <p:column headerText="领用数量" style="text-align: center;">
                        <h:outputText value="#{row.useNum}" />
                     </p:column>
                  </p:dataTable>
               <p:panelGrid styleClass="center-header content2" columns="4" id="code" style="margin-top:20px;">
                  <p:outputLabel value="条形码开始"/>
                  <p:inputText id="startReagentCode" styleClass="startReagentCode" value="#{warehouseStockMngController.startReagentCodeForPerson}" maxlength="32" required="true" requiredMessage="请输入条形码开始">
                     <p:ajax event="change" listener="#{warehouseStockMngController.btCodeChange()}" update="endReagentCode"/>
                  </p:inputText>
                  <p:outputLabel value="条形码结束"/>
                  <p:inputText id="endReagentCode" styleClass="endReagentCode" value="#{warehouseStockMngController.endReagentCodeForPerson}" maxlength="32" required="true" requiredMessage="请输入条形码结束"/>
               </p:panelGrid>
               <!--</p:panel>-->
               <p:panel styleClass="btn" style="text-align: right">
                  <p:commandButton value="确定"
@@ -153,7 +344,7 @@
               </p:panel>
            </h:form>
         </p:tab>
         <p:tab title="库中领取">
         <p:tab title="库中领取" id="applyInWarehouse">
            <h:form id="reagentCodeDialogForm">
               <p:panel styleClass="center-header content2">
                  <p:panelGrid styleClass="filter" columns="6">