ch
2022-01-10 eb38ca9a6cd3fab7e857b0cc654f01a26d24f725
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
using Newtonsoft.Json;
using Newtonsoft.Json.Converters;
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Http;
using WebAPI.Models;
 
namespace WebAPI.Controllers.仓存管理.条码出入库记录
{
    public class Kf_ICStockInOutBillController : ApiController
    {
        public DBUtility.ClsPub.Enum_BillStatus BillStatus;//单据状态(新增,修改,浏览,更新单价,变更)
 
        private json objJsonResult = new json();
        public DataSet ds = new DataSet();
        SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
 
        //存储过程 数据 类
        public class Data
        {
            public Data()
            {
                HStartDate = DateTime.Now.AddMonths(-1);
                HEndDate = DateTime.Now;
                BillType = "全部";
            }
            public DateTime HStartDate;//开始日期
            public DateTime HEndDate;//结束日期
            public string MaterialName;//物料
            public string sWH;//仓库
            public string sSP;//仓位
            public string sBatchNo;//批号
            public string HBarCode;//条形码
            public string BillType;//单据类型
            public string BillNo;//单据号
            public string SeOrderBillNo;//(销售订单号)
        }
 
        #region 出入库记录查询
        [Route("Kf_ICStockInOutBill/StockInOutBillList")]
        [HttpGet]
        public object StockInOutBillList(string sWhere)
        {
            List<object> columnNameList = new List<object>();
            try
            {
                var data = JsonConvert.DeserializeObject<Data>(sWhere);
 
                ds = oCN.RunProcReturn("exec h_p_Kf_BarCodeOutInReport '" +
                    data.HStartDate + "','" + data.HEndDate + "','" + data.MaterialName + "','" + data.sWH + "','" + data.sSP + "','" + data.sBatchNo + "','" + data.HBarCode + "','" + data.BillType + "','" + data.BillNo + "','" + data.SeOrderBillNo
                    + "'", "h_p_Kf_BarCodeOutInReport");
 
                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列对象的列名
                }
 
                if (ds.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "1";
                    objJsonResult.count = ds.Tables[0].Rows.Count;
                    objJsonResult.Message = "获取资源绑定数据成功!";
                    objJsonResult.data = JsonConvert.DeserializeObject<DataTable>(JsonConvert.SerializeObject(ds.Tables[0], new IsoDateTimeConverter { DateTimeFormat = "yyyy-MM-dd HH:mm:ss" }));  //序列化DataSet中的时间格式,然后再反序列化回来
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "暂无资源绑定!";
                    objJsonResult.data = null;
                    objJsonResult.list = columnNameList;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
 
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = e.Message.ToString();
                objJsonResult.data = null;
                objJsonResult.list = columnNameList;
            }
            return objJsonResult;
        }
        #endregion
    }
}