| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261 |
- <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
- <%@include file="/context/mytags.jsp"%>
- <!doctype html>
- <html>
- <head>
- <t:base type="jquery,easyui,tools,DatePicker"></t:base>
- <meta charset="utf-8" />
- <meta name="spreadjs culture" content="zh-cn" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <style>
- .sample-spreadsheets {
- width: calc(100% - 350px);
- height: 100%;
- overflow: hidden;
- float: left;
- }
- .sample-spreadsheets-statusBar {
- width: calc(100% - 350px);
- overflow: hidden;
- float: left;
- }
- .options-container{
- /* float: right;*/
- width: 350px;
- padding: 12px;
- height: 100%;
- box-sizing: border-box;
- background: #fbfbfb;
- overflow: auto;
- }
- .option-row {
- font-size: 14px;
- padding: 5px;
- margin-top: 10px;
- }
- </style>
- <script>
- <c:if test="${periodEntity==null}">
- alert('${tempSheet.periodYear}年未设置预算周期,请联系管理员');
- history.go(-1);
- </c:if>
- </script>
- </head>
- <body style="background:#FFFFFF">
- <!-- <form id="form1" runat="server"> -->
- <div>
- <div id="div2">
- <%@include file="budgetTempSheet-buttons.jsp"%>
- </div>
- <%-- //保洁耗材 rootA02 办公用品 rootA03 工程耗材 rootA01 保安耗材 rootA10 会务耗材 rootA08
- // 工作服 gzf 代采购 dcg
- // 低值易耗 R003 固定资产 rootA04--%>
- <div class="sample-tutorial" style="top: 20px;width:calc(100vw - 80px); height: calc(100vh - 120px);">
- <div id="ss" class="sample-spreadsheets" ></div>
- <div id="statusBar" class="sample-spreadsheets-statusBar"></div>
- <div class="options-container">
- <div class="option-row" style="text-align:center">
- ${tempSheet.name}
- </div>
- <div class="option-row" id="bindMeasureDiv">
- <fieldset style="border:1px solid #666666;padding:5px">
- <legend>绑定维度</legend>
- <table>
- <tr>
- <td>${ordersKindTxt}:</td>
- <td><input type="text" id="${tempSheet.ordersKind}" style="width: 150px;" readonly="readonly"></td>
- <td>
- <c:if test="${!readonly}">
- <a href="#" class="easyui-linkbutton l-btn" iconcls="icon-synchronization" onclick="bindOneMeasure('${tempSheet.ordersKind}')">
- 绑定
- </a>
- </c:if>
- </td>
- </tr>
- <c:if test="${tempSheet.ordersKindType=='dizhi'}">
- <c:forEach items="${subCategoryList}" var="goodsCategory" varStatus="status">
- <tr>
- <td>${goodsCategory.categoryName}:</td>
- <td><input type="text" id="${goodsCategory.categoryCode}" style="width: 150px;" readonly="readonly"></td>
- <td>
- <c:if test="${!readonly}">
- <a href="#" class="easyui-linkbutton l-btn" iconcls="icon-synchronization" onclick="bindOneSubMeasure('${goodsCategory.categoryCode}',${status.index})">
- 绑定
- </a>
- </c:if>
- </td>
- </tr>
- </c:forEach>
- </c:if>
- <tr>
- <td>时间维度:</td>
- <td><input type="text" id="periodDetialName" style="width: 150px;" readonly="readonly"></td>
- <td>
- <c:if test="${!readonly}">
- <a href="#" class="easyui-linkbutton l-btn" iconcls="icon-synchronization" onclick="bindPeriodDetail()">
- 绑定
- </a>
- </c:if>
- </td>
- </tr>
- <tr>
- <td>含税维度:</td>
- <td>
- <input type="radio" id="includeTax1" name="includeTax" value="1" onclick="setIncludeTax(1)">含税
- <input type="radio" id="includeTax0" name="includeTax" value="0" onclick="setIncludeTax(0)">不含税
- </td>
- </tr>
- <tr>
- <td>预实维度:</td>
- <td>
- <input type="radio" id="expect1" name="expect" value="1" onclick="setExpect(1)">预算数
- <input type="radio" id="expect0" name="expect" value="0" onclick="setExpect(0)">实际数
- </td>
- </tr>
- </table>
- </fieldset>
- </div>
- </div>
- </div>
- </div>
- <c:choose>
- <c:when test="${tempSheet.ordersKindType=='m'}">
- <script src="webpage/cn/com/lzt/budget/tempsheet/js/tempsheet_orders_m_header.js" type="text/javascript"></script>
- </c:when>
- <c:when test="${tempSheet.ordersKindType=='gzf'}">
- <script src="webpage/cn/com/lzt/budget/tempsheet/js/tempsheet_orders_gzf_header.js" type="text/javascript"></script>
- </c:when>
- <c:when test="${tempSheet.ordersKindType=='dcg'}">
- <script src="webpage/cn/com/lzt/budget/tempsheet/js/tempsheet_orders_dcg_header.js" type="text/javascript"></script>
- </c:when>
- <c:when test="${tempSheet.ordersKindType=='dizhi'}">
- <script src="webpage/cn/com/lzt/budget/tempsheet/js/tempsheet_orders_dizhi_header.js" type="text/javascript"></script>
- </c:when>
- </c:choose>
- <script>
- var ordersKind='${tempSheet.ordersKind}';
- var ordersKindTxt='${ordersKindTxt}';
- var ordersKindType='${tempSheet.ordersKindType}';
- var ordersCategoryCode='${tempSheet.ordersCategoryCode}';
- var refYear='${tempSheet.refYear}';
- var defaultPeriodDetailInfo={periodDetailId:"${defaultPeriodDetailEntity.id}",periodDetailName:"${defaultPeriodDetailEntity.name}"};
- var sheetVar={};
- sheetVar.categoryTotalStartCol=-2;//统计开始列
- sheetVar.categoryCodeCol=-2;//分类存放列
- sheetVar.headerCount=-2;//头部行高
- var categoryTotalRow=0;
- function bindOneMeasure(id){
- var row,col;
- if(ordersKindType=='m'||ordersKindType=='dizhi' ||ordersKindType=='dcg' ||ordersKindType=='gzf'){
- row=1;
- col=2;
- }
- selectMeasure(function(selectedRows){
- var sheet = spread.getActiveSheet();
- var one =selectedRows[0];
- one.findKey="total";
- bindMeasureValue(sheet,row,col,one);
- $('#'+id).val(one.name);
- var val={};
- val["c_"+id]=one.name;
- addSheetTagValue(sheet,val)
- },'100%','100%');
- }
- function bindOneSubMeasure(categoryCode,index){
- selectMeasure(function(selectedRows){
- var sheet = spread.getActiveSheet();
- var one =selectedRows[0];
- var col = sheetVar.categoryTotalStartCol+index;
- var colCount = sheet.getColumnCount();
- if(col+1>colCount){
- var addColCount = col+1-colCount;
- sheet.addColumns(colCount,addColCount);
- for(var i=0;i<addColCount;i++){
- sheet.getRange(-1, colCount+i).visible(false);
- }
- }
- one.findKey=categoryCode;
- bindMeasureValue(sheet,categoryTotalRow,col,one);
- sheet.setFormula(categoryTotalRow,col,'SUMIF(AH:AH,'+'"'+categoryCode+'",'+'AG:AG)');
- $('#'+categoryCode).val(one.name);
- var val={};
- val["c_"+categoryCode]=one.name;
- addSheetTagValue(sheet,val)
- },'100%','100%');
- }
- function bindMeasureValue(sheet,row,col,selectRow){
- setDataCell(sheet,row,col);
- var valueObj = {measureId:selectRow.id,measureName:selectRow.name};
- valueObj.datatype=selectRow.datatype;
- valueObj.fractionNum=selectRow.fractionNum;
- valueObj.currencySymbol=selectRow.currencySymbol;
- valueObj.showType=selectRow.showType;
- valueObj.thousandth=selectRow.thousandth;
- valueObj.findKey=selectRow.findKey;
- var oldFormula = sheet.getFormula(row,col);
- if(oldFormula) {
- if(selectRow.datatype=='amount'){
- if(selectRow.showType=='ten_thousand'){
- sheet.setFormula(row,col,oldFormula+'/10000');
- }
- if(selectRow.showType=='hundred_million'){
- sheet.setFormula(row,col,oldFormula+'/100000000');
- }
- }else{
- var i = oldFormula.indexOf('/');
- if(i>0){
- sheet.setFormula(row,col,oldFormula.substr(0,i));
- }
- }
- }
- addCellTagValue(sheet,row,col,valueObj);
- setAmountFormat(sheet,row,col,valueObj);
- var tag = sheet.tag();
- if(tag){
- if(tag.periodDetailInfo){
- addCellTagValue(sheet,row,col,tag.periodDetailInfo);
- }
- if(typeof tag.includeTax!="undefined"){
- addCellTagValue(sheet,row,col,{includeTax:tag.includeTax});
- }
- if(typeof tag.expect !="undefined"){
- addCellTagValue(sheet,row,col,{expect:tag.expect});
- }
- }
- }
- function bindPeriodDetail() {
- selectPeriodDetail(periodYear,function(obj){
- var sheet = spread.getActiveSheet();
- addSheetTagValue(sheet,{periodDetailInfo:obj});
- loopDataCell(sheet,function(row,col){
- addCellTagValue(sheet,row,col,obj)
- });
- $('#periodDetialName').val(obj.periodDetailName);
- })
- }
- function setIncludeTax(include){
- var sheet = spread.getActiveSheet();
- var obj = {includeTax:include};
- addSheetTagValue(sheet,obj);
- loopDataCell(sheet,function(row,col){
- addCellTagValue(sheet,row,col,obj)
- });
- }
- function setExpect(expect){
- var sheet = spread.getActiveSheet();
- var obj = {expect:expect};
- addSheetTagValue(sheet,obj);
- loopDataCell(sheet,function(row,col){
- addCellTagValue(sheet,row,col,obj)
- });
- }
- </script>
- <script src="webpage/cn/com/lzt/budget/tempsheet/budgetTempSheet-measure4Orders.js?v=3" type="text/javascript"></script>
- </body>
- </html>
|