Commit 4862a8572440d23c6353c9e5b018a20e4660890d

Authored by guzijian
1 parent 395a7a30

feat: 校验规则

src/views/scheduling/scheduling/index.vue
... ... @@ -358,7 +358,11 @@ function handleAdd() {
358 358 /** 修改按钮操作 */
359 359 function handleUpdate(row) {
360 360 reset();
361   - const _id = row.id || ids.value
  361 + const _id = getIds(row);
  362 + // const _ids = row ? row.id : ids.value;
  363 + if (!validIds(_id)) {
  364 + return;
  365 + }
362 366 getScheduling(_id).then(response => {
363 367 form.value = response.data;
364 368 open.value = true;
... ... @@ -366,11 +370,35 @@ function handleUpdate(row) {
366 370 });
367 371 }
368 372  
  373 +/**
  374 + * 验证id
  375 + * @param {*} ids
  376 + */
  377 +function validIds(ids) {
  378 + console.log("validIds", ids);
  379 + if (!(ids instanceof Array)) {
  380 + ids = [ids];
  381 + console.log('array', ids);
  382 + }
  383 + console.log(ids);
  384 + for (let i = 0; i < ids.length; i++) {
  385 + if (ids[i] === 0) {
  386 + proxy.$modal.msgError("不允许对系统默认的排班规则进行修改");
  387 + return false;
  388 + }
  389 + }
  390 + return true;
  391 +
  392 +}
  393 +
369 394 /** 提交按钮 */
370 395 function submitForm() {
371 396 proxy.$refs["schedulingRef"].validate(valid => {
372 397 if (valid) {
373 398 if (form.value.id != null) {
  399 + if (!validIds([form.value.id])) {
  400 + return;
  401 + }
374 402 updateScheduling(form.value).then(response => {
375 403 proxy.$modal.msgSuccess("修改成功");
376 404 open.value = false;
... ... @@ -389,11 +417,12 @@ function submitForm() {
389 417  
390 418 /** 删除按钮操作 */
391 419 function handleDelete(row) {
392   -
393   - // proxy.$modal.msgSuccess("规则删除暂时停用防止误操作");
394   - console.log(row);
395   - const deletePrompt = row.ruleName ? "是否确认删除规则名称为" + row.ruleName + "的数据项?" : "是否确认该规则?";
396   - const _ids = row.id || ids.value;
  420 + const deletePrompt = row.ruleName ? "是否确认删除规则名称为" + row.ruleName + "的数据项?" : "是否确认删除该规则?";
  421 + const _ids = getIds(row);
  422 + console.log("handleDelete", ids.value);
  423 + if (!validIds(_ids)) {
  424 + return;
  425 + }
397 426 proxy.$modal.confirm(deletePrompt).then(function () {
398 427 return delScheduling(_ids);
399 428 }).then(() => {
... ... @@ -402,7 +431,6 @@ function handleDelete(row) {
402 431 }).catch(() => { });
403 432  
404 433 }
405   -
406 434 /** 导出按钮操作 */
407 435 function handleExport() {
408 436 proxy.download('scheduling/scheduling/export', {
... ... @@ -410,5 +438,12 @@ function handleExport() {
410 438 }, `scheduling_${new Date().getTime()}.xlsx`)
411 439 }
412 440  
  441 +function getIds(row) {
  442 + if (row && row.ruleName) {
  443 + return row.id;
  444 + } else {
  445 + return ids.value;
  446 + }
  447 +}
413 448 getList();
414 449 </script>
... ...