diff --git a/src/views/modules/communityService/dqfwzx/cpts/edit.vue b/src/views/modules/communityService/dqfwzx/cpts/edit.vue
index 74772f22..90ebcff9 100644
--- a/src/views/modules/communityService/dqfwzx/cpts/edit.vue
+++ b/src/views/modules/communityService/dqfwzx/cpts/edit.vue
@@ -173,67 +173,95 @@
:key="'staff' + index"
v-for="(item, index) in dataForm.matterList"
>
-
-
-
-
+
+
+
-
-
-
-
-
- 至
-
-
-
- 删除
+
+
+
+
+
+
+ 至
+
+
+
+
+
+
+
+
+
+
(事项封面,图片小于1M)
+
+
删除
+
- 添加
+ 添加
@@ -266,6 +294,9 @@ let loading; // 加载动画
export default {
data() {
return {
+ uploadUlr: window.SITE_CONFIG["apiURL"] + "/oss/file/uploadqrcodeV2",
+ customerId: "",
+
formType: "add", //表单操作类型 add新增,edit编辑,detail详情
btnDisable: false,
@@ -342,14 +373,39 @@ export default {
watch: {},
async mounted() {
+ this.customerId = localStorage.getItem("customerId");
this.initMap();
},
methods: {
+ handleImgSuccess(index, res, file) {
+ if (res.code === 0 && res.msg === "success") {
+ console.log("res.data.url", res.data.url);
+ this.dataForm.matterList[index].matterImg = res.data.url;
+ } else {
+ this.$message.error(res.msg);
+ }
+ },
+
+ beforeImgUpload(file) {
+ const isLt1M = file.size / 1024 / 1024 < 1;
+
+ if (!isLt1M) {
+ this.$message.error("上传图片大小不能超过 1MB!");
+ }
+ return isLt1M;
+ },
+
handleAddStaff() {
this.dataForm.matterList = [
...this.dataForm.matterList,
- { matterName: "", appointmentType: "", startTime: "", endTime: "" },
+ {
+ matterName: "",
+ appointmentType: "",
+ matterImg: "",
+ startTime: "",
+ endTime: "",
+ },
];
},
handleDelStaff(index) {
@@ -482,9 +538,28 @@ export default {
this.dataForm.partyServiceCenterId = this.partyServiceCenterId;
}
+ const matterList = this.dataForm.matterList.filter(
+ (item) => !item.matterId
+ );
+ if (
+ matterList.some(
+ (item) =>
+ !item.matterImg ||
+ !item.matterName ||
+ !item.appointmentType ||
+ !item.startTime ||
+ !item.endTime
+ )
+ ) {
+ return this.$message({
+ type: "warning",
+ message: "请补充完整可预约事项信息",
+ });
+ }
+
const { data, code, msg } = await requestPost(url, {
...this.dataForm,
- matterList: this.dataForm.matterList.filter((item) => !item.matterId),
+ matterList,
});
if (code === 0) {
@@ -580,9 +655,48 @@ export default {
width: 650px;
.item {
- display: flex;
- justify-content: space-around;
- margin-bottom: 7px;
+ .item-info {
+ display: flex;
+ justify-content: space-around;
+ margin-bottom: 7px;
+ }
+ .item-pic {
+ display: flex;
+ align-items: center;
+ .hint {
+ font-size: 14px;
+ color: #999999;
+ margin-left: 10px;
+ }
+ .avatar-uploader {
+ ::v-deep .el-upload {
+ cursor: pointer;
+ position: relative;
+ overflow: hidden;
+ }
+ img {
+ object-fit: cover;
+ }
+ .el-upload:hover {
+ border-color: #409eff;
+ }
+ .avatar {
+ width: 50px;
+ height: 50px;
+ display: block;
+ }
+ .avatar-uploader-icon {
+ border: 1px dashed #d9d9d9;
+ border-radius: 6px;
+ font-size: 28px;
+ color: #8c939d;
+ width: 50px;
+ height: 50px;
+ line-height: 50px;
+ text-align: center;
+ }
+ }
+ }
}
.item-add {
}
diff --git a/src/views/modules/communityService/dqfwzx/cpts/order.vue b/src/views/modules/communityService/dqfwzx/cpts/order.vue
index 6452dc55..501266fd 100644
--- a/src/views/modules/communityService/dqfwzx/cpts/order.vue
+++ b/src/views/modules/communityService/dqfwzx/cpts/order.vue
@@ -31,13 +31,22 @@
label-width="150px"
style="display: block"
>
-
-
+ -->
+
+
+
-
+
{{ item.time }}
-
+
item.selected);
+ let endIndex = list.findIndex((item, index) => {
+ return (
+ item.selected &&
+ (index == list.length - 1 || !list[index + 1].selected)
+ );
+ });
+ // console.log(startIndex, endIndex);
+ if (startIndex == -1) {
+ list[index].selected = !list[index].selected;
+ } else if (startIndex == endIndex) {
+ let big = Math.max(startIndex, index);
+ let little = Math.min(startIndex, index);
+ if (big == little) {
+ list[index].selected = !list[index].selected;
+ } else {
+ for (let i = little; i <= big; i++) {
+ // console.log(i);
+ if (!list[i].isAppointment) {
+ this.$message({
+ type: "warning",
+ message: "请选择连续的时间",
+ });
+ return false;
+ }
+ list[i].selected = true;
+ }
+ }
+ } else {
+ if (index == startIndex || index == endIndex) {
+ list[index].selected = !list[index].selected;
+ } else if (list[index].selected) {
+ let big = index;
+ let little = index;
+ if (startIndex - index < index - endIndex) {
+ big = endIndex;
+ } else {
+ little = startIndex;
+ }
+ for (let i = little; i <= big; i++) {
+ list[i].selected = false;
+ }
+ } else {
+ let big = index;
+ let little = index;
+ if (index < startIndex) {
+ big = startIndex;
+ } else {
+ little = endIndex;
+ }
+ for (let i = little; i <= big; i++) {
+ // console.log(i);
+ if (!list[i].isAppointment) {
+ this.$message({
+ type: "warning",
+ message: "请选择连续的时间",
+ });
+ return false;
+ }
+ list[i].selected = true;
+ }
+ }
+ }
+ console.log(list);
+ this.timeList = list;
+ return false;
+ },
+
+ async getDateList() {
+ let url = "/gov/org/icpartyservicecenter/appointmenttime";
+
+ const {
+ dataForm: { matterId },
+ } = this;
+ if (!matterId) return;
+
+ const { data, code, msg } = await requestPost(url, {
+ matterId,
+ date: dateFormat(new Date(), "yyyy-MM-dd"),
+ });
+
+ if (code === 0) {
+ this.dateList = data.dateList || [];
+ // this.dataForm.appointmentDate = data.dateList[0];
+ } else {
}
},
@@ -219,8 +332,11 @@ export default {
});
if (code === 0) {
- this.timeList = data.timeDetail || [];
- } else {
+ let timeList = data.timeDetail || [];
+ this.timeList = timeList.map((item) => {
+ item.selected = false;
+ return item;
+ });
}
},