Merge remote-tracking branch 'origin/master'
commit
6c3bd7cd69
|
@ -133,7 +133,7 @@ public class ProcurementTypeController extends BaseController{
|
|||
Map<String, String> searchInfo = getSearchInfo(keywords);
|
||||
downloadHeader(httpServletResponse , Utils.generateExcelName("采购类型表"), "application/octet-stream");
|
||||
String[] headers = {"采购类型名称","所属大类","创建人","创建时间"};
|
||||
String[] exportColumns = {"name","category","createdBy","createdTime"};
|
||||
String[] exportColumns = {"name","typeName","createdBy","createdTime"};
|
||||
ExportUtils.exportToExcel(headers, exportColumns, 1, 10000,
|
||||
httpServletResponse.getOutputStream(), (pN, pS) -> procurementTypeService.list(searchInfo, pN, pS).getList());
|
||||
}
|
||||
|
|
|
@ -32,6 +32,9 @@ public class ProcurementType {
|
|||
@Column(name = "created_by")
|
||||
private String createdBy;
|
||||
|
||||
@Transient
|
||||
private String typeName;
|
||||
|
||||
/**
|
||||
* 创建时间
|
||||
*/
|
||||
|
@ -39,6 +42,14 @@ public class ProcurementType {
|
|||
@Temporal(TemporalType.TIMESTAMP)
|
||||
private Date createdTime;
|
||||
|
||||
public String getTypeName() {
|
||||
return typeName;
|
||||
}
|
||||
|
||||
public void setTypeName(String typeName) {
|
||||
this.typeName = typeName;
|
||||
}
|
||||
|
||||
public Integer getId() {
|
||||
return id;
|
||||
}
|
||||
|
|
|
@ -412,6 +412,7 @@ public class AccountService {
|
|||
admin.setCreatedTime(new Date());
|
||||
admin.setLastUpdatedBy(createAdminId);
|
||||
admin.setLastUpdatedTime(new Date());
|
||||
admin.setEnabled(1);
|
||||
adminRepository.saveAndFlush(admin);
|
||||
|
||||
//设置当前用户角色关系状态为删除
|
||||
|
|
|
@ -232,7 +232,8 @@ public class HumanCostService {
|
|||
}
|
||||
|
||||
public String[] template(List<String> data) {
|
||||
List<Admin> admins = adminRepository.getAllEnable();
|
||||
String adminSql = "select su.* from sys_user su left join sys_user_role sur on su.id = sur.user_id where su.is_deleted = 0 and su.enabled = 1 and sur.role_id <> 1 group by su.id";
|
||||
List<Admin> admins = pagination.find(adminSql, Admin.class);
|
||||
String[] headers = new String[admins.size() + 1];
|
||||
headers[0] = "项目名称";
|
||||
for (int i = 1; i <= admins.size(); i++) {
|
||||
|
|
|
@ -8,6 +8,7 @@ import org.springframework.stereotype.Service;
|
|||
import top.jfunc.common.db.QueryHelper;
|
||||
import top.jfunc.common.db.bean.Page;
|
||||
import top.jfunc.common.db.utils.Pagination;
|
||||
import top.jfunc.common.utils.CollectionUtil;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
@ -33,7 +34,30 @@ public class ProcurementTypeService {
|
|||
queryHelper.addCondition(searchInfo.containsKey("startTime"), "created_time >= ?", searchInfo.get("startTime") + " 00:00:00");
|
||||
queryHelper.addCondition(searchInfo.containsKey("endTime"), "created_time <= ?", searchInfo.get("endTime") + " 23:59:59");
|
||||
queryHelper.addOrderProperty("created_time", false);
|
||||
return pagination.paginate(queryHelper.getSql(), ProcurementType.class,pageNumber,pageSize);
|
||||
Page<ProcurementType> paginate = pagination.paginate(queryHelper.getSql(), ProcurementType.class, pageNumber, pageSize);
|
||||
List<ProcurementType> list = paginate.getList();
|
||||
typeName(list);
|
||||
paginate.setList(list);
|
||||
return paginate;
|
||||
}
|
||||
|
||||
public void typeName(List<ProcurementType> list){
|
||||
if(CollectionUtil.isNotEmpty(list)){
|
||||
for (ProcurementType procurementType : list) {
|
||||
if(procurementType.getType() == 1){
|
||||
procurementType.setTypeName("设备");
|
||||
}
|
||||
if(procurementType.getType() == 2){
|
||||
procurementType.setTypeName("服务");
|
||||
}
|
||||
if(procurementType.getType() == 3){
|
||||
procurementType.setTypeName("施工");
|
||||
}
|
||||
if(procurementType.getType() == 4){
|
||||
procurementType.setTypeName("其他");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public ProcurementType findOne(int id) {
|
||||
|
|
|
@ -83,7 +83,7 @@
|
|||
font-size: 14px;
|
||||
}
|
||||
.approve-nopass:after {
|
||||
content:"审核不过";
|
||||
content:"审核不通过";
|
||||
}
|
||||
</style>
|
||||
|
||||
|
@ -407,13 +407,13 @@
|
|||
|
||||
<div class="am-tabs-bd">
|
||||
<div class="am-tab-panel am-fade am-in" id="tab3">
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusEstimate == 1>
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusBudget == 1>
|
||||
<div class="approve-topass"></div>
|
||||
</#if>
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusEstimate == 2>
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusBudget == 2>
|
||||
<div class="approve-passed"></div>
|
||||
</#if>
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusEstimate == 3>
|
||||
<#if (project.status==5 || project.status==10 || project.status==15) && project.approveStatusBudget == 3>
|
||||
<div class="approve-nopass"></div>
|
||||
</#if>
|
||||
<span class="am-text-lg">收入</span>
|
||||
|
@ -630,13 +630,13 @@
|
|||
|
||||
<div class="am-tabs-bd">
|
||||
<div class="am-tab-panel am-fade am-in" id="tab4">
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusEstimate == 1>
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusSettle == 1>
|
||||
<div class="approve-topass"></div>
|
||||
</#if>
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusEstimate == 2>
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusSettle == 2>
|
||||
<div class="approve-passed"></div>
|
||||
</#if>
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusEstimate == 3>
|
||||
<#if (project.status==10 || project.status==15) && project.approveStatusSettle == 3>
|
||||
<div class="approve-nopass"></div>
|
||||
</#if>
|
||||
<input name="id" id="id" type="hidden" value="${project.id}" />
|
||||
|
@ -1002,13 +1002,13 @@
|
|||
|
||||
<div class="am-tabs-bd">
|
||||
<div class="am-tab-panel am-fade am-in" id="tab5">
|
||||
<#if project.status ==15 && project.approveStatusEstimate == 1>
|
||||
<#if project.status ==15 && project.approveStatusFinal == 1>
|
||||
<div class="approve-topass"></div>
|
||||
</#if>
|
||||
<#if project.status ==15 && project.approveStatusEstimate == 2>
|
||||
<#if project.status ==15 && project.approveStatusFinal == 2>
|
||||
<div class="approve-passed"></div>
|
||||
</#if>
|
||||
<#if project.status ==15 && project.approveStatusEstimate == 3>
|
||||
<#if project.status ==15 && project.approveStatusFinal == 3>
|
||||
<div class="approve-nopass"></div>
|
||||
</#if>
|
||||
<input name="id" id="id" type="hidden" value="${project.id}" />
|
||||
|
|
|
@ -154,10 +154,10 @@
|
|||
<td>项目管理成本</td>
|
||||
<td><input name="costProjectManageEstimateTotal" type="number" value="${Utils.format(estimateBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本概算总额"></td>
|
||||
<td><input name="costProjectManageBudgetTotal" type="number" value="${Utils.format(budgetBean.costProjectManageTaxExclude,'0')}" readonly required title="项目管理成本预算总额"></td>
|
||||
<td><input name="costProjectManageFormerSettleTotal" type="number" value="${Utils.format(formerBean.costProjectManageTaxExclude,'0')}" required readonly title="项目管理成本上月结算总额">
|
||||
<td><input name="costProjectManageFormerSettleTotal" type="number" value="${Utils.format(formerBean.costProjectManageTaxExclude,'0')}" required readonly title="项目管理成本上月结算总额"></td>
|
||||
<td><input type="number" min="0.00" max="99999999.99" step="0.01" name="costProjectManage" required title="项目管理成本本月结算金额">
|
||||
<span>人力成本:${Utils.format(salary,'0')} 元</span>
|
||||
</td>
|
||||
<td><input type="number" min="0.00" max="99999999.99" step="0.01" name="costProjectManage" required title="项目管理成本本月结算金额"></td>
|
||||
<td><input type="number" name="costProjectManageSettleTotal" readonly title="项目管理成本结算总额"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -275,7 +275,7 @@
|
|||
</tbody>
|
||||
</table>
|
||||
|
||||
<span class="am-text-lg">现金流量表</span>
|
||||
<span class="am-text-lg">结算现金流量表</span>
|
||||
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
|
||||
<tbody>
|
||||
<tr class="am-text-xl">
|
||||
|
|
|
@ -250,7 +250,7 @@
|
|||
<td><input name="grossProfitFormerSettleTotal" type="number" value="${Utils.format(formerBean.grossProfit,'0')}" required readonly title="项目毛利上月结算总额"></td>
|
||||
<td><input type="number" min="0.00" max="99999999.99" step="0.01" name="grossProfit" value="${Utils.format(monthBean.grossProfit,'0')}" readonly required title="项目毛利本月结算金额"></td>
|
||||
<td><input type="number" name="grossProfitSettleTotal" value="${Utils.format(currentBean.grossProfit,'0')}" readonly title="项目毛利结算总额"></td>
|
||||
<td><input name="grossProfitProfitMargin" type="number" value="${Utils.format(100 * currentBean.grossProfit / currentBean.getIncomeTotalTaxExclude(),'0')}" readonly title="项目毛利利润率"></td>
|
||||
<td><input name="grossProfitProfitMargin" type="number" <#if currentBean.getIncomeTotalTaxExclude() lt 0.01>value="${Utils.format(100 * currentBean.grossProfit,'0')}"<#else>value="${Utils.format(100 * currentBean.grossProfit / currentBean.getIncomeTotalTaxExclude(),'0')}"</#if> readonly title="项目毛利利润率"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>项目贡献利润</td>
|
||||
|
@ -259,7 +259,7 @@
|
|||
<td><input name="contributionProfitFormerSettleTotal" type="number" value="${Utils.format(formerBean.contributionProfit,'0')}" required readonly title="项目贡献利润上月结算总额"></td>
|
||||
<td><input type="number" min="0.00" max="99999999.99" step="0.01" name="contributionProfit" value="${Utils.format(monthBean.contributionProfit,'0')}" readonly required title="项目贡献利润本月结算金额"></td>
|
||||
<td><input type="number" name="contributionProfitSettleTotal" value="${Utils.format(currentBean.contributionProfit,'0')}" readonly title="项目贡献利润结算总额"></td>
|
||||
<td><input name="contributionProfitProfitMargin" type="number" value="${Utils.format(100 * currentBean.contributionProfit / currentBean.getIncomeTotalTaxExclude(),'0')}" readonly title="项目贡献利润利润率"></td>
|
||||
<td><input name="contributionProfitProfitMargin" type="number" <#if currentBean.getIncomeTotalTaxExclude() lt 0.01>value="${Utils.format(100 * currentBean.grossProfit,'0')}"<#else>value="${Utils.format(100 * currentBean.grossProfit / currentBean.getIncomeTotalTaxExclude(),'0')}"</#if> readonly title="项目贡献利润利润率"></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>项目净利润</td>
|
||||
|
@ -268,12 +268,12 @@
|
|||
<td><input name="netProfitFormerSettleTotal" type="number" value="${Utils.format(formerBean.netProfit,'0')}" required readonly title="项目净利润上月结算总额"></td>
|
||||
<td><input type="number" min="0.00" max="99999999.99" step="0.01" name="netProfit" value="${Utils.format(monthBean.netProfit,'0')}" readonly required title="项目净利润本月结算金额"></td>
|
||||
<td><input type="number" name="netProfitSettleTotal" value="${Utils.format(currentBean.netProfit,'0')}" readonly title="项目净利润结算总额"></td>
|
||||
<td><input name="netProfitProfitMargin" type="number" value="${Utils.format(100 * currentBean.netProfit / currentBean.getIncomeTotalTaxExclude(),'0')}" readonly title="项目净利润利润率"></td>
|
||||
<td><input name="netProfitProfitMargin" type="number" <#if currentBean.getIncomeTotalTaxExclude() lt 0.01>value="${Utils.format(100 * currentBean.grossProfit,'0')}"<#else>value="${Utils.format(100 * currentBean.grossProfit / currentBean.getIncomeTotalTaxExclude(),'0')}"</#if> readonly title="项目净利润利润率"></td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<span class="am-text-lg">现金流量表</span>
|
||||
<span class="am-text-lg">结算现金流量表</span>
|
||||
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
|
||||
<tbody>
|
||||
<tr class="am-text-xl">
|
||||
|
|
|
@ -19,7 +19,13 @@
|
|||
</ul>
|
||||
<div class="am-topbar-right">
|
||||
<ul class="am-nav am-nav-pills am-topbar-nav admin-header-list">
|
||||
<li style="margin-top: -10px"><marquee align="left" behavior="scroll" direction="left" height="20" width="200" hspace="50" vspace="20" loop="-1" scrollamount="10" scrolldelay="100" onMouseOut="this.start()" onMouseOver="this.stop()"><a href="${base}/project/listApprove" target="mainFrame">${hasApproveProjectsMessage!""}</a></marquee></li>
|
||||
|
||||
<li id="marqueeLi" style="margin-top: -10px">
|
||||
<marquee align="left" behavior="scroll" direction="left" height="20" width="200" hspace="50" vspace="20" loop="-1" scrollamount="10" scrolldelay="100" onMouseOut="this.start()" onMouseOver="this.stop()">
|
||||
<a onclick="return removeMarquee()" href="${base}/project/listApprove" target="mainFrame">${hasApproveProjectsMessage!""}</a>
|
||||
</marquee>
|
||||
</li>
|
||||
|
||||
<li style="margin-top: 15px"><span style="color: red;">${message!""}</span></li>
|
||||
<li class="am-dropdown" data-am-dropdown>
|
||||
<a class="am-dropdown-toggle" data-am-dropdown-toggle href="javascript:;">
|
||||
|
@ -37,3 +43,9 @@
|
|||
</div>
|
||||
</div>
|
||||
</header>
|
||||
<script>
|
||||
var removeMarquee = function () {
|
||||
$("#marqueeLi").addClass("am-hide");
|
||||
return true;
|
||||
}
|
||||
</script>
|
||||
|
|
Loading…
Reference in New Issue