wtt
2024-12-20 fd2d833bf010d0be1bb308d9c431eee1dfd931ff
WebAPI/Controllers/ÏîÄ¿¹ÜÀí/¹¤³ÌÏîÄ¿/PM_ProjectBillController.cs
@@ -10,7 +10,7 @@
using System.Web.Http;
using System.Windows.Forms;
using WebAPI.Models;
using SyntacticSugar.constant;
namespace WebAPI.Controllers.项目管理.工程项目
{
    public class PM_ProjectBillController : ApiController
@@ -48,6 +48,7 @@
        public class PM_ProjectBill_Main
        {
            public int HInterID;
            public string HBillSubType;
            public string HBillNo;
            public string HProNumber;
            public string HProName;
@@ -125,6 +126,43 @@
            public double HYuShouKuanMoney;             //预收款
            public double HGongFeiMoney;                //工费结账
            public double HJieZhangMoney;            //结算结账
            public int HTaskClassID; //任务大类(Gy_TaskClass)
            public int HTaskClassEntryID; //任务项目分类(Gy_TaskClass)
            public string  HTaskAddress; //任务地点
            public string  HBreakStatus; //损坏情况
            public string  HWaterLeakage; //漏水量
            public string  HPipeDiameter; //管径
            public string  HPipeMaterial; //管道材质
            public string  HAlarmEmp; //报漏人
            public string  HAlarmLink; //报漏人联系电话
            public string  HReceEmp; //受理人
            public string  HReceTime; //受理时间(年月日时分秒)
            public double HTaskMaterMoney; //任务材料费
            public double HTaskSetupMoney; //任务安装费
            public double HTaskOtherMoney; //任务附属费
            public double HTaskExamMoney; //任务考核费
            public double HTaskWorkMoney; //任务工费
            public bool  HIsAccount; //是否结账(复选框)
            public string  HAccountDate; //结算结账日期
            public string  HAccountWorkMoneyDate; //工费结账日期
            public bool HIsCheckExam; //是否审核考核费(复选框)
            public bool HIsCheckWorkMoney; //是否审核工费(复选框)
            public string  HInfoBackTime; //回复时间(年月日时分秒)
            public string HInfoBackMan; //回复人
            public string HInfoNote; //回复内容(富文本)
            public string  HTaskBTime; //任务开始时间(年月日时分秒)
            public string  HTaskETime; //任务完工时间(年月日时分秒)
            public string  HTaskNote; //任务详细内容(富文本)
            public string  HTaskWorkEmp; //工作人员(富文本)
            public string  HBeginCloseValveTime; //开始关阀时间(年月日时分秒)
            public string  HEndCloseValveTime; //结束关阀时间(年月日时分秒)
            public long  HCloseValveQty; //关阀只数
            public string  HBeginOpenValveTime; //开始开阀时间(年月日时分秒)
            public string  HEndOpenValveTime; //结束开阀时间(年月日时分秒)
            public long HOpenValveQty; //开阀只数
            public string  HValveWorkEmp; //操作人员
            public string  HTaskRemark; //任务备注(富文本)
        }
        #endregion
@@ -240,7 +278,7 @@
                int HYear = int.Parse(mainList[0].HDate.Split('-')[0]);
                int HPeriod = int.Parse(mainList[0].HDate.Split('-')[1]);
                string HBillType = "4750";
                string HBillSubType = "";
                string HBillSubType = mainList[0].HBillSubType;
                int HInterID = mainList[0].HInterID;
                string HDate = mainList[0].HDate;
                string HBillNo = mainList[0].HBillNo;
@@ -306,6 +344,43 @@
                double HGongFeiMoney = mainList[0].HGongFeiMoney;               //工费结账
                double HJieZhangMoney = mainList[0].HJieZhangMoney;            //结算结账
                int HTaskClassID = mainList[0].HTaskClassID; //任务大类(Gy_TaskClass)
                int HTaskClassEntryID = mainList[0].HTaskClassEntryID; //任务项目分类(Gy_TaskClass)
                string HTaskAddress = mainList[0].HTaskAddress; //任务地点
                string HBreakStatus = mainList[0].HBreakStatus; //损坏情况
                string HWaterLeakage = mainList[0].HWaterLeakage; //漏水量
                string HPipeDiameter = mainList[0].HPipeDiameter; //管径
                string HPipeMaterial = mainList[0].HPipeMaterial; //管道材质
                string HAlarmEmp = mainList[0].HAlarmEmp; //报漏人
                string HAlarmLink = mainList[0].HAlarmLink; //报漏人联系电话
                string HReceEmp = mainList[0].HReceEmp; //受理人
                string HReceTime = mainList[0].HReceTime; //受理时间(年月日时分秒)
                double HTaskMaterMoney = mainList[0].HTaskMaterMoney; //任务材料费
                double HTaskSetupMoney = mainList[0].HTaskSetupMoney; //任务安装费
                double HTaskOtherMoney = mainList[0].HTaskOtherMoney; //任务附属费
                double HTaskExamMoney = mainList[0].HTaskExamMoney; //任务考核费
                double HTaskWorkMoney = mainList[0].HTaskWorkMoney; //任务工费
                bool HIsAccount = mainList[0].HIsAccount; //是否结账(复选框)
                string HAccountDate = mainList[0].HAccountDate; //结算结账日期
                string HAccountWorkMoneyDate = mainList[0].HAccountWorkMoneyDate; //工费结账日期
                bool HIsCheckExam = mainList[0].HIsCheckExam; //是否审核考核费(复选框)
                bool HIsCheckWorkMoney = mainList[0].HIsCheckWorkMoney; //是否审核工费(复选框)
                string HInfoBackTime = mainList[0].HInfoBackTime; //回复时间(年月日时分秒)
                string HInfoBackMan = mainList[0].HInfoBackMan; //回复人
                string HInfoNote = mainList[0].HInfoNote; //回复内容(富文本)
                string HTaskBTime = mainList[0].HTaskBTime; //任务开始时间(年月日时分秒)
                string HTaskETime = mainList[0].HTaskETime; //任务完工时间(年月日时分秒)
                string HTaskNote = mainList[0].HTaskNote; //任务详细内容(富文本)
                string HTaskWorkEmp = mainList[0].HTaskWorkEmp; //工作人员(富文本)
                string HBeginCloseValveTime = mainList[0].HBeginCloseValveTime; //开始关阀时间(年月日时分秒)
                string HEndCloseValveTime = mainList[0].HEndCloseValveTime; //结束关阀时间(年月日时分秒)
                long HCloseValveQty = mainList[0].HCloseValveQty; //关阀只数
                string HBeginOpenValveTime = mainList[0].HBeginOpenValveTime; //开始开阀时间(年月日时分秒)
                string HEndOpenValveTime = mainList[0].HEndOpenValveTime; //结束开阀时间(年月日时分秒)
                long HOpenValveQty = mainList[0].HOpenValveQty; //开阀只数
                string HValveWorkEmp = mainList[0].HValveWorkEmp; //操作人员
                string HTaskRemark = mainList[0].HTaskRemark; //任务备注(富文本)
                if (OperationType == 2)
                {
@@ -327,7 +402,8 @@
                    string sql = "insert into PM_ProjectBillMain" +
                        "(HYear,HPeriod,HBillType,HBillSubType,HInterID,HDate,HBillNo,HBillStatus,HRemark,HMaker,HMakeDate,HProNumber,HProName,HCusID,HBeginDate,HEndDate,HSumMoney," +
                        "HProMoney,HWorkMoney,HOtherMoney,HProType,HPMEmpID,HWorkEmpID,HDepEmpID,HConWorkDays,HDepDays,HLastMoney,HPayCusID,HOrgID,HMaterID,HProjectClassID,HBuildComp,HBuildAddress,HWorkNo,HReDate,HPicNo,HWorkTask,HProjectNote,HContacts,HContactNumber" +
                        ",HSupplierID,HMangerEmpID,HMaterPlanDate,HWorkerID,HPlanWorkTimes,HRelWorkTimes,HTestDate,HTestCheckerID,HTestNote,HSewageDate,HWaterSupplyDate,HWorkNote,HWorkProcNote,HYuSuanMoney,HHeTongMoney,HJieSuanMoney,HShenJiMoney,HCaiLiaoMoney,HAnZhuangMoney,HBanZuMoney,HYuShouKuanMoney,HGongFeiMoney,HJieZhangMoney) " +
                        ",HSupplierID,HMangerEmpID,HMaterPlanDate,HWorkerID,HPlanWorkTimes,HRelWorkTimes,HTestDate,HTestCheckerID,HTestNote,HSewageDate,HWaterSupplyDate,HWorkNote,HWorkProcNote,HYuSuanMoney,HHeTongMoney,HJieSuanMoney,HShenJiMoney,HCaiLiaoMoney,HAnZhuangMoney,HBanZuMoney,HYuShouKuanMoney,HGongFeiMoney,HJieZhangMoney," +
                        "HTaskClassID,HTaskClassEntryID,HTaskAddress,HBreakStatus,HWaterLeakage,HPipeDiameter,HPipeMaterial,HAlarmEmp,HAlarmLink,HReceEmp,HReceTime,HTaskMaterMoney,HTaskSetupMoney,HTaskOtherMoney,HTaskExamMoney,HTaskWorkMoney,HIsAccount,HAccountDate,HAccountWorkMoneyDate,HIsCheckExam,HIsCheckWorkMoney,HInfoBackTime,HInfoBackMan,HInfoNote,HTaskBTime,HTaskETime,HTaskNote,HTaskWorkEmp,HBeginCloseValveTime,HEndCloseValveTime,HCloseValveQty,HBeginOpenValveTime,HEndOpenValveTime,HOpenValveQty,HValveWorkEmp,HTaskRemark)" +
                        "values(" +
                        "" + HYear +
                        "," + HPeriod +
@@ -392,6 +468,12 @@
                        ",'" + HYuShouKuanMoney + "'" + 
                        ",'" + HGongFeiMoney + "'" + 
                        ",'" + HJieZhangMoney + "'" +
                        ",'" + HTaskClassID + "'" + ",'" + HTaskClassEntryID + "'" + ",'" + HTaskAddress + "'" + ",'" + HBreakStatus + "'" + ",'" + HWaterLeakage + "'" + ",'" + HPipeDiameter + "'" + ",'" + HPipeMaterial + "'" +
                        ",'" + HAlarmEmp + "'" +",'" + HAlarmLink + "'" + ",'" + HReceEmp + "'" + ",'" + HReceTime + "'" + ",'" + HTaskMaterMoney + "'" + ",'" + HTaskSetupMoney + "'" + ",'" + HTaskOtherMoney + "'" +
                        ",'" + HTaskExamMoney + "'" + ",'" + HTaskWorkMoney + "'" + ",'" + (HIsAccount?1:0) + "'" + ",'" + HAccountDate + "'" + ",'" + HAccountWorkMoneyDate + "'" + ",'" + (HIsCheckExam ? 1 : 0) + "'" +
                        ",'" + (HIsCheckWorkMoney ? 1 : 0) + "'" + ",'" + HInfoBackTime + "'" + ",'" + HInfoBackMan + "'" + ",'" + HInfoNote + "'" + ",'" + HTaskBTime + "'" +
                        ",'" + HTaskETime + "'" + ",'" + HTaskNote + "'" + ",'" + HTaskWorkEmp + "'" + ",'" + HBeginCloseValveTime + "'" + ",'" + HEndCloseValveTime + "'" +
                        ",'" + HCloseValveQty + "'" + ",'" + HBeginOpenValveTime + "'" + ",'" + HEndOpenValveTime + "'" + ",'" + HOpenValveQty + "'" + ",'" + HValveWorkEmp + "'" + ",'" + HTaskRemark + "'" +
                        ")";
                    //主表
@@ -402,14 +484,14 @@
                else if (OperationType == 3 || ds.Tables[0].Rows.Count != 0)                    //编辑
                {
                    string sql = "update PM_ProjectBillMain set " +
                        "HYear = " + HYear +
                        ",HPeriod = " + HPeriod +
                        ",HBillType = '" + HBillType +
                        "',HBillSubType = '" + HBillSubType +
                        "',HDate = '" + HDate +
                        "',HBillNo = '" + HBillNo +
                        "',HBillStatus = " + HBillStatus +
                        ",HRemark = '" + HRemark +
                        //"HYear = " + HYear +
                        //",HPeriod = " + HPeriod +
                        //",HBillType = '" + HBillType +
                        //"',HBillSubType = '" + HBillSubType +
                        //"',HDate = '" + HDate +
                        "HBillNo = '" + HBillNo +
                        //"',HBillStatus = " + HBillStatus +
                        "',HRemark = '" + HRemark +
                        "',HUpdater = '" + HUpdater +
                        "',HUpdateDate = '" + HUpdaterDate +
                        "',HProNumber = '" + HProNumber +
@@ -465,7 +547,12 @@
                        "',HYuShouKuanMoney = '" + HYuShouKuanMoney +
                        "',HGongFeiMoney = '" + HGongFeiMoney +
                        "',HJieZhangMoney = '" + HJieZhangMoney +
                        "',HTaskClassID = '" + HTaskClassID + "',HTaskClassEntryID = '" + HTaskClassEntryID + "',HTaskAddress = '" + HTaskAddress + "',HBreakStatus = '" + HBreakStatus + "',HWaterLeakage = '" + HWaterLeakage + "',HPipeDiameter = '" + HPipeDiameter +
                        "',HPipeMaterial = '" + HPipeMaterial + "',HAlarmEmp = '" + HAlarmEmp + "',HAlarmLink = '" + HAlarmLink + "',HReceEmp = '" + HReceEmp + "',HReceTime = '" + HReceTime + "',HTaskMaterMoney = '" + HTaskMaterMoney +
                        "',HTaskSetupMoney = '" + HTaskSetupMoney + "',HTaskOtherMoney = '" + HTaskOtherMoney + "',HTaskExamMoney = '" + HTaskExamMoney + "',HTaskWorkMoney = '" + HTaskWorkMoney + "',HIsAccount = '" + (HIsAccount?1:0) + "',HAccountDate = '" + HAccountDate +
                        "',HAccountWorkMoneyDate = '" + HAccountWorkMoneyDate + "',HIsCheckExam = '" + (HIsCheckExam?1:0) + "',HIsCheckWorkMoney = '" + (HIsCheckWorkMoney?1:0) + "',HInfoBackTime = '" + HInfoBackTime + "',HInfoBackMan = '" + HInfoBackMan + "',HInfoNote = '" + HInfoNote +
                        "',HTaskBTime = '" + HTaskBTime + "',HTaskETime = '" + HTaskETime + "',HTaskNote = '" + HTaskNote + "',HTaskWorkEmp = '" + HTaskWorkEmp + "',HBeginCloseValveTime = '" + HBeginCloseValveTime + "',HEndCloseValveTime = '" + HEndCloseValveTime +
                        "',HCloseValveQty = '" + HCloseValveQty + "',HBeginOpenValveTime = '" + HBeginOpenValveTime + "',HEndOpenValveTime = '" + HEndOpenValveTime + "',HOpenValveQty = '" + HOpenValveQty + "',HValveWorkEmp = '" + HValveWorkEmp + "',HTaskRemark = '" + HTaskRemark +
                        "' where HInterID = " + HInterID;
@@ -667,6 +754,62 @@
        }
        #endregion
        #region å·¥ç¨‹é¡¹ç›®åˆ†é¡µåˆ—表
        [Route("PM_ProjectBill/page")]
        [HttpGet]
        public object PM_ProjectBillPage(string sWhere, string user, int page, int size)
        {
            DataSet ds;
            try
            {
                List<object> columnNameList = new List<object>();
                //判断权限
                //if (!DBUtility.ClsPub.Security_Log("Cg_POInStockBillQuery", 1, false, user))
                //{
                //    objJsonResult.code = CodeConstant.FAIL;
                //    objJsonResult.count = CountConstant.FAIL;
                //    objJsonResult.Message = "您没有该模块权限,请与管理员联系!";
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("exec h_p_PM_ProjectBillList " + page + "," + size + ",''", "h_p_PM_ProjectBillList");
                }
                else
                {
                    sWhere = sWhere.Replace("'", "''");
                    ds = oCN.RunProcReturn("exec h_p_PM_ProjectBillList " + page + "," + size + ",'" + sWhere + "'", "h_p_PM_ProjectBillList");
                }
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = CodeConstant.SUCCEED;
                objJsonResult.count = int.Parse(ds.Tables[1].Rows[0]["count"].ToString());
                objJsonResult.Message = "Sucess!";
                objJsonResult.list = columnNameList;
                objJsonResult.data = ds.Tables[0];
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = CodeConstant.FAIL;
                objJsonResult.count = CountConstant.FAIL;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å·¥ç¨‹é¡¹ç›® ç¼–辑-页面赋值
        /// <summary>
        ///参数:string HInterID。