Merge branch 'master' of gitee.com:ZhangYunTianXia/fourcal
commit
dc011016fe
|
@ -168,7 +168,7 @@ public class ProjectController extends BaseController {
|
||||||
String[] columns0 = {"deptName", "projectNo", "name", "typeDesc", "startDate", "endDate", "underwrittenModeStr", "collaborator", "advanceInterestAmountRound", "advancePeakAmountRound", "contractRound",
|
String[] columns0 = {"deptName", "projectNo", "name", "typeDesc", "startDate", "endDate", "underwrittenModeStr", "collaborator", "advanceInterestAmountRound", "advancePeakAmountRound", "contractRound",
|
||||||
"grossProfitRound", "grossProfitMarginRound", "huazhiRound", "huizhiRound", "huasanRound", "ziguangRound", "certaintyStr", "industryScenario", "resolvePlanStr", "customer", "terminalCustomer",
|
"grossProfitRound", "grossProfitMarginRound", "huazhiRound", "huizhiRound", "huasanRound", "ziguangRound", "certaintyStr", "industryScenario", "resolvePlanStr", "customer", "terminalCustomer",
|
||||||
"valueRisk", "principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
"valueRisk", "principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
||||||
exportExcelUtils.exportProjectExcel(headers0, columns0, project, "yyyy-MM-dd", 0, "项目立项(概算)基本信息", outputStream);
|
exportExcelUtils.exportProjectExcel(headers0, columns0, project, "yyyy-MM-dd", 0, "项目立项(概算)信息", outputStream);
|
||||||
// String[] headers1 = {"项目负责人", "预计合同签订时间", "项目计划招标时间", "是否二次合作", "直签", "主合同收款条款", "主合同具体解决方案", "计收计划"};
|
// String[] headers1 = {"项目负责人", "预计合同签订时间", "项目计划招标时间", "是否二次合作", "直签", "主合同收款条款", "主合同具体解决方案", "计收计划"};
|
||||||
// String[] columns1 = {"principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
// String[] columns1 = {"principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
||||||
// exportExcelUtils.exportProjectExcel(headers1, columns1, project, "yyyy-MM-dd", 0, "项目立项(概算)其他信息", outputStream);
|
// exportExcelUtils.exportProjectExcel(headers1, columns1, project, "yyyy-MM-dd", 0, "项目立项(概算)其他信息", outputStream);
|
||||||
|
@ -194,9 +194,9 @@ public class ProjectController extends BaseController {
|
||||||
} else {
|
} else {
|
||||||
incomeTaxRates = incomeTaxSb.toString();
|
incomeTaxRates = incomeTaxSb.toString();
|
||||||
}
|
}
|
||||||
String[] headers2 = {"序号", "类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)"};
|
String[] headers2 = {"序号", "类别", "名称", "规格类型", "参数", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)"};
|
||||||
String[] columns2 = {"tempId", "type", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax"};
|
String[] columns2 = {"tempId", "type", "name", "spec", "param", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax"};
|
||||||
exportExcelUtils.exportIncomeDetailExcel(headers2, columns2, project, budgetBean, budgetIncomeDetail, incomeTotalAmount, "yyyy-MM-dd", 0, "收款明细表", outputStream);
|
exportExcelUtils.exportIncomeDetailExcel(headers2, columns2, project, budgetBean, budgetIncomeDetail, incomeTotalAmount, "yyyy-MM-dd", 0, "收入明细表", outputStream);
|
||||||
//收入计划
|
//收入计划
|
||||||
List<ProjectBudgetIncomePlanDetail> budgetIncomePlanDetail = projectBudgetService.getBudgetIncomePlanDetail(project);
|
List<ProjectBudgetIncomePlanDetail> budgetIncomePlanDetail = projectBudgetService.getBudgetIncomePlanDetail(project);
|
||||||
BigDecimal incomePlanTotalReceiveAmount = projectBudgetService.getBudgetIncomePlanReceiveAmount(project);
|
BigDecimal incomePlanTotalReceiveAmount = projectBudgetService.getBudgetIncomePlanReceiveAmount(project);
|
||||||
|
@ -224,7 +224,7 @@ public class ProjectController extends BaseController {
|
||||||
} else {
|
} else {
|
||||||
costTaxRates = costTaxSb.toString();
|
costTaxRates = costTaxSb.toString();
|
||||||
}
|
}
|
||||||
String[] headers3 = {"序号", "大类", "类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
String[] headers3 = {"序号", "费用项目", "采购类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
||||||
String[] columns3 = {"tempId", "type", "category", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax", "contractParty", "isUnderwritten", "underwrittenAmount", "payTime", "payAmount", "payWay", "remark"};
|
String[] columns3 = {"tempId", "type", "category", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax", "contractParty", "isUnderwritten", "underwrittenAmount", "payTime", "payAmount", "payWay", "remark"};
|
||||||
exportExcelUtils.exportCostDetailExcel(headers3, columns3, project, budgetBean, budgetCostDetail, costTotalAmount, costUnderwrittenAmountTotal, costPayAmountTotal, procurementMap, "yyyy-MM-dd", 0, "采购成本明细表", outputStream);
|
exportExcelUtils.exportCostDetailExcel(headers3, columns3, project, budgetBean, budgetCostDetail, costTotalAmount, costUnderwrittenAmountTotal, costPayAmountTotal, procurementMap, "yyyy-MM-dd", 0, "采购成本明细表", outputStream);
|
||||||
//项目管理成本明细
|
//项目管理成本明细
|
||||||
|
@ -844,6 +844,14 @@ public class ProjectController extends BaseController {
|
||||||
return "admin/project_select_role_user";
|
return "admin/project_select_role_user";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ResponseBody
|
||||||
|
@RequestMapping("/info/{projectId}")
|
||||||
|
public ResponseMsg info(@PathVariable int projectId,Map<String, Object> model) {
|
||||||
|
Project project = projectService.getProject(projectId);
|
||||||
|
model.put("info",project);
|
||||||
|
return ResponseMsg.buildSuccessData(project);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取当前所有的角色和角色下的用户,根据项目决定是否check
|
* 获取当前所有的角色和角色下的用户,根据项目决定是否check
|
||||||
*/
|
*/
|
||||||
|
@ -1046,8 +1054,8 @@ public class ProjectController extends BaseController {
|
||||||
@RequestMapping("/incomeTemplate")
|
@RequestMapping("/incomeTemplate")
|
||||||
public void incomeTemplate(HttpServletResponse response) throws Exception{
|
public void incomeTemplate(HttpServletResponse response) throws Exception{
|
||||||
|
|
||||||
String[] headers = new String[]{"类别", "名称", "单位", "数量", "单价", "税率(%)"};
|
String[] headers = new String[]{"类别", "名称", "规格类型", "参数", "单位", "数量", "单价", "税率(%)"};
|
||||||
downloadHeader(response , Utils.generateExcelName("收款明细表批量导入模板"));
|
downloadHeader(response , Utils.generateExcelName("收入明细表批量导入模板"));
|
||||||
ExportUtils exportUtils = new ExportUtils(headers);
|
ExportUtils exportUtils = new ExportUtils(headers);
|
||||||
exportUtils.write(response.getOutputStream());
|
exportUtils.write(response.getOutputStream());
|
||||||
}
|
}
|
||||||
|
@ -1081,7 +1089,7 @@ public class ProjectController extends BaseController {
|
||||||
@RequestMapping("/costTemplate")
|
@RequestMapping("/costTemplate")
|
||||||
public void costTemplate(HttpServletResponse response) throws Exception{
|
public void costTemplate(HttpServletResponse response) throws Exception{
|
||||||
|
|
||||||
String[] headers = new String[]{"大类", "类别", "名称", "单位", "数量", "单价", "税率(%)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
String[] headers = new String[]{"费用项目", "采购类别", "名称", "单位", "数量", "单价", "税率(%)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
||||||
downloadHeader(response , Utils.generateExcelName("采购成本明细表批量导入模板"));
|
downloadHeader(response , Utils.generateExcelName("采购成本明细表批量导入模板"));
|
||||||
ExportUtils exportUtils = new ExportUtils(headers);
|
ExportUtils exportUtils = new ExportUtils(headers);
|
||||||
exportUtils.write(response.getOutputStream());
|
exportUtils.write(response.getOutputStream());
|
||||||
|
@ -1114,7 +1122,7 @@ public class ProjectController extends BaseController {
|
||||||
@RequestMapping("/estimateMainExport")
|
@RequestMapping("/estimateMainExport")
|
||||||
public void estimateMainExport(HttpServletResponse response, @RequestParam int id) throws Exception{
|
public void estimateMainExport(HttpServletResponse response, @RequestParam int id) throws Exception{
|
||||||
Project project = projectService.findById(id);
|
Project project = projectService.findById(id);
|
||||||
response.setHeader("Content-Disposition", "attachment;filename=".concat(new String((Utils.generateExcelName(project.getName() + "-项目立项(概算)基本信息")).getBytes(), StandardCharsets.ISO_8859_1)));
|
response.setHeader("Content-Disposition", "attachment;filename=".concat(new String((Utils.generateExcelName(project.getName() + "-项目立项(概算)信息")).getBytes(), StandardCharsets.ISO_8859_1)));
|
||||||
response.setHeader("Connection", "close");
|
response.setHeader("Connection", "close");
|
||||||
response.setHeader("Content-Type", "application/vnd.ms-excel");
|
response.setHeader("Content-Type", "application/vnd.ms-excel");
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
ServletOutputStream outputStream = response.getOutputStream();
|
||||||
|
@ -1125,7 +1133,7 @@ public class ProjectController extends BaseController {
|
||||||
String[] columns0 = {"deptName", "projectNo", "name", "typeDesc", "startDate", "endDate", "underwrittenModeStr", "collaborator", "advanceInterestAmountRound", "advancePeakAmountRound",
|
String[] columns0 = {"deptName", "projectNo", "name", "typeDesc", "startDate", "endDate", "underwrittenModeStr", "collaborator", "advanceInterestAmountRound", "advancePeakAmountRound",
|
||||||
"contractRound", "grossProfitRound", "grossProfitMarginRound", "huazhiRound", "huizhiRound", "huasanRound", "ziguangRound", "certaintyStr", "industryScenario", "resolvePlanStr",
|
"contractRound", "grossProfitRound", "grossProfitMarginRound", "huazhiRound", "huizhiRound", "huasanRound", "ziguangRound", "certaintyStr", "industryScenario", "resolvePlanStr",
|
||||||
"customer", "terminalCustomer", "valueRisk", "principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
"customer", "terminalCustomer", "valueRisk", "principal", "contractTime", "bidsTime", "isSecondStr", "signTypeStr", "mainContractCollectionTerms", "mainContractResolvePlan", "calculationCollection"};
|
||||||
exportExcelUtils.exportProjectExcel(headers0, columns0, project, "yyyy-MM-dd", 0, "项目立项(概算)基本信息", outputStream);
|
exportExcelUtils.exportProjectExcel(headers0, columns0, project, "yyyy-MM-dd", 0, "项目立项(概算)信息", outputStream);
|
||||||
|
|
||||||
exportExcelUtils.end(outputStream);
|
exportExcelUtils.end(outputStream);
|
||||||
}
|
}
|
||||||
|
@ -1155,7 +1163,7 @@ public class ProjectController extends BaseController {
|
||||||
@RequestMapping("/incomeExport")
|
@RequestMapping("/incomeExport")
|
||||||
public void incomeExport(HttpServletResponse response, @RequestParam int id) throws Exception{
|
public void incomeExport(HttpServletResponse response, @RequestParam int id) throws Exception{
|
||||||
Project project = projectService.findById(id);
|
Project project = projectService.findById(id);
|
||||||
response.setHeader("Content-Disposition", "attachment;filename=".concat(new String((Utils.generateExcelName(project.getName() + "-收款明细表")).getBytes(), StandardCharsets.ISO_8859_1)));
|
response.setHeader("Content-Disposition", "attachment;filename=".concat(new String((Utils.generateExcelName(project.getName() + "-收入明细表")).getBytes(), StandardCharsets.ISO_8859_1)));
|
||||||
response.setHeader("Connection", "close");
|
response.setHeader("Connection", "close");
|
||||||
response.setHeader("Content-Type", "application/vnd.ms-excel");
|
response.setHeader("Content-Type", "application/vnd.ms-excel");
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
ServletOutputStream outputStream = response.getOutputStream();
|
||||||
|
@ -1164,9 +1172,9 @@ public class ProjectController extends BaseController {
|
||||||
//收入明细
|
//收入明细
|
||||||
List<ProjectBudgetIncomeDetail> budgetIncomeDetail = projectBudgetService.getBudgetIncomeDetail(project);
|
List<ProjectBudgetIncomeDetail> budgetIncomeDetail = projectBudgetService.getBudgetIncomeDetail(project);
|
||||||
BigDecimal incomeTotalAmount = projectBudgetService.getBudgetIncomeAmount(project);
|
BigDecimal incomeTotalAmount = projectBudgetService.getBudgetIncomeAmount(project);
|
||||||
String[] headers2 = {"序号", "类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)"};
|
String[] headers2 = {"序号", "类别", "名称", "规格类型", "参数", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)"};
|
||||||
String[] columns2 = {"tempId", "type", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax"};
|
String[] columns2 = {"tempId", "type", "name", "spec", "param", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax"};
|
||||||
exportExcelUtils.exportIncomeDetailExcel(headers2, columns2, project, budgetBean, budgetIncomeDetail, incomeTotalAmount, "yyyy-MM-dd", 0, "收款明细表", outputStream);
|
exportExcelUtils.exportIncomeDetailExcel(headers2, columns2, project, budgetBean, budgetIncomeDetail, incomeTotalAmount, "yyyy-MM-dd", 0, "收入明细表", outputStream);
|
||||||
|
|
||||||
exportExcelUtils.end(outputStream);
|
exportExcelUtils.end(outputStream);
|
||||||
}
|
}
|
||||||
|
@ -1212,7 +1220,7 @@ public class ProjectController extends BaseController {
|
||||||
BigDecimal costPayAmountTotal = projectBudgetService.getBudgetCostPayAmountTotal(project);
|
BigDecimal costPayAmountTotal = projectBudgetService.getBudgetCostPayAmountTotal(project);
|
||||||
List<ProcurementType> procurementTypes = procurementTypeService.allProcurementTypeList();
|
List<ProcurementType> procurementTypes = procurementTypeService.allProcurementTypeList();
|
||||||
Map<Integer, String> procurementMap = procurementTypes.stream().collect(Collectors.toMap(ProcurementType::getId, ProcurementType::getName));
|
Map<Integer, String> procurementMap = procurementTypes.stream().collect(Collectors.toMap(ProcurementType::getId, ProcurementType::getName));
|
||||||
String[] headers3 = {"序号", "大类", "类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
String[] headers3 = {"序号", "费用项目", "采购类别", "名称", "单位", "数量", "单价", "税率(%)", "含税总金额(元)", "不含税金额(元)", "税金(元)", "签约方", "是否垫资", "预估垫资金额(元)", "支出时间", "支出金额(元)", "付款方式", "备注"};
|
||||||
String[] columns3 = {"tempId", "type", "category", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax", "contractParty", "isUnderwritten", "underwrittenAmount", "payTime", "payAmount", "payWay", "remark"};
|
String[] columns3 = {"tempId", "type", "category", "name", "unit", "amount", "price", "taxRate", "totalTaxInclude", "totalTaxExclude", "totalTax", "contractParty", "isUnderwritten", "underwrittenAmount", "payTime", "payAmount", "payWay", "remark"};
|
||||||
exportExcelUtils.exportCostDetailExcel(headers3, columns3, project, budgetBean, budgetCostDetail, costTotalAmount, costUnderwrittenAmountTotal, costPayAmountTotal, procurementMap, "yyyy-MM-dd", 0, "采购成本明细表", outputStream);
|
exportExcelUtils.exportCostDetailExcel(headers3, columns3, project, budgetBean, budgetCostDetail, costTotalAmount, costUnderwrittenAmountTotal, costPayAmountTotal, procurementMap, "yyyy-MM-dd", 0, "采购成本明细表", outputStream);
|
||||||
|
|
||||||
|
@ -1386,4 +1394,10 @@ public class ProjectController extends BaseController {
|
||||||
|
|
||||||
return "admin/project_final_list";
|
return "admin/project_final_list";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ResponseBody
|
||||||
|
@RequestMapping("/stageRefreshSave/{projectId}")
|
||||||
|
public ResponseMsg stageRefreshSave(@RequestBody String json, @PathVariable int projectId) {
|
||||||
|
return projectService.stageRefreshSave(json,projectId);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -257,6 +257,12 @@ public class Project {
|
||||||
@Column(name = "calculation_collection")
|
@Column(name = "calculation_collection")
|
||||||
private String calculationCollection;
|
private String calculationCollection;
|
||||||
|
|
||||||
|
@Column(name = "stage")
|
||||||
|
private Integer stage;
|
||||||
|
|
||||||
|
@Column(name = "stage_remark")
|
||||||
|
private String stageRemark;
|
||||||
|
|
||||||
@Transient
|
@Transient
|
||||||
private String contractRound;
|
private String contractRound;
|
||||||
|
|
||||||
|
@ -1003,4 +1009,20 @@ public class Project {
|
||||||
public void setRemark(String remark) {
|
public void setRemark(String remark) {
|
||||||
this.remark = remark;
|
this.remark = remark;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public Integer getStage() {
|
||||||
|
return stage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStage(Integer stage) {
|
||||||
|
this.stage = stage;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getStageRemark() {
|
||||||
|
return stageRemark;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setStageRemark(String stageRemark) {
|
||||||
|
this.stageRemark = stageRemark;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -3,7 +3,7 @@ package cn.palmte.work.model;
|
||||||
import javax.persistence.*;
|
import javax.persistence.*;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目预算收款明细表
|
* 项目预算收入明细表
|
||||||
*/
|
*/
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "project_budget_income_detail")
|
@Table(name = "project_budget_income_detail")
|
||||||
|
|
|
@ -26,6 +26,10 @@ public class ProjectBudgetIncomeDetailBase {
|
||||||
|
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
private String spec;
|
||||||
|
|
||||||
|
private String param;
|
||||||
|
|
||||||
private String unit;
|
private String unit;
|
||||||
private BigDecimal amount;
|
private BigDecimal amount;
|
||||||
private BigDecimal price;
|
private BigDecimal price;
|
||||||
|
@ -65,6 +69,22 @@ public class ProjectBudgetIncomeDetailBase {
|
||||||
this.name = name;
|
this.name = name;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public String getSpec() {
|
||||||
|
return spec;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setSpec(String spec) {
|
||||||
|
this.spec = spec;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getParam() {
|
||||||
|
return param;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setParam(String param) {
|
||||||
|
this.param = param;
|
||||||
|
}
|
||||||
|
|
||||||
public String getUnit() {
|
public String getUnit() {
|
||||||
return unit;
|
return unit;
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,6 +14,8 @@ public class ProjectBudgetIncomeDetailTemp extends ProjectBudgetIncomeDetailBase
|
||||||
projectBudgetIncomeDetail.setProjectId(getProjectId());
|
projectBudgetIncomeDetail.setProjectId(getProjectId());
|
||||||
projectBudgetIncomeDetail.setName(getName());
|
projectBudgetIncomeDetail.setName(getName());
|
||||||
projectBudgetIncomeDetail.setType(getType());
|
projectBudgetIncomeDetail.setType(getType());
|
||||||
|
projectBudgetIncomeDetail.setSpec(getSpec());
|
||||||
|
projectBudgetIncomeDetail.setParam(getParam());
|
||||||
projectBudgetIncomeDetail.setUnit(getUnit());
|
projectBudgetIncomeDetail.setUnit(getUnit());
|
||||||
projectBudgetIncomeDetail.setAmount(getAmount());
|
projectBudgetIncomeDetail.setAmount(getAmount());
|
||||||
projectBudgetIncomeDetail.setPrice(getPrice());
|
projectBudgetIncomeDetail.setPrice(getPrice());
|
||||||
|
|
|
@ -4,7 +4,7 @@ import javax.persistence.Entity;
|
||||||
import javax.persistence.Table;
|
import javax.persistence.Table;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目预算收款明细表
|
* 项目预算收入明细表
|
||||||
*/
|
*/
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "project_budget_income_plan_detail")
|
@Table(name = "project_budget_income_plan_detail")
|
||||||
|
|
|
@ -4,7 +4,7 @@ import javax.persistence.Entity;
|
||||||
import javax.persistence.Table;
|
import javax.persistence.Table;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 项目预算收款明细表
|
* 项目预算收入明细表
|
||||||
*/
|
*/
|
||||||
@Entity
|
@Entity
|
||||||
@Table(name = "project_budget_income_plan_detail_temp")
|
@Table(name = "project_budget_income_plan_detail_temp")
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
package cn.palmte.work.model;
|
||||||
|
|
||||||
|
import org.springframework.data.jpa.repository.JpaRepository;
|
||||||
|
|
||||||
|
public interface ProjectBudgetRepository extends JpaRepository<ProjectBudget, Integer> {
|
||||||
|
}
|
|
@ -1070,6 +1070,12 @@ public class ProjectBudgetService {
|
||||||
key = "名称";
|
key = "名称";
|
||||||
o1 = m.get(key);
|
o1 = m.get(key);
|
||||||
temp.setName((String) o1);
|
temp.setName((String) o1);
|
||||||
|
key = "规格类型";
|
||||||
|
o1 = m.get(key);
|
||||||
|
temp.setName((String) o1);
|
||||||
|
key = "参数";
|
||||||
|
o1 = m.get(key);
|
||||||
|
temp.setName((String) o1);
|
||||||
key = "单位";
|
key = "单位";
|
||||||
o1 = m.get(key);
|
o1 = m.get(key);
|
||||||
temp.setUnit((String) o1);
|
temp.setUnit((String) o1);
|
||||||
|
@ -1130,7 +1136,7 @@ public class ProjectBudgetService {
|
||||||
String key;
|
String key;
|
||||||
Object o1;
|
Object o1;
|
||||||
temp.setProjectId(id);
|
temp.setProjectId(id);
|
||||||
key = "大类";
|
key = "费用项目";
|
||||||
o1 = m.get(key);
|
o1 = m.get(key);
|
||||||
String type = (String) o1;
|
String type = (String) o1;
|
||||||
if ("设备".equals(type)) {
|
if ("设备".equals(type)) {
|
||||||
|
@ -1142,16 +1148,16 @@ public class ProjectBudgetService {
|
||||||
} else if ("其他".equals(type)) {
|
} else if ("其他".equals(type)) {
|
||||||
temp.setType(4);
|
temp.setType(4);
|
||||||
} else {
|
} else {
|
||||||
throw new Exception("该大类不存在");
|
throw new Exception("该费用项目不存在");
|
||||||
}
|
}
|
||||||
key = "类别";
|
key = "采购类别";
|
||||||
o1 = m.get(key);
|
o1 = m.get(key);
|
||||||
String category = (String) o1;
|
String category = (String) o1;
|
||||||
ProcurementType procurementType = procurementTypeRepository.findByName(category);
|
ProcurementType procurementType = procurementTypeRepository.findByName(category);
|
||||||
if (procurementType != null && procurementType.getType() == temp.getType()) {
|
if (procurementType != null && procurementType.getType() == temp.getType()) {
|
||||||
temp.setCategory(procurementType.getId());
|
temp.setCategory(procurementType.getId());
|
||||||
} else {
|
} else {
|
||||||
throw new Exception("该类别不存在或者与大类不匹配");
|
throw new Exception("该采购类别不存在或者与费用项目不匹配");
|
||||||
}
|
}
|
||||||
key = "名称";
|
key = "名称";
|
||||||
o1 = m.get(key);
|
o1 = m.get(key);
|
||||||
|
|
|
@ -112,6 +112,9 @@ public class ProjectService {
|
||||||
}
|
}
|
||||||
|
|
||||||
if(StrUtil.isNotEmpty(searchInfo.get("extend")) && "0".equals(searchInfo.get("extend"))) {
|
if(StrUtil.isNotEmpty(searchInfo.get("extend")) && "0".equals(searchInfo.get("extend"))) {
|
||||||
|
if (StrUtil.isNotEmpty(searchInfo.get("stage")) && !"-1".equals(searchInfo.get("stage"))) {
|
||||||
|
queryHelper.addCondition("p.stage=?", Integer.parseInt(searchInfo.get("stage")));
|
||||||
|
}
|
||||||
if (StrUtil.isNotEmpty(searchInfo.get("isSecond")) && !"-1".equals(searchInfo.get("isSecond"))) {
|
if (StrUtil.isNotEmpty(searchInfo.get("isSecond")) && !"-1".equals(searchInfo.get("isSecond"))) {
|
||||||
queryHelper.addCondition("p.is_second=?", Integer.parseInt(searchInfo.get("isSecond")));
|
queryHelper.addCondition("p.is_second=?", Integer.parseInt(searchInfo.get("isSecond")));
|
||||||
}
|
}
|
||||||
|
@ -895,4 +898,20 @@ public class ProjectService {
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ResponseMsg stageRefreshSave(String json,int projectId) {
|
||||||
|
JSONObject obj = JSON.parseObject(json);
|
||||||
|
int stage = obj.getIntValue("stage");
|
||||||
|
String stageRemark = obj.getString("stageRemark");
|
||||||
|
|
||||||
|
Project project = projectRepository.getOne(projectId);
|
||||||
|
if(null == project){
|
||||||
|
return ResponseMsg.buildFailedMsg("项目不存在");
|
||||||
|
}
|
||||||
|
|
||||||
|
project.setStage(stage);
|
||||||
|
project.setStageRemark(stageRemark);
|
||||||
|
projectRepository.saveAndFlush(project);
|
||||||
|
return ResponseMsg.buildSuccessMsg("保存成功");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -5753,7 +5753,7 @@ CREATE TABLE `project_budget_income_detail` (
|
||||||
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
||||||
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
||||||
PRIMARY KEY (`id`)
|
PRIMARY KEY (`id`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收款明细表';
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收入明细表';
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of project_budget_income_detail
|
-- Records of project_budget_income_detail
|
||||||
|
@ -5773,7 +5773,7 @@ CREATE TABLE `project_budget_income_detail_temp` (
|
||||||
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
||||||
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
||||||
PRIMARY KEY (`id`)
|
PRIMARY KEY (`id`)
|
||||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收款明细表';
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='收入明细表';
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of project_budget_income_detail_temp
|
-- Records of project_budget_income_detail_temp
|
||||||
|
|
|
@ -8268,7 +8268,7 @@ CREATE TABLE `project_budget_income_detail` (
|
||||||
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
||||||
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
||||||
PRIMARY KEY (`id`)
|
PRIMARY KEY (`id`)
|
||||||
) ENGINE=InnoDB AUTO_INCREMENT=711 DEFAULT CHARSET=utf8mb4 COMMENT='收款明细表';
|
) ENGINE=InnoDB AUTO_INCREMENT=711 DEFAULT CHARSET=utf8mb4 COMMENT='收入明细表';
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of project_budget_income_detail
|
-- Records of project_budget_income_detail
|
||||||
|
@ -8393,7 +8393,7 @@ CREATE TABLE `project_budget_income_detail_temp` (
|
||||||
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
`price` decimal(16,2) NOT NULL COMMENT '单价',
|
||||||
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
`tax_rate` decimal(16,2) NOT NULL COMMENT '税率',
|
||||||
PRIMARY KEY (`id`)
|
PRIMARY KEY (`id`)
|
||||||
) ENGINE=InnoDB AUTO_INCREMENT=701 DEFAULT CHARSET=utf8mb4 COMMENT='收款明细表';
|
) ENGINE=InnoDB AUTO_INCREMENT=701 DEFAULT CHARSET=utf8mb4 COMMENT='收入明细表';
|
||||||
|
|
||||||
-- ----------------------------
|
-- ----------------------------
|
||||||
-- Records of project_budget_income_detail_temp
|
-- Records of project_budget_income_detail_temp
|
||||||
|
|
|
@ -92,12 +92,12 @@ $(function () {
|
||||||
|
|
||||||
var dataIncome = collectData("am-modal-prompt-input-income");
|
var dataIncome = collectData("am-modal-prompt-input-income");
|
||||||
if (dataIncome.length <= 0) {
|
if (dataIncome.length <= 0) {
|
||||||
window.confirm('请填写收款明细表');
|
window.confirm('请填写收入明细表');
|
||||||
$("#saveDraft").attr('disabled', false);
|
$("#saveDraft").attr('disabled', false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var dataIncomeCheck = convertDetailVerifyCheck(dataIncome, INCOME_DETAIL2, "收款明细表");
|
var dataIncomeCheck = convertDetailVerifyCheck(dataIncome, INCOME_DETAIL2, "收入明细表");
|
||||||
if (dataIncomeCheck == null) {
|
if (dataIncomeCheck == null) {
|
||||||
$("#saveDraft").attr('disabled', false);
|
$("#saveDraft").attr('disabled', false);
|
||||||
return;
|
return;
|
||||||
|
@ -205,12 +205,12 @@ $(function () {
|
||||||
|
|
||||||
var dataIncome = collectData("am-modal-prompt-input-income");
|
var dataIncome = collectData("am-modal-prompt-input-income");
|
||||||
if (dataIncome.length <= 5) {
|
if (dataIncome.length <= 5) {
|
||||||
window.confirm('请填写收款明细表');
|
window.confirm('请填写收入明细表');
|
||||||
$("#saveApprove").attr('disabled', false);
|
$("#saveApprove").attr('disabled', false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var dataIncomeCheck = convertDetailVerifyCheck(dataIncome, INCOME_DETAIL, "收款明细表");
|
var dataIncomeCheck = convertDetailVerifyCheck(dataIncome, INCOME_DETAIL, "收入明细表");
|
||||||
if (dataIncomeCheck == null) {
|
if (dataIncomeCheck == null) {
|
||||||
$("#saveApprove").attr('disabled', false);
|
$("#saveApprove").attr('disabled', false);
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -4,8 +4,8 @@
|
||||||
//COST_DETAIL_ARR=["type","category","name","unit","amount","price","taxRate","totalTaxInclude","totalTaxExclude"];
|
//COST_DETAIL_ARR=["type","category","name","unit","amount","price","taxRate","totalTaxInclude","totalTaxExclude"];
|
||||||
COST_DETAIL2={
|
COST_DETAIL2={
|
||||||
"num":[false,"序号","string"],
|
"num":[false,"序号","string"],
|
||||||
"type":[false,"大类","string"],
|
"type":[false,"费用项目","string"],
|
||||||
"category":[false,"类别","string"],
|
"category":[false,"采购类别","string"],
|
||||||
"name":[false,"名称","string"],
|
"name":[false,"名称","string"],
|
||||||
"unit":[false,"单位","string"],
|
"unit":[false,"单位","string"],
|
||||||
"amount":[false,"数量","number"],
|
"amount":[false,"数量","number"],
|
||||||
|
@ -25,8 +25,8 @@ COST_DETAIL2={
|
||||||
|
|
||||||
COST_DETAIL={
|
COST_DETAIL={
|
||||||
"num":[false,"序号","string"],
|
"num":[false,"序号","string"],
|
||||||
"type":[true,"大类","string"],
|
"type":[true,"费用项目","string"],
|
||||||
"category":[true,"类别","string"],
|
"category":[true,"采购类别","string"],
|
||||||
"name":[true,"名称","string"],
|
"name":[true,"名称","string"],
|
||||||
"unit":[true,"单位","string"],
|
"unit":[true,"单位","string"],
|
||||||
"amount":[true,"数量","number"],
|
"amount":[true,"数量","number"],
|
||||||
|
|
|
@ -6,6 +6,8 @@ INCOME_DETAIL2={
|
||||||
"num":[false,"序号","string"],
|
"num":[false,"序号","string"],
|
||||||
"type":[false,"类别","string"],
|
"type":[false,"类别","string"],
|
||||||
"name":[false,"名称","string"],
|
"name":[false,"名称","string"],
|
||||||
|
"spec":[false,"规格类型","string"],
|
||||||
|
"param":[false,"参数","string"],
|
||||||
"unit":[false,"单位","string"],
|
"unit":[false,"单位","string"],
|
||||||
"amount":[false,"数量","number"],
|
"amount":[false,"数量","number"],
|
||||||
"price":[false,"单价","price"],
|
"price":[false,"单价","price"],
|
||||||
|
@ -19,6 +21,8 @@ INCOME_DETAIL={
|
||||||
"num":[false,"序号","string"],
|
"num":[false,"序号","string"],
|
||||||
"type":[true,"类别","string"],
|
"type":[true,"类别","string"],
|
||||||
"name":[true,"名称","string"],
|
"name":[true,"名称","string"],
|
||||||
|
"spec":[true,"规格类型","string"],
|
||||||
|
"param":[true,"参数","string"],
|
||||||
"unit":[true,"单位","string"],
|
"unit":[true,"单位","string"],
|
||||||
"amount":[true,"数量","number"],
|
"amount":[true,"数量","number"],
|
||||||
"price":[true,"单价","price"],
|
"price":[true,"单价","price"],
|
||||||
|
@ -71,7 +75,7 @@ $(function () {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
//保存收款明细表
|
//保存收入明细表
|
||||||
$(function () {
|
$(function () {
|
||||||
$("#incomeTableSave").click(function () {
|
$("#incomeTableSave").click(function () {
|
||||||
var data = collectData("am-modal-prompt-input-income");
|
var data = collectData("am-modal-prompt-input-income");
|
||||||
|
@ -176,6 +180,8 @@ function appendTrIncome() {
|
||||||
' </td>\n' +
|
' </td>\n' +
|
||||||
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
||||||
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
||||||
|
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
||||||
|
' <td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income"></td>\n' +
|
||||||
' <td><input type="text" maxlength="8" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income"></td>\n' +
|
' <td><input type="text" maxlength="8" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income"></td>\n' +
|
||||||
' <td><input type="text" min="0.00" max="9999999999.99" step="0.01" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income"></td>\n' +
|
' <td><input type="text" min="0.00" max="9999999999.99" step="0.01" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income"></td>\n' +
|
||||||
' <td><input type="text" min="0.00" max="99.99" step="0.01" maxlength="5" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-tax-rate input-changeable-tax-rate-income"></td>\n' +
|
' <td><input type="text" min="0.00" max="99.99" step="0.01" maxlength="5" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-tax-rate input-changeable-tax-rate-income"></td>\n' +
|
||||||
|
|
|
@ -352,12 +352,12 @@ function verifyBudgetPlan(){
|
||||||
|
|
||||||
//从采购成本明细中取“设备”大类下的总计---设备支出
|
//从采购成本明细中取“设备”大类下的总计---设备支出
|
||||||
if(costPurchaseDeviceTaxInclude != input_total_device_cost_budget_plan){
|
if(costPurchaseDeviceTaxInclude != input_total_device_cost_budget_plan){
|
||||||
return "采购成本明细中取“设备”大类下的总计["+costPurchaseDeviceTaxInclude+"]与设备支出["+input_total_device_cost_budget_plan+"]不等";
|
return "采购成本明细中取“设备”费用项目下的总计["+costPurchaseDeviceTaxInclude+"]与设备支出["+input_total_device_cost_budget_plan+"]不等";
|
||||||
}
|
}
|
||||||
//从采购成本明细中取“服务+施工+其他”大类的总计---工程支出
|
//从采购成本明细中取“服务+施工+其他”大类的总计---工程支出
|
||||||
var t = f2(f2(costPurchaseBuildTaxInclude)+f2(costPurchaseServiceTaxInclude)+f2(costPurchaseOtherTaxInclude));
|
var t = f2(f2(costPurchaseBuildTaxInclude)+f2(costPurchaseServiceTaxInclude)+f2(costPurchaseOtherTaxInclude));
|
||||||
if(t != f2(input_total_engineer_cost_budget_plan)){
|
if(t != f2(input_total_engineer_cost_budget_plan)){
|
||||||
return "采购成本明细中取“服务+施工+其他”大类的总计["+t+"]与工程支出["+input_total_engineer_cost_budget_plan+"]不等";
|
return "采购成本明细中取“服务+施工+其他”费用项目的总计["+t+"]与工程支出["+input_total_engineer_cost_budget_plan+"]不等";
|
||||||
}
|
}
|
||||||
//从项目管理成本取总计金额--经营性开支
|
//从项目管理成本取总计金额--经营性开支
|
||||||
if(costProjectManageTaxInclude != input_total_project_manage_budget_plan){
|
if(costProjectManageTaxInclude != input_total_project_manage_budget_plan){
|
||||||
|
|
|
@ -155,7 +155,7 @@
|
||||||
<!--选项卡(tabs)begin-->
|
<!--选项卡(tabs)begin-->
|
||||||
<div class="am-tabs palm-tabs outer" data-am-tabs>
|
<div class="am-tabs palm-tabs outer" data-am-tabs>
|
||||||
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
||||||
<li id="jiben" <#if check==1>class="am-active"</#if>><a href="#tab1">项目立项(概算)基本信息</a></li>
|
<li id="jiben" <#if check==1>class="am-active"</#if>><a href="#tab1">项目立项(概算)信息</a></li>
|
||||||
<#-- <#if project.status==1 || project.status==5 || project.status==10 || project.status==15>-->
|
<#-- <#if project.status==1 || project.status==5 || project.status==10 || project.status==15>-->
|
||||||
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
||||||
<#-- </#if>-->
|
<#-- </#if>-->
|
||||||
|
@ -172,7 +172,7 @@
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<div class="am-tabs-bd palm-tabs-bd">
|
<div class="am-tabs-bd palm-tabs-bd">
|
||||||
<#-- 项目立项(概算)基本信息 展示内容 -->
|
<#-- 项目立项(概算)信息 展示内容 -->
|
||||||
<div <#if check==1>class="am-tab-panel am-fade am-in am-active" <#else> class="am-tab-panel am-fade am-in"</#if> id="tab1">
|
<div <#if check==1>class="am-tab-panel am-fade am-in am-active" <#else> class="am-tab-panel am-fade am-in"</#if> id="tab1">
|
||||||
<input name="id" id="id" type="hidden" value="${project.id}" />
|
<input name="id" id="id" type="hidden" value="${project.id}" />
|
||||||
<input name="type" id="type" type="hidden" value="${type}"/>
|
<input name="type" id="type" type="hidden" value="${type}"/>
|
||||||
|
@ -193,7 +193,7 @@
|
||||||
<!--startprint-->
|
<!--startprint-->
|
||||||
<table id="myTable" class="am-table am-table-bordered">
|
<table id="myTable" class="am-table am-table-bordered">
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)基本信息</th>
|
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)信息</th>
|
||||||
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
|
@ -396,6 +396,43 @@
|
||||||
>${project.calculationCollection!}</textarea>
|
>${project.calculationCollection!}</textarea>
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr class="am-text-nowrap">
|
||||||
|
<th class="table-title" colspan="1" ><span style="font-size: 15px">项目阶段:</span></th>
|
||||||
|
<td class="table-title" colspan="5" >
|
||||||
|
<#if project.stage??>
|
||||||
|
<#if (project.stage) =0>
|
||||||
|
<input readonly value="S0-概算立项"/>
|
||||||
|
<#elseif (project.stage) =1>
|
||||||
|
<input readonly value="S1-项目调研"/>
|
||||||
|
<#elseif (project.stage) =2>
|
||||||
|
<input readonly value="S2-方案设计"/>
|
||||||
|
<#elseif (project.stage) =3>
|
||||||
|
<input readonly value="S3-预算评估"/>
|
||||||
|
<#elseif (project.stage) =4>
|
||||||
|
<input readonly value="S4-招标期"/>
|
||||||
|
<#elseif (project.stage) =5>
|
||||||
|
<input readonly value="S5-合同期"/>
|
||||||
|
<#elseif (project.stage) =6>
|
||||||
|
<input readonly value="S6-交付期"/>
|
||||||
|
<#elseif (project.stage) =7>
|
||||||
|
<input readonly value="S7-结算期"/>
|
||||||
|
<#elseif (project.stage) =8>
|
||||||
|
<input readonly value="S8-决算期"/>
|
||||||
|
<#elseif (project.stage) =9>
|
||||||
|
<input readonly value="L-项目丢失"/>
|
||||||
|
</#if>
|
||||||
|
<#else>
|
||||||
|
<input readonly value=""/>
|
||||||
|
</#if>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
<tr class="am-text-nowrap">
|
||||||
|
<th class="table-title" colspan="1" ><span style="font-size: 15px">当前进度描述:</span></th>
|
||||||
|
<td class="table-title" colspan="5" >
|
||||||
|
<textarea rows="3" cols="20" style="border-style:none;background-color: white;" disabled="disabled"
|
||||||
|
>${project.stageRemark!}</textarea>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<#-- 项目预算信息 展示内容 -->
|
<#-- 项目预算信息 展示内容 -->
|
||||||
|
@ -406,7 +443,7 @@
|
||||||
<div class="am-tabs palm-tabs inner" data-am-tabs id="subTab">
|
<div class="am-tabs palm-tabs inner" data-am-tabs id="subTab">
|
||||||
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
||||||
<li class="am-active"><a href="#tab35">预算信息</a></li>
|
<li class="am-active"><a href="#tab35">预算信息</a></li>
|
||||||
<li><a href="#tab31">收款明细表</a></li>
|
<li><a href="#tab31">收入明细表</a></li>
|
||||||
<li><a href="#tab36">收款计划表</a></li>
|
<li><a href="#tab36">收款计划表</a></li>
|
||||||
<li><a href="#tab32">采购成本明细表</a></li>
|
<li><a href="#tab32">采购成本明细表</a></li>
|
||||||
<li><a href="#tab33">项目管理成本表</a></li>
|
<li><a href="#tab33">项目管理成本表</a></li>
|
||||||
|
@ -415,7 +452,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="am-tabs-bd palm-tabs-bd">
|
<div class="am-tabs-bd palm-tabs-bd">
|
||||||
<div class="am-tab-panel am-fade am-in" id="tab31">
|
<div class="am-tab-panel am-fade am-in" id="tab31">
|
||||||
<#--<span class="am-text-lg">收款明细表</span>-->
|
<#--<span class="am-text-lg">收入明细表</span>-->
|
||||||
<div class="fixed-section">
|
<div class="fixed-section">
|
||||||
<div class="am-modal-bd">
|
<div class="am-modal-bd">
|
||||||
<div class="fixed-actions">
|
<div class="fixed-actions">
|
||||||
|
@ -436,6 +473,8 @@
|
||||||
<th>序号</th>
|
<th>序号</th>
|
||||||
<th>类别</th>
|
<th>类别</th>
|
||||||
<th>名称</th>
|
<th>名称</th>
|
||||||
|
<th>规格类型</th>
|
||||||
|
<th>参数</th>
|
||||||
<th>单位</th>
|
<th>单位</th>
|
||||||
<th>数量</th>
|
<th>数量</th>
|
||||||
<th>单价</th>
|
<th>单价</th>
|
||||||
|
@ -472,6 +511,12 @@
|
||||||
<td><input type="text" readonly
|
<td><input type="text" readonly
|
||||||
class="am-modal-prompt-input am-modal-prompt-input-income"
|
class="am-modal-prompt-input am-modal-prompt-input-income"
|
||||||
value="${incomeDetail.name!}"></td>
|
value="${incomeDetail.name!}"></td>
|
||||||
|
<td><input type="text" readonly
|
||||||
|
class="am-modal-prompt-input am-modal-prompt-input-income"
|
||||||
|
value="${incomeDetail.spec!}"></td>
|
||||||
|
<td><input type="text" readonly
|
||||||
|
class="am-modal-prompt-input am-modal-prompt-input-income"
|
||||||
|
value="${incomeDetail.param!}"></td>
|
||||||
<td><input type="text" readonly
|
<td><input type="text" readonly
|
||||||
class="am-modal-prompt-input am-modal-prompt-input-income"
|
class="am-modal-prompt-input am-modal-prompt-input-income"
|
||||||
value="${incomeDetail.unit!}"></td>
|
value="${incomeDetail.unit!}"></td>
|
||||||
|
@ -509,6 +554,8 @@
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0.00')}" readonly <#--onkeyup="integerNumber(this)"-->></td>
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0.00')}" readonly <#--onkeyup="integerNumber(this)"-->></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
|
@ -524,7 +571,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="am-tab-panel am-fade am-in" id="tab36">
|
<div class="am-tab-panel am-fade am-in" id="tab36">
|
||||||
<#--<span class="am-text-lg">收款明细表</span>-->
|
<#--<span class="am-text-lg">收入明细表</span>-->
|
||||||
<div class="fixed-section">
|
<div class="fixed-section">
|
||||||
<div class="am-modal-bd">
|
<div class="am-modal-bd">
|
||||||
<div class="fixed-actions">
|
<div class="fixed-actions">
|
||||||
|
@ -597,8 +644,8 @@
|
||||||
<thead>
|
<thead>
|
||||||
<tr>
|
<tr>
|
||||||
<th>序号</th>
|
<th>序号</th>
|
||||||
<th>大类</th>
|
<th>费用项目</th>
|
||||||
<th>类别</th>
|
<th>采购类别</th>
|
||||||
<th>名称</th>
|
<th>名称</th>
|
||||||
<th>单位</th>
|
<th>单位</th>
|
||||||
<th>数量</th>
|
<th>数量</th>
|
||||||
|
@ -1033,7 +1080,7 @@
|
||||||
</table>
|
</table>
|
||||||
<!--endprint-->
|
<!--endprint-->
|
||||||
</div>
|
</div>
|
||||||
<#--<span class="am-text-primary"><a style="cursor: pointer" id="income-detail">收款明细表</a></span>
|
<#--<span class="am-text-primary"><a style="cursor: pointer" id="income-detail">收入明细表</a></span>
|
||||||
<span class="am-text-primary"><a style="cursor: pointer" id="cost-detail">采购成本明细表</a></span>
|
<span class="am-text-primary"><a style="cursor: pointer" id="cost-detail">采购成本明细表</a></span>
|
||||||
<span class="am-text-primary"><a style="cursor: pointer" id="cost-project-manage-detail">项目管理成本表</a></span>
|
<span class="am-text-primary"><a style="cursor: pointer" id="cost-project-manage-detail">项目管理成本表</a></span>
|
||||||
<span class="am-text-primary budget-plan-detail"><a style="cursor: pointer">资金计划表</a></span>-->
|
<span class="am-text-primary budget-plan-detail"><a style="cursor: pointer">资金计划表</a></span>-->
|
||||||
|
@ -2138,11 +2185,11 @@
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
||||||
<#--收款明细表弹窗-->
|
<#--收入明细表弹窗-->
|
||||||
<div class="am-modal am-modal-prompt" style="width: 1200px;max-height:600px;overflow-y:auto;"
|
<div class="am-modal am-modal-prompt" style="width: 1200px;max-height:600px;overflow-y:auto;"
|
||||||
tabindex="-1" id="my-prompt-income-detail">
|
tabindex="-1" id="my-prompt-income-detail">
|
||||||
<div class="am-modal-dialog">
|
<div class="am-modal-dialog">
|
||||||
<div class="am-modal-hd">销售收款明细表——${project.name}</div>
|
<div class="am-modal-hd">销售收入明细表——${project.name}</div>
|
||||||
<div class="am-modal-bd">
|
<div class="am-modal-bd">
|
||||||
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;"
|
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;"
|
||||||
id="incomeTable">
|
id="incomeTable">
|
||||||
|
|
|
@ -93,9 +93,9 @@
|
||||||
<!--选项卡(tabs)begin-->
|
<!--选项卡(tabs)begin-->
|
||||||
<div class="am-tabs palm-tabs" data-am-tabs>
|
<div class="am-tabs palm-tabs" data-am-tabs>
|
||||||
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
<ul class="am-tabs-nav am-nav am-nav-tabs palm-tabs-nav">
|
||||||
<li class="am-active"><a href="#tab1">项目立项(概算)基本信息</a></li>
|
<li class="am-active"><a href="#tab1">项目立项(概算)信息</a></li>
|
||||||
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
||||||
<li><a href="#tab3">收款明细表</a></li>
|
<li><a href="#tab3">收入明细表</a></li>
|
||||||
<li><a href="#tab8">收款计划表</a></li>
|
<li><a href="#tab8">收款计划表</a></li>
|
||||||
<li><a href="#tab4">采购成本明细表</a></li>
|
<li><a href="#tab4">采购成本明细表</a></li>
|
||||||
<li><a href="#tab5">项目管理成本表</a></li>
|
<li><a href="#tab5">项目管理成本表</a></li>
|
||||||
|
@ -109,7 +109,7 @@
|
||||||
<!--验证表单元素(validate) begin-->
|
<!--验证表单元素(validate) begin-->
|
||||||
<table id="myTable" class="am-table am-table-bordered">
|
<table id="myTable" class="am-table am-table-bordered">
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)基本信息</th>
|
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)信息</th>
|
||||||
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
|
@ -341,6 +341,8 @@
|
||||||
<th>序号</th>
|
<th>序号</th>
|
||||||
<th width="100px">类别</th>
|
<th width="100px">类别</th>
|
||||||
<th>名称</th>
|
<th>名称</th>
|
||||||
|
<th>规格类型</th>
|
||||||
|
<th>参数</th>
|
||||||
<th>单位</th>
|
<th>单位</th>
|
||||||
<th>数量</th>
|
<th>数量</th>
|
||||||
<th>单价</th>
|
<th>单价</th>
|
||||||
|
@ -364,6 +366,8 @@
|
||||||
</select>
|
</select>
|
||||||
</td>
|
</td>
|
||||||
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.name!}"></td>
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.name!}"></td>
|
||||||
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.spec!}"></td>
|
||||||
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.param!}"></td>
|
||||||
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.unit!}"></td>
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income" value="${incomeDetail.unit!}"></td>
|
||||||
<td><input type="text" maxlength="14" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income" value="${Utils.format(incomeDetail.amount,'0')}" oninput="if(value.length>8)value=value.slice(0,8)" <#--onkeyup="integerNumber(this)"-->></td>
|
<td><input type="text" maxlength="14" class="number am-modal-prompt-input am-modal-prompt-input-income input-changeable-amount input-changeable-amount-income" value="${Utils.format(incomeDetail.amount,'0')}" oninput="if(value.length>8)value=value.slice(0,8)" <#--onkeyup="integerNumber(this)"-->></td>
|
||||||
<td><input type="text" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income" value="${Utils.format2(incomeDetail.price,'0')}" oninput="if(value.length>19)value=value.slice(0,19)"></td>
|
<td><input type="text" maxlength="19" class="price am-modal-prompt-input am-modal-prompt-input-income input-changeable-price input-changeable-price-income" value="${Utils.format2(incomeDetail.price,'0')}" oninput="if(value.length>19)value=value.slice(0,19)"></td>
|
||||||
|
@ -380,6 +384,8 @@
|
||||||
<td width="100px"></td>
|
<td width="100px"></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
|
<td></td>
|
||||||
|
<td></td>
|
||||||
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0')}" readonly <#--onkeyup="integerNumber(this)"-->></td>
|
<td><input type="text" class="am-modal-prompt-input am-modal-prompt-input-income input-changeable-total-amount-income" value="${Utils.format(incomeTotalAmount,'0')}" readonly <#--onkeyup="integerNumber(this)"-->></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
<td></td>
|
<td></td>
|
||||||
|
@ -471,8 +477,8 @@
|
||||||
<thead style="display:block;width: 1810px;">
|
<thead style="display:block;width: 1810px;">
|
||||||
<tr>
|
<tr>
|
||||||
<th width="60px">序号</th>
|
<th width="60px">序号</th>
|
||||||
<th width="70px">大类</th>
|
<th width="70px">费用项目</th>
|
||||||
<th width="150px">类别</th>
|
<th width="150px">采购类别</th>
|
||||||
<th width="100px">名称</th>
|
<th width="100px">名称</th>
|
||||||
<th width="80px">单位</th>
|
<th width="80px">单位</th>
|
||||||
<th width="100px">数量</th>
|
<th width="100px">数量</th>
|
||||||
|
@ -804,7 +810,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="am-tab-panel am-fade am-in" id="tab7">
|
<div class="am-tab-panel am-fade am-in" id="tab7">
|
||||||
<span>收入</span>
|
<span>收入</span>
|
||||||
<#-- <span class="am-text-primary"><a style="cursor: pointer" id="income-detail">收款明细表</a></span>-->
|
<#-- <span class="am-text-primary"><a style="cursor: pointer" id="income-detail">收入明细表</a></span>-->
|
||||||
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
|
<table class="am-table am-table-bordered am-table-radius table-main" style="padding:0;">
|
||||||
<tbody>
|
<tbody>
|
||||||
<tr>
|
<tr>
|
||||||
|
|
|
@ -39,7 +39,7 @@
|
||||||
<!--选项卡(tabs)begin-->
|
<!--选项卡(tabs)begin-->
|
||||||
<div class="am-tabs am-margin" data-am-tabs>
|
<div class="am-tabs am-margin" data-am-tabs>
|
||||||
<ul class="am-tabs-nav am-nav am-nav-tabs">
|
<ul class="am-tabs-nav am-nav am-nav-tabs">
|
||||||
<li class="am-active"><a href="#tab1">项目立项(概算)基本信息</a></li>
|
<li class="am-active"><a href="#tab1">项目立项(概算)信息</a></li>
|
||||||
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
||||||
</ul>
|
</ul>
|
||||||
<div class="am-tabs-bd">
|
<div class="am-tabs-bd">
|
||||||
|
@ -49,7 +49,7 @@
|
||||||
<input name="id" id="id" type="hidden" value="${projectId}" />
|
<input name="id" id="id" type="hidden" value="${projectId}" />
|
||||||
<table id="myTable" class="am-table am-table-bordered">
|
<table id="myTable" class="am-table am-table-bordered">
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)基本信息</th>
|
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)信息</th>
|
||||||
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
|
|
|
@ -44,7 +44,7 @@
|
||||||
<!--选项卡(tabs)begin-->
|
<!--选项卡(tabs)begin-->
|
||||||
<div class="am-tabs am-margin" data-am-tabs>
|
<div class="am-tabs am-margin" data-am-tabs>
|
||||||
<ul class="am-tabs-nav am-nav am-nav-tabs">
|
<ul class="am-tabs-nav am-nav am-nav-tabs">
|
||||||
<li class="am-active"><a href="#tab1">项目立项(概算)基本信息</a></li>
|
<li class="am-active"><a href="#tab1">项目立项(概算)信息</a></li>
|
||||||
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
<#-- <li><a href="#tab2">项目立项(概算)其他信息</a></li>-->
|
||||||
</ul>
|
</ul>
|
||||||
<div class="am-tabs-bd">
|
<div class="am-tabs-bd">
|
||||||
|
@ -53,7 +53,7 @@
|
||||||
<!--验证表单元素(validate) begin-->
|
<!--验证表单元素(validate) begin-->
|
||||||
<table id="myTable" class="am-table am-table-bordered">
|
<table id="myTable" class="am-table am-table-bordered">
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)基本信息</th>
|
<th class="table-title" colspan="6" style="text-align: center">项目立项(概算)信息</th>
|
||||||
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
<input type="hidden" style="border-style:none;" name="id" id="id" value="${id!}"/>
|
||||||
</tr>
|
</tr>
|
||||||
<tr class="am-text-nowrap">
|
<tr class="am-text-nowrap">
|
||||||
|
|
|
@ -176,7 +176,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="st-col">
|
<div class="st-col">
|
||||||
<div class="st-col-title">项目状态</div>
|
<div class="st-col-title">项目当前状态</div>
|
||||||
<div class="st-col-field">
|
<div class="st-col-field">
|
||||||
<select data-am-selected="{btnSize: 'sm',btnWidth: '100%',maxHeight: 500,searchBox: 1}" id="status" name="status">
|
<select data-am-selected="{btnSize: 'sm',btnWidth: '100%',maxHeight: 500,searchBox: 1}" id="status" name="status">
|
||||||
<option value="-1">全部</option>
|
<option value="-1">全部</option>
|
||||||
|
@ -452,6 +452,27 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
<!-- 第六行 -->
|
||||||
|
<div class="flex-row st-row">
|
||||||
|
<div class="st-col st-col-4">
|
||||||
|
<div class="st-col-title">项目阶段</div>
|
||||||
|
<div class="st-col-field">
|
||||||
|
<select data-am-selected="{btnSize: 'sm',btnWidth: '100%',maxHeight: 500,searchBox: 1}" id="qstage" name="qstage">
|
||||||
|
<option value="-1">全部</option>
|
||||||
|
<option value="0" <#if qstage?? && qstage='0'>selected</#if>>S0-概算立项</option>
|
||||||
|
<option value="1" <#if qstage?? && qstage='1'>selected</#if>>S1-项目调研</option>
|
||||||
|
<option value="2" <#if qstage?? && qstage='2'>selected</#if>>S2-方案设计</option>
|
||||||
|
<option value="3" <#if qstage?? && qstage='3'>selected</#if>>S3-预算评估</option>
|
||||||
|
<option value="4" <#if qstage?? && qstage='4'>selected</#if>>S4-招标期</option>
|
||||||
|
<option value="5" <#if qstage?? && qstage='5'>selected</#if>>S5-合同期</option>
|
||||||
|
<option value="6" <#if qstage?? && qstage='6'>selected</#if>>S6-交付期</option>
|
||||||
|
<option value="7" <#if qstage?? && qstage='7'>selected</#if>>S7-结算期</option>
|
||||||
|
<option value="8" <#if qstage?? && qstage='8'>selected</#if>>S8-决算期</option>
|
||||||
|
<option value="9" <#if qstage?? && qstage='9'>selected</#if>>L-项目丢失</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<#-- 按钮 -->
|
<#-- 按钮 -->
|
||||||
<div class="flex-row tools-row">
|
<div class="flex-row tools-row">
|
||||||
|
@ -1027,6 +1048,10 @@
|
||||||
</button>
|
</button>
|
||||||
</#if>
|
</#if>
|
||||||
|
|
||||||
|
<button type="button" class="am-btn am-btn-default am-btn-xs am-text-secondary"
|
||||||
|
onclick="stageRefreshModal(${list.id})">
|
||||||
|
<span class="am-icon-pencil-square-o"></span>项目阶段更新
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</td>
|
</td>
|
||||||
|
@ -1188,6 +1213,55 @@
|
||||||
</div><!-- /.modal-content -->
|
</div><!-- /.modal-content -->
|
||||||
</div><!-- /.modal-dialog -->
|
</div><!-- /.modal-dialog -->
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<#--项目阶段更新弹窗-->
|
||||||
|
<div class="modal fade" id="myModal4" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
|
||||||
|
<div class="modal-dialog">
|
||||||
|
<div class="modal-content" style="width: 500px">
|
||||||
|
|
||||||
|
<div class="modal-header">
|
||||||
|
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
|
||||||
|
<h4 class="modal-title" id="myModalLabel">项目阶段更新</h4>
|
||||||
|
</div>
|
||||||
|
<input type="hidden" id="stageProjectId" name="stageProjectId" value=''/>
|
||||||
|
|
||||||
|
<div class="am-g am-form-group am-margin-top" style="display: flex;">
|
||||||
|
<div class="am-u-sm-3 am-u-md-3 am-text-right">
|
||||||
|
<span style="color: red;">*</span>项目阶段</div>
|
||||||
|
<div class="am-u-sm-6 am-u-md-6">
|
||||||
|
<select data-am-selected="{btnSize: 'sm',btnWidth: '150px',maxHeight: 300,searchBox: 1}"
|
||||||
|
id="stage" name="stage">
|
||||||
|
<option value="0" <#if stage?? && stage='0'>selected</#if>>S0-概算立项</option>
|
||||||
|
<option value="1" <#if stage?? && stage='1'>selected</#if>>S1-项目调研</option>
|
||||||
|
<option value="2" <#if stage?? && stage='2'>selected</#if>>S2-方案设计</option>
|
||||||
|
<option value="3" <#if stage?? && stage='3'>selected</#if>>S3-预算评估</option>
|
||||||
|
<option value="4" <#if stage?? && stage='4'>selected</#if>>S4-招标期</option>
|
||||||
|
<option value="5" <#if stage?? && stage='5'>selected</#if>>S5-合同期</option>
|
||||||
|
<option value="6" <#if stage?? && stage='6'>selected</#if>>S6-交付期</option>
|
||||||
|
<option value="7" <#if stage?? && stage='7'>selected</#if>>S7-结算期</option>
|
||||||
|
<option value="8" <#if stage?? && stage='8'>selected</#if>>S8-决算期</option>
|
||||||
|
<option value="9" <#if stage?? && stage='9'>selected</#if>>L-项目丢失</option>
|
||||||
|
</select>
|
||||||
|
</div>
|
||||||
|
<div class="am-u-sm-3 am-u-md-3 input-msg"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="am-g am-form-group am-margin-top" style="display: flex;">
|
||||||
|
<div class="am-u-sm-3 am-u-md-3 am-text-right">
|
||||||
|
<span style="color: red;">*</span>当前进度描述</div>
|
||||||
|
<div class="am-u-sm-6 am-u-md-6">
|
||||||
|
<textarea id="stageRemark" minlength="1" rows="3" cols="40" maxlength="1000" class="am-input"></textarea>
|
||||||
|
</div>
|
||||||
|
<div class="am-u-sm-3 am-u-md-3 input-msg"></div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="modal-footer">
|
||||||
|
<button type="button" class="btn btn-default" data-dismiss="modal" data-am-modal-cancel>关闭</button>
|
||||||
|
<button type="button" class="btn btn-primary" data-am-modal-confirm onclick="stageRefreshSave()">提交</button>
|
||||||
|
</div>
|
||||||
|
</div><!-- /.modal-content -->
|
||||||
|
</div><!-- /.modal-dialog -->
|
||||||
|
</div>
|
||||||
<!-- /.modal -->
|
<!-- /.modal -->
|
||||||
|
|
||||||
|
|
||||||
|
@ -1315,6 +1389,8 @@
|
||||||
keywordsObj.otherStart = $("#otherStart").val();
|
keywordsObj.otherStart = $("#otherStart").val();
|
||||||
if ($("#otherEnd").val())
|
if ($("#otherEnd").val())
|
||||||
keywordsObj.otherEnd = $("#otherEnd").val();
|
keywordsObj.otherEnd = $("#otherEnd").val();
|
||||||
|
if ($("#qstage").val())
|
||||||
|
keywordsObj.stage = $("#qstage").val();
|
||||||
}
|
}
|
||||||
if ($("#customer").val())
|
if ($("#customer").val())
|
||||||
keywordsObj.customer = $("#customer").val();
|
keywordsObj.customer = $("#customer").val();
|
||||||
|
@ -1556,6 +1632,44 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 项目阶段更新保存
|
||||||
|
*/
|
||||||
|
var stageRefreshSave = function () {
|
||||||
|
var stage = $("#stage").val();
|
||||||
|
console.info("=============="+stage);
|
||||||
|
var stageRemark = $("#stageRemark").val();
|
||||||
|
var projectId = $("#stageProjectId").val();
|
||||||
|
if (stage == '') {
|
||||||
|
layer.alert("请选择项目阶段");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (stageRemark == '') {
|
||||||
|
layer.alert("请填写当前进度描述");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var params = {
|
||||||
|
stage: stage,
|
||||||
|
stageRemark: stageRemark
|
||||||
|
};
|
||||||
|
$.ajax({
|
||||||
|
url: '${base}/project/stageRefreshSave/' + projectId,
|
||||||
|
data: JSON.stringify(params),
|
||||||
|
dataType: "json",
|
||||||
|
contentType: "application/json",
|
||||||
|
type: 'post',
|
||||||
|
async: false,
|
||||||
|
success: function (data) {
|
||||||
|
if (data.status == 0) {
|
||||||
|
layer.alert(data.msg);
|
||||||
|
window.location.href=window.location.href;
|
||||||
|
} else if (data.status == 1) {
|
||||||
|
layer.alert(data.msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
//上传会签单
|
//上传会签单
|
||||||
var generateFileupload = function (name) {
|
var generateFileupload = function (name) {
|
||||||
|
@ -1687,6 +1801,30 @@
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
|
|
||||||
|
var stageRefreshModal = function(id) {
|
||||||
|
$.ajax({
|
||||||
|
url: "${base}/project/info/" + id,
|
||||||
|
dataType: "json",
|
||||||
|
contentType: "application/json",
|
||||||
|
type: 'post',
|
||||||
|
async: false,
|
||||||
|
success: function (data) {
|
||||||
|
$("#stage").val(data.data.stage);
|
||||||
|
$("#stageRemark").val(data.data.stageRemark);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
$("#stageProjectId").val(id);
|
||||||
|
$('#myModal4').modal({
|
||||||
|
relatedElement: this,
|
||||||
|
onConfirm: function() {
|
||||||
|
console.log("提交");
|
||||||
|
},
|
||||||
|
onCancel: function() {
|
||||||
|
console.log("取消");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
|
|
||||||
var projectNoCheck = function () {
|
var projectNoCheck = function () {
|
||||||
var newProjectNo = $("#newProjectNo").val();
|
var newProjectNo = $("#newProjectNo").val();
|
||||||
var id = $("#modelId").val();
|
var id = $("#modelId").val();
|
||||||
|
|
|
@ -173,7 +173,7 @@
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="st-col">
|
<div class="st-col">
|
||||||
<div class="st-col-title">项目状态</div>
|
<div class="st-col-title">项目当前状态</div>
|
||||||
<div class="st-col-field">
|
<div class="st-col-field">
|
||||||
<select data-am-selected="{btnSize: 'sm',btnWidth: '100%',maxHeight: 500,searchBox: 1}" id="status" name="status">
|
<select data-am-selected="{btnSize: 'sm',btnWidth: '100%',maxHeight: 500,searchBox: 1}" id="status" name="status">
|
||||||
<option value="-1">全部</option>
|
<option value="-1">全部</option>
|
||||||
|
|
|
@ -48,7 +48,8 @@
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
$('#pager').prepend('<li><a style="pointer-events:none;">共${(pager.totalRow)!10}条<\/a><\/li>');
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue