You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET Core MVC采购申请分配时设置AssignedDate为当前时间

没问题,这个需求完全清晰——就是要在经理完成采购请求分配的那一刻,把原本的创建日期替换成当时的系统时间,而不是固定死某个时刻对吧?下面给你具体的实现方案,分代码和低代码两种常见场景来说:

1. 代码开发场景(以.NET为例)

如果你的系统是自定义开发的,核心就是在分配动作触发的方法里,同步更新日期字段:

关键步骤

  • 定位分配触发点:找到处理“分配采购请求”的方法/接口(比如按钮点击对应的后端逻辑、API接口)
  • 在分配逻辑执行时,将原创建日期字段设置为DateTime.Now(如果需要UTC时间就用DateTime.UtcNow)
  • 保存更新到数据库

代码示例

// 假设这是处理分配请求的后端方法
public async Task AssignPurchaseRequestAsync(int requestId, string assigneeId)
{
    // 1. 查询目标采购请求
    var request = await _dbContext.PurchaseRequests.FindAsync(requestId);
    if (request == null)
    {
        throw new InvalidOperationException("未找到指定的采购请求");
    }

    // 2. 执行分配操作
    request.AssigneeId = assigneeId;
    request.Status = "已分配";

    // 3. 替换创建日期为当前分配时间
    request.CreatedDate = DateTime.Now; 
    // 若需UTC时间:request.CreatedDate = DateTime.UtcNow;

    // 4. 保存变更
    await _dbContext.SaveChangesAsync();
}
2. 低代码/工作流场景(比如Power Automate、SharePoint)

如果用的是低代码平台或工作流工具,操作更简单:

  • 在工作流中找到“分配采购请求”的步骤
  • 添加一个更新字段的动作,选择“创建日期”字段,将其值设置为工具内置的「当前日期时间」变量(不同工具命名可能略有差异,但都会提供这个选项)
  • 确保这个更新动作和分配动作是同步执行的
额外建议

为了避免后续业务溯源出现问题,建议新增一个OriginalCreatedDate字段,专门存储最初的创建时间,只把CreatedDate替换为分配时间——这样既满足当前需求,又不会丢失原始数据。

内容的提问来源于stack exchange,提问作者codeWheels

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:08:46