首頁>技術>

一、引言

在之前的專案中,需要增加一個swith開關來表明此訂單是否已下單,主要怕遺忘了,因此增加一個開關可以展示。

專案實際效果

二、前端部分1.html部分
</el-table-column>        <el-table-column              label="是否下單"              align="center"              width="80">          <template slot-scope="scope">            <el-switch              v-model="scope.row.complete"              active-color="#13ce66"              inactive-color="#B9B9B9"              @change="changeEnabledSwitch(scope.row)"/>          </template></el-table-column>
2.js部分
    // 是否下單的開關    changeEnabledSwitch (row) {      var _this = this      this.$axios.post('designNotice/updateComplete', {'id': row.id, 'complete': row.complete}).then(function (res) {        if (res.data.success === true) {          _this.$message({            type: 'success',            message: '更新成功!'          })        }      })    }
二、後端部分

notice表的擴充套件:1、增complete列;2、新建一個一對一的表。

透過專案的分析最終我選擇了1,增加complete列,增加列對其他業務無影響且業務邏輯簡明。

1、sql修改表notice,預設0為開關未開啟狀態,1為開關開啟狀態
alter table notice add complete int default '0';
2、修改Notice實體類,增加屬性complete
@Data@NoArgsConstructor@AllArgsConstructorpublic class Notice {    private int id;    private int mark;    private String note;    //工單是否已下單,0為未,1為已    private boolean complete;    @TableField("createDate")    private LocalDate createDate;    @TableField(value = "updateTime", fill = FieldFill.INSERT_UPDATE)    private LocalDateTime updateTime;    private int cid;    @TableField(exist = false)    private Customer customer;    @TableField(exist = false)    private Price priceInfo;}
3、控制器
@ApiOperation(value="更新是否下單開關")@PostMapping("/updateComplete")@ResponseBodypublic Result<Boolean> updateComplete(@RequestBody Map<String, Object> map) {    if (map.get("id") == null || map.get("complete") == null){        return Result.failure(501, "非法引數idORcomplete");    } else {        return Result.defaultSuccess(noticeService.updateComplete((int)map.get("id"),(boolean)map.get("complete")));    }}
4、業務程式碼
@Overridepublic Boolean updateComplete(int id, boolean complete) {    //查出id所在的通知單資訊    Notice notice = noticeMapper.selectById(id);    if (notice == null) {        return false;    }    //設定通知單的complete屬性    notice.setComplete(complete);    noticeMapper.updateById(notice);    return true;}

7
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 多使用者商城資料庫設計有哪些方式?