服务端的TigerApi 框架,基于.NET6 2024 版本
Rodney Chen
2024-05-30 1ae7b5a517aaa0f3a45f0b31b0c5173c35558318
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
using Tiger.Model;
using SqlSugar;
using System;
using System.Collections.Generic;
using System.Linq.Expressions;
using System.Text;
using System.Threading.Tasks;
using Rhea.Common;
using System.Net;
using System.Linq;
using Newtonsoft.Json;
using Tiger.IBusiness;
using static Tiger.Business.Biz;
using Microsoft.AspNetCore.Http;
 
namespace Tiger.Business.MES
{
    public partial class BizMesWo : IBIZ_MES_WO
    {
        /// <summary>
        /// 保存
        /// </summary>
        /// <param name="wo"></param>
        /// <returns></returns>
        public async Task<ApiAction> SaveMesWo(BIZ_MES_WO wo)
        {
            var result = new ApiAction();
            try
            {
                var _wo = Db.Queryable<BIZ_MES_WO>().Where(x => x.ORDER_NO == wo.ORDER_NO).First();
                if (_wo != null && _wo.STATUS != (int)BIZ_MES_WO.STATUSs.Init)
                {
                    result.IsSuccessed = false;
                    result.LocaleMsg = new($"工单已经存在且不是初始化状态,不能保存修改!");
                    return result;
                }
                var db = Db;
                var dbTran = db.UseTran(() =>
                {
                    var y = db.Storageable(wo)
                       .WhereColumns(t => new { t.ORDER_NO, t.GHOST_ROW })
                       .ToStorage();
                    y.AsInsertable.ExecuteCommand();
                    y.AsUpdateable.IgnoreColumns(x => x.ID).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
                    result.IsSuccessed = false;
                    result.Message = $"保存工单异常";
                }
            }
            catch (Exception ex)
            {
                result.CatchExceptionWithLog(ex, "保存工单异常");
            }
            return await Task.FromResult(result);
        }
 
        /// <summary>
        /// 删除工单
        /// </summary>
        /// <param name="woId"></param>
        /// <returns></returns>
        public async Task<ApiAction> DeleteMesWo(string woId)
        {
            var result = new ApiAction();
            try
            {
                //查询是否已经有工单在用
                var _wo = Db.Queryable<BIZ_MES_WO>().Where(x => x.ID == woId).First();
                if (_wo != null && _wo.STATUS != (int)BIZ_MES_WO.STATUSs.Init)
                {
                    result.IsSuccessed = false;
                    result.LocaleMsg = new($"工单不是初始化状态,不能删除!");
                    return result;
                }
                var db = Db;
                var dbTran = db.UseTran(() =>
                {
                    db.Deleteable<BIZ_MES_WO>().Where(x => x.ID == woId).ExecuteCommand();
                });
                if (!dbTran.IsSuccess)
                {
                    result.IsSuccessed = false;
                    result.LocaleMsg = new($"删除工单异常");
                }
            }
            catch (Exception ex)
            {
                result.CatchExceptionWithLog(ex, "删除工单异常");
            }
            return await Task.FromResult(result);
        }
    }
}