AdoptOrderInfo.php 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242
  1. <?php
  2. /**
  3. * 重庆赤晓店信息科技有限公司
  4. * https://www.chixiaodian.com
  5. * Copyright (c) 2023 赤店商城 All rights reserved.
  6. */
  7. namespace app\plugins\adopt\models;
  8. use yii\behaviors\TimestampBehavior;
  9. use yii\db\ActiveRecord;
  10. /**
  11. *
  12. * Class FoodCat
  13. * @package app\plugins\food\models
  14. * @property integer $id
  15. * @property integer $store_id
  16. * @property string $name
  17. * @property string $mobile
  18. * @property integer $order_id
  19. * @property integer $is_storage
  20. * @property integer $pick_method
  21. * @property integer $pick_time
  22. * @property integer $is_mature
  23. * @property integer $mature_time
  24. * @property integer $is_delete
  25. * @property string $created_at
  26. * @property string $updated_at
  27. * @property string $other_pick_fee
  28. * @property string $preserve_fee
  29. * @property integer $confirm_self_pick
  30. * @property integer $confirm_self_pick_time
  31. * @property integer $storage_time
  32. * @property integer $harvest_weight
  33. * @property string $harvest_storage_pic_url
  34. * @property string $book_self_pick_date
  35. * @property string $book_self_pick_time
  36. * @property integer $start_self_pick
  37. * @property integer $start_self_pick_time
  38. * @property integer $end_self_pick
  39. * @property integer $end_self_pick_time
  40. * @property integer $confirm_self_pick_book
  41. * @property integer $confirm_self_pick_book_time
  42. * @property integer $pick_treatment_method
  43. * @property integer $pick_treatment_method_time
  44. */
  45. class AdoptOrderInfo extends ActiveRecord
  46. {
  47. //认养状态 start
  48. /**
  49. * 订单流转状态:待成熟
  50. */
  51. const ORDER_FLOW_NO_MATURE = 0;
  52. /**
  53. * 订单流转状态:已成熟
  54. */
  55. const ORDER_FLOW_MATURE = 1;
  56. /**
  57. * 订单流转状态:待收取
  58. */
  59. const ORDER_FLOW_NO_PICK = 0;
  60. /**
  61. * 订单流转状态:自采
  62. */
  63. const ORDER_FLOW_SELF_PICK= 1;
  64. /**
  65. * 订单流转状态:代采
  66. */
  67. const ORDER_FLOW_OTHER_PICK= 2;
  68. /**
  69. * 订单流转状态:采摘带走
  70. */
  71. const ORDER_FLOW_NO_TREATMENT_METHOD= 0;
  72. /**
  73. * 订单流转状态:采摘带走
  74. */
  75. const ORDER_FLOW_PICK_TAKE= 1;
  76. /**
  77. * 订单流转状态:采摘入库
  78. */
  79. const ORDER_FLOW_PICK_STORAGE= 2;
  80. /**
  81. * 订单流转状态:待入库
  82. */
  83. const ORDER_FLOW_NO_STORAGE = 0;
  84. /**
  85. * 订单流转状态:已入库
  86. */
  87. const ORDER_FLOW_STORAGE = 1;
  88. /**
  89. * 订单流转状态:待保管
  90. */
  91. const ORDER_FLOW_WAIT_PRESERVE = 0;
  92. /**
  93. * 订单流转状态:不保管
  94. */
  95. const ORDER_FLOW_NO_PRESERVE = 1;
  96. /**
  97. * 订单流转状态:保管
  98. */
  99. const ORDER_FLOW_PRESERVE = 2;
  100. /**
  101. * 订单流转状态:待确认采摘完成
  102. */
  103. const ORDER_FLOW_NO_CONFIRM_SELF_PICK = 0;
  104. /**
  105. * 订单流转状态:确认采摘完成
  106. */
  107. const ORDER_FLOW_CONFIRM_SELF_PICK = 1;
  108. /**
  109. * 订单流转状态:待确认采摘预约
  110. */
  111. const ORDER_FLOW_NO_CONFIRM_SELF_PICK_BOOK = 0;
  112. /**
  113. * 订单流转状态:确认采摘预约
  114. */
  115. const ORDER_FLOW_CONFIRM_SELF_PICK_BOOK = 1;
  116. /**
  117. * 订单流转状态:待开始自采
  118. */
  119. const ORDER_FLOW_NO_CONFIRM_START_SELF_PICK = 0;
  120. /**
  121. * 订单流转状态:开始自采
  122. */
  123. const ORDER_FLOW_CONFIRM_START_SELF_PICK = 1;
  124. /**
  125. * 订单流转状态:待自采结束
  126. */
  127. const ORDER_FLOW_NO_CONFIRM_END_SELF_PICK = 0;
  128. /**
  129. * 订单流转状态:自采结束
  130. */
  131. const ORDER_FLOW_CONFIRM_END_SELF_PICK = 1;
  132. //认养状态 end
  133. public function behaviors()
  134. {
  135. return [
  136. [
  137. // 自动更新创建和更新时间
  138. 'class' => TimestampBehavior::class,
  139. 'value' => time()
  140. ]
  141. ];
  142. }
  143. public static function tableName()
  144. {
  145. return '{{%adopt_order_info}}';
  146. }
  147. public function rules()
  148. {
  149. return [
  150. [['store_id', 'name', 'mobile',], 'required'],
  151. [['store_id', 'created_at', 'updated_at', 'is_delete', 'order_id', 'is_storage', 'pick_method', 'pick_time', 'is_mature', 'mature_time',
  152. 'is_sms_mature','is_sms_storage','is_sms_preserve', 'confirm_self_pick', 'confirm_self_pick_time',
  153. 'storage_time', 'harvest_weight', 'confirm_self_pick_book', 'confirm_self_pick_book_time', 'start_self_pick', 'start_self_pick_time',
  154. 'end_self_pick', 'end_self_pick_time', 'pick_treatment_method', 'pick_treatment_method_time'], 'integer'],
  155. [['name', 'mobile', 'other_pick_fee', 'preserve_fee', 'harvest_storage_pic_url', 'book_self_pick_date', 'book_self_pick_time'], 'string'],
  156. [['name', 'mobile'], 'string', 'max' => 255],
  157. ];
  158. }
  159. public function attributeLabels()
  160. {
  161. return [
  162. 'id' => 'ID',
  163. 'store_id' => '商城id',
  164. 'name' => '认养人姓名',
  165. 'mobile' => '认养人手机号',
  166. 'order_id' => '关联订单id',
  167. 'is_storage' => '是否入库 0-否 1-是',
  168. 'pick_method' => '采摘方式 1-自采带走 2-代采 3-自采入库',
  169. 'pick_time' => '采摘时间',
  170. 'pick_treatment_method' => '采摘处理方式 0未处理 1-带走 2- 入库',
  171. 'pick_treatment_method_time' => '采摘处理时间',
  172. 'is_mature' => '是否成熟 0-否 1-是',
  173. 'mature_time' => '成熟时间',
  174. 'confirm_self_pick' => '确认自采完成',
  175. 'confirm_self_pick_time' => '确认自采完成时间',
  176. 'created_at' => '创建时间',
  177. 'updated_at' => '更新时间',
  178. 'is_delete' => 'Is Delete',
  179. 'other_pick_fee' => '代采费用',
  180. 'preserve_fee' => '保管费用',
  181. 'is_sms_mature' => '未选择采摘超时提醒短信',
  182. 'is_sms_storage' => '未选择保管超时提醒短信',
  183. 'is_sms_free_preserve' => '免费保管提醒短信',
  184. 'harvest_storage_pic_url' => '收获入库图片',
  185. 'storage_time' => '收获入库时间',
  186. 'harvest_weight' => '收获入库重量',
  187. 'book_self_pick_date' => '预约自采日期',
  188. 'book_self_pick_time' => '预约自采时间',
  189. 'confirm_self_pick_book' => '确认自采预约',
  190. 'confirm_self_pick_book_time' => '确认自采预约时间',
  191. 'start_self_pick' => '开始自采',
  192. 'start_self_pick_time' => '开始自采时间',
  193. 'end_self_pick' => '结束自采',
  194. 'end_self_pick_time' => '结束自采时间',
  195. ];
  196. }
  197. public function afterSave($insert, $changedAttributes)
  198. {
  199. parent::afterSave($insert, $changedAttributes);
  200. if(isset($changedAttributes['is_mature']) && $this->is_mature == AdoptOrderInfo::ORDER_FLOW_MATURE){
  201. (new \app\utils\OrderUtil())->AdoptOrderMature($this);
  202. }
  203. if(isset($changedAttributes['is_mature']) && $this->is_mature == AdoptOrderInfo::ORDER_FLOW_MATURE){
  204. (new \app\utils\OrderUtil())->AdoptOrderMatureTips($this);
  205. }
  206. if(isset($changedAttributes['is_storage']) && $this->is_storage == AdoptOrderInfo::ORDER_FLOW_STORAGE){
  207. (new \app\utils\OrderUtil())->AdoptOrderStorage($this);
  208. }
  209. if(isset($changedAttributes['is_storage']) && $this->is_storage == AdoptOrderInfo::ORDER_FLOW_STORAGE){
  210. (new \app\utils\OrderUtil())->AdoptOrderStorageTips($this);
  211. }
  212. if(isset($changedAttributes['is_preserve']) && $this->is_preserve == AdoptOrderInfo::ORDER_FLOW_PRESERVE){
  213. (new \app\utils\OrderUtil())->AdoptOrderBillingStart($this);
  214. }
  215. if(isset($changedAttributes['is_preserve']) && $this->is_preserve == AdoptOrderInfo::ORDER_FLOW_PRESERVE){
  216. (new \app\utils\OrderUtil())->AdoptOrderBillingTips($this);
  217. }
  218. }
  219. }