Skip to content

采购过滤

添加下单时间, 收货时间
运营周期搜索改逻辑

数据库调整

CREATE TABLE `tbl_purchase_task_new` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `station_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `order_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `spu_id` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `sku_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `sale_sku_id` varchar(20) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `status` int(11) NOT NULL,
  `release_id` int(11) NOT NULL DEFAULT '0',
  `plan_amount` float NOT NULL,
  `purchase_amount` float NOT NULL DEFAULT '0',
  `create_time` datetime NOT NULL,
  `modify_time` datetime NOT NULL,
  `release_time` datetime DEFAULT NULL,

  - `price` int(11) DEFAULT NULL,  # 废弃 采购价永远实时,保留双写,方便回滚

  `purchase_sheet_id` varchar(64) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `settle_supplier_id` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `address_id` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `res_name` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `sale_unit_name` varchar(16) COLLATE utf8mb4_unicode_ci DEFAULT '',
  `std_unit_name` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `sale_ratio` float NOT NULL,
  `sku_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `spu_name` varchar(64) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  `remark` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `purchaser_id` int(11) DEFAULT NULL,
  `time_config_id` varchar(16) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',

  - `cycle_start_time` datetime NOT NULL,  # 这个字段就废弃了,但是应该还是要往里面写数据,方便回滚

  + `order_time` datetime  # 下单时间
  + `receive_begin_time` datetime  # 收货开始时间
  + `receive_end_time` datetime  # 收货截止时间

  `extra_1` int(11) DEFAULT NULL,
  `extra_2` varchar(128) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `extra_3` tinyint(4) NOT NULL,
  PRIMARY KEY (`id`),
) ENGINE=InnoDB AUTO_INCREMENT=9827060 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

索引相应的也要改,具体后续整理

脚本&接口

1. 一个刷数据脚本,刷数据库新加的字段数据
2. /station/task/purchase/search 搜索任务接口
3. /station/task/purchase/print 打印任务接口
4. /station/task/purchase/export 导出任务接口
5. /station/task/purchase/suppliers/summary 供应商统计接口
6. /station/task/purchase/release 发布任务接口
7. /station/task/purchase/create_sheet 生成采购单接口
7. /station/task/purchase/item 采购条目接口

    1. 添加q_type int 参数(1:下单日期,2:运营周期,3:收货时间)必传
    2. 废弃cycle_start_time参数
    3. 添加begin_time, end_time两个参数,均为datetime格式,必传
    4. time_config_id 变为可选

8. /station/task/purchase/create 生成采购任务接口

    1. cycle_start_time参数 改成可选

8. /station/task/purchase/history 采购历史接口

    1. 只需要传release_id这一个必传字段,其他字段都废除

9. 采购任务脚本逻辑修改,去掉计算周期的逻辑
10. app侧改动,这期不改
11. 批量修改采购单的接口沿用目前app的批量修改接口,提交的时候也要保存的功能由前端先请求修改接口,再请求提交接口来实现

    /purchase_assistant/purchase_sheet_modify/
    Method
        POST
    请求
        purchase_sheet_id   M   采购单id
        settle_supplier_id     M  供应商ID
        details: [
                {
                    "id": O     详情ID
                    "spec_id"   M   规格ID
                    "purchase_price"  M   采购价格
                    "purchase_amount"     M   采购数量,
                }
            ]

    响应
        code    M   int     返回码,0表示成功,其他表示错误
        msg     M   string  错误信息
        data    M   string  返回json数据


后台开发两到三天,联调一天

参考价

具体列如下

1. 商品库索引
    - 最近询价
    - 最近采购价
    - 最近入库价
    - 库存均价

2. 采购任务
    - 最近询价
    - 最近采购价
    - 最近入库价
    - 库存均价

3. 采购单
    - 最近询价
    - 最近采购价
    - 最近入库价
    - 库存均价

默认值询价

数据库

1. station表

    加个字段
    1. ref_price_type int (1最近询价, 2最近采购价, 3最近入库价, 4库存均价)

2. purchase_specification 表

    加三个字段

    last_qoute_price float 最近询价
    last_purchase_price float 最近采购价
    last_in_stock_price float 最近入库价

3. purchase_sku_log 表

    已提交状态下的多这四个字段

    last_qoute_price float 最近询价
    last_purchase_price float 最近采购价
    last_in_stock_price float 最近入库价
    stock_avg_price float 库存均价

4. purchase_sheet 表

    已提交状态下的加一个字段
    ref_price_type int 参考价类型

脚本&接口

1. 刷station的sale_ref_price和purchase_ref_price字段默认值的脚本
2. 刷purchase_specification和purchase_sku_log加多字段的脚本
3. merchandise/spu/index 商品库索引
4. product/sku_salemenu/list 出售商品(导出)
5. /station/task/purchase/search 搜索任务接口
6. /station/task/purchase/print 打印任务接口
7. /station/task/purchase/export 导出任务接口

    返回加四个字段
    last_qoute_price int 最近询价
    last_purchase_price int 最近采购价
    last_in_stock_price int 最近入库价
    stock_avg_price int 库存均价

5. /product/sku_spec/list 商品页采购规格

    返回加四个字段
    last_qoute_price int 最近询价
    last_purchase_price int 最近采购价
    last_in_stock_price int 最近入库价
    stock_avg_price int 库存均价
    去掉std_price这个返回字段

6. /station/stock/purchase_sheet/details 采购单详情

    tasks列表下返回加5个字段
    last_qoute_price int M 最近询价
    last_purchase_price int M 最近采购价
    last_in_stock_price int M 最近入库价
    stock_avg_price int M 库存均价

    data下返回加1个字段
    ref_price_type int O 参考价类型(已提交状态的采购单传)

7. /station/stock/purchase_sheet/submit 提交采购单接口

    逻辑修改,加写入参考价快照逻辑

8. 设置参考价类型 /station/ref_price_type/set (新)

    Method
        POST
    请求
        type    M   int 类型(1最近询价, 2最近采购价, 3最近入库价, 4库存均价)
        where   M   int 设置哪个接口(1商品库, 2采购任务, 3采购单)
    响应
        code    M   int     返回码,0表示成功,其他表示错误
        msg     M   string  错误信息
        data    M   string  返回json数据

9. 获取参考价类型 /station/ref_price_type/get (新)

    Method
        GET
    请求
        where   M   int 设置哪个接口(1商品库, 2采购任务, 3采购单)
    响应
        code    M   int     返回码,0表示成功,其他表示错误
        msg     M   string  错误信息
        data    M   string  返回json数据

        {
            "type"    M   int  类型(1最近询价, 2最近采购价, 3最近入库价, 4库存均价)
        }

后台开发7天,联调2~3天