2024-03-11 合同发票修改

This commit is contained in:
2024-03-11 23:25:08 +08:00
parent 832da93400
commit 60e1677254
59 changed files with 5276 additions and 257 deletions
+4 -2
View File
@@ -80,8 +80,8 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Lib\Microsoft.SQLServer.ManagedDTS.dll</HintPath>
</Reference>
<Reference Include="MiniExcel, Version=1.29.0.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.29.0\lib\net45\MiniExcel.dll</HintPath>
<Reference Include="MiniExcel, Version=1.31.3.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.31.3\lib\net45\MiniExcel.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.12.0.3\lib\net45\Newtonsoft.Json.dll</HintPath>
@@ -632,6 +632,8 @@
<Compile Include="PHTGL\ContractCompile\PHTGL_ApproveService.cs" />
<Compile Include="PHTGL\ContractCompile\PHTGL_SpecialTermsConditionsService.cs" />
<Compile Include="PHTGL\ContractCompile\SubcontractAgreementService.cs" />
<Compile Include="PHTGL\InvoiceManage\PhtglInvoicedetailService.cs" />
<Compile Include="PHTGL\InvoiceManage\PhtglInvoiceService .cs" />
<Compile Include="PHTGL\OAWebSevice.cs" />
<Compile Include="ProjectData\MainItemService.cs" />
<Compile Include="ProjectData\ProjectData_CodeTemplateRuleService.cs" />
+15
View File
@@ -3242,6 +3242,17 @@ namespace BLL
/// 进度检测
/// </summary>
public const string PHTGL_ContractTrackProgressDetectionMenuId = "F545E899-B3B5-4B49-A741-DE19356553D5";
/// <summary>
/// 发票台账
/// </summary>
public const string PHTGL_InvoiceStandingBookMenuId = "B451C8DE-71B9-433E-ACB9-4465FB7E3C5C";
/// <summary>
/// 出入库单
/// </summary>
public const string PHTGL_InvoiceOrderMenuId = "DD38AD86-513B-4BBC-AF64-0F52F56784BE";
#endregion
@@ -3445,6 +3456,10 @@ namespace BLL
/// </summary>
public const string TemContractTrackTemplateUrl = "File\\Excel\\DataIn\\合同价格信息导入模板.xlsx";
/// <summary>
/// 合同发票信息导入模板
/// </summary>
public const string InvoiceTemplateUrl = "File\\Excel\\DataIn\\发票导入模版.xlsx";
/// <summary>
/// 施工日志模板文件原始虚拟路径
/// </summary>
public const string ConstructionLogTemplateUrl = "File\\Excel\\ConstructionLog\\施工日志.xlsx";
+2
View File
@@ -1498,6 +1498,8 @@ namespace BLL
return splitLists;
}
}
}
@@ -1,5 +1,6 @@
using System.Collections.Generic;
using System.Linq;
using Model;
namespace BLL
{
@@ -5,6 +5,7 @@ using System.Data;
using System.Data.SqlClient;
using System.IO;
using System.Linq;
using Model;
namespace BLL
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using Model;
namespace BLL
{
@@ -7,6 +7,7 @@ using System.Data.SqlClient;
using System.IO;
using System.Linq;
using System.Web.UI.WebControls;
using Model;
namespace BLL
{
@@ -10,6 +10,7 @@ using System.Drawing;
using System.IO;
using System.Linq;
using System.Reflection;
using Model;
namespace BLL
{
@@ -1,4 +1,7 @@
using System.Collections.Generic;
using Model;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
@@ -21,12 +24,18 @@ namespace BLL
return Funs.DB.PHTGL_Approve.FirstOrDefault(e => e.ApproveId == ApproveId);
}
/// <summary>
/// 获取未审批记录
/// </summary>
/// <param name="contractId"></param>
/// <returns></returns>
public static List<Model.PHTGL_Approve> GetPHTGL_ApproveByContractId(string contractId)
{
var q = (from x in Funs.DB.PHTGL_Approve where x.ContractId == contractId && x.State == 0 select x).ToList();
return q;
}
/// <summary>
///获取当前人员的所有审批信息
/// </summary>
@@ -80,6 +89,22 @@ namespace BLL
return IsExit;
}
/// <summary>
/// 判断当前人员是否正在审批
/// </summary>
/// <param name="contractId"></param>
/// <param name="approveMan"></param>
/// <returns></returns>
public static bool IsApprovingMan(string contractId, string approveMan)
{
bool IsExit = false;
var q = (from x in Funs.DB.PHTGL_Approve where x.ContractId == contractId && x.ApproveMan == approveMan && x.State==0 select x).ToList();
if (q.Count>0)
{
IsExit = true;
}
return IsExit;
}
/// <summary>
/// 添加审批人员记录
/// </summary>
/// <param name="newtable"></param>
@@ -207,23 +232,70 @@ namespace BLL
/// </summary>
/// <param name="ContractId"></param>
/// <returns></returns>
public static DataTable GetAllApproveData(string ContractId)
//public static DataTable GetAllApproveData(string ContractId)
//{
// string strSql = @" select u.PersonName as ApproveMan,
// App.ApproveDate,
// (CASE App.IsAgree WHEN '1' THEN '不同意'
// WHEN '2' THEN '同意' END) AS IsAgree,
// App.ApproveIdea,
// App.ApproveId,
// App.ApproveType
// from PHTGL_Approve as App"
// + @" left join Person_Persons AS U ON U.PersonId = App.ApproveMan WHERE 1=1 and App.IsAgree <>0 and app.ContractId= @ContractId order by convert(datetime ,App.ApproveDate) ";
// List<SqlParameter> listStr = new List<SqlParameter>();
// listStr.Add(new SqlParameter("@ContractId", ContractId));
// SqlParameter[] parameter = listStr.ToArray();
// DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
// return tb;
//}
public static IEnumerable GetAllApproveData(string contractId)
{
string strSql = @" select u.PersonName as ApproveMan,
App.ApproveDate,
(CASE App.IsAgree WHEN '1' THEN '不同意'
WHEN '2' THEN '同意' END) AS IsAgree,
App.ApproveIdea,
App.ApproveId,
App.ApproveType
from PHTGL_Approve as App"
+ @" left join Person_Persons AS U ON U.PersonId = App.ApproveMan WHERE 1=1 and App.IsAgree <>0 and app.ContractId= @ContractId order by convert(datetime ,App.ApproveDate) ";
List<SqlParameter> listStr = new List<SqlParameter>();
listStr.Add(new SqlParameter("@ContractId", ContractId));
SqlParameter[] parameter = listStr.ToArray();
DataTable tb = SQLHelper.GetDataTableRunText(strSql, parameter);
return tb;
var result = (from x in Funs.DB.PHTGL_Approve
join u in Funs.DB.Person_Persons on x.ApproveMan equals u.PersonId
where x.IsAgree != 0 && x.ContractId == contractId
orderby x.ApproveDate
select new
{
ApproveMan = u.PersonName,
x.ApproveDate,
IsAgree = x.IsAgree == 1 ? "不同意" : "同意",
x.ApproveIdea,
x.ApproveId,
x.ApproveType,
x.ApproveForm
}
).ToList();
return result;
}
public static IEnumerable GetAllApproveData(string contractId,string aproveForm)
{
var result = (from x in Funs.DB.PHTGL_Approve
join u in Funs.DB.Person_Persons on x.ApproveMan equals u.PersonId
where x.IsAgree != 0 && x.ContractId == contractId
orderby x.ApproveDate
select new
{
ApproveMan = u.PersonName,
x.ApproveDate,
IsAgree = x.IsAgree == 1 ? "不同意" : "同意",
x.ApproveIdea,
x.ApproveId,
x.ApproveType,
x.ApproveForm
}
).ToList();
if (!string.IsNullOrEmpty(aproveForm))
{
result = result.Where(x => x.ApproveForm == aproveForm).ToList();
}
return result;
}
/// <summary>
/// 获取最后拒绝的人员
/// </summary>
@@ -243,57 +315,4 @@ namespace BLL
return tb;
}
}
public class ApproveManModel
{
public int Number
{
get;
set;
}
public string userid
{
get;
set;
}
public string Rolename
{
get;
set;
}
}
public class PrintModel
{
public int Number
{
get;
set;
}
public string Rolename
{
get;
set;
}
public string UserName
{
get;
set;
}
public string Image
{
get;
set;
}
public string ApproveIdea
{
get;
set;
}
public string ApproveDate
{
get;
set;
}
}
}
@@ -217,8 +217,6 @@ namespace BLL
db.SubmitChanges();
}
public static void UpdatePHTGL_ContractTrack(PHTGL_ContractTrack newtable)
{
var table = Funs.DB.PHTGL_ContractTrack.FirstOrDefault(x => x.Id == newtable.Id);
@@ -1341,110 +1339,5 @@ namespace BLL
}
}
}
public class PHTGL_ContractTrackDtoIn
{
/// <summary>
/// 序号
/// </summary>
[ExcelColumnIndex("A")] public string SerialNumber { get; set; }
/// <summary>
/// 主项号
/// </summary>
[ExcelColumnIndex("B")] public string MainItemCode { get; set; }
/// <summary>
/// 主项名称
/// </summary>
[ExcelColumnIndex("C")] public string MainItemName { get; set; }
/// <summary>
/// 专业代码
/// </summary>
[ExcelColumnIndex("D")] public string MajorCode { get; set; }
/// <summary>
/// 专业工程名称
/// </summary>
[ExcelColumnIndex("E")] public string MajorName { get; set; }
/// <summary>
/// 分部工程
/// </summary>
[ExcelColumnIndex("F")] public string SubProject { get; set; }
/// <summary>
/// 分项工程
/// </summary>
[ExcelColumnIndex("G")] public string SubItemProject { get; set; }
/// <summary>
/// 项目编码
/// </summary>
[ExcelColumnIndex("H")] public string ProjectCode { get; set; }
/// <summary>
/// 项目名称
/// </summary>
[ExcelColumnIndex("I")] public string ProjectName { get; set; }
/// <summary>
/// 项目特征描述
/// </summary>
[ExcelColumnIndex("J")] public string ProjectDescription { get; set; }
/// <summary>
/// 计量单位
/// </summary>
[ExcelColumnIndex("K")] public string UnitOfMeasurement { get; set; }
/// <summary>
/// 工程量
/// </summary>
[ExcelColumnIndex("L")] public string Quantity { get; set; }
/// <summary>
/// 全费用固定综合单价
/// </summary>
[ExcelColumnIndex("M")] public decimal TotalCostFixedComprehensiveUnitPrice { get; set; }
/// <summary>
/// 其中:主材费
/// </summary>
[ExcelColumnIndex("N")] public decimal MainMaterialCost { get; set; }
/// <summary>
/// 合价/元
/// </summary>
[ExcelColumnIndex("O")] public decimal TotalPrice { get; set; }
/// <summary>
/// 计算规则
/// </summary>
[ExcelColumnIndex("P")] public string CalculationRule { get; set; }
/// <summary>
/// 工作内容
/// </summary>
[ExcelColumnIndex("Q")] public string WorkContent { get; set; }
/// <summary>
/// 备注
/// </summary>
[ExcelColumnIndex("R")] public string Remarks { get; set; }
/// <summary>
/// 施工分包商
/// </summary>
[ExcelColumnIndex("S")] public string ConstructionSubcontractor { get; set; }
/// <summary>
/// 主材供应方
/// </summary>
[ExcelColumnIndex("T")] public string MaterialSupplier { get; set; }
/// <summary>
/// 是否总包合同范围内
/// </summary>
[ExcelColumnIndex("U")]
public string IsWithinGeneralContractScope { get; set; }
/// <summary>
/// 概算工程量
/// </summary>
[ExcelColumnIndex("V")] public string EstimatedQuantity { get; set; }
/// <summary>
/// 概算金额
/// </summary>
[ExcelColumnIndex("W")] public decimal EstimatedAmount { get; set; }
/// <summary>
/// 预算工程量
/// </summary>
[ExcelColumnIndex("X")] public string SettledQuantity { get; set; }
/// <summary>
/// 预算金额
/// </summary>
[ExcelColumnIndex("Y")] public decimal SettledAmount { get; set; }
}
}
@@ -0,0 +1,587 @@
using EmitMapper;
using FineUIPro;
using MiniExcelLibs;
using MiniExcelLibs.Attributes;
using Model;
using NPOI.SS.Formula.Functions;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Diagnostics.Contracts;
using System.Linq;
using System.Runtime.CompilerServices;
using System.Text;
using WIA;
namespace BLL
{
public static class PhtglInvoiceService
{
/// <summary>
/// 已导入
/// </summary>
public static int StateDataIn = -1;
/// <summary>
/// 已创建入库订单
/// </summary>
public static int StateCreate = 0;
/// <summary>
/// 入库审核
/// </summary>
public static int StateInPutApprove = 1;
/// <summary>
/// 入库审核拒绝
/// </summary>
public static int StateInPutApproveRefuse = 2;
/// <summary>
/// 入库审核成功
/// </summary>
public static int StateInPutApproveSuccess = 3;
/// <summary>
/// 出库审核中
/// </summary>
public static int StateOutPutApprove = 4;
/// <summary>
/// 出库审核拒绝
/// </summary>
public static int StateOutPutApproveRefuse = 5;
/// <summary>
/// 出库审核成功
/// </summary>
public static int StateOutPutApproveSuccess = 6;
public static string GetState(object invoiceId)
{
string result = "";
if (invoiceId!=null && !string.IsNullOrEmpty(invoiceId.ToString()) )
{
var InvoiceId=invoiceId.ToString();
var model = GetPHTGL_InvoiceById(InvoiceId);
var approveModel = PHTGL_ApproveService.GetPHTGL_ApproveByContractId(InvoiceId);
switch (model.State)
{
case -1:
result = "已导入";
break;
case 0:
result = "已创建入库订单";
break;
case 1:
result = "入库审核中"+",当前节点-"+BLL.Person_PersonsService.getPersonsNamesPersonIds(string.Join(",",approveModel.Select(x => x.ApproveMan)));
break;
case 2:
result = "入库审核拒绝";
break;
case 3:
result = "入库审核成功";
break;
case 4:
result = "出库审核中" + ",当前节点-" + BLL.Person_PersonsService.getPersonsNamesPersonIds(string.Join(",", approveModel.Select(x => x.ApproveMan)));
break;
case 5:
result = "出库审核拒绝";
break;
case 6:
result = "出库审核成功";
break;
}
}
return result;
}
#region 获取列表
/// <summary>
/// 记录数
/// </summary>
public static int Count
{
get;
set;
}
public static IEnumerable<Model.PHTGL_Invoice> GetPHTGL_InvoiceByModle(Model.PHTGL_Invoice table)
{
var q = from x in Funs.DB.PHTGL_Invoice
where
(string.IsNullOrEmpty(table.InvoiceId) || x.InvoiceId.Contains(table.InvoiceId)) &&
(string.IsNullOrEmpty(table.ProjectId) || x.ProjectId.Contains(table.ProjectId)) &&
(string.IsNullOrEmpty(table.ContractId) || x.ProjectId.Contains(table.ContractId)) &&
(string.IsNullOrEmpty(table.InvoiceCode) || x.InvoiceCode.Contains(table.InvoiceCode)) &&
(string.IsNullOrEmpty(table.InvoiceNumber) || x.InvoiceNumber.Contains(table.InvoiceNumber)) &&
(string.IsNullOrEmpty(table.SellerName) || x.SellerName.Contains(table.SellerName)) &&
(string.IsNullOrEmpty(table.InvoiceDate) || x.InvoiceDate.Contains(table.InvoiceDate)) &&
(string.IsNullOrEmpty(table.Remark) || x.Remark.Contains(table.Remark)) &&
(string.IsNullOrEmpty(table.ImagePath) || x.ImagePath.Contains(table.ImagePath)) &&
(string.IsNullOrEmpty(table.SellerTaxNumber) || x.SellerTaxNumber.Contains(table.SellerTaxNumber)) &&
(string.IsNullOrEmpty(table.ApproveManJson) || x.ApproveManJson.Contains(table.ApproveManJson)) &&
(string.IsNullOrEmpty(table.CreateUser) || x.CreateUser.Contains(table.CreateUser)) &&
(table.State==null ||x.State==table.State)
select x
;
return q.ToList();
}
/// <summary>
/// 获取分页列表
/// </summary>
/// <param name="table"></param>
/// <param name="grid1"></param>
/// <returns></returns>
public static IEnumerable GetListData(Model.PHTGL_Invoice table, Grid grid1)
{
var q = GetPHTGL_InvoiceByModle(table);
Count = q.Count();
if (Count == 0)
{
return null;
}
q = q.Skip(grid1.PageSize * grid1.PageIndex).Take(grid1.PageSize).ToList();
// q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return (from x in q
join y in Funs.DB.PHTGL_Contract on x.ContractId equals y.ContractId into g
from c in g.DefaultIfEmpty()
select new
{
c?.ContractName,
c?.ContractNum,
c?.Parties,
c?.ContractAmount,
x.InvoiceId,
x.ProjectId,
x.ContractId,
x.State,
x.InvoiceCode,
x.InvoiceNumber,
x.SellerName,
x.InvoiceDate,
x.AmountExcludingTax,
x.TotalTax,
x.Remark,
x.ImagePath,
x.SellerTaxNumber,
x.InvoiceAmount,
x.ApproveManJson,
x.CreateDate,
x.CreateUser,
x.OrderInDate,
x.OrderOutDate,
x.OrderCode,
x.MaterialRequisitionUnit
});
}
public static IEnumerable GetOrderInListData(Model.PHTGL_Invoice table, Grid grid1)
{
var q = GetPHTGL_InvoiceByModle(table);
Count = q.Count();
if (Count == 0)
{
return null;
}
q = q.Skip(grid1.PageSize * grid1.PageIndex).Take(grid1.PageSize).ToList();
// q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return (from x in q
join y in Funs.DB.PHTGL_Contract on x.ContractId equals y.ContractId into g
from c in g.DefaultIfEmpty()
where x.State>StateDataIn
select new
{
c?.ContractName,
c?.ContractNum,
c?.Parties,
c?.ContractAmount,
x.InvoiceId,
x.ProjectId,
x.ContractId,
x.State,
x.InvoiceCode,
x.InvoiceNumber,
x.SellerName,
x.InvoiceDate,
x.AmountExcludingTax,
x.TotalTax,
x.Remark,
x.ImagePath,
x.SellerTaxNumber,
x.InvoiceAmount,
x.ApproveManJson,
x.CreateDate,
x.CreateUser,
x.OrderInDate,
x.OrderOutDate,
x.OrderCode,
x.MaterialRequisitionUnit
}).ToList();
}
#endregion
public static Model.PHTGL_Invoice GetPHTGL_InvoiceById(string InvoiceId)
{
return Funs.DB.PHTGL_Invoice.FirstOrDefault(x => x.InvoiceId == InvoiceId);
}
/// <summary>
/// 添加实体
/// </summary>
/// <param name="newtable"></param>
public static void AddPHTGL_Invoice(Model.PHTGL_Invoice newtable)
{
Model.PHTGL_Invoice table = new Model.PHTGL_Invoice
{
InvoiceId = newtable.InvoiceId,
ProjectId = newtable.ProjectId,
ContractId = newtable.ContractId,
State = newtable.State,
InvoiceCode = newtable.InvoiceCode,
InvoiceNumber = newtable.InvoiceNumber,
SellerName = newtable.SellerName,
InvoiceDate = newtable.InvoiceDate,
AmountExcludingTax = newtable.AmountExcludingTax,
TotalTax = newtable.TotalTax,
Remark = newtable.Remark,
ImagePath = newtable.ImagePath,
SellerTaxNumber = newtable.SellerTaxNumber,
InvoiceAmount = newtable.InvoiceAmount,
ApproveManJson = newtable.ApproveManJson,
CreateDate = newtable.CreateDate,
CreateUser = newtable.CreateUser,
OrderInDate = newtable.OrderInDate,
OrderCode = newtable.OrderCode,
OrderOutDate = newtable.OrderOutDate,
MaterialRequisitionUnit = newtable.MaterialRequisitionUnit,
};
Funs.DB.PHTGL_Invoice.InsertOnSubmit(table);
Funs.DB.SubmitChanges();
}
/// <summary>
/// 修改实体
/// </summary>
/// <param name="newtable"></param>
public static void UpdatePHTGL_Invoice(Model.PHTGL_Invoice newtable)
{
Model.PHTGL_Invoice table = Funs.DB.PHTGL_Invoice.FirstOrDefault(x => x.InvoiceId == newtable.InvoiceId);
if (table != null)
{
table.InvoiceId = newtable.InvoiceId;
table.ProjectId = newtable.ProjectId;
table.ContractId = newtable.ContractId;
table.State = newtable.State;
table.InvoiceCode = newtable.InvoiceCode;
table.InvoiceNumber = newtable.InvoiceNumber;
table.SellerName = newtable.SellerName;
table.InvoiceDate = newtable.InvoiceDate;
table.AmountExcludingTax = newtable.AmountExcludingTax;
table.TotalTax = newtable.TotalTax;
table.Remark = newtable.Remark;
table.ImagePath = newtable.ImagePath;
table.SellerTaxNumber = newtable.SellerTaxNumber;
table.InvoiceAmount = newtable.InvoiceAmount;
table.ApproveManJson = newtable.ApproveManJson;
table.CreateDate = newtable.CreateDate;
table.CreateUser = newtable.CreateUser;
table.OrderInDate = newtable.OrderInDate;
table.OrderCode = newtable.OrderCode;
table.OrderOutDate = newtable.OrderOutDate;
table.MaterialRequisitionUnit = newtable.MaterialRequisitionUnit;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 删除实体
/// </summary>
/// <param name="InvoiceId"></param>
public static void DeletePHTGL_InvoiceById(string InvoiceId)
{
Model.PHTGL_Invoice table = Funs.DB.PHTGL_Invoice.FirstOrDefault(x => x.InvoiceId == InvoiceId);
if (table != null)
{
Funs.DB.PHTGL_Invoice.DeleteOnSubmit(table);
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 根据主键获取审批人实体
/// </summary>
/// <param name="InvoiceId"></param>
/// <returns></returns>
public static Model.PHTGL_InvoiceApproveManEntity GetInvoiceApproveManEntity(string InvoiceId)
{
Model.PHTGL_InvoiceApproveManEntity list = new Model.PHTGL_InvoiceApproveManEntity();
Model.PHTGL_Invoice data = Funs.DB.PHTGL_Invoice.FirstOrDefault(e => e.InvoiceId == InvoiceId);
if (data != null && !string .IsNullOrEmpty(data.ApproveManJson))
{
list = Newtonsoft.Json.JsonConvert.DeserializeObject<Model.PHTGL_InvoiceApproveManEntity>(data.ApproveManJson);
}
return list;
}
/// <summary>
/// 将状态改为已创建
/// </summary>
/// <param name="invoiceId"></param>
public static void ChangeStateToCreate(string invoiceId)
{
var model = GetPHTGL_InvoiceById(invoiceId);
model.State = StateCreate;
UpdatePHTGL_Invoice(model);
}
/// <summary>
/// 保存入库审批人实体
/// </summary>
/// <param name="invoiceId"></param>
/// <param name="inputapproveman"></param>
public static void SaveInputApproveManEntity(string invoiceId, Inputapproveman inputapproveman)
{
var table = GetInvoiceApproveManEntity(invoiceId);
table.InputApproveMan = inputapproveman;
var json = Newtonsoft.Json.JsonConvert.SerializeObject(table);
var data = Funs.DB.PHTGL_Invoice.FirstOrDefault(e => e.InvoiceId == invoiceId);
if (data != null)
{
data.ApproveManJson = json;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 保存出库审批人实体
/// </summary>
/// <param name="invoiceId"></param>
/// <param name="outputapproveman"></param>
public static void SaveOutputApproveManEntity(string invoiceId, Outputapproveman outputapproveman)
{
var table = GetInvoiceApproveManEntity(invoiceId);
table.OutputApproveMan = outputapproveman;
var json = Newtonsoft.Json.JsonConvert.SerializeObject(table);
var data = Funs.DB.PHTGL_Invoice.FirstOrDefault(e => e.InvoiceId == invoiceId);
if (data != null)
{
data.ApproveManJson = json;
Funs.DB.SubmitChanges();
}
}
/// <summary>
/// 导入数据
/// </summary>
/// <param name="path">文件地址</param>
/// <param name="projectid">项目id</param>
/// <param name="creatUserId">创建人id</param>
/// <returns></returns>
public static ResponeData ImportData(string path, string projectid, string creatUserId)
{
var responeData = new ResponeData();
List<PHTGL_InvoiceDtoIn> temeplateDtoIns;
try
{
temeplateDtoIns = MiniExcel.Query<PHTGL_InvoiceDtoIn>(path, startCell: "A2").ToList();
}
catch (Exception ex)
{
responeData.code = 0;
responeData.message = "模板错误:" + ex.ToString();
return responeData;
}
//数据校验
if (temeplateDtoIns.Count == 0)
{
responeData.code = 0;
responeData.message = "导入数据为空!";
return responeData;
}
var invoiceCodeList = temeplateDtoIns.Select(x => x.InvoiceCode).Distinct().ToList(); //获取所有发票代码
//根据发票代码分组插入数据
foreach (var invoiceCode in invoiceCodeList)
{
var invoiceCodeDtoIns = temeplateDtoIns.Where(x => x.InvoiceCode == invoiceCode).ToList();
var mapper =
ObjectMapperManager.DefaultInstance.GetMapper<List<PHTGL_InvoiceDtoIn>, List<PHTGL_Invoice>>();
var mapperDetail =
ObjectMapperManager.DefaultInstance.GetMapper<List<PHTGL_InvoiceDtoIn>, List<PHTGL_InvoiceDetail>>();
//通过映射实体赋值
var invoiceModel = mapper.Map(invoiceCodeDtoIns).FirstOrDefault();
var invoceDetailList = mapperDetail.Map(invoiceCodeDtoIns.Where(x => !string.IsNullOrEmpty(x.GoodsOrServicesName) && !string.IsNullOrEmpty(x.SpecificationModel)).ToList());
var queryModel = new PHTGL_Invoice
{
InvoiceCode = invoiceCode,
ProjectId = projectid
};
var queryresult = GetPHTGL_InvoiceByModle(queryModel).FirstOrDefault();//查询该发票代码是否存在
if (queryresult != null)
{
if (queryresult.State != StateDataIn)
{
continue;
}
invoiceModel.State = StateDataIn;
invoiceModel.ProjectId = projectid;
invoiceModel.InvoiceId = queryresult.InvoiceId;
invoiceModel.CreateUser = creatUserId;
invoiceModel.CreateDate = DateTime.Now;
UpdatePHTGL_Invoice(invoiceModel);
}
else
{
invoiceModel.InvoiceId = SQLHelper.GetNewID();
invoiceModel.State = StateDataIn;
invoiceModel.ProjectId = projectid;
invoiceModel.CreateUser = creatUserId;
invoiceModel.CreateDate = DateTime.Now;
AddPHTGL_Invoice(invoiceModel);
}
PhtglInvoicedetailService.DeletePHTGL_InvoiceDetailByInvoiceId(invoiceModel.InvoiceId);
PhtglInvoicedetailService.BatchAddPHTGL_InvoiveDetail(invoceDetailList, invoiceModel.InvoiceId); //插入发票明细
}
return responeData;
}
/// <summary>
/// 获取审批人员
/// </summary>
/// <param name="invoiceId">主键id</param>
/// <param name="type">0 入库 1出库</param>
/// <returns></returns>
public static List<ApproveManModel> GetApproveManModels(string invoiceId ,int type)
{
List<ApproveManModel> approveManModels = new List<ApproveManModel>();
var table = GetInvoiceApproveManEntity(invoiceId);
if (type==0) //入库
{
approveManModels.Add(new ApproveManModel { Number = 1, userid = table.InputApproveMan.ProfessionalEngineer, Rolename = "专业工程师" });
approveManModels.Add(new ApproveManModel { Number = 2, userid = table.InputApproveMan.ConstructionManager, Rolename = "施工经理" });
approveManModels.Add(new ApproveManModel { Number = 3, userid = table.InputApproveMan.ControlManager, Rolename = "控制经理" });
approveManModels.Add(new ApproveManModel { Number = 4, userid = table.InputApproveMan.ProjectManager, Rolename = "项目经理" }); }
else {
approveManModels.Add(new ApproveManModel { Number = 5, userid = table.OutputApproveMan.PurchasingMan, Rolename = "采购员" });
approveManModels.Add(new ApproveManModel { Number = 6, userid = table.OutputApproveMan.ControlManager, Rolename = "控制经理" });
approveManModels.Add(new ApproveManModel { Number = 7, userid = table.OutputApproveMan.ProjectManager, Rolename = "项目经理" });
approveManModels.Add(new ApproveManModel { Number = 8, userid = table.OutputApproveMan.ConUnitMaterialOfficer, Rolename = "施工单位材料经理" });
approveManModels.Add(new ApproveManModel { Number = 9, userid = table.OutputApproveMan.ConUnitProjectManager, Rolename = "施工单位项目经理" });
}
return approveManModels;
}
/// <summary>
/// 开启审批流程
/// </summary>
/// <param name="invoiceId"></param>
public static void StartApprovalProcess(string invoiceId )
{
var model = GetPHTGL_InvoiceById(invoiceId);
if (model.State ==StateCreate || model.State == StateInPutApproveRefuse)
{
CreateFirstApprove(invoiceId, 0);
model.State = StateInPutApprove;
UpdatePHTGL_Invoice(model);
}
else if (model.State == StateInPutApproveSuccess || model.State == StateOutPutApproveRefuse)
{
CreateFirstApprove(invoiceId, 1);
model.State = StateOutPutApprove;
UpdatePHTGL_Invoice(model);
}
}
/// <summary>
/// 创建第一个审批流程
/// </summary>
/// <param name="invoiceId">主键</param>
/// <param name="type">0 入库 1出库</param>
public static void CreateFirstApprove(string invoiceId, int type)
{
var approveManModels = GetApproveManModels(invoiceId, type).OrderBy(x=>x.Number).FirstOrDefault();
Model.PHTGL_Approve _Approve = new Model.PHTGL_Approve();
_Approve.ApproveId = SQLHelper.GetNewID(typeof(Model.PHTGL_Approve));
_Approve.ContractId = invoiceId;
_Approve.ApproveMan = approveManModels.userid;
_Approve.ApproveDate = "";
_Approve.State = 0;
_Approve.IsAgree = 0;
_Approve.ApproveIdea = "";
_Approve.ApproveType = approveManModels.Rolename;
_Approve.ApproveForm =(type==0? "Invoice_Input": "Invoice_Output");
BLL.PHTGL_ApproveService.AddPHTGL_Approve(_Approve);
}
/// <summary>
/// 审批
/// </summary>
/// <param name="invoiceId"></param>
/// <param name="userid"></param>
/// <param name="isAgree"></param>
/// <param name="idea"></param>
/// <param name="type">0 入库 1出库</param>
public static void Approve(string invoiceId, int type, string userid, bool isAgree, string idea)
{
var approveManModels = GetApproveManModels(invoiceId, type); //获取审批人员
var thisApprovemodel = PHTGL_ApproveService.GetPHTGL_ApproveByUserId(invoiceId, userid);//获取当前人员正在审批的信息
if (thisApprovemodel == null) { return; }
var thisApproveTypeNumber = approveManModels.Find(x => x.userid == userid && x.Rolename == thisApprovemodel.ApproveType).Number; //当前审批人员序号
int nextApproveTypeNumber = thisApproveTypeNumber + 1; //下一个审批人员序号
int maxApproveTypeNumber = approveManModels.Max(x => x.Number); //最大审批人员序号
thisApprovemodel.ApproveDate = Funs.GetNewDateTimeOrNow("").ToString();
thisApprovemodel.IsAgree = isAgree ? 2 : 1;
thisApprovemodel.ApproveIdea = idea;
thisApprovemodel.State = 1;
PHTGL_ApproveService.UpdatePHTGL_Approve(thisApprovemodel);
if (isAgree)
{
if (PHTGL_ApproveService.GetPHTGL_ApproveByContractId(invoiceId).Count==0) //当前节点是否全部审批结束
{
if (thisApproveTypeNumber < maxApproveTypeNumber) //是否最末节点
{
Model.PHTGL_Approve _Approve = new Model.PHTGL_Approve();
_Approve.ContractId = thisApprovemodel.ContractId;
_Approve.ApproveMan = approveManModels.Find(e => e.Number == nextApproveTypeNumber).userid;
_Approve.ApproveDate = "";
_Approve.State = 0;
_Approve.IsAgree = 0;
_Approve.ApproveIdea = "";
_Approve.ApproveType = approveManModels.Find(e => e.Number == nextApproveTypeNumber).Rolename;
_Approve.IsPushOa = 0;
_Approve.ApproveForm = (type == 0 ? "Invoice_Input" : "Invoice_Output");
_Approve.ApproveId = SQLHelper.GetNewID(typeof(Model.PHTGL_Approve));
BLL.PHTGL_ApproveService.AddPHTGL_Approve(_Approve);
}
else
{
//流程走完结束
var model = GetPHTGL_InvoiceById(invoiceId);
model.State = (type == 0 ? StateInPutApproveSuccess:StateOutPutApproveSuccess);
UpdatePHTGL_Invoice(model);
}
}
}
else
{ //审批拒绝-流程结束
var model = GetPHTGL_InvoiceById(invoiceId);
model.State = (type == 0 ? StateInPutApproveRefuse : StateOutPutApproveRefuse);
UpdatePHTGL_Invoice(model);
}
}
}
}
@@ -0,0 +1,165 @@
using FineUIPro;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace BLL
{
public static class PhtglInvoicedetailService
{
#region 获取列表
/// <summary>
/// 记录数
/// </summary>
public static int Count
{
get;
set;
}
public static IEnumerable<Model.PHTGL_InvoiceDetail> GetPHTGL_InvoiceDetailByModle(Model.PHTGL_InvoiceDetail table)
{
var q = from x in Funs.DB.PHTGL_InvoiceDetail
where
(string.IsNullOrEmpty(table.InvoiceDetailId) || x.InvoiceDetailId.Contains(table.InvoiceDetailId)) &&
(string.IsNullOrEmpty(table.InvoiceId) || x.InvoiceId.Contains(table.InvoiceId)) &&
(string.IsNullOrEmpty(table.GoodsOrServicesName) || x.GoodsOrServicesName.Contains(table.GoodsOrServicesName)) &&
(string.IsNullOrEmpty(table.SpecificationModel) || x.SpecificationModel.Contains(table.SpecificationModel)) &&
(string.IsNullOrEmpty(table.Unit) || x.Unit.Contains(table.Unit)) &&
(string.IsNullOrEmpty(table.TaxRate) || x.TaxRate.Contains(table.TaxRate))
select x
;
return q.ToList();
}
/// <summary>
/// 获取分页列表
/// </summary>
/// <param name="table"></param>
/// <param name="grid1"></param>
/// <returns></returns>
public static IEnumerable GetListData(Model.PHTGL_InvoiceDetail table, Grid grid1)
{
var q = GetPHTGL_InvoiceDetailByModle(table);
Count = q.Count();
if (Count == 0)
{
return null;
}
q = q.Skip(grid1.PageSize * grid1.PageIndex).Take(grid1.PageSize).ToList();
// q = SortConditionHelper.SortingAndPaging(q, Grid1.SortField, Grid1.SortDirection, Grid1.PageIndex, Grid1.PageSize);
return from x in q
select new
{
x.InvoiceDetailId,
x.InvoiceId,
x.GoodsOrServicesName,
x.SpecificationModel,
x.Unit,
x.Quantity,
x.UnitPrice,
x.Amount,
x.TaxRate,
x.Tax,
};
}
#endregion
public static Model.PHTGL_InvoiceDetail GetPHTGL_InvoiceDetailById(string InvoiceDetailId)
{
return Funs.DB.PHTGL_InvoiceDetail.FirstOrDefault(x => x.InvoiceDetailId == InvoiceDetailId);
}
public static List<Model.PHTGL_InvoiceDetail> GetPHTGL_InvoiceDetailByInvoiceId(string InvoiceId)
{
var list = Funs.DB.PHTGL_InvoiceDetail.Where(x => x.InvoiceId == InvoiceId).ToList();
return list;
}
public static void AddPHTGL_InvoiceDetail(Model.PHTGL_InvoiceDetail newtable)
{
if (string.IsNullOrEmpty(newtable.InvoiceDetailId))
{
newtable.InvoiceDetailId = SQLHelper.GetNewID();
}
Model.PHTGL_InvoiceDetail table = new Model.PHTGL_InvoiceDetail
{
InvoiceDetailId = newtable.InvoiceDetailId,
InvoiceId = newtable.InvoiceId,
GoodsOrServicesName = newtable.GoodsOrServicesName,
SpecificationModel = newtable.SpecificationModel,
Unit = newtable.Unit,
Quantity = newtable.Quantity,
UnitPrice = newtable.UnitPrice,
Amount = newtable.Amount,
TaxRate = newtable.TaxRate,
Tax = newtable.Tax,
};
Funs.DB.PHTGL_InvoiceDetail.InsertOnSubmit(table);
Funs.DB.SubmitChanges();
}
public static void UpdatePHTGL_InvoiceDetail(Model.PHTGL_InvoiceDetail newtable)
{
Model.PHTGL_InvoiceDetail table = Funs.DB.PHTGL_InvoiceDetail.FirstOrDefault(x => x.InvoiceDetailId == newtable.InvoiceDetailId);
if (table != null)
{
table.InvoiceDetailId = newtable.InvoiceDetailId;
table.InvoiceId = newtable.InvoiceId;
table.GoodsOrServicesName = newtable.GoodsOrServicesName;
table.SpecificationModel = newtable.SpecificationModel;
table.Unit = newtable.Unit;
table.Quantity = newtable.Quantity;
table.UnitPrice = newtable.UnitPrice;
table.Amount = newtable.Amount;
table.TaxRate = newtable.TaxRate;
table.Tax = newtable.Tax;
Funs.DB.SubmitChanges();
}
}
public static void DeletePHTGL_InvoiceDetailById(string InvoiceDetailId)
{
Model.PHTGL_InvoiceDetail table = Funs.DB.PHTGL_InvoiceDetail.FirstOrDefault(x => x.InvoiceDetailId == InvoiceDetailId);
if (table != null)
{
Funs.DB.PHTGL_InvoiceDetail.DeleteOnSubmit(table);
Funs.DB.SubmitChanges();
}
}
public static void DeletePHTGL_InvoiceDetailByInvoiceId(string InvoiceId)
{
var list = Funs.DB.PHTGL_InvoiceDetail.Where(x => x.InvoiceId == InvoiceId);
if (list != null)
{
Funs.DB.PHTGL_InvoiceDetail.DeleteAllOnSubmit(list);
Funs.DB.SubmitChanges();
}
}
public static void BatchAddPHTGL_InvoiveDetail(IEnumerable<Model.PHTGL_InvoiceDetail> list, string invoiceId )
{
foreach (var item in list)
{
item.InvoiceId= invoiceId;
AddPHTGL_InvoiceDetail(item);
}
}
public static void BatchAddPHTGL_InvoiveDetail(IEnumerable<Model.PHTGL_InvoiceDetail> list)
{
foreach (var item in list)
{
AddPHTGL_InvoiceDetail(item);
}
}
}
}
+50 -2
View File
@@ -114,8 +114,8 @@
<Reference Include="Microsoft.QualityTools.Testing.Fakes, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
</Reference>
<Reference Include="MiniExcel, Version=1.29.0.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.29.0\lib\net45\MiniExcel.dll</HintPath>
<Reference Include="MiniExcel, Version=1.31.3.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.31.3\lib\net45\MiniExcel.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net40\Newtonsoft.Json.dll</HintPath>
@@ -1300,6 +1300,12 @@
<Content Include="PHTGL\Filing\ContractStandingBookIn.aspx" />
<Content Include="PHTGL\Filing\Files.aspx" />
<Content Include="PHTGL\Filing\SetSubFile.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceDataIn.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceOrder.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceOrderDetail.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceOrderReviewEdit.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceStandingBook.aspx" />
<Content Include="PHTGL\InvoiceManage\InvoiceStandingBookEdit.aspx" />
<Content Include="PHTGL\LongListManager\LongListNetApplication.aspx" />
<Content Include="PHTGL\LongListManager\LongListNetReview.aspx" />
<Content Include="ProjectData\MainItem.aspx" />
@@ -12690,6 +12696,48 @@
<Compile Include="PHTGL\Filing\SetSubFile.aspx.designer.cs">
<DependentUpon>SetSubFile.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceDataIn.aspx.cs">
<DependentUpon>InvoiceDataIn.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceDataIn.aspx.designer.cs">
<DependentUpon>InvoiceDataIn.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrder.aspx.cs">
<DependentUpon>InvoiceOrder.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrder.aspx.designer.cs">
<DependentUpon>InvoiceOrder.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrderDetail.aspx.cs">
<DependentUpon>InvoiceOrderDetail.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrderDetail.aspx.designer.cs">
<DependentUpon>InvoiceOrderDetail.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrderReviewEdit.aspx.cs">
<DependentUpon>InvoiceOrderReviewEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceOrderReviewEdit.aspx.designer.cs">
<DependentUpon>InvoiceOrderReviewEdit.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceStandingBook.aspx.cs">
<DependentUpon>InvoiceStandingBook.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceStandingBook.aspx.designer.cs">
<DependentUpon>InvoiceStandingBook.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceStandingBookEdit.aspx.cs">
<DependentUpon>InvoiceStandingBookEdit.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
</Compile>
<Compile Include="PHTGL\InvoiceManage\InvoiceStandingBookEdit.aspx.designer.cs">
<DependentUpon>InvoiceStandingBookEdit.aspx</DependentUpon>
</Compile>
<Compile Include="PHTGL\LongListManager\LongListNetApplication.aspx.cs">
<DependentUpon>LongListNetApplication.aspx</DependentUpon>
<SubType>ASPXCodeBehind</SubType>
@@ -1,7 +1,5 @@
using BLL;
using Microsoft.Office.Core;
using System;
using System.Web;
namespace FineUIPro.Web.HSSE.OccupationHealth
{
@@ -1,8 +1,5 @@
using BLL;
using Microsoft.Office.Core;
using Newtonsoft.Json.Linq;
using System;
using System.Linq;
namespace FineUIPro.Web.HSSE.SitePerson
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -5,6 +5,7 @@ using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Web.DynamicData;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -3,6 +3,7 @@ using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using Model;
namespace FineUIPro.Web.PHTGL.BiddingManagement
{
@@ -1,4 +1,5 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Data;
@@ -182,7 +183,7 @@ namespace FineUIPro.Web.PHTGL.ContractCompile
}
DataTable tb = BLL.PHTGL_ApproveService.GetAllApproveData(ContractReviewId);
var tb = BLL.PHTGL_ApproveService.GetAllApproveData(ContractReviewId);
Grid1.DataSource = tb;
Grid1.DataBind();
}
@@ -0,0 +1,35 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceDataIn.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceDataIn" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>导入</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" OnCustomEvent="PageManager1_CustomEvent" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<Toolbars>
<f:Toolbar ID="Toolbar1" runat="server" Position="Bottom">
<Items>
<f:ToolbarFill ID="ToolbarFill1" runat="server"></f:ToolbarFill>
<f:Button ID="btnImport" Icon="DoorIn" runat="server" Text="导入" ToolTip="数据导入" ValidateForms="SimpleForm1"
OnClick="btnImport_Click">
</f:Button>
<f:Button ID="btnDownLoad" runat="server" Icon="ApplicationGo" Text="下载模板" ToolTip="下载模板" OnClick="btnDownLoad_Click">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
<Items>
<f:FileUpload runat="server" ID="fuAttachUrl" EmptyText="请选择导入的Eexce文件" Width="500px">
</f:FileUpload>
<f:HiddenField ID="hdFileName" runat="server"></f:HiddenField>
</Items>
</f:Panel>
</form>
</body>
</html>
@@ -0,0 +1,147 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceDataIn : PageBase
{
#region 加载
/// <summary>
/// 加载页面
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
}
}
#endregion
#region 导入
/// <summary>
/// 导入
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnImport_Click(object sender, EventArgs e)
{
var message = string.Empty;
errorInfos = string.Empty;
if (fuAttachUrl.HasFile == false)
{
ShowNotify("请选择Excel文件!", MessageBoxIcon.Warning);
return;
}
var IsXls = Path.GetExtension(fuAttachUrl.FileName).Trim().ToLower();
if (IsXls != ".xlsx")
{
ShowNotify("只能选择Excel文件!", MessageBoxIcon.Warning);
return;
}
if (!string.IsNullOrEmpty(errorInfos)) errorInfos = string.Empty;
var rootPath = Server.MapPath("~/");
var initFullPath = rootPath + initPath;
if (!Directory.Exists(initFullPath)) Directory.CreateDirectory(initFullPath);
//指定上传文件名称
hdFileName.Text = Funs.GetNewFileName() + IsXls;
//上传文件路径
var filePath = initFullPath + hdFileName.Text;
//文件上传服务器
fuAttachUrl.PostedFile.SaveAs(filePath);
//文件上传服务器后的名称
var fileName = rootPath + initPath + hdFileName.Text;
ResponeData responeData;
responeData = PhtglInvoiceService.ImportData(fileName, this.CurrUser.LoginProjectId,this.CurrUser.PersonId);
if (responeData.code == 1)
{
ShowNotify("数据导入成功!", MessageBoxIcon.Success);
}
else
{
ShowNotify(responeData.message, MessageBoxIcon.Error);
}
PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
}
#endregion
#region 定义项
/// <summary>
/// 上传预设的虚拟路径
/// </summary>
private readonly string initPath = Const.ExcelUrl; //"File\\Excel\\DataIn\\";
/// <summary>
/// 错误集合
/// </summary>
public static string errorInfos = string.Empty;
#endregion
#region 模板下载
/// <summary>
/// 模板下载
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDownLoad_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Confirm.GetShowReference("确定要下载模板吗?", string.Empty,
MessageBoxIcon.Question, PageManager1.GetCustomEventReference(false, "Confirm_OK"),
PageManager1.GetCustomEventReference("Confirm_Cancel")));
}
/// <summary>
/// 下载导入模板
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void PageManager1_CustomEvent(object sender, CustomEventArgs e)
{
if (e.EventArgument == "Confirm_OK")
{
var rootPath = Server.MapPath("~/");
var uploadfilepath = rootPath + Const.InvoiceTemplateUrl;
var filePath = Const.InvoiceTemplateUrl;
var fileName = Path.GetFileName(filePath);
var info = new FileInfo(uploadfilepath);
var fileSize = info.Length;
Response.ClearContent();
Response.AddHeader("Content-Disposition",
"attachment;filename=" + HttpUtility.UrlEncode(fileName, Encoding.UTF8));
Response.ContentType = "excel/plain";
Response.ContentEncoding = Encoding.UTF8;
Response.AddHeader("Content-Length", fileSize.ToString().Trim());
Response.TransmitFile(uploadfilepath, 0, fileSize);
Response.End();
}
}
#endregion
}
}
@@ -0,0 +1,98 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceDataIn
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnDownLoad 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDownLoad;
/// <summary>
/// fuAttachUrl 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.FileUpload fuAttachUrl;
/// <summary>
/// hdFileName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.HiddenField hdFileName;
}
}
@@ -0,0 +1,128 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceOrder.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceOrder" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
.f-grid-row.yellow {
background-color: YellowGreen;
background-image: none;
}
.f-grid-row.red {
background-color: Yellow;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" AutoScroll="true"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true" ForceFit="True"
runat="server" BoxFlex="1" DataKeyNames="InvoiceId" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="InvoiceId" AllowSorting="true" SortField="InvoiceId"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowCommand="Grid1_RowCommand" OnRowDataBound="Grid1_RowDataBound">
<toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<items>
<%-- <f:Button ID="btnOrderInDetail" ToolTip="入库详情" Text="入库详情" Icon="ApplicationEdit" runat="server"
OnClick="btnOrderInDetail_OnClick">
</f:Button>
<f:Button ID="btnOrderOutDetail" ToolTip="出库详情" Text="出库详情" Icon="ApplicationEdit" runat="server"
OnClick="btnOrderOutDetail_OnClick">
</f:Button>--%>
</items>
</f:Toolbar>
</toolbars>
<columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<itemtemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</itemtemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="ContractName" DataField="ContractName" SortField="ContractName" Hidden="True"
FieldType="String" HeaderText="合同名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="ContractNum" DataField="ContractNum" SortField="ContractNum"
FieldType="String" HeaderText="合同编号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SellerName" DataField="SellerName" SortField="SellerName"
FieldType="String" HeaderText="供应商名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceDate" DataField="InvoiceDate" SortField="InvoiceDate"
FieldType="String" HeaderText="开票日期" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="AmountExcludingTax" DataField="AmountExcludingTax" SortField="AmountExcludingTax"
FieldType="String" HeaderText="未税金额(元)" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="TotalTax" DataField="TotalTax" SortField="TotalTax"
FieldType="String" HeaderText="税额(元)" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceAmount" DataField="InvoiceAmount" SortField="InvoiceAmount"
FieldType="String" HeaderText="价税合计(元" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField ColumnID="tfState" Width="150px" HeaderText="出入库状态" HeaderTextAlign="Center"
TextAlign="Center">
<itemtemplate>
<asp:Label ID="Label1" runat="server" Text='<%# BLL.PhtglInvoiceService.GetState(Eval("InvoiceId"))%>'></asp:Label>
</itemtemplate>
</f:TemplateField>
<f:LinkButtonField Width="150px" ColumnID="btnOrderInDetail" TextAlign="Center" CommandName="OrderInDetail" Text="入库详情" Hidden="True"/>
<f:LinkButtonField Width="150px" ColumnID="btnOrderOutDetail" TextAlign="Center" CommandName="OrderOutDetail" Text="出库详情" Hidden="True"/>
</columns>
<%-- <listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</listeners>--%>
<pageitems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
</pageitems>
</f:Grid>
</items>
</f:Panel>
<f:Window ID="Window1" runat="server" Hidden="true" ShowHeader="true"
IsModal="true" Target="Parent" EnableMaximize="true" EnableResize="true" OnClose="Window1_Close"
Title="编辑" EnableIFrame="true" Height="650px"
Width="1200px">
</f:Window>
</form>
<script type="text/javascript">
<%-- var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}--%>
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,215 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrder : PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetButtonPower();
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
// 绑定表格
this.BindGrid();
}
}
#region 绑定数据
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
Model.PHTGL_Invoice table = new Model.PHTGL_Invoice();
table.ProjectId = this.CurrUser.LoginProjectId;
var tb = BLL.PhtglInvoiceService.GetOrderInListData(table, Grid1);
Grid1.RecordCount = PhtglInvoiceService.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
Grid1.DataSource = tb;
Grid1.DataBind();
}
#endregion
#region GV 数据操作
/// <summary>
/// 过滤表头
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void Grid1_FilterChange(object sender, EventArgs e)
//{
// this.BindGrid();
//}
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
this.Grid1.PageIndex = e.NewPageIndex;
this.BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
this.Grid1.SortDirection = e.SortDirection;
this.Grid1.SortField = e.SortField;
this.BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
this.Grid1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue);
this.BindGrid();
}
#endregion
#region 关闭弹出窗
/// <summary>
/// 关闭弹出窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
#endregion
#region 获取权限按钮
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.PersonId, BLL.Const.PHTGL_InvoiceStandingBookMenuId);
if (buttonList.Count > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
// this.btnNew.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
//this.btnMenuEdit.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
// this.btnMenuDelete.Hidden = false;
}
}
}
#endregion
#region 导出按钮
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = 500;
this.BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
sb.AppendFormat("<td>{0}</td>", column.HeaderText);
}
sb.Append("</tr>");
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfNumber")
{
html = (row.FindControl("lblNumber") as System.Web.UI.WebControls.Label).Text;
}
sb.AppendFormat("<td>{0}</td>", html);
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
protected void Grid1_RowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName== "OrderInDetail")
{
Window1.Title = "入库单详情";
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceOrderDetail.aspx?InvoiceId={0}&&Type={1}", e.RowID, "0", "编辑 - ")));
}
else if(e.CommandName== "OrderOutDetail")
{
Window1.Title = "出库单详情";
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceOrderDetail.aspx?InvoiceId={0}&&Type={1}", e.RowID, "1", "编辑 - ")));
}
}
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
var id = e.RowID;
var model = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(id);
if (model.State> PhtglInvoiceService.StateDataIn)
{
Grid1.FindColumn("btnOrderInDetail").Hidden = false;
}
if (model.State >= PhtglInvoiceService.StateInPutApproveSuccess)
{
Grid1.FindColumn("btnOrderOutDetail").Hidden = false;
}
}
}
}
@@ -0,0 +1,116 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrder
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// lblNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumber;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}
@@ -0,0 +1,182 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceOrderDetail.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceOrderDetail" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<style type="text/css">
.f-readonly {
opacity: .5;
filter: alpha(opacity=50);
}
</style>
</head>
<body>
<form id="form1" runat="server">
<div>
<f:PageManager runat="server" AutoSizePanelID="Form2" />
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true" Title="入库单详情"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Toolbars>
<f:Toolbar ID="TbCreate" Position="Top" ToolbarAlign="Right" runat="server" Hidden="True">
<Items>
<f:Button ID="btnSave" ToolTip="保存" Text="保存" Icon="SystemSave" OnClick="btnSave_Click"
EnablePostBack="true" runat="server">
</f:Button>
<f:Button ID="btnEditProcess" ToolTip="编辑流程" Text="编辑流程" Icon="ApplicationEdit" OnClick="btnEditProcess_Click"
EnablePostBack="true" runat="server">
</f:Button>
</Items>
</f:Toolbar>
<f:Toolbar ID="TbApprove" Position="Top" ToolbarAlign="Right" runat="server" Hidden="True">
<items>
<f:Button ID="btnAgree" Icon="SystemSave" runat="server" ToolTip="同意" Text="同意" ValidateForms="SimpleForm1"
OnClick="btnAgree_Click" ConfirmText="请确认是否同意!" Size="Medium">
</f:Button>
<f:Button ID="btnDisgree" Icon="SystemSave" runat="server" ToolTip="不同意" Text="不同意" ValidateForms="SimpleForm1"
OnClick="btnDisgree_Click" ConfirmText="请确认是否不同意!" Size="Medium">
</f:Button>
</items>
</f:Toolbar>
</Toolbars>
<Items>
<f:Panel ID="Panel4" Layout="Column" ShowHeader="false" ShowBorder="false" runat="server">
<Items>
<f:TextBox ID="txtProjectName" Label="项目名称" Readonly="true" ColumnWidth="40%" runat="server">
</f:TextBox>
<f:TextBox ID="txtContractNum" Label="合同编号" Readonly="true" ColumnWidth="30%" runat="server">
</f:TextBox>
<f:TextBox ID="txtSellerName" Label="供应商名称" Readonly="true" ColumnWidth="30%" runat="server">
</f:TextBox>
</Items>
</f:Panel>
<f:Panel ID="PanelOrderIn" Layout="Column" ShowHeader="false" ShowBorder="false" runat="server" Hidden="True">
<Items>
<f:DatePicker ID="txtOrderInDate" Label="入库日期" ColumnWidth="40%" runat="server"></f:DatePicker>
<f:TextBox ID="txtInvoiceDate" Label="发票日期" Readonly="true" ColumnWidth="30%" runat="server"></f:TextBox>
<f:TextBox ID="txtOrderCode" Label="入库单编号" ColumnWidth="30%" runat="server">
</f:TextBox>
</Items>
</f:Panel>
<f:Panel ID="PanelOrderOut" Layout="Column" ShowHeader="false" ShowBorder="false" runat="server" Hidden="True">
<Items>
<f:DatePicker ID="txtOrderOutDate" Label="出库日期" ColumnWidth="40%" runat="server"></f:DatePicker>
<f:TextBox ID="txtMaterialRequisitionUnit" Label="领料单位" ColumnWidth="30%" runat="server"></f:TextBox>
</Items>
</f:Panel>
<f:TextBox ID="txtInvoiceNumber" Label="发票号码" Readonly="true" ColumnWidth="40%" runat="server">
</f:TextBox>
<f:Grid ID="Grid1" ShowBorder="true" EnableAjax="false" ShowHeader="true" Title="入库单列表"
runat="server" BoxFlex="1" DataKeyNames="InvoiceDetailId" AllowCellEditing="true" ForceFit="true"
DataIDField="InvoiceDetailId" EnableColumnLines="true" Height="400" EnableBigData="true" OnRowCommand="Grid1_OnRowCommand" OnRowDataBound="Grid1_RowDataBound"
EnableTextSelection="True">
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="100px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="lblPageIndex" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="300px" ColumnID="GoodsOrServicesName" DataField="GoodsOrServicesName" SortField="GoodsOrServicesName"
FieldType="String" HeaderText="产品名称" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SpecificationModel" DataField="SpecificationModel" SortField="SpecificationModel"
FieldType="String" HeaderText="产品规格" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Unit" DataField="Unit" SortField="Unit"
FieldType="String" HeaderText="计量单位" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Quantity" DataField="Quantity" SortField="Quantity"
FieldType="String" HeaderText="数量" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="230px" ColumnID="UnitPrice" DataField="UnitPrice" SortField="UnitPrice"
FieldType="String" HeaderText="未含税单价(元)" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="UnitPrice" DataField="UnitPrice" SortField="UnitPrice"
FieldType="String" HeaderText="未税金额(元)" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:TemplateField Width="200px" EnableColumnHide="false" ColumnID="NoTaxPrice" HeaderText="未税金额(元)" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# GetNoTaxPrice(Eval("Amount"),Eval("Tax")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:TemplateField Width="150px" EnableColumnHide="false" ColumnID="TaxRate" HeaderText="税率(%)" TextAlign="Center">
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# GetTaxRate(Eval("TaxRate")) %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="Tax" DataField="Tax" SortField="Tax"
FieldType="String" HeaderText="税额(元)" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="200px" ColumnID="Amount" DataField="Amount" SortField="Amount"
FieldType="String" HeaderText="价税合计(元)" TextAlign="Center" HeaderTextAlign="Center">
</f:RenderField>
<f:LinkButtonField Width="100px" ColumnID="btnDelete" TextAlign="Center" CommandName="delete" Icon="Delete" ConfirmText="确定要删除本行?" ConfirmTarget="Top" />
</Columns>
</f:Grid>
<f:Panel ID="Panel1" Layout="Column" ShowHeader="True" ShowBorder="False" Margin="10 10 0 0" Title="统计信息" runat="server">
<Items>
<f:TextBox ID="txtSumUnitPrice" Label="未税金额(元)" Readonly="True" ColumnWidth="25%" runat="server"></f:TextBox>
<f:TextBox ID="txtSumTax" Label="税额(元)" Readonly="True" ColumnWidth="25%" runat="server"></f:TextBox>
<f:TextBox ID="txtSumAmount" Label="价税合计(元)" Readonly="True" ColumnWidth="25%" runat="server"></f:TextBox>
<f:TextBox ID="txtAmountInWords" Label="金额大写" Readonly="True" ColumnWidth="25%" runat="server"></f:TextBox>
</Items>
</f:Panel>
<f:Form ID="Form_approve" ShowBorder="false" ShowHeader="false" AutoScroll="true" Title="审批流程" Hidden="True"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Items>
<f:TextArea ID="txtApproveIdea" Height="100px" Required="true" Label="审批意见" ShowRedStar="true" runat="server" Text="">
</f:TextArea>
<f:Grid ID="Grid2" ShowBorder="true" EnableAjax="false" ShowHeader="true" Title="审批记录"
runat="server" BoxFlex="1" DataKeyNames="ApproveId" AllowCellEditing="true" ForceFit="true"
ClicksToEdit="2" DataIDField="ApproveId" EnableColumnLines="true" Height="400" EnableBigData="true"
EnableTextSelection="True">
<Columns>
<f:TemplateField ColumnID="tfPageIndex" Width="55px" HeaderText="序号" HeaderTextAlign="Center" TextAlign="Center"
EnableLock="true" Locked="False">
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</ItemTemplate>
</f:TemplateField>
<f:RenderField ColumnID="ApproveMan" DataField="ApproveMan" Width="150px" FieldType="String" HeaderText="审批人" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="IsAgree" DataField="IsAgree" Width="150px" FieldType="String" HeaderText="是否同意" TextAlign="Center"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="ApproveIdea" DataField="ApproveIdea" Width="320px" FieldType="String" HeaderText="审批意见" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField ColumnID="ApproveDate" DataField="ApproveDate" Width="320px" FieldType="String" HeaderText="审批时间" TextAlign="Left"
HeaderTextAlign="Center">
</f:RenderField>
</Columns>
</f:Grid>
</Items>
</f:Form>
</Items>
</f:Form>
</div>
<f:Window ID="Window1" runat="server" Hidden="true" ShowHeader="true"
IsModal="true" Target="Parent" EnableMaximize="true" EnableResize="true"
Title="编辑" EnableIFrame="true" Height="650px"
Width="1200px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,216 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using BLL;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrderDetail : PageBase
{
public string InvoiceId {
get
{
return (string)ViewState["InvoiceId"];
}
set
{
ViewState["InvoiceId"] = value;
}
}
public string Type
{
get
{
return (string)ViewState["Type"];
}
set
{
ViewState["Type"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
InvoiceId = Request.QueryString["InvoiceId"];
Type = Request.QueryString["Type"];
Model.PHTGL_Invoice table = new Model.PHTGL_Invoice();
table.ProjectId = this.CurrUser.LoginProjectId;
table.InvoiceId=InvoiceId;
var invoiceModel = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(InvoiceId);
var ContractModel = BLL.ContractService.GetContractById(invoiceModel.ContractId);
if (invoiceModel != null)
{
txtProjectName.Text=ProjectService.GetProjectNameByProjectId(invoiceModel.ProjectId);
txtContractNum.Text= ContractModel?.ContractNum;
txtSellerName.Text=invoiceModel.SellerName;
txtOrderInDate.SelectedDate=invoiceModel.OrderInDate;
txtInvoiceDate.Text=invoiceModel.InvoiceDate;
txtOrderCode.Text=invoiceModel.OrderCode;
txtInvoiceNumber.Text=invoiceModel.InvoiceNumber;
txtOrderOutDate.SelectedDate=invoiceModel.OrderOutDate;
txtMaterialRequisitionUnit.Text=invoiceModel.MaterialRequisitionUnit;
}
BindGrid();
BindApproveData();
if (Type=="0")
{
Grid1.Title = "入库单列表";
PanelOrderIn.Hidden = false;
}
else if (Type=="1")
{
PanelOrderOut.Hidden = false;
Grid1.Title = "出库单列表";
}
if (invoiceModel.CreateUser== this.CurrUser.PersonId) //创建人
{
TbCreate.Hidden = false;
if (invoiceModel.State> PhtglInvoiceService.StateCreate)
{
Form_approve.Hidden = false;
}
}
if (PHTGL_ApproveService.IsApprovingMan(InvoiceId, this.CurrUser.PersonId)) //判断当前人是否审批人
{
TbApprove.Hidden = false;
Form_approve.Hidden = false;
}
}
}
public void BindApproveData()
{
var approveModel = PHTGL_ApproveService.GetAllApproveData(InvoiceId, Type=="0"? "Invoice_Input" : "Invoice_Output");
if (approveModel != null)
{
Grid2.DataSource = approveModel;
Grid2.DataBind();
}
}
public void BindGrid()
{
var invoiceDetail = PhtglInvoicedetailService.GetPHTGL_InvoiceDetailByInvoiceId(InvoiceId);
Grid1.DataSource = invoiceDetail;
Grid1.DataBind();
txtSumUnitPrice.Text= invoiceDetail.Sum(p=>p.UnitPrice).ToString();
txtSumTax.Text=invoiceDetail.Sum(p=>p.Tax).ToString();
txtSumAmount.Text=invoiceDetail.Sum(p=>p.Amount).ToString();
txtAmountInWords.Text = Funs.NumericCapitalization(invoiceDetail.Sum(p => p.Amount)??0);
}
protected void Grid1_OnRowCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName=="delete")
{
PhtglInvoicedetailService.DeletePHTGL_InvoiceDetailById(e.RowID);
BindGrid();
}
}
protected void Grid1_RowDataBound(object sender, GridRowEventArgs e)
{
if (Type=="1")
{
Grid1.FindColumn("btnDelete").Hidden = true;
}
}
protected string GetTaxRate(object eval)
{
string result="";
if (eval!=null)
{
decimal taxRate = Convert.ToDecimal(eval);
string percentage = string.Format("{0:P0}", taxRate);
result= percentage.Replace("%", "");
}
return result;
}
protected string GetNoTaxPrice(object amount, object tax)
{
//获取amount-tax 的值
string result="";
if (amount != null && tax != null)
{
decimal amountValue = Convert.ToDecimal(amount);
decimal taxValue = Convert.ToDecimal(tax);
decimal noTaxPrice = amountValue - taxValue;
result= noTaxPrice.ToString();
}
return result;
}
protected void btnSave_Click(object sender, EventArgs e)
{
var invoiceModel = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(InvoiceId);
invoiceModel.OrderInDate=txtOrderInDate.SelectedDate;
invoiceModel.OrderOutDate=txtOrderOutDate.SelectedDate;
invoiceModel.OrderCode=txtOrderCode.Text;
invoiceModel.MaterialRequisitionUnit=txtMaterialRequisitionUnit.Text;
BLL.PhtglInvoiceService.UpdatePHTGL_Invoice(invoiceModel);
ShowNotify("保存成功!" ,MessageBoxIcon.Success);
}
protected void btnEditProcess_Click(object sender, EventArgs e)
{
if (Type == "0")
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceOrderReviewEdit.aspx?InvoiceId={0}&&Type={1}", InvoiceId, "0", "编辑 - ")));
}
else if (Type == "1")
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceOrderReviewEdit.aspx?InvoiceId={0}&&Type={1}", InvoiceId, "1", "编辑 - ")));
}
}
protected void btnAgree_Click(object sender, EventArgs e)
{
PhtglInvoiceService.Approve(InvoiceId, int.Parse(Type),this.CurrUser.PersonId,true, txtApproveIdea.Text);
ShowNotify("审批成功!", MessageBoxIcon.Success);
if (!string.IsNullOrEmpty(Request.Params["PHTUrl"]))
{
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
PageContext.RegisterStartupScript("closeActiveTab();");
}
else
{
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
}
protected void btnDisgree_Click(object sender, EventArgs e)
{
PhtglInvoiceService.Approve(InvoiceId, int.Parse(Type), this.CurrUser.PersonId, false, txtApproveIdea.Text);
ShowNotify("审批成功!", MessageBoxIcon.Success);
if (!string.IsNullOrEmpty(Request.Params["PHTUrl"]))
{
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
PageContext.RegisterStartupScript("closeActiveTab();");
}
else
{
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
}
}
}
@@ -0,0 +1,323 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrderDetail
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// TbCreate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar TbCreate;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnEditProcess 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEditProcess;
/// <summary>
/// TbApprove 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar TbApprove;
/// <summary>
/// btnAgree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnAgree;
/// <summary>
/// btnDisgree 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDisgree;
/// <summary>
/// Panel4 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel4;
/// <summary>
/// txtProjectName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtProjectName;
/// <summary>
/// txtContractNum 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtContractNum;
/// <summary>
/// txtSellerName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSellerName;
/// <summary>
/// PanelOrderIn 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel PanelOrderIn;
/// <summary>
/// txtOrderInDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtOrderInDate;
/// <summary>
/// txtInvoiceDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceDate;
/// <summary>
/// txtOrderCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtOrderCode;
/// <summary>
/// PanelOrderOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel PanelOrderOut;
/// <summary>
/// txtOrderOutDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DatePicker txtOrderOutDate;
/// <summary>
/// txtMaterialRequisitionUnit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtMaterialRequisitionUnit;
/// <summary>
/// txtInvoiceNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceNumber;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// lblPageIndex 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblPageIndex;
/// <summary>
/// Label1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label1;
/// <summary>
/// Label2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label2;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// txtSumUnitPrice 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSumUnitPrice;
/// <summary>
/// txtSumTax 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSumTax;
/// <summary>
/// txtSumAmount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSumAmount;
/// <summary>
/// txtAmountInWords 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAmountInWords;
/// <summary>
/// Form_approve 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form_approve;
/// <summary>
/// txtApproveIdea 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextArea txtApproveIdea;
/// <summary>
/// Grid2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid2;
/// <summary>
/// Label3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label Label3;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}
@@ -0,0 +1,107 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceOrderReviewEdit.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceOrderReviewEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>编辑合同基本信息</title>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true" Title="基本信息"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:ContentPanel ID="Panel_OrderIn" Title="入库审批编辑" ShowBorder="true" Hidden="True"
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<Items>
<f:Form ID="Form2" ShowBorder="false" ShowHeader="false" AutoScroll="true" Title="基本信息"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DropDownList ID="DropProfessionalEngineer" runat="server" Label="专业工程师" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" LabelAlign="Right" AutoPostBack="true" EnableEdit="true" MaxLength="200" LabelWidth="140px"></f:DropDownList>
<f:DropDownList ID="DropConstructionManager" runat="server" Label="施工经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" LabelAlign="Right" AutoPostBack="true" EnableEdit="true" MaxLength="30" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="DropControlManager_In" runat="server" Label="控制经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" LabelAlign="Right" AutoPostBack="true" EnableEdit="true" MaxLength="30" LabelWidth="140px"></f:DropDownList>
<f:DropDownList ID="DropProjectManager_In" runat="server" Label="项目经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" LabelAlign="Right" AutoPostBack="true" EnableEdit="true" MaxLength="200" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:ContentPanel>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:ContentPanel ID="Panel_OrderOut" Title="出库审批编辑" ShowBorder="true" Hidden="True"
BodyPadding="10px" EnableCollapse="true" ShowHeader="true" AutoScroll="true"
runat="server">
<Items>
<f:Form ID="Form3" ShowBorder="false" ShowHeader="false" AutoScroll="true" Title=""
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DropDownList ID="DropPurchasingMan" runat="server" Label="采购员" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" EnableEdit="true" LabelAlign="Right" AutoPostBack="true" LabelWidth="140px"></f:DropDownList>
<f:DropDownList ID="DropControlManager_Out" runat="server" Label="控制经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" AutoPostBack="true" EnableEdit="true" LabelAlign="Right" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="DropProjectManager_Out" runat="server" Label="项目经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" AutoPostBack="true" EnableEdit="true" LabelAlign="Right" LabelWidth="140px"></f:DropDownList>
<f:DropDownList ID="DropConUnitMaterialOfficer" runat="server" Label="施工单位材料经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" AutoPostBack="true" EnableEdit="true" LabelAlign="Right" MaxLength="30" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow>
<Items>
<f:DropDownList ID="DropConUnitProjectManager" runat="server" Label="施工单位项目经理" Required="true" ShowRedStar="true" AutoSelectFirstItem="false" AutoPostBack="true" Enabled="true" EnableEdit="true" LabelAlign="Right" MaxLength="200" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
</Rows>
</f:Form>
</Items>
</f:ContentPanel>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:ToolbarFill ID="ToolbarFill1" runat="server">
</f:ToolbarFill>
<f:Button ID="btnSubmit" Icon="SystemSave" runat="server" ToolTip="提交" Text="提交" ValidateForms="SimpleForm1" Size="Medium" Hidden="True"
OnClick="btnSubmit_Click" DisableControlBeforePostBack="true" >
</f:Button>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" ToolTip="保存" Text="保存" ValidateForms="SimpleForm1" Size="Medium"
OnClick="btnSave_Click" >
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="关闭" runat="server" Icon="SystemClose" Size="Medium">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<f:Window ID="Window1" Title="基本信息" Hidden="true" EnableIFrame="true" EnableMaximize="true" Maximized="true" EnableDrag="true"
Target="Parent" EnableResize="true" runat="server" IsModal="false" ConstrainSize="true" AutoScroll="true"
Width="1200px" Height="650px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,161 @@
using BLL;
using Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrderReviewEdit : PageBase
{
public string InvoiceId
{
get
{
return (string)ViewState["InvoiceId"];
}
set
{
ViewState["InvoiceId"] = value;
}
}
public string Type
{
get
{
return (string)ViewState["Type"];
}
set
{
ViewState["Type"] = value;
}
}
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
InvoiceId = Request.QueryString["InvoiceId"];
Type = Request.QueryString["Type"];
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
var model= PhtglInvoiceService.GetPHTGL_InvoiceById(InvoiceId);
int[] arr = new Int32[] { PhtglInvoiceService.StateCreate, PhtglInvoiceService.StateInPutApproveRefuse, PhtglInvoiceService.StateInPutApproveSuccess, PhtglInvoiceService.StateOutPutApproveRefuse, };
if (arr.ToList().Contains(model.State.Value))
{
if (model.State== PhtglInvoiceService.StateInPutApproveRefuse|| model.State == PhtglInvoiceService.StateOutPutApproveRefuse)
{
btnSubmit.Text="重新发起流程";
}
btnSubmit.Hidden = false;
}
if (Type=="0")
{
Panel_OrderIn.Hidden = false;
}
else if (Type == "1")
{
Panel_OrderOut.Hidden = false;
}
//入库下拉框
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropProfessionalEngineer, null, Const.UnitId_SEDIN, null, true);//专业工程师
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropConstructionManager, null, Const.UnitId_SEDIN, null, true);//施工经理
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropControlManager_In, null, Const.UnitId_SEDIN, null, true);//控制经理
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropProjectManager_In, null, Const.UnitId_SEDIN, null, true);//项目经理
//出库下拉框
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropPurchasingMan, null, Const.UnitId_SEDIN, null, true);//采购员
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropControlManager_Out, null, Const.UnitId_SEDIN, null, true);//控制经理
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropProjectManager_Out, null, Const.UnitId_SEDIN, null, true);//项目经理
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropConUnitMaterialOfficer, null, Const.UnitId_SEDIN, null, true);//施工单位材料经理
BLL.Person_PersonsService.InitUserProjectIdUnitIdRoleIdDropDownList(DropConUnitProjectManager, null, Const.UnitId_SEDIN, null, true);//施工单位项目经理
var invoiceApproveManEntity= PhtglInvoiceService.GetInvoiceApproveManEntity(InvoiceId);
//入库下拉框初始化值
DropProfessionalEngineer.SelectedValue= invoiceApproveManEntity.InputApproveMan?.ProjectManager;
DropConstructionManager.SelectedValue= invoiceApproveManEntity.InputApproveMan?.ConstructionManager;
DropControlManager_In.SelectedValue= invoiceApproveManEntity.InputApproveMan?.ControlManager;
DropProjectManager_In.SelectedValue= invoiceApproveManEntity.InputApproveMan?.ProjectManager;
//出库下拉框初始化值
DropPurchasingMan.SelectedValue= invoiceApproveManEntity.OutputApproveMan?.PurchasingMan;
DropControlManager_Out.SelectedValue= invoiceApproveManEntity.OutputApproveMan?.ControlManager;
DropProjectManager_Out.SelectedValue= invoiceApproveManEntity.OutputApproveMan?.ProjectManager;
DropConUnitMaterialOfficer.SelectedValue = invoiceApproveManEntity.OutputApproveMan?.ConUnitMaterialOfficer;
DropConUnitProjectManager.SelectedValue= invoiceApproveManEntity.OutputApproveMan?.ConUnitProjectManager;
}
}
private bool DropIsNull(Control c)
{
bool IsOk = true;
//遍历控件
//myDictionary.Clear();
foreach (Control childControl in c.Controls)
{
if (childControl is DropDownList)
{
DropDownList tb = (DropDownList)childControl;
if (tb.SelectedValue == Const._Null)
{
IsOk = false;
ShowNotify("请选择要审批的" + tb.Label, MessageBoxIcon.Warning);
return IsOk;
}
}
}
return IsOk;
}
protected void Save()
{
if (!DropIsNull(SimpleForm1))
{
return;
}
var model_In = new Inputapproveman()
{
ProfessionalEngineer= DropProfessionalEngineer.SelectedValue,
ConstructionManager= DropConstructionManager.SelectedValue,
ControlManager= DropControlManager_In.SelectedValue,
ProjectManager= DropProjectManager_In.SelectedValue
};
var model_Out = new Outputapproveman()
{
PurchasingMan = DropPurchasingMan.SelectedValue,
ControlManager = DropControlManager_Out.SelectedValue,
ProjectManager = DropProjectManager_Out.SelectedValue,
ConUnitMaterialOfficer = DropConUnitMaterialOfficer.SelectedValue,
ConUnitProjectManager = DropConUnitProjectManager.SelectedValue
};
if (Type == "0")
{
PhtglInvoiceService.SaveInputApproveManEntity(InvoiceId, model_In);
}
else if (Type == "1")
{
PhtglInvoiceService.SaveOutputApproveManEntity(InvoiceId, model_Out);
}
}
protected void btnSubmit_Click(object sender, EventArgs e)
{
Save();
PhtglInvoiceService.StartApprovalProcess(InvoiceId);
ShowNotify("提交成功!",MessageBoxIcon.Success);
PageContext.RegisterStartupScript(ActiveWindow.GetHideReference());
}
protected void btnSave_Click(object sender, EventArgs e)
{
Save();
ShowNotify("保存成功!", MessageBoxIcon.Success);
}
}
}
@@ -0,0 +1,215 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceOrderReviewEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// Panel_OrderIn 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel Panel_OrderIn;
/// <summary>
/// Form2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form2;
/// <summary>
/// DropProfessionalEngineer 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropProfessionalEngineer;
/// <summary>
/// DropConstructionManager 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropConstructionManager;
/// <summary>
/// DropControlManager_In 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropControlManager_In;
/// <summary>
/// DropProjectManager_In 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropProjectManager_In;
/// <summary>
/// Panel_OrderOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ContentPanel Panel_OrderOut;
/// <summary>
/// Form3 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form Form3;
/// <summary>
/// DropPurchasingMan 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropPurchasingMan;
/// <summary>
/// DropControlManager_Out 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropControlManager_Out;
/// <summary>
/// DropProjectManager_Out 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropProjectManager_Out;
/// <summary>
/// DropConUnitMaterialOfficer 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropConUnitMaterialOfficer;
/// <summary>
/// DropConUnitProjectManager 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropConUnitProjectManager;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// ToolbarFill1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarFill ToolbarFill1;
/// <summary>
/// btnSubmit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSubmit;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}
@@ -0,0 +1,154 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceStandingBook.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceStandingBook" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../../res/css/common.css" rel="stylesheet" type="text/css" />
<style type="text/css">
.f-grid-row .f-grid-cell-inner {
white-space: normal;
word-break: break-all;
}
.f-grid-row.yellow {
background-color: YellowGreen;
background-image: none;
}
.f-grid-row.red {
background-color: Yellow;
}
</style>
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="Panel1" runat="server" />
<f:Panel ID="Panel1" runat="server" Margin="5px" BodyPadding="5px" ShowBorder="false" AutoScroll="true"
ShowHeader="false" Layout="VBox" BoxConfigAlign="Stretch">
<items>
<f:Grid ID="Grid1" ShowBorder="true" ShowHeader="false" EnableCollapse="true"
runat="server" BoxFlex="1" DataKeyNames="InvoiceId" AllowCellEditing="true"
ClicksToEdit="2" DataIDField="InvoiceId" AllowSorting="true" SortField="InvoiceId"
SortDirection="DESC" OnSort="Grid1_Sort" EnableColumnLines="true"
AllowPaging="true" IsDatabasePaging="true" PageSize="10" OnPageIndexChange="Grid1_PageIndexChange"
EnableRowDoubleClickEvent="true" OnRowDoubleClick="Grid1_RowDoubleClick">
<toolbars>
<f:Toolbar ID="Toolbar2" Position="Top" runat="server" ToolbarAlign="Right">
<items>
<f:Button ID="btnEdit" ToolTip="关联合同" Text="关联合同" Icon="ApplicationEdit" runat="server"
OnClick="btnEdit_Click">
</f:Button>
<f:Button ID="btnOrderIn" ToolTip="入库" Text="入库" Icon="ApplicationEdit" runat="server"
OnClick="btnOrderIn_Click">
</f:Button>
<f:Button ID="btnDelete" ToolTip="删除" Text="删除" Icon="Delete" runat="server" Hidden="True"
OnClick="btnDelete_Click">
</f:Button>
<f:Button ID="btnImport" Text="导入" ToolTip="导入" Icon="PackageIn" runat="server" OnClick="btnImport_Click">
</f:Button>
<f:Button ID="btnOut" OnClick="btnOut_Click" runat="server" Text="导出" ToolTip="导出" Icon="FolderUp"
EnableAjax="false" DisableControlBeforePostBack="false">
</f:Button>
</items>
</f:Toolbar>
</toolbars>
<columns>
<f:TemplateField ColumnID="tfNumber" Width="50px" HeaderText="序号" HeaderTextAlign="Center"
TextAlign="Center">
<itemtemplate>
<asp:Label ID="lblNumber" runat="server" Text='<%# Grid1.PageIndex * Grid1.PageSize + Container.DataItemIndex + 1 %>'></asp:Label>
</itemtemplate>
</f:TemplateField>
<f:RenderField Width="150px" ColumnID="ContractName" DataField="ContractName" SortField="ContractName"
FieldType="String" HeaderText="合同名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="ContractNum" DataField="ContractNum" SortField="ContractNum"
FieldType="String" HeaderText="合同编号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="ContractAmount" DataField="ContractAmount" SortField="ContractAmount"
FieldType="String" HeaderText="合同金额" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SellerName" DataField="SellerName" SortField="SellerName"
FieldType="String" HeaderText="销方名称" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="SellerTaxNumber" DataField="SellerTaxNumber" SortField="SellerTaxNumber"
FieldType="String" HeaderText="销方税号" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceCode" DataField="InvoiceCode" SortField="InvoiceCode"
FieldType="String" HeaderText="发票代码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceNumber" DataField="InvoiceNumber" SortField="InvoiceNumber"
FieldType="String" HeaderText="发票号码" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceDate" DataField="InvoiceDate" SortField="InvoiceDate"
FieldType="String" HeaderText="开票日期" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="AmountExcludingTax" DataField="AmountExcludingTax" SortField="AmountExcludingTax"
FieldType="String" HeaderText="不含税金额" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="TotalTax" DataField="TotalTax" SortField="TotalTax"
FieldType="String" HeaderText="合计税额" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="Remark" DataField="Remark" SortField="Remark"
FieldType="String" HeaderText="备注" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="ImagePath" DataField="ImagePath" SortField="ImagePath"
FieldType="String" HeaderText="图片存储路径" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
<f:RenderField Width="150px" ColumnID="InvoiceAmount" DataField="InvoiceAmount" SortField="InvoiceAmount"
FieldType="String" HeaderText="票面金额" TextAlign="Left" HeaderTextAlign="Center">
</f:RenderField>
</columns>
<listeners>
<f:Listener Event="beforerowcontextmenu" Handler="onRowContextMenu" />
</listeners>
<pageitems>
<f:ToolbarSeparator ID="ToolbarSeparator1" runat="server">
</f:ToolbarSeparator>
<f:ToolbarText ID="ToolbarText1" runat="server" Text="每页记录数:">
</f:ToolbarText>
<f:DropDownList runat="server" ID="ddlPageSize" Width="80px" AutoPostBack="true"
OnSelectedIndexChanged="ddlPageSize_SelectedIndexChanged">
<f:ListItem Text="10" Value="10" />
<f:ListItem Text="15" Value="15" />
<f:ListItem Text="20" Value="20" />
<f:ListItem Text="25" Value="25" />
<f:ListItem Text="所有行" Value="100000" />
</f:DropDownList>
</pageitems>
</f:Grid>
</items>
</f:Panel>
<f:Window ID="Window1" runat="server" Hidden="true" ShowHeader="true"
IsModal="true" Target="Parent" EnableMaximize="true" EnableResize="true" OnClose="Window1_Close"
Title="编辑" EnableIFrame="true" Height="650px"
Width="1200px">
</f:Window>
<f:Menu ID="Menu1" runat="server">
<f:MenuButton ID="btnMenuEdit" OnClick="btnEdit_Click" EnablePostBack="true"
Hidden="true" runat="server" Text="编辑" Icon="TableEdit">
</f:MenuButton>
<f:MenuButton ID="btnMenuDelete" OnClick="btnDelete_Click" EnablePostBack="true" Icon="Delete"
Hidden="true" ConfirmText="删除选中行?" ConfirmTarget="Parent" runat="server" Text="删除">
</f:MenuButton>
</f:Menu>
</form>
<script type="text/javascript">
var menuID = '<%= Menu1.ClientID %>';
// 返回false,来阻止浏览器右键菜单
function onRowContextMenu(event, rowId) {
F(menuID).show(); //showAt(event.pageX, event.pageY);
return false;
}
function reloadGrid() {
__doPostBack(null, 'reloadGrid');
}
</script>
</body>
</html>
@@ -0,0 +1,277 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceStandingBook :PageBase
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetButtonPower();
this.ddlPageSize.SelectedValue = this.Grid1.PageSize.ToString();
// 绑定表格
this.BindGrid();
}
}
#region 绑定数据
/// <summary>
/// 绑定数据
/// </summary>
private void BindGrid()
{
Model.PHTGL_Invoice table = new Model.PHTGL_Invoice();
table.ProjectId=this.CurrUser.LoginProjectId;
table.State = PhtglInvoiceService.StateDataIn;
var tb = BLL.PhtglInvoiceService.GetListData(table, Grid1);
Grid1.RecordCount = PhtglInvoiceService.Count;
//tb = GetFilteredTable(Grid1.FilteredData, tb);
Grid1.DataSource = tb;
Grid1.DataBind();
}
#endregion
#region GV 数据操作
/// <summary>
/// 过滤表头
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
//protected void Grid1_FilterChange(object sender, EventArgs e)
//{
// this.BindGrid();
//}
/// <summary>
/// 分页
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_PageIndexChange(object sender, GridPageEventArgs e)
{
this.Grid1.PageIndex = e.NewPageIndex;
this.BindGrid();
}
/// <summary>
/// 排序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_Sort(object sender, GridSortEventArgs e)
{
this.Grid1.SortDirection = e.SortDirection;
this.Grid1.SortField = e.SortField;
this.BindGrid();
}
/// <summary>
/// 分页显示条数下拉框
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void ddlPageSize_SelectedIndexChanged(object sender, EventArgs e)
{
this.Grid1.PageSize = Convert.ToInt32(this.ddlPageSize.SelectedValue);
this.BindGrid();
}
#endregion
#region 数据编辑事件
/// <summary>
/// 新增
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnNew_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceStandingBookEdit.aspx?InvoiceId={0}", string.Empty, "增加 - ")));
}
/// <summary>
/// 编辑按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnEdit_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string ID = Grid1.SelectedRowID;
var model = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(ID);
if (model != null) ///已上报时不能删除
{
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("InvoiceStandingBookEdit.aspx?InvoiceId={0}", ID, "编辑 - ")));
}
}
/// <summary>
/// Grid行双击事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Grid1_RowDoubleClick(object sender, GridRowClickEventArgs e)
{
this.btnEdit_Click(null, null);
}
/// <summary>
/// 批量删除
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnDelete_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length > 0)
{
foreach (int rowIndex in Grid1.SelectedRowIndexArray)
{
string rowID = Grid1.DataKeys[rowIndex][0].ToString();
var model = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(rowID);
if (model != null)
{
BLL.PhtglInvoiceService.DeletePHTGL_InvoiceById(rowID);
}
}
BindGrid();
ShowNotify("删除数据成功!", MessageBoxIcon.Success);
}
}
#endregion
#region 关闭弹出窗
/// <summary>
/// 关闭弹出窗
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void Window1_Close(object sender, WindowCloseEventArgs e)
{
BindGrid();
}
#endregion
#region 获取权限按钮
/// <summary>
/// 获取按钮权限
/// </summary>
/// <param name="button"></param>
/// <returns></returns>
private void GetButtonPower()
{
var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.PersonId, BLL.Const.PHTGL_InvoiceStandingBookMenuId);
if (buttonList.Count > 0)
{
if (buttonList.Contains(BLL.Const.BtnAdd))
{
// this.btnNew.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnModify))
{
this.btnMenuEdit.Hidden = false;
}
if (buttonList.Contains(BLL.Const.BtnDelete))
{
this.btnMenuDelete.Hidden = false;
this.btnDelete.Hidden = false;
}
}
}
#endregion
#region 导出按钮
/// 导出按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnOut_Click(object sender, EventArgs e)
{
Response.ClearContent();
string filename = Funs.GetNewFileName();
Response.AddHeader("content-disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("" + filename, System.Text.Encoding.UTF8) + ".xls");
Response.ContentType = "application/excel";
Response.ContentEncoding = System.Text.Encoding.UTF8;
this.Grid1.PageSize = 500;
this.BindGrid();
Response.Write(GetGridTableHtml(Grid1));
Response.End();
}
/// <summary>
/// 导出方法
/// </summary>
/// <param name="grid"></param>
/// <returns></returns>
private string GetGridTableHtml(Grid grid)
{
StringBuilder sb = new StringBuilder();
sb.Append("<meta http-equiv=\"content-type\" content=\"application/excel; charset=UTF-8\"/>");
sb.Append("<table cellspacing=\"0\" rules=\"all\" border=\"1\" style=\"border-collapse:collapse;\">");
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
sb.AppendFormat("<td>{0}</td>", column.HeaderText);
}
sb.Append("</tr>");
foreach (GridRow row in grid.Rows)
{
sb.Append("<tr>");
foreach (GridColumn column in grid.Columns)
{
string html = row.Values[column.ColumnIndex].ToString();
if (column.ColumnID == "tfNumber")
{
html = (row.FindControl("lblNumber") as System.Web.UI.WebControls.Label).Text;
}
sb.AppendFormat("<td>{0}</td>", html);
}
sb.Append("</tr>");
}
sb.Append("</table>");
return sb.ToString();
}
#endregion
protected void btnImport_Click(object sender, EventArgs e)
{
PageContext.RegisterStartupScript(
Window1.GetShowReference(string.Format("InvoiceDataIn.aspx?", "导入 - ")));
}
protected void btnOrderIn_Click(object sender, EventArgs e)
{
if (Grid1.SelectedRowIndexArray.Length == 0)
{
Alert.ShowInTop("请至少选择一条记录!", MessageBoxIcon.Warning);
return;
}
string ID = Grid1.SelectedRowID;
var model = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(ID);
if (model != null && !string.IsNullOrEmpty(model.ContractId))
{
PhtglInvoiceService.ChangeStateToCreate(model.InvoiceId);
ShowNotify("操作成功!", MessageBoxIcon.Success);
}
else
{
ShowNotify("请先关联合同!", MessageBoxIcon.Question);
}
}
}
}
@@ -0,0 +1,179 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceStandingBook
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// Panel1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Panel Panel1;
/// <summary>
/// Grid1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Grid Grid1;
/// <summary>
/// Toolbar2 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar2;
/// <summary>
/// btnEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnEdit;
/// <summary>
/// btnOrderIn 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOrderIn;
/// <summary>
/// btnDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnDelete;
/// <summary>
/// btnImport 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnImport;
/// <summary>
/// btnOut 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnOut;
/// <summary>
/// lblNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.WebControls.Label lblNumber;
/// <summary>
/// ToolbarSeparator1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarSeparator ToolbarSeparator1;
/// <summary>
/// ToolbarText1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.ToolbarText ToolbarText1;
/// <summary>
/// ddlPageSize 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList ddlPageSize;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
/// <summary>
/// Menu1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Menu Menu1;
/// <summary>
/// btnMenuEdit 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuEdit;
/// <summary>
/// btnMenuDelete 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.MenuButton btnMenuDelete;
}
}
@@ -0,0 +1,87 @@
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="InvoiceStandingBookEdit.aspx.cs" Inherits="FineUIPro.Web.PHTGL.InvoiceManage.InvoiceStandingBookEdit" %>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title></title>
<link href="../res/css/common.css" rel="stylesheet" type="text/css" />
</head>
<body>
<form id="form1" runat="server">
<f:PageManager ID="PageManager1" AutoSizePanelID="SimpleForm1" runat="server" />
<f:Form ID="SimpleForm1" ShowBorder="false" ShowHeader="false" AutoScroll="true"
BodyPadding="10px" runat="server" RedStarPosition="BeforeText" LabelAlign="Right">
<Rows>
<f:FormRow>
<Items>
<f:DropDownList ID="DropContractCode" runat="server" Label="施工分包合同编号" ShowRedStar="True" Required="True" AutoSelectFirstItem="false" LabelAlign="Right" LabelWidth="140px"></f:DropDownList>
</Items>
</f:FormRow>
<f:FormRow Enabled="False">
<Items>
<f:TextBox ID="txtInvoiceCode" runat="server" Label="发票代码" MaxLength="200">
</f:TextBox>
<f:TextBox ID="txtInvoiceNumber" runat="server" Label="发票号码" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow Enabled="False">
<Items>
<f:TextBox ID="txtSellerName" runat="server" Label="销方名称" MaxLength="200">
</f:TextBox>
<f:TextBox ID="txtInvoiceDate" runat="server" Label="开票日期" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow Enabled="False">
<Items>
<f:TextBox ID="txtAmountExcludingTax" runat="server" Label="不含税金额" MaxLength="200">
</f:TextBox>
<f:TextBox ID="txtTotalTax" runat="server" Label="合计税额" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow Enabled="False">
<Items>
<f:TextBox ID="txtRemark" runat="server" Label="备注" MaxLength="200">
</f:TextBox>
<f:TextBox ID="txtImagePath" runat="server" Label="图片存储路径" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
<f:FormRow Enabled="False">
<Items>
<f:TextBox ID="txtSellerTaxNumber" runat="server" Label="销方税号" MaxLength="200">
</f:TextBox>
<f:TextBox ID="txtInvoiceAmount" runat="server" Label="票面金额" MaxLength="200">
</f:TextBox>
</Items>
</f:FormRow>
</Rows>
<Toolbars>
<f:Toolbar ID="Toolbar1" Position="Bottom" ToolbarAlign="Right" runat="server">
<Items>
<f:ToolbarFill runat="server"></f:ToolbarFill>
<f:Button ID="btnSave" Icon="SystemSave" runat="server" Text="保存" ValidateForms="SimpleForm1"
OnClick="btnSave_Click">
</f:Button>
<f:Button ID="btnClose" EnablePostBack="false" ToolTip="关闭" Text="关闭" runat="server" Icon="SystemClose">
</f:Button>
</Items>
</f:Toolbar>
</Toolbars>
</f:Form>
<f:Window ID="Window1" Title="弹出窗体" Hidden="true" EnableIFrame="true" EnableMaximize="true"
Target="Parent" EnableResize="false" runat="server" IsModal="true" Width="700px"
Height="500px">
</f:Window>
</form>
</body>
</html>
@@ -0,0 +1,88 @@
using BLL;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceStandingBookEdit : PageBase
{
#region
/// <summary>
/// 主键
/// </summary>
public string InvoiceId
{
get
{
return (string)ViewState["InvoiceId"];
}
set
{
ViewState["InvoiceId"] = value;
}
}
#endregion
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.btnClose.OnClientClick = ActiveWindow.GetHideReference();
this.InvoiceId = Request.Params["InvoiceId"];
this.DropContractCode.DataTextField = "ContractNum";
this.DropContractCode.DataValueField = "ContractId";
this.DropContractCode.DataSource = BLL.PHTGL_ContractReviewService.GetContractReview_CompleteData(this.CurrUser.LoginProjectId);
this.DropContractCode.DataBind();
if (!string.IsNullOrEmpty(this.InvoiceId))
{
Model.PHTGL_Invoice model = BLL.PhtglInvoiceService.GetPHTGL_InvoiceById(this.InvoiceId);
if (model != null)
{
this.txtInvoiceCode.Text = model.InvoiceCode;
this.txtInvoiceNumber.Text = model.InvoiceNumber;
this.txtSellerName.Text = model.SellerName;
this.txtInvoiceDate.Text = model.InvoiceDate;
this.txtAmountExcludingTax.Text = model.AmountExcludingTax.ToString();
this.txtTotalTax.Text = model.TotalTax.ToString();
this.txtRemark.Text = model.Remark;
this.txtImagePath.Text = model.ImagePath;
this.txtSellerTaxNumber.Text = model.SellerTaxNumber;
this.txtInvoiceAmount.Text = model.InvoiceAmount.ToString();
DropContractCode.SelectedValue = model.ContractId;
}
}
}
}
/// <summary>
/// 保存按钮
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
protected void btnSave_Click(object sender, EventArgs e)
{
if (string.IsNullOrEmpty(this.InvoiceId))
{
ShowNotify("暂不支持新增",MessageBoxIcon.Warning);
}
else
{
var model = PhtglInvoiceService.GetPHTGL_InvoiceById(InvoiceId);
model.ContractId= DropContractCode.SelectedValue;
BLL.PhtglInvoiceService.UpdatePHTGL_Invoice(model);
}
PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
}
}
}
@@ -0,0 +1,179 @@
//------------------------------------------------------------------------------
// <自动生成>
// 此代码由工具生成。
//
// 对此文件的更改可能导致不正确的行为,如果
// 重新生成代码,则所做更改将丢失。
// </自动生成>
//------------------------------------------------------------------------------
namespace FineUIPro.Web.PHTGL.InvoiceManage
{
public partial class InvoiceStandingBookEdit
{
/// <summary>
/// form1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
/// <summary>
/// PageManager1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.PageManager PageManager1;
/// <summary>
/// SimpleForm1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Form SimpleForm1;
/// <summary>
/// DropContractCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.DropDownList DropContractCode;
/// <summary>
/// txtInvoiceCode 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceCode;
/// <summary>
/// txtInvoiceNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceNumber;
/// <summary>
/// txtSellerName 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSellerName;
/// <summary>
/// txtInvoiceDate 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceDate;
/// <summary>
/// txtAmountExcludingTax 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtAmountExcludingTax;
/// <summary>
/// txtTotalTax 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtTotalTax;
/// <summary>
/// txtRemark 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtRemark;
/// <summary>
/// txtImagePath 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtImagePath;
/// <summary>
/// txtSellerTaxNumber 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtSellerTaxNumber;
/// <summary>
/// txtInvoiceAmount 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.TextBox txtInvoiceAmount;
/// <summary>
/// Toolbar1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Toolbar Toolbar1;
/// <summary>
/// btnSave 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnSave;
/// <summary>
/// btnClose 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Button btnClose;
/// <summary>
/// Window1 控件。
/// </summary>
/// <remarks>
/// 自动生成的字段。
/// 若要进行修改,请将字段声明从设计器文件移到代码隐藏文件。
/// </remarks>
protected global::FineUIPro.Window Window1;
}
}
@@ -1,5 +1,4 @@
using BLL;
using Microsoft.Office.Core;
using System;
using System.Linq;
+54 -9
View File
@@ -1,9 +1,51 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="FF0D9166-4509-4411-8039-F035BC251114" Text="数据仓库" NavigateUrl="">
<TreeNode id="0E9C6A47-E410-43C4-95D1-1EC1C01E9967" Text="WBS数据仓库" NavigateUrl="DigData/WBSDW.aspx">
</TreeNode>
<TreeNode id="92B50285-30BD-4B62-9E23-A0D6B4BA1577" Text="项目数据仓库" NavigateUrl=""><TreeNode id="AA670914-6EAA-4CFA-8BD6-E0648F8FD21C" Text="安全数据库" NavigateUrl=""><TreeNode id="E1ABD1B1-1563-433A-972B-555076A96D06" Text="安全数据库" NavigateUrl="DigData/HSEDataDW.aspx"></TreeNode>
<TreeNode id="6A992AB8-A32D-448F-B06F-8DD4C112CC91" Text="法律法规制度标准库" NavigateUrl="">
<TreeNode id="CF1F59BB-215A-4E9D-9F19-DE188D322477" Text="标准分类" NavigateUrl="">
<TreeNode id="8B550B58-C681-4F34-83F0-F1E99CE04A47" Text="国内标准" NavigateUrl="">
</TreeNode>
<TreeNode id="97D1E401-EA0F-4C90-B7DC-61D568BAE617" Text="国外标准" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="DC3C36E0-4CD4-43E1-9CF8-D98D053E31FB" Text="法律法规" NavigateUrl=""><TreeNode id="2C7F78D3-DA7B-4193-A37F-CC479E4B9583" Text="法律法规" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="97D20BA1-9378-4268-901B-3747EDFB15F4" Text="赛鼎体系" NavigateUrl=""><TreeNode id="406EBAAB-05B2-4249-BAC2-5589F50AE365" Text="企业标准" NavigateUrl=""></TreeNode>
<TreeNode id="59F3FA81-7D08-4611-A3FF-22BFA656A940" Text="企业制度" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="35092B0F-1B7B-4014-A41D-41354FD87374" Text="遵照执行的集团制度" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="BAEBE57F-2858-49E0-BEFE-4D2FDF2FA4FE" Text="公共资源库" NavigateUrl=""><TreeNode id="664094A9-3DEF-4674-8FE2-ACF30B71B8DB" Text="安全公共资源库" NavigateUrl=""><TreeNode id="FDVXFGDS-5THM-CCDE-DCS2-TGHNO48F7UKM" Text="安全合规" NavigateUrl=""><TreeNode id="F4B02718-0616-4623-ABCE-885698DDBEB1" Text="安全法律法规" NavigateUrl="HSSE/Law/LawRegulationList.aspx"></TreeNode>
<TreeNode id="499E23C1-057C-4B04-B92A-973B1DACD546" Text="赛鼎制度" NavigateUrl="HSSE/HSSESystem/SafetyInstitution.aspx"></TreeNode>
<TreeNode id="EFDSFVDE-RTHN-7UMG-4THA-5TGED48F8IOL" Text="安全标准规范" NavigateUrl="HSSE/Law/HSSEStandardList.aspx"></TreeNode>
<TreeNode id="DF1413F3-4CE5-40B3-A574-E01CE64FEA25" Text="安全规章制度" NavigateUrl="HSSE/Law/RulesRegulations.aspx"></TreeNode>
<TreeNode id="56960940-81A8-43D1-9565-C306EC7AFD12" Text="集团制度" NavigateUrl="HSSE/Law/ManageRule.aspx"></TreeNode>
</TreeNode>
<TreeNode id="2B49BFE2-734F-489E-91B9-D05F02E1976D" Text="安全生产责任制" NavigateUrl=""><TreeNode id="1DB91420-47D3-4219-AAB4-7E613FCBCC90" Text="安全主体责任" NavigateUrl="HSSE/HSSESystem/HSSEMainDuty.aspx"></TreeNode>
</TreeNode>
<TreeNode id="E26D223B-4CA2-4A6D-82D0-224CC9C8676D" Text="安全教育" NavigateUrl=""><TreeNode id="9D99A981-7380-4085-84FA-8C3B1AFA6202" Text="培训教材库" NavigateUrl="HSSE/EduTrain/TrainDB.aspx"></TreeNode>
<TreeNode id="9D4F76A1-CD2E-4E66-B833-49425CD879EB" Text="公司教材库" NavigateUrl="HSSE/EduTrain/CompanyTraining.aspx"></TreeNode>
<TreeNode id="4D6BD686-DA06-45CC-9DB8-54B342651724" Text="考试试题库" NavigateUrl="HSSE/EduTrain/TestTraining.aspx"></TreeNode>
<TreeNode id="F58EE8ED-9EB5-47C7-9D7F-D751EFEA44CA" Text="安全试题库" NavigateUrl="HSSE/EduTrain/TrainTestDB.aspx"></TreeNode>
<TreeNode id="D86917DB-D00A-4E18-9793-C290B5BBA84C" Text="事故案例库" NavigateUrl="HSSE/EduTrain/AccidentCase.aspx"></TreeNode>
</TreeNode>
<TreeNode id="D70D9BF5-C72E-414D-941B-CF9B4065F6BA" Text="安全技术" NavigateUrl=""><TreeNode id="8333727B-A2CE-4CE2-A019-21AC9EE61A4C" Text="危险源清单" NavigateUrl="HSSE/Technique/HazardList.aspx"></TreeNode>
<TreeNode id="C0018E8C-C88B-4E25-BCFC-F0BF3CACC63A" Text="公司危险源清单" NavigateUrl="HSSE/Technique/CompanyHazardList.aspx"></TreeNode>
<TreeNode id="773B59F9-61F9-4F5E-9D68-A1BF9322AFFA" Text="环境因素危险源" NavigateUrl="HSSE/Technique/Environmental.aspx"></TreeNode>
<TreeNode id="DC2AA8C2-82A8-4F7A-832D-9889C65AA228" Text="公司环境因素危险源" NavigateUrl="HSSE/Technique/CompanyEnvironmental.aspx"></TreeNode>
<TreeNode id="2D86AD87-4108-428C-BA3D-F81FB85511FE" Text="安全隐患" NavigateUrl="HSSE/Technique/Rectify.aspx"></TreeNode>
<TreeNode id="9C26BF2A-091D-4AC3-8678-334DE4E1CED7" Text="项目安全检查项" NavigateUrl="HSSE/Technique/CheckItemSet.aspx"></TreeNode>
<TreeNode id="D11BFC83-BE64-457D-B8FA-11C37D35CD72" Text="应急预案" NavigateUrl="HSSE/Technique/Emergency.aspx"></TreeNode>
<TreeNode id="3E2F2FFD-ED2E-4914-8370-D97A68398814" Text="施工方案" NavigateUrl="HSSE/Technique/SpecialScheme.aspx"></TreeNode>
</TreeNode>
<TreeNode id="1B688B07-AEF4-43D8-BF31-1907522967ED" Text="标牌管理" NavigateUrl=""><TreeNode id="022CA9C1-70F0-4C07-996C-0736D32B442A" Text="标牌管理" NavigateUrl="HSSE/Resources/SignManage.aspx"></TreeNode>
</TreeNode>
</TreeNode>
<TreeNode id="34705FFF-0BA5-4C4F-BD70-721AA0EF874F" Text="质量公共资源库" NavigateUrl=""></TreeNode>
<TreeNode id="AB48BB81-A0F1-4E90-9E01-3F203E5ACFDE" Text="施工公共资源库" NavigateUrl=""></TreeNode>
<TreeNode id="EDDED4C1-B01E-4831-8552-38CB30CE8817" Text="开车公共资源库" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="DCVVBDE3-1B48-4615-FCD0-VDBCDS3ET4D9" Text="施工WBS基础数据库" NavigateUrl="CQMS/WBS/ControlItemInitSet.aspx"></TreeNode>
<TreeNode id="FF0D9166-4509-4411-8039-F035BC251114" Text="数据仓库" NavigateUrl=""><TreeNode id="AA670914-6EAA-4CFA-8BD6-E0648F8FD21C" Text="安全数据库" NavigateUrl=""><TreeNode id="E1ABD1B1-1563-433A-972B-555076A96D06" Text="安全数据库" NavigateUrl="DigData/HSEDataDW.aspx"></TreeNode>
<TreeNode id="427AB060-2510-4568-B85B-AD6796EBE569" Text="项目HSE数据汇总" NavigateUrl="DigData/HSEDataCollect.aspx"></TreeNode>
<TreeNode id="04B182E4-D31E-449F-9803-322F3F380D89" Text="HSE日常检查问题分析" NavigateUrl="DigData/DailyProblemAnalysis.aspx"></TreeNode>
<TreeNode id="24939ABD-E174-4C3D-8B04-494917B7BE40" Text="HSE隐患整改问题分析" NavigateUrl="DigData/RectifyProblemAnalysis.aspx"></TreeNode>
<TreeNode id="4B2E7EE5-AC7C-4143-B5BC-60080C763A24" Text="HSE教育培训统计" NavigateUrl="DigData/TrainRecordAnalysis.aspx"></TreeNode>
@@ -16,12 +58,15 @@
<TreeNode id="A20E2443-A118-4C67-9084-FFEB685CA539" Text="清单子目使用率及价格走势图" NavigateUrl=""></TreeNode>
<TreeNode id="6D1F3A3F-EFD1-420A-87E7-8CFAEF971165" Text="日工效统计" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="5BE7F83B-C02D-4481-815F-153279B44C39" Text="劳务数据库" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="B87413D8-4EFB-42F3-A4F6-9D21C0CD3DFE" Text="数据分析室" NavigateUrl=""><TreeNode id="AF5C32FD-F0CB-404E-B56D-C4AE79A8A050" Text="人员功效分析" NavigateUrl=""></TreeNode>
<TreeNode id="0DB6BB5F-B17A-4A38-AABB-278300EA9E39" Text="员工产值分析" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="B87413D8-4EFB-42F3-A4F6-9D21C0CD3DFE" Text="数据分析室" NavigateUrl=""><TreeNode id="CFEF47C0-8EFA-46FF-8648-5B1922519DCC" Text="WBS数据分析" NavigateUrl="DigData/WBSAnalysis.aspx"></TreeNode>
<TreeNode id="B146FC96-B199-426B-8504-4BE093C0DCB1" Text="项目数据汇总分析" NavigateUrl=""><TreeNode id="427AB060-2510-4568-B85B-AD6796EBE569" Text="项目HSE数据汇总" NavigateUrl="DigData/HSEDataCollect.aspx"></TreeNode>
<TreeNode id="DD960B76-1F33-468B-9FEF-76328235C079" Text="项目质量数据汇总" NavigateUrl="DigData/CQMSDataCollect.aspx"></TreeNode>
<TreeNode id="A705738B-D0A2-41D2-A01A-18774B5AED49" Text="项目施工数据汇总" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="6136C2AE-2AF8-498D-BC19-7D693841239C" Text="文件柜" NavigateUrl=""><TreeNode id="506F42F3-F4CF-46A7-AC90-787117B4F1DC" Text="安全文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="A90460D0-2658-43F7-9558-A72E91E54ABD" Text="质量文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="2539A5CE-E209-4A16-A9B7-4C43E4E3CBEC" Text="进度文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="8FB0A651-485F-4413-BCD6-22BF82438125" Text="焊接文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="F596EC1A-71A3-4B34-B36C-68628F2F42FE" Text="合同文件柜" NavigateUrl=""></TreeNode>
</TreeNode>
</Tree>
+1 -1
View File
@@ -14,7 +14,7 @@
<TreeNode id="1E36EA73-D536-4215-BFB9-A8771937BD89" Text="工厂预制管理" NavigateUrl=""><TreeNode id="0A3F6AB0-535E-489C-9F64-4FFE61C17085" Text="材料管理" NavigateUrl="HJGL/PreDesign/MaterialManage.aspx"></TreeNode>
<TreeNode id="8255554C-0A92-4C7B-BF19-779AF0220A8C" Text="预制组件管理" NavigateUrl="HJGL/PreDesign/PrePipeline.aspx"></TreeNode>
<TreeNode id="F18CFC0E-47E0-477A-9AB3-72B88D438299" Text="堆场规划" NavigateUrl="HJGL/PreDesign/YardPlanning.aspx"></TreeNode>
<TreeNode id="25DED954-10C9-47CC-99F2-C44FDE9E0A81" Text="发货管理" NavigateUrl="HJGL/PreDesign/PackagingManage.aspx"></TreeNode>
<TreeNode id="25DED954-10C9-47CC-99F2-C44FDE9E0A81" Text="包装管理" NavigateUrl="HJGL/PreDesign/PackagingManage.aspx"></TreeNode>
</TreeNode>
<TreeNode id="0FC79768-7235-4E8C-AA7F-B33B85AD90D5" Text="施工准备" NavigateUrl=""><TreeNode id="3EFCE9C3-1983-4AEC-8FA1-D7A90F08CBCB" Text="焊接人员管理" NavigateUrl=""><TreeNode id="1908E4C9-4A63-4A6C-6666-DA4910C2A8C7" Text="焊工管理" NavigateUrl="HJGL/PersonManage/WelderManage.aspx"></TreeNode>
<TreeNode id="13F11D51-1B54-400F-BDBB-36685BC94819" Text="无损检测工管理" NavigateUrl="HJGL/PersonManage/CheckerManage.aspx"></TreeNode>
+3 -3
View File
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="E36CBDD0-2E49-415E-BBE7-B8222F40D749" Text="合同模板" NavigateUrl="">
<TreeNode id="C141ABE5-E377-45C1-9507-E723C40099B8" Text="基本信息" NavigateUrl="PHTGL/ContractCompile/Contract.aspx">
</TreeNode>
<TreeNode id="E9D387EB-2797-43E3-AACE-93413839CCF7" Text="合同管理" NavigateUrl="">
</TreeNode>
<TreeNode id="E36CBDD0-2E49-415E-BBE7-B8222F40D749" Text="合同模板" NavigateUrl=""><TreeNode id="C141ABE5-E377-45C1-9507-E723C40099B8" Text="基本信息" NavigateUrl="PHTGL/ContractCompile/Contract.aspx"></TreeNode>
<TreeNode id="C5560FF5-8181-4BA2-8326-D2B49E45660C" Text="合同协议书" NavigateUrl="PHTGL/ContractCompile/ContractAgreementEdit.aspx"></TreeNode>
<TreeNode id="98573D16-3310-4292-96A5-A59B9A5E6B6B" Text="通用条款" NavigateUrl="PHTGL/ContractCompile/GeneralTermsConditions.aspx"></TreeNode>
<TreeNode id="98367C43-9C85-467E-9144-288D80101E41" Text="专用条款" NavigateUrl="PHTGL/ContractCompile/SpecialTermsConditions.aspx"></TreeNode>
+5 -1
View File
@@ -1,7 +1,11 @@
<?xml version="1.0" encoding="utf-8"?>
<Tree>
<TreeNode id="E23F0879-3E9F-4E7B-9A2D-EFF34798D629" Text="进度计划编制" NavigateUrl="JDGL/Check/PlanSet.aspx">
<TreeNode id="BAC3D994-03A8-466C-8975-A31039998BCC" Text="施工进度统计" NavigateUrl="JDGL/Check/ProgressShow.aspx">
</TreeNode>
<TreeNode id="1172B112-2A12-4410-AD66-E5BA6B461475" Text="施工进度赢得值曲线" NavigateUrl="JDGL/Check/ProgressStatistics.aspx"></TreeNode>
<TreeNode id="B479EC55-E12A-4F91-AF3F-864DAAA136FB" Text="进度完成情况录入" NavigateUrl="JDGL/Check/CompleteInput.aspx"></TreeNode>
<TreeNode id="4288426D-E49B-4E5D-A495-7E6A76F269B5" Text="周计划" NavigateUrl=""></TreeNode>
<TreeNode id="F0E296C3-6499-43E5-88CD-E00C5180D3BC" Text="赢得值曲线" NavigateUrl="JDGL/Check/EarnedValueCurve.aspx"></TreeNode>
<TreeNode id="C75F0853-8A2B-4B32-83B7-509278D11957" Text="项目里程碑节点" NavigateUrl=""></TreeNode>
<TreeNode id="3550F422-E520-4962-9816-B691B0EE2865" Text="形象进度照片" NavigateUrl=""></TreeNode>
</Tree>
+4 -1
View File
@@ -4,10 +4,10 @@
<TreeNode id="2E57E92E-31BE-46B3-89AF-E08DAE8FC8E7" Text="实施计划编制" NavigateUrl="PHTGL/BiddingManagement/ActionPlanFormation.aspx">
</TreeNode>
<TreeNode id="303B6753-ED3C-438A-A860-F9C5E5489C8F" Text="实施计划审批" NavigateUrl="PHTGL/BiddingManagement/ActionPlanReview.aspx"></TreeNode>
<TreeNode id="687991B6-73AC-42FA-9A72-178AF94D1EB4" Text="招标工程量清单定制" NavigateUrl="PHTGL/BillOfQuantities/BidProjectQuantityList.aspx"></TreeNode>
<TreeNode id="0BB31BB1-469D-41E8-9039-A53A2B1EEB86" Text="招标文件审批" NavigateUrl="PHTGL/BiddingManagement/BidDocumentsReview.aspx"></TreeNode>
<TreeNode id="133C55A1-3744-40F5-9C74-24E85AB1261F" Text="评标小组名单审批" NavigateUrl="PHTGL/BiddingManagement/ApproveUserReview.aspx"></TreeNode>
<TreeNode id="11503AD6-742D-406D-96F1-17BA3B9E7580" Text="确定分包商审批" NavigateUrl="PHTGL/BiddingManagement/SetSubReview.aspx"></TreeNode>
<TreeNode id="687991B6-73AC-42FA-9A72-178AF94D1EB4" Text="招标工程量清单定制" NavigateUrl="PHTGL/BillOfQuantities/BidProjectQuantityList.aspx"></TreeNode>
</TreeNode>
<TreeNode id="C041D799-47A0-4ECA-A6A2-C387857165D6" Text="合同管理" NavigateUrl=""><TreeNode id="C609FEA5-0904-4F59-A920-22B6459F1A94" Text="合同编制" NavigateUrl="PHTGL/ContractCompile/ContractFormation.aspx"></TreeNode>
<TreeNode id="B32E7F62-5AA3-46B2-A438-E286909A47B4" Text="合同评审" NavigateUrl="PHTGL/ContractCompile/ContractReview_Countersign.aspx"></TreeNode>
@@ -37,4 +37,7 @@
<TreeNode id="4EDB3CB9-9FB6-4D63-802F-83C3FB3CA6B1" Text="月平均工效统计" NavigateUrl="PZHGL/InformationProject/MonthConstructionLogWorkEfficiencySum.aspx"></TreeNode>
<TreeNode id="D791C4E1-7CF1-4F4E-9457-0CF91ACDB987" Text="项目平均工效统计" NavigateUrl="PZHGL/InformationProject/ProjectConstructionLogWorkEfficiencySum.aspx"></TreeNode>
</TreeNode>
<TreeNode id="1FF4F8D5-C9AA-4C59-B392-1F025AEB8DEE" Text="发票管理" NavigateUrl=""><TreeNode id="B451C8DE-71B9-433E-ACB9-4465FB7E3C5C" Text="发票台账" NavigateUrl="PHTGL/InvoiceManage/InvoiceStandingBook.aspx"></TreeNode>
<TreeNode id="DD38AD86-513B-4BBC-AF64-0F52F56784BE" Text="出入库单" NavigateUrl="PHTGL/InvoiceManage/InvoiceOrder.aspx"></TreeNode>
</TreeNode>
</Tree>
-42
View File
@@ -48,49 +48,7 @@
<TreeNode id="3BBFCD70-D7A3-435C-9571-DD499D5ED7B8" Text="应急信息" NavigateUrl=""><TreeNode id="D12C2412-E12A-4F78-9AEF-1EE8AC84A561" Text="应急预案管理清单" NavigateUrl="ZHGL/Emergency/EmergencyList.aspx"></TreeNode>
<TreeNode id="172F25E0-F5E2-42E3-AD67-AC824D4E0FBB" Text="应急演练开展情况" NavigateUrl="ZHGL/Emergency/DrillRecordList.aspx"></TreeNode>
</TreeNode>
<TreeNode id="6A992AB8-A32D-448F-B06F-8DD4C112CC91" Text="法律法规制度标准库" NavigateUrl=""><TreeNode id="CF1F59BB-215A-4E9D-9F19-DE188D322477" Text="标准分类" NavigateUrl=""></TreeNode>
<TreeNode id="DC3C36E0-4CD4-43E1-9CF8-D98D053E31FB" Text="法律法规" NavigateUrl=""></TreeNode>
<TreeNode id="97D20BA1-9378-4268-901B-3747EDFB15F4" Text="赛鼎体系" NavigateUrl=""></TreeNode>
<TreeNode id="35092B0F-1B7B-4014-A41D-41354FD87374" Text="遵照执行的集团制度" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="BAEBE57F-2858-49E0-BEFE-4D2FDF2FA4FE" Text="公共资源库" NavigateUrl=""><TreeNode id="664094A9-3DEF-4674-8FE2-ACF30B71B8DB" Text="安全公共资源库" NavigateUrl=""><TreeNode id="FDVXFGDS-5THM-CCDE-DCS2-TGHNO48F7UKM" Text="安全合规" NavigateUrl=""><TreeNode id="F4B02718-0616-4623-ABCE-885698DDBEB1" Text="安全法律法规" NavigateUrl="HSSE/Law/LawRegulationList.aspx"></TreeNode>
<TreeNode id="499E23C1-057C-4B04-B92A-973B1DACD546" Text="赛鼎制度" NavigateUrl="HSSE/HSSESystem/SafetyInstitution.aspx"></TreeNode>
<TreeNode id="EFDSFVDE-RTHN-7UMG-4THA-5TGED48F8IOL" Text="安全标准规范" NavigateUrl="HSSE/Law/HSSEStandardList.aspx"></TreeNode>
<TreeNode id="DF1413F3-4CE5-40B3-A574-E01CE64FEA25" Text="安全规章制度" NavigateUrl="HSSE/Law/RulesRegulations.aspx"></TreeNode>
<TreeNode id="56960940-81A8-43D1-9565-C306EC7AFD12" Text="集团制度" NavigateUrl="HSSE/Law/ManageRule.aspx"></TreeNode>
</TreeNode>
<TreeNode id="2B49BFE2-734F-489E-91B9-D05F02E1976D" Text="安全生产责任制" NavigateUrl=""><TreeNode id="1DB91420-47D3-4219-AAB4-7E613FCBCC90" Text="安全主体责任" NavigateUrl="HSSE/HSSESystem/HSSEMainDuty.aspx"></TreeNode>
</TreeNode>
<TreeNode id="E26D223B-4CA2-4A6D-82D0-224CC9C8676D" Text="安全教育" NavigateUrl=""><TreeNode id="9D99A981-7380-4085-84FA-8C3B1AFA6202" Text="培训教材库" NavigateUrl="HSSE/EduTrain/TrainDB.aspx"></TreeNode>
<TreeNode id="9D4F76A1-CD2E-4E66-B833-49425CD879EB" Text="公司教材库" NavigateUrl="HSSE/EduTrain/CompanyTraining.aspx"></TreeNode>
<TreeNode id="4D6BD686-DA06-45CC-9DB8-54B342651724" Text="考试试题库" NavigateUrl="HSSE/EduTrain/TestTraining.aspx"></TreeNode>
<TreeNode id="F58EE8ED-9EB5-47C7-9D7F-D751EFEA44CA" Text="安全试题库" NavigateUrl="HSSE/EduTrain/TrainTestDB.aspx"></TreeNode>
<TreeNode id="D86917DB-D00A-4E18-9793-C290B5BBA84C" Text="事故案例库" NavigateUrl="HSSE/EduTrain/AccidentCase.aspx"></TreeNode>
</TreeNode>
<TreeNode id="D70D9BF5-C72E-414D-941B-CF9B4065F6BA" Text="安全技术" NavigateUrl=""><TreeNode id="8333727B-A2CE-4CE2-A019-21AC9EE61A4C" Text="危险源清单" NavigateUrl="HSSE/Technique/HazardList.aspx"></TreeNode>
<TreeNode id="C0018E8C-C88B-4E25-BCFC-F0BF3CACC63A" Text="公司危险源清单" NavigateUrl="HSSE/Technique/CompanyHazardList.aspx"></TreeNode>
<TreeNode id="773B59F9-61F9-4F5E-9D68-A1BF9322AFFA" Text="环境因素危险源" NavigateUrl="HSSE/Technique/Environmental.aspx"></TreeNode>
<TreeNode id="DC2AA8C2-82A8-4F7A-832D-9889C65AA228" Text="公司环境因素危险源" NavigateUrl="HSSE/Technique/CompanyEnvironmental.aspx"></TreeNode>
<TreeNode id="2D86AD87-4108-428C-BA3D-F81FB85511FE" Text="安全隐患" NavigateUrl="HSSE/Technique/Rectify.aspx"></TreeNode>
<TreeNode id="9C26BF2A-091D-4AC3-8678-334DE4E1CED7" Text="项目安全检查项" NavigateUrl="HSSE/Technique/CheckItemSet.aspx"></TreeNode>
<TreeNode id="D11BFC83-BE64-457D-B8FA-11C37D35CD72" Text="应急预案" NavigateUrl="HSSE/Technique/Emergency.aspx"></TreeNode>
<TreeNode id="3E2F2FFD-ED2E-4914-8370-D97A68398814" Text="施工方案" NavigateUrl="HSSE/Technique/SpecialScheme.aspx"></TreeNode>
</TreeNode>
<TreeNode id="1B688B07-AEF4-43D8-BF31-1907522967ED" Text="标牌管理" NavigateUrl=""><TreeNode id="022CA9C1-70F0-4C07-996C-0736D32B442A" Text="标牌管理" NavigateUrl="HSSE/Resources/SignManage.aspx"></TreeNode>
</TreeNode>
</TreeNode>
<TreeNode id="34705FFF-0BA5-4C4F-BD70-721AA0EF874F" Text="质量公共资源库" NavigateUrl=""></TreeNode>
<TreeNode id="AB48BB81-A0F1-4E90-9E01-3F203E5ACFDE" Text="施工公共资源库" NavigateUrl=""></TreeNode>
<TreeNode id="EDDED4C1-B01E-4831-8552-38CB30CE8817" Text="开车公共资源库" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="DCVVBDE3-1B48-4615-FCD0-VDBCDS3ET4D9" Text="施工WBS基础数据库" NavigateUrl="CQMS/WBS/ControlItemInitSet.aspx"></TreeNode>
<TreeNode id="C4B90ED3-0258-437A-BC0D-4AB43721EE08" Text="看板数据汇总" NavigateUrl="ZHGL/DataSync/DataStatistics.aspx"></TreeNode>
<TreeNode id="6136C2AE-2AF8-498D-BC19-7D693841239C" Text="文件柜" NavigateUrl=""><TreeNode id="506F42F3-F4CF-46A7-AC90-787117B4F1DC" Text="安全文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="A90460D0-2658-43F7-9558-A72E91E54ABD" Text="质量文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="2539A5CE-E209-4A16-A9B7-4C43E4E3CBEC" Text="进度文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="8FB0A651-485F-4413-BCD6-22BF82438125" Text="焊接文件柜" NavigateUrl=""></TreeNode>
<TreeNode id="F596EC1A-71A3-4B34-B36C-68628F2F42FE" Text="合同文件柜" NavigateUrl=""></TreeNode>
</TreeNode>
<TreeNode id="1E216BE3-DB22-4649-BD9A-0777B0DC03E6" Text="QHSE上报" NavigateUrl=""><TreeNode id="94F94EC1-54B3-4BEB-A019-0A755A66D8FD" Text="安全数据" NavigateUrl="ZHGL/DataSync/HSSEData_HSSE.aspx"></TreeNode>
<TreeNode id="4C9920AE-F335-48B1-BDB0-276173305952" Text="质量数据" NavigateUrl="ZHGL/DataSync/CQMSData_CQMS.aspx"></TreeNode>
<TreeNode id="2110702F-4E12-479A-8EA1-E5A8EEF77276" Text="焊接数据" NavigateUrl="ZHGL/DataSync/HJGLData_HJGL.aspx"></TreeNode>
+855 -13
View File
@@ -1142,6 +1142,12 @@ namespace Model
partial void InsertPHTGL_ContractTrackProgress(PHTGL_ContractTrackProgress instance);
partial void UpdatePHTGL_ContractTrackProgress(PHTGL_ContractTrackProgress instance);
partial void DeletePHTGL_ContractTrackProgress(PHTGL_ContractTrackProgress instance);
partial void InsertPHTGL_Invoice(PHTGL_Invoice instance);
partial void UpdatePHTGL_Invoice(PHTGL_Invoice instance);
partial void DeletePHTGL_Invoice(PHTGL_Invoice instance);
partial void InsertPHTGL_InvoiceDetail(PHTGL_InvoiceDetail instance);
partial void UpdatePHTGL_InvoiceDetail(PHTGL_InvoiceDetail instance);
partial void DeletePHTGL_InvoiceDetail(PHTGL_InvoiceDetail instance);
partial void InsertPHTGL_MainProjectQuantity(PHTGL_MainProjectQuantity instance);
partial void UpdatePHTGL_MainProjectQuantity(PHTGL_MainProjectQuantity instance);
partial void DeletePHTGL_MainProjectQuantity(PHTGL_MainProjectQuantity instance);
@@ -4791,6 +4797,22 @@ namespace Model
}
}
public System.Data.Linq.Table<PHTGL_Invoice> PHTGL_Invoice
{
get
{
return this.GetTable<PHTGL_Invoice>();
}
}
public System.Data.Linq.Table<PHTGL_InvoiceDetail> PHTGL_InvoiceDetail
{
get
{
return this.GetTable<PHTGL_InvoiceDetail>();
}
}
public System.Data.Linq.Table<PHTGL_MainProjectQuantity> PHTGL_MainProjectQuantity
{
get
@@ -11801,7 +11823,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveIdea", DbType="NVarChar(2000)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveIdea", DbType="NVarChar(200)")]
public string ApproveIdea
{
get
@@ -151489,7 +151511,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttentPerson", DbType="NVarChar(3000)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AttentPerson", DbType="NVarChar(500)")]
public string AttentPerson
{
get
@@ -182448,7 +182470,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectDescription", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectDescription", DbType="VarChar(255)")]
public string ProjectDescription
{
get
@@ -182568,7 +182590,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CalculationRule", DbType="VarChar(MAX)", UpdateCheck=UpdateCheck.Never)]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CalculationRule", DbType="VarChar(255)")]
public string CalculationRule
{
get
@@ -182628,7 +182650,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ConstructionSubcontractor", DbType="VarChar(100)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ConstructionSubcontractor", DbType="VarChar(50)")]
public string ConstructionSubcontractor
{
get
@@ -183012,7 +183034,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackageEstimate", DbType="Decimal(18,3)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_WorkPackageEstimate", DbType="Decimal(18,2)")]
public System.Nullable<decimal> WorkPackageEstimate
{
get
@@ -183307,6 +183329,826 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.PHTGL_Invoice")]
public partial class PHTGL_Invoice : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private string _InvoiceId;
private string _ProjectId;
private System.Nullable<int> _State;
private string _InvoiceCode;
private string _InvoiceNumber;
private string _SellerName;
private string _InvoiceDate;
private System.Nullable<decimal> _AmountExcludingTax;
private System.Nullable<decimal> _TotalTax;
private string _Remark;
private string _ImagePath;
private string _SellerTaxNumber;
private System.Nullable<decimal> _InvoiceAmount;
private string _ApproveManJson;
private System.Nullable<System.DateTime> _CreateDate;
private string _CreateUser;
private string _ContractId;
private System.Nullable<System.DateTime> _OrderInDate;
private string _OrderCode;
private System.Nullable<System.DateTime> _OrderOutDate;
private string _MaterialRequisitionUnit;
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
partial void OnCreated();
partial void OnInvoiceIdChanging(string value);
partial void OnInvoiceIdChanged();
partial void OnProjectIdChanging(string value);
partial void OnProjectIdChanged();
partial void OnStateChanging(System.Nullable<int> value);
partial void OnStateChanged();
partial void OnInvoiceCodeChanging(string value);
partial void OnInvoiceCodeChanged();
partial void OnInvoiceNumberChanging(string value);
partial void OnInvoiceNumberChanged();
partial void OnSellerNameChanging(string value);
partial void OnSellerNameChanged();
partial void OnInvoiceDateChanging(string value);
partial void OnInvoiceDateChanged();
partial void OnAmountExcludingTaxChanging(System.Nullable<decimal> value);
partial void OnAmountExcludingTaxChanged();
partial void OnTotalTaxChanging(System.Nullable<decimal> value);
partial void OnTotalTaxChanged();
partial void OnRemarkChanging(string value);
partial void OnRemarkChanged();
partial void OnImagePathChanging(string value);
partial void OnImagePathChanged();
partial void OnSellerTaxNumberChanging(string value);
partial void OnSellerTaxNumberChanged();
partial void OnInvoiceAmountChanging(System.Nullable<decimal> value);
partial void OnInvoiceAmountChanged();
partial void OnApproveManJsonChanging(string value);
partial void OnApproveManJsonChanged();
partial void OnCreateDateChanging(System.Nullable<System.DateTime> value);
partial void OnCreateDateChanged();
partial void OnCreateUserChanging(string value);
partial void OnCreateUserChanged();
partial void OnContractIdChanging(string value);
partial void OnContractIdChanged();
partial void OnOrderInDateChanging(System.Nullable<System.DateTime> value);
partial void OnOrderInDateChanged();
partial void OnOrderCodeChanging(string value);
partial void OnOrderCodeChanged();
partial void OnOrderOutDateChanging(System.Nullable<System.DateTime> value);
partial void OnOrderOutDateChanged();
partial void OnMaterialRequisitionUnitChanging(string value);
partial void OnMaterialRequisitionUnitChanged();
#endregion
public PHTGL_Invoice()
{
OnCreated();
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string InvoiceId
{
get
{
return this._InvoiceId;
}
set
{
if ((this._InvoiceId != value))
{
this.OnInvoiceIdChanging(value);
this.SendPropertyChanging();
this._InvoiceId = value;
this.SendPropertyChanged("InvoiceId");
this.OnInvoiceIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ProjectId", DbType="NVarChar(50)")]
public string ProjectId
{
get
{
return this._ProjectId;
}
set
{
if ((this._ProjectId != value))
{
this.OnProjectIdChanging(value);
this.SendPropertyChanging();
this._ProjectId = value;
this.SendPropertyChanged("ProjectId");
this.OnProjectIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_State", DbType="Int")]
public System.Nullable<int> State
{
get
{
return this._State;
}
set
{
if ((this._State != value))
{
this.OnStateChanging(value);
this.SendPropertyChanging();
this._State = value;
this.SendPropertyChanged("State");
this.OnStateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceCode", DbType="NVarChar(50)")]
public string InvoiceCode
{
get
{
return this._InvoiceCode;
}
set
{
if ((this._InvoiceCode != value))
{
this.OnInvoiceCodeChanging(value);
this.SendPropertyChanging();
this._InvoiceCode = value;
this.SendPropertyChanged("InvoiceCode");
this.OnInvoiceCodeChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceNumber", DbType="NVarChar(50)")]
public string InvoiceNumber
{
get
{
return this._InvoiceNumber;
}
set
{
if ((this._InvoiceNumber != value))
{
this.OnInvoiceNumberChanging(value);
this.SendPropertyChanging();
this._InvoiceNumber = value;
this.SendPropertyChanged("InvoiceNumber");
this.OnInvoiceNumberChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SellerName", DbType="NVarChar(100)")]
public string SellerName
{
get
{
return this._SellerName;
}
set
{
if ((this._SellerName != value))
{
this.OnSellerNameChanging(value);
this.SendPropertyChanging();
this._SellerName = value;
this.SendPropertyChanged("SellerName");
this.OnSellerNameChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceDate", DbType="NVarChar(50)")]
public string InvoiceDate
{
get
{
return this._InvoiceDate;
}
set
{
if ((this._InvoiceDate != value))
{
this.OnInvoiceDateChanging(value);
this.SendPropertyChanging();
this._InvoiceDate = value;
this.SendPropertyChanged("InvoiceDate");
this.OnInvoiceDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_AmountExcludingTax", DbType="Decimal(18,2)")]
public System.Nullable<decimal> AmountExcludingTax
{
get
{
return this._AmountExcludingTax;
}
set
{
if ((this._AmountExcludingTax != value))
{
this.OnAmountExcludingTaxChanging(value);
this.SendPropertyChanging();
this._AmountExcludingTax = value;
this.SendPropertyChanged("AmountExcludingTax");
this.OnAmountExcludingTaxChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TotalTax", DbType="Decimal(18,2)")]
public System.Nullable<decimal> TotalTax
{
get
{
return this._TotalTax;
}
set
{
if ((this._TotalTax != value))
{
this.OnTotalTaxChanging(value);
this.SendPropertyChanging();
this._TotalTax = value;
this.SendPropertyChanged("TotalTax");
this.OnTotalTaxChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Remark", DbType="NVarChar(500)")]
public string Remark
{
get
{
return this._Remark;
}
set
{
if ((this._Remark != value))
{
this.OnRemarkChanging(value);
this.SendPropertyChanging();
this._Remark = value;
this.SendPropertyChanged("Remark");
this.OnRemarkChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ImagePath", DbType="NVarChar(500)")]
public string ImagePath
{
get
{
return this._ImagePath;
}
set
{
if ((this._ImagePath != value))
{
this.OnImagePathChanging(value);
this.SendPropertyChanging();
this._ImagePath = value;
this.SendPropertyChanged("ImagePath");
this.OnImagePathChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SellerTaxNumber", DbType="NVarChar(50)")]
public string SellerTaxNumber
{
get
{
return this._SellerTaxNumber;
}
set
{
if ((this._SellerTaxNumber != value))
{
this.OnSellerTaxNumberChanging(value);
this.SendPropertyChanging();
this._SellerTaxNumber = value;
this.SendPropertyChanged("SellerTaxNumber");
this.OnSellerTaxNumberChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceAmount", DbType="Decimal(18,2)")]
public System.Nullable<decimal> InvoiceAmount
{
get
{
return this._InvoiceAmount;
}
set
{
if ((this._InvoiceAmount != value))
{
this.OnInvoiceAmountChanging(value);
this.SendPropertyChanging();
this._InvoiceAmount = value;
this.SendPropertyChanged("InvoiceAmount");
this.OnInvoiceAmountChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ApproveManJson", DbType="NVarChar(2000)")]
public string ApproveManJson
{
get
{
return this._ApproveManJson;
}
set
{
if ((this._ApproveManJson != value))
{
this.OnApproveManJsonChanging(value);
this.SendPropertyChanging();
this._ApproveManJson = value;
this.SendPropertyChanged("ApproveManJson");
this.OnApproveManJsonChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateDate", DbType="DateTime")]
public System.Nullable<System.DateTime> CreateDate
{
get
{
return this._CreateDate;
}
set
{
if ((this._CreateDate != value))
{
this.OnCreateDateChanging(value);
this.SendPropertyChanging();
this._CreateDate = value;
this.SendPropertyChanged("CreateDate");
this.OnCreateDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_CreateUser", DbType="NVarChar(50)")]
public string CreateUser
{
get
{
return this._CreateUser;
}
set
{
if ((this._CreateUser != value))
{
this.OnCreateUserChanging(value);
this.SendPropertyChanging();
this._CreateUser = value;
this.SendPropertyChanged("CreateUser");
this.OnCreateUserChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractId", DbType="NVarChar(50)")]
public string ContractId
{
get
{
return this._ContractId;
}
set
{
if ((this._ContractId != value))
{
this.OnContractIdChanging(value);
this.SendPropertyChanging();
this._ContractId = value;
this.SendPropertyChanged("ContractId");
this.OnContractIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OrderInDate", DbType="Date")]
public System.Nullable<System.DateTime> OrderInDate
{
get
{
return this._OrderInDate;
}
set
{
if ((this._OrderInDate != value))
{
this.OnOrderInDateChanging(value);
this.SendPropertyChanging();
this._OrderInDate = value;
this.SendPropertyChanged("OrderInDate");
this.OnOrderInDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OrderCode", DbType="NVarChar(50)")]
public string OrderCode
{
get
{
return this._OrderCode;
}
set
{
if ((this._OrderCode != value))
{
this.OnOrderCodeChanging(value);
this.SendPropertyChanging();
this._OrderCode = value;
this.SendPropertyChanged("OrderCode");
this.OnOrderCodeChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_OrderOutDate", DbType="Date")]
public System.Nullable<System.DateTime> OrderOutDate
{
get
{
return this._OrderOutDate;
}
set
{
if ((this._OrderOutDate != value))
{
this.OnOrderOutDateChanging(value);
this.SendPropertyChanging();
this._OrderOutDate = value;
this.SendPropertyChanged("OrderOutDate");
this.OnOrderOutDateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_MaterialRequisitionUnit", DbType="NVarChar(100)")]
public string MaterialRequisitionUnit
{
get
{
return this._MaterialRequisitionUnit;
}
set
{
if ((this._MaterialRequisitionUnit != value))
{
this.OnMaterialRequisitionUnitChanging(value);
this.SendPropertyChanging();
this._MaterialRequisitionUnit = value;
this.SendPropertyChanged("MaterialRequisitionUnit");
this.OnMaterialRequisitionUnitChanged();
}
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void SendPropertyChanging()
{
if ((this.PropertyChanging != null))
{
this.PropertyChanging(this, emptyChangingEventArgs);
}
}
protected virtual void SendPropertyChanged(String propertyName)
{
if ((this.PropertyChanged != null))
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.PHTGL_InvoiceDetail")]
public partial class PHTGL_InvoiceDetail : INotifyPropertyChanging, INotifyPropertyChanged
{
private static PropertyChangingEventArgs emptyChangingEventArgs = new PropertyChangingEventArgs(String.Empty);
private string _InvoiceDetailId;
private string _InvoiceId;
private string _GoodsOrServicesName;
private string _SpecificationModel;
private string _Unit;
private System.Nullable<decimal> _Quantity;
private System.Nullable<decimal> _UnitPrice;
private System.Nullable<decimal> _Amount;
private string _TaxRate;
private System.Nullable<decimal> _Tax;
#region 可扩展性方法定义
partial void OnLoaded();
partial void OnValidate(System.Data.Linq.ChangeAction action);
partial void OnCreated();
partial void OnInvoiceDetailIdChanging(string value);
partial void OnInvoiceDetailIdChanged();
partial void OnInvoiceIdChanging(string value);
partial void OnInvoiceIdChanged();
partial void OnGoodsOrServicesNameChanging(string value);
partial void OnGoodsOrServicesNameChanged();
partial void OnSpecificationModelChanging(string value);
partial void OnSpecificationModelChanged();
partial void OnUnitChanging(string value);
partial void OnUnitChanged();
partial void OnQuantityChanging(System.Nullable<decimal> value);
partial void OnQuantityChanged();
partial void OnUnitPriceChanging(System.Nullable<decimal> value);
partial void OnUnitPriceChanged();
partial void OnAmountChanging(System.Nullable<decimal> value);
partial void OnAmountChanged();
partial void OnTaxRateChanging(string value);
partial void OnTaxRateChanged();
partial void OnTaxChanging(System.Nullable<decimal> value);
partial void OnTaxChanged();
#endregion
public PHTGL_InvoiceDetail()
{
OnCreated();
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceDetailId", DbType="NVarChar(50) NOT NULL", CanBeNull=false, IsPrimaryKey=true)]
public string InvoiceDetailId
{
get
{
return this._InvoiceDetailId;
}
set
{
if ((this._InvoiceDetailId != value))
{
this.OnInvoiceDetailIdChanging(value);
this.SendPropertyChanging();
this._InvoiceDetailId = value;
this.SendPropertyChanged("InvoiceDetailId");
this.OnInvoiceDetailIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_InvoiceId", DbType="NVarChar(50)")]
public string InvoiceId
{
get
{
return this._InvoiceId;
}
set
{
if ((this._InvoiceId != value))
{
this.OnInvoiceIdChanging(value);
this.SendPropertyChanging();
this._InvoiceId = value;
this.SendPropertyChanged("InvoiceId");
this.OnInvoiceIdChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_GoodsOrServicesName", DbType="NVarChar(100)")]
public string GoodsOrServicesName
{
get
{
return this._GoodsOrServicesName;
}
set
{
if ((this._GoodsOrServicesName != value))
{
this.OnGoodsOrServicesNameChanging(value);
this.SendPropertyChanging();
this._GoodsOrServicesName = value;
this.SendPropertyChanged("GoodsOrServicesName");
this.OnGoodsOrServicesNameChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_SpecificationModel", DbType="NVarChar(100)")]
public string SpecificationModel
{
get
{
return this._SpecificationModel;
}
set
{
if ((this._SpecificationModel != value))
{
this.OnSpecificationModelChanging(value);
this.SendPropertyChanging();
this._SpecificationModel = value;
this.SendPropertyChanged("SpecificationModel");
this.OnSpecificationModelChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Unit", DbType="NVarChar(50)")]
public string Unit
{
get
{
return this._Unit;
}
set
{
if ((this._Unit != value))
{
this.OnUnitChanging(value);
this.SendPropertyChanging();
this._Unit = value;
this.SendPropertyChanged("Unit");
this.OnUnitChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Quantity", DbType="Decimal(18,2)")]
public System.Nullable<decimal> Quantity
{
get
{
return this._Quantity;
}
set
{
if ((this._Quantity != value))
{
this.OnQuantityChanging(value);
this.SendPropertyChanging();
this._Quantity = value;
this.SendPropertyChanged("Quantity");
this.OnQuantityChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitPrice", DbType="Decimal(18,2)")]
public System.Nullable<decimal> UnitPrice
{
get
{
return this._UnitPrice;
}
set
{
if ((this._UnitPrice != value))
{
this.OnUnitPriceChanging(value);
this.SendPropertyChanging();
this._UnitPrice = value;
this.SendPropertyChanged("UnitPrice");
this.OnUnitPriceChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Amount", DbType="Decimal(18,2)")]
public System.Nullable<decimal> Amount
{
get
{
return this._Amount;
}
set
{
if ((this._Amount != value))
{
this.OnAmountChanging(value);
this.SendPropertyChanging();
this._Amount = value;
this.SendPropertyChanged("Amount");
this.OnAmountChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_TaxRate", DbType="NVarChar(50)")]
public string TaxRate
{
get
{
return this._TaxRate;
}
set
{
if ((this._TaxRate != value))
{
this.OnTaxRateChanging(value);
this.SendPropertyChanging();
this._TaxRate = value;
this.SendPropertyChanged("TaxRate");
this.OnTaxRateChanged();
}
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Tax", DbType="Decimal(18,2)")]
public System.Nullable<decimal> Tax
{
get
{
return this._Tax;
}
set
{
if ((this._Tax != value))
{
this.OnTaxChanging(value);
this.SendPropertyChanging();
this._Tax = value;
this.SendPropertyChanged("Tax");
this.OnTaxChanged();
}
}
}
public event PropertyChangingEventHandler PropertyChanging;
public event PropertyChangedEventHandler PropertyChanged;
protected virtual void SendPropertyChanging()
{
if ((this.PropertyChanging != null))
{
this.PropertyChanging(this, emptyChangingEventArgs);
}
}
protected virtual void SendPropertyChanged(String propertyName)
{
if ((this.PropertyChanged != null))
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
}
[global::System.Data.Linq.Mapping.TableAttribute(Name="dbo.PHTGL_MainProjectQuantity")]
public partial class PHTGL_MainProjectQuantity : INotifyPropertyChanging, INotifyPropertyChanged
{
@@ -295160,7 +296002,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(200)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_Name", DbType="NVarChar(50)")]
public string Name
{
get
@@ -295737,7 +296579,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(200)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(50)")]
public string PackageContent
{
get
@@ -295928,7 +296770,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(200)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(50)")]
public string PackageContent
{
get
@@ -301215,7 +302057,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(200)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(50)")]
public string PackageContent
{
get
@@ -302687,7 +303529,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(200)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_PackageContent", DbType="NVarChar(50)")]
public string PackageContent
{
get
@@ -312238,7 +313080,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractNo", DbType="NVarChar(1500)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ContractNo", DbType="NVarChar(500)")]
public string ContractNo
{
get
@@ -312258,7 +313100,7 @@ namespace Model
}
}
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitWorks", DbType="NVarChar(1500)")]
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_UnitWorks", DbType="NVarChar(500)")]
public string UnitWorks
{
get
+12
View File
@@ -45,12 +45,16 @@
<Reference Include="EmitMapper, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\EmitMapper.1.0.0\lib\EmitMapper.dll</HintPath>
</Reference>
<Reference Include="MiniExcel, Version=1.31.3.0, Culture=neutral, PublicKeyToken=e7310002a53eac39, processorArchitecture=MSIL">
<HintPath>..\packages\MiniExcel.1.31.3\lib\net45\MiniExcel.dll</HintPath>
</Reference>
<Reference Include="Newtonsoft.Json, Version=12.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
<HintPath>..\packages\Newtonsoft.Json.12.0.1\lib\net40\Newtonsoft.Json.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data.Linq" />
<Reference Include="System.IO.Compression" />
<Reference Include="System.Web.DataVisualization" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
@@ -205,6 +209,11 @@
<Compile Include="Model.cs" />
<Compile Include="ModelProc.cs" />
<Compile Include="Num.cs" />
<Compile Include="PHTGL\ApproveManModel.cs" />
<Compile Include="PHTGL\PHTGL_ContractTrackDtoIn.cs" />
<Compile Include="PHTGL\PHTGL_InvoiceApproveManEntity.cs" />
<Compile Include="PHTGL\PHTGL_InvoiceDtoIn.cs" />
<Compile Include="PHTGL\PrintModel.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="SingleSerie.cs" />
<Compile Include="SpCheckInfoItem.cs" />
@@ -218,6 +227,9 @@
<Compile Include="ZHGL\DataSync\HSSEDataItem.cs" />
<Compile Include="ZHGL\DataSync\SYHSEDataItem.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
+22
View File
@@ -0,0 +1,22 @@
namespace Model
{
public class ApproveManModel
{
public int Number
{
get;
set;
}
public string userid
{
get;
set;
}
public string Rolename
{
get;
set;
}
}
}
@@ -0,0 +1,110 @@
using MiniExcelLibs.Attributes;
namespace Model
{
public class PHTGL_ContractTrackDtoIn
{
/// <summary>
/// 序号
/// </summary>
[ExcelColumnIndex("A")] public string SerialNumber { get; set; }
/// <summary>
/// 主项号
/// </summary>
[ExcelColumnIndex("B")] public string MainItemCode { get; set; }
/// <summary>
/// 主项名称
/// </summary>
[ExcelColumnIndex("C")] public string MainItemName { get; set; }
/// <summary>
/// 专业代码
/// </summary>
[ExcelColumnIndex("D")] public string MajorCode { get; set; }
/// <summary>
/// 专业工程名称
/// </summary>
[ExcelColumnIndex("E")] public string MajorName { get; set; }
/// <summary>
/// 分部工程
/// </summary>
[ExcelColumnIndex("F")] public string SubProject { get; set; }
/// <summary>
/// 分项工程
/// </summary>
[ExcelColumnIndex("G")] public string SubItemProject { get; set; }
/// <summary>
/// 项目编码
/// </summary>
[ExcelColumnIndex("H")] public string ProjectCode { get; set; }
/// <summary>
/// 项目名称
/// </summary>
[ExcelColumnIndex("I")] public string ProjectName { get; set; }
/// <summary>
/// 项目特征描述
/// </summary>
[ExcelColumnIndex("J")] public string ProjectDescription { get; set; }
/// <summary>
/// 计量单位
/// </summary>
[ExcelColumnIndex("K")] public string UnitOfMeasurement { get; set; }
/// <summary>
/// 工程量
/// </summary>
[ExcelColumnIndex("L")] public string Quantity { get; set; }
/// <summary>
/// 全费用固定综合单价
/// </summary>
[ExcelColumnIndex("M")] public decimal TotalCostFixedComprehensiveUnitPrice { get; set; }
/// <summary>
/// 其中:主材费
/// </summary>
[ExcelColumnIndex("N")] public decimal MainMaterialCost { get; set; }
/// <summary>
/// 合价/元
/// </summary>
[ExcelColumnIndex("O")] public decimal TotalPrice { get; set; }
/// <summary>
/// 计算规则
/// </summary>
[ExcelColumnIndex("P")] public string CalculationRule { get; set; }
/// <summary>
/// 工作内容
/// </summary>
[ExcelColumnIndex("Q")] public string WorkContent { get; set; }
/// <summary>
/// 备注
/// </summary>
[ExcelColumnIndex("R")] public string Remarks { get; set; }
/// <summary>
/// 施工分包商
/// </summary>
[ExcelColumnIndex("S")] public string ConstructionSubcontractor { get; set; }
/// <summary>
/// 主材供应方
/// </summary>
[ExcelColumnIndex("T")] public string MaterialSupplier { get; set; }
/// <summary>
/// 是否总包合同范围内
/// </summary>
[ExcelColumnIndex("U")]
public string IsWithinGeneralContractScope { get; set; }
/// <summary>
/// 概算工程量
/// </summary>
[ExcelColumnIndex("V")] public string EstimatedQuantity { get; set; }
/// <summary>
/// 概算金额
/// </summary>
[ExcelColumnIndex("W")] public decimal EstimatedAmount { get; set; }
/// <summary>
/// 预算工程量
/// </summary>
[ExcelColumnIndex("X")] public string SettledQuantity { get; set; }
/// <summary>
/// 预算金额
/// </summary>
[ExcelColumnIndex("Y")] public decimal SettledAmount { get; set; }
}
}
@@ -0,0 +1,59 @@
namespace Model
{
public class PHTGL_InvoiceApproveManEntity
{
/// <summary>
/// 入库审批人
/// </summary>
public Inputapproveman InputApproveMan { get; set; }
/// <summary>
/// 出库审批人
/// </summary>
public Outputapproveman OutputApproveMan { get; set; }
}
public class Inputapproveman
{
/// <summary>
/// 专业工程师
/// </summary>
public string ProfessionalEngineer { get; set; }
/// <summary>
/// 施工经理
/// </summary>
public string ConstructionManager { get; set; }
/// <summary>
/// 控制经理
/// </summary>
public string ControlManager { get; set; }
/// <summary>
/// 项目经理
/// </summary>
public string ProjectManager { get; set; }
}
public class Outputapproveman
{
/// <summary>
/// 采购员
/// </summary>
public string PurchasingMan { get; set; }
/// <summary>
/// 控制经理
/// </summary>
public string ControlManager { get; set; }
/// <summary>
/// 项目经理
/// </summary>
public string ProjectManager { get; set; }
/// <summary>
/// 施工单位材料经理
/// </summary>
public string ConUnitMaterialOfficer { get; set; }
/// <summary>
/// 施工单位项目经理
/// </summary>
public string ConUnitProjectManager { get; set; }
}
}
+82
View File
@@ -0,0 +1,82 @@
using MiniExcelLibs.Attributes;
namespace Model
{
public class PHTGL_InvoiceDtoIn
{
/// <summary>
/// 发票代码
/// </summary>
[ExcelColumnIndex("A")] public string InvoiceCode { get; set; }
/// <summary>
/// 发票号码
/// </summary>
[ExcelColumnIndex("B")] public string InvoiceNumber { get; set; }
/// <summary>
/// 销方名称
/// </summary>
[ExcelColumnIndex("C")] public string SellerName { get; set; }
/// <summary>
/// 开票日期
/// </summary>
[ExcelColumnIndex("D")] public string InvoiceDate { get; set; }
/// <summary>
/// 货物或应税劳务名称
/// </summary>
[ExcelColumnIndex("E")] public string GoodsOrServicesName { get; set; }
/// <summary>
/// 规格型号
/// </summary>
[ExcelColumnIndex("F")] public string SpecificationModel { get; set; }
/// <summary>
/// 单位
/// </summary>
[ExcelColumnIndex("G")] public string Unit { get; set; }
/// <summary>
/// 数量
/// </summary>
[ExcelColumnIndex("H")] public string Quantity { get; set; }
/// <summary>
/// 单价
/// </summary>
[ExcelColumnIndex("I")] public string UnitPrice { get; set; }
/// <summary>
/// 金额
/// </summary>
[ExcelColumnIndex("J")] public string Amount { get; set; }
/// <summary>
/// 税率
/// </summary>
[ExcelColumnIndex("K")] public string TaxRate { get; set; }
/// <summary>
/// 税额
/// </summary>
[ExcelColumnIndex("L")] public string Tax { get; set; }
/// <summary>
/// 不含税金额
/// </summary>
[ExcelColumnIndex("M")] public string AmountExcludingTax { get; set; }
/// <summary>
/// 合计税额
/// </summary>
[ExcelColumnIndex("N")] public string TotalTax { get; set; }
/// <summary>
/// 备注
/// </summary>
[ExcelColumnIndex("O")] public string Remark { get; set; }
/// <summary>
/// 图片存储路径
/// </summary>
[ExcelColumnIndex("P")] public string ImagePath { get; set; }
/// <summary>
/// 销方税号
/// </summary>
[ExcelColumnIndex("Q")] public string SellerTaxNumber { get; set; }
/// <summary>
/// 票面金额
/// </summary>
[ExcelColumnIndex("R")] public string InvoiceAmount { get; set; }
}
}
+38
View File
@@ -0,0 +1,38 @@
namespace Model
{
public class PrintModel
{
public int Number
{
get;
set;
}
public string Rolename
{
get;
set;
}
public string UserName
{
get;
set;
}
public string Image
{
get;
set;
}
public string ApproveIdea
{
get;
set;
}
public string ApproveDate
{
get;
set;
}
}
}
+14
View File
@@ -13,6 +13,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WebAPI", "WebAPI\WebAPI.csp
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FineUIPro.Mobile", "FineUIPro.Mobile\FineUIPro.Mobile.csproj", "{6FD4603B-1B6D-48AE-A1BD-7385495F81FD}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BLLTests", "BLLTests\BLLTests.csproj", "{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -77,6 +79,18 @@ Global
{6FD4603B-1B6D-48AE-A1BD-7385495F81FD}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{6FD4603B-1B6D-48AE-A1BD-7385495F81FD}.Release|x86.ActiveCfg = Release|Any CPU
{6FD4603B-1B6D-48AE-A1BD-7385495F81FD}.Release|x86.Build.0 = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|x86.ActiveCfg = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Debug|x86.Build.0 = Debug|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|Any CPU.Build.0 = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|x86.ActiveCfg = Release|Any CPU
{18AAB08A-2C8E-4EB8-AC43-725E0CA28C6B}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE