xiaohaizhao 2 miesięcy temu
rodzic
commit
5e61fbdb1d

+ 2 - 2
E-service/serviceImprovement/analysis/change.js

@@ -60,12 +60,12 @@ Page({
     sa_service_improvementid: 0
     sa_service_improvementid: 0
   },
   },
   onLoad(options) {
   onLoad(options) {
-    getApp().globalData.Language.getLanguagePackage(this, '确认信息');
+    getApp().globalData.Language.getLanguagePackage(this, '真因分析');
     let form = this.data.form,
     let form = this.data.form,
       data = getCurrentPages().find(v => v.__route__ == 'E-service/serviceImprovement/detail').data.detail;
       data = getCurrentPages().find(v => v.__route__ == 'E-service/serviceImprovement/detail').data.detail;
     console.log(data)
     console.log(data)
     if (data.userid_charge) {
     if (data.userid_charge) {
-      data.userid_charge = [3232, [data.userid_charge]]
+      data.userid_charge = [data.name_charge, [data.userid_charge]]
       data.departmentid = data.departmentid ? [data.depname_charge, [data.departmentid]] : ''
       data.departmentid = data.departmentid ? [data.depname_charge, [data.departmentid]] : ''
 
 
       form.splice(1, 0, {
       form.splice(1, 0, {

+ 1 - 1
E-service/serviceImprovement/detail.js

@@ -81,7 +81,7 @@ Page({
       value: res.data.class2
       value: res.data.class2
     }, {
     }, {
       label: "分析负责人",
       label: "分析负责人",
-      value: res.data.name_analysis
+      value: res.data.name_charge
     }, {
     }, {
       label: "责任部门",
       label: "责任部门",
       value: res.data.depname_charge
       value: res.data.depname_charge

+ 3 - 3
E-service/serviceImprovement/detail.wxml

@@ -20,7 +20,7 @@
 	</view>
 	</view>
 	<view class="row">
 	<view class="row">
 		<view class="label">{{language['分析负责人']||'分析负责人'}}</view>
 		<view class="label">{{language['分析负责人']||'分析负责人'}}</view>
-		<view class="value">{{language[detail.name_analysis]||detail.name_analysis ||'--'}}</view>
+		<view class="value">{{language[detail.name_charge]||detail.name_charge ||'--'}}</view>
 	</view>
 	</view>
 	<view class="row">
 	<view class="row">
 		<view class="label">{{language['责任部门']||'责任部门'}}</view>
 		<view class="label">{{language['责任部门']||'责任部门'}}</view>
@@ -44,8 +44,8 @@
 	<Preview slot='改善单信息' list1='{{list1}}' list2='{{list2}}' />
 	<Preview slot='改善单信息' list1='{{list1}}' list2='{{list2}}' />
 	<Improvement id="Improvement" slot='关联改善单' />
 	<Improvement id="Improvement" slot='关联改善单' />
 	<Product id="Product" slot='影响产品范围' />
 	<Product id="Product" slot='影响产品范围' />
-	<Analysis detail='{{detail}}' id="Analysis" slot='真因分析' />
-	<Scheme id="Scheme" slot='改善方案' />
+	<Analysis detail='{{detail}}' id="Analysis" slot='真因分析' disabled="{{detail.status != '新建'}}" />
+	<Scheme id="Scheme" slot='改善方案' departmentid='{{detail.departmentid}}' sa_service_improvementid="{{detail.sa_service_improvementid}}" />
 	<view style="height: 180rpx;" />
 	<view style="height: 180rpx;" />
 </Yl_FunTabs>
 </Yl_FunTabs>
 
 

+ 1 - 1
E-service/serviceImprovement/index.wxml

@@ -14,7 +14,7 @@
 		</view>
 		</view>
 		<view class="address">{{language['改善单号']||'改善单号'}}:{{item.billno}}</view>
 		<view class="address">{{language['改善单号']||'改善单号'}}:{{item.billno}}</view>
 		<view class="row">{{language['客诉大类']||'客诉大类'}}:{{language[item.class2]||item.class2 || '--'}}</view>
 		<view class="row">{{language['客诉大类']||'客诉大类'}}:{{language[item.class2]||item.class2 || '--'}}</view>
-		<view class="row">{{language['分析负责人']||'分析负责人'}}:{{item.name_analysis}}</view>
+		<view class="row">{{language['分析负责人']||'分析负责人'}}:{{item.name_charge || '--'}}</view>
 		<view class="row">{{language['负责部门']||'负责部门'}}:{{language[item.depname_charge]||item.depname_charge||'--'}}</view>
 		<view class="row">{{language['负责部门']||'负责部门'}}:{{language[item.depname_charge]||item.depname_charge||'--'}}</view>
 		<view class="row">{{language['改善计划周期']||'改善计划周期'}}:{{item.planned_days}}{{language['天']||'天'}}</view>
 		<view class="row">{{language['改善计划周期']||'改善计划周期'}}:{{item.planned_days}}{{language['天']||'天'}}</view>
 		<view class="row">{{language['改善方案进度']||'改善方案进度'}}:{{item.progress}}%</view>
 		<view class="row">{{language['改善方案进度']||'改善方案进度'}}:{{item.progress}}%</view>

+ 39 - 49
E-service/serviceImprovement/scheme/index.js

@@ -5,6 +5,12 @@ Component({
     disabled: {
     disabled: {
       type: Boolean,
       type: Boolean,
       value: false
       value: false
+    },
+    departmentid: {
+      type: [String, Number]
+    },
+    sa_service_improvementid: {
+      type: [String, Number]
     }
     }
   },
   },
   options: {
   options: {
@@ -13,13 +19,9 @@ Component({
   lifetimes: {
   lifetimes: {
     attached: function () {
     attached: function () {
       getApp().globalData.Language.getLanguagePackage(this)
       getApp().globalData.Language.getLanguagePackage(this)
-      this.setData({
-        siteid: wx.getStorageSync('userMsg').siteid
-      })
     }
     }
   },
   },
   data: {
   data: {
-    sa_service_improvementid: 0,
     content: {
     content: {
       nocache: true,
       nocache: true,
       pageNumber: 1,
       pageNumber: 1,
@@ -31,9 +33,6 @@ Component({
       }
       }
     },
     },
     list: [],
     list: [],
-    showSearch: false,
-    focus: false,
-    condition: ""
   },
   },
   methods: {
   methods: {
     getList(id, init = false) {
     getList(id, init = false) {
@@ -55,57 +54,48 @@ Component({
           title: res.data,
           title: res.data,
           icon: "none"
           icon: "none"
         });
         });
-        let list = res.data.map(v => {
-          try {
-            v.cover = v.attinfos.length ? _Http.getSpecifiedImage(v.attinfos[0]) : ''
-          } catch (error) {
-
-          }
-          return v
-        })
         this.setData({
         this.setData({
           "content.pageNumber": res.pageNumber + 1,
           "content.pageNumber": res.pageNumber + 1,
           "content.pageTotal": res.pageTotal,
           "content.pageTotal": res.pageTotal,
           "content.total": res.total,
           "content.total": res.total,
-          list: res.pageNumber == 1 ? list : this.data.list.concat(list),
+          list: res.pageNumber == 1 ? res.data : this.data.list.concat(res.data),
           sa_service_improvementid: content.sa_service_improvementid
           sa_service_improvementid: content.sa_service_improvementid
         })
         })
       })
       })
     },
     },
-    /* 去添加产品 */
-    addProduct() {
-  
-    },
-    toSearch() {
-      if (this.data.showSearch && this.data.content.where.condition) {
-        this.data.content.where.condition = '';
-        this.getList("", true);
-      } else if (this.data.condition) {
-        this.data.content.where.condition = this.data.condition;
-        this.setData({
-          condition: this.data.condition
-        })
-        this.getList("", true);
-      }
-      this.setData({
-        showSearch: !this.data.showSearch
+    deteleItem(e) {
+      const {
+        item
+      } = e.currentTarget.dataset;
+      wx.showModal({
+        title: getApp().globalData.Language.getMapText('提示'),
+        content: getApp().globalData.Language.getMapText('是否确定删除该方案'),
+        cancelText: getApp().globalData.Language.getMapText('取消'),
+        confirmText: getApp().globalData.Language.getMapText('确定'),
+        complete: (res) => {
+          if (res.confirm) _Http.basic({
+            "id": 2026020210234702,
+            "content": {
+              "sa_service_improvement_planid": item.sa_service_improvement_planid
+            }
+          }).then(res => {
+            wx.showToast({
+              title: res.code != '1' ? res.msg : getApp().globalData.Language.getMapText('删除成功'),
+              icon: "none",
+              mask: true
+            });
+            if (res.code == '1') this.getList("", true)
+          })
+        }
       })
       })
-      setTimeout(() => {
-        this.setData({
-          focus: this.data.showSearch
-        })
-      }, 300)
-    },
-    onChange({
-      detail
-    }) {
-      this.data.condition = detail;
-    },
-    onSearch({
-      detail
-    }) {
-      this.data.content.where.condition = detail;
-      this.getList("", true)
     },
     },
+    editItem(e) {
+      const {
+        item
+      } = e.currentTarget.dataset;
+      wx.navigateTo({
+        url: `/E-service/serviceImprovement/scheme/insert?id=${item.sa_service_improvementid}&departmentid=${this.data.departmentid}&data=${JSON.stringify(item)}`
+      })
+    }
   }
   }
 })
 })

+ 63 - 3
E-service/serviceImprovement/scheme/index.scss

@@ -34,7 +34,67 @@
 	}
 	}
 }
 }
 
 
-.custom-class {
-	--search-background-color: #fff !important;
-	padding-right: 10rpx !important;
+.item {
+	position: relative;
+	width: 100vw;
+	background-color: #fff;
+	padding: 20rpx 30rpx;
+	box-sizing: border-box;
+	margin-bottom: 20rpx;
+
+	.left {
+		position: absolute;
+		left: 0;
+		top: 0;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		width: 80rpx;
+		height: 48rpx;
+		background: #3874F6;
+		border-radius: 0rpx 0rpx 16rpx 0rpx;
+		font-family: PingFang SC, PingFang SC;
+		font-weight: 600;
+		font-size: 28rpx;
+		color: #FFFFFF;
+	}
+
+	.right {
+		position: absolute;
+		display: flex;
+		top: 0;
+		right: 10rpx;
+
+		.iconfont {
+			padding: 16rpx;
+			font-size: 26rpx;
+			color: #999;
+		}
+	}
+
+	.date {
+		margin-left: 70rpx;
+		line-height: 34rpx;
+		font-family: PingFang SC, PingFang SC;
+		font-size: 24rpx;
+		color: #3874F6;
+		margin-top: -10rpx;
+	}
+
+	.title {
+		line-height: 40rpx;
+		font-family: PingFang SC, PingFang SC;
+		font-weight: bold;
+		font-size: 28rpx;
+		color: #333333;
+		margin-top: 18rpx;
+	}
+
+	.value {
+		line-height: 34rpx;
+		font-family: PingFang SC, PingFang SC;
+		font-size: 24rpx;
+		color: #333333;
+		margin-top: 8rpx;
+	}
 }
 }

+ 12 - 5
E-service/serviceImprovement/scheme/index.wxml

@@ -3,14 +3,21 @@
     {{language['总共']||'总共'}} {{content.total}} {{language['个']||'个'}}
     {{language['总共']||'总共'}} {{content.total}} {{language['个']||'个'}}
   </view>
   </view>
   <view class="expand">
   <view class="expand">
-    <van-search wx:if="{{showSearch}}" custom-class='custom-class' focus='{{focus}}' value="{{ condition }}" shape="round" bind:change='onChange' bind:search='onSearch' bind:clear='onSearch' placeholder="搜索关键词" background='#F4F5F7' />
-    <navigator url="#" class="but" bindtap="toSearch">
-      <van-icon name="search" />
-    </navigator>
-    <navigator wx:if="{{!disabled}}" url="#" class="but" bindtap="addProduct">
+    <navigator wx:if="{{!disabled}}" url="/E-service/serviceImprovement/scheme/insert?id={{sa_service_improvementid}}&departmentid={{departmentid}}" class="but">
       <van-icon name="plus" />
       <van-icon name="plus" />
     </navigator>
     </navigator>
   </view>
   </view>
 </view>
 </view>
 
 
+<view class="item" wx:for="{{list}}" wx:key="sa_service_improvement_planid">
+  <view class="left">{{index+1}}</view>
+  <view class="right" wx:if="{{!disabled}}">
+    <navigator class="iconfont icon-bianji2" style="margin-right: 20rpx;" data-item="{{item}}" bind:tap="editItem" url="#"></navigator>
+    <navigator class="iconfont icon-shanchu1" url="#" data-item="{{item}}" bind:tap="deteleItem"></navigator>
+  </view>
+  <view class="date">{{item.begdate}} - {{item.enddate}} {{item.name}}</view>
+  <view class="title">{{item.title}}</view>
+  <view class="value">{{item.measure}}</view>
+</view>
+
 <Yl_Empty wx:if="{{list.length==0}}" />
 <Yl_Empty wx:if="{{list.length==0}}" />

+ 166 - 0
E-service/serviceImprovement/scheme/insert.js

@@ -0,0 +1,166 @@
+const _Http = getApp().globalData.http;
+
+Page({
+  data: {
+    loading: false,
+    showAll: false,
+    disabled: false,
+    form: [{
+      label: "负责人",
+      error: false,
+      errMsg: "",
+      type: "route",
+      url: "/select/user/index",
+      params: {
+        "content": {
+          "isExport": 0,
+          "pageNumber": 1,
+          "pageSize": 20,
+          "where": {
+            "condition": "",
+            "tablefilter": {},
+            "issale": 0,
+            "status": "0"
+          },
+          "departmentids": [],
+          "containssub": 1
+        },
+        "id": 20221102090303,
+      },
+      query: '&radio=true',
+      value: "",
+      placeholder: "请选择",
+      valueName: "userid_charge",
+      checking: "base",
+      required: true
+    }, {
+      label: "开始时间",
+      error: false,
+      errMsg: "",
+      type: "date",
+      value: '',
+      placeholder: "请选择开始时间",
+      valueName: "begdate",
+      required: true,
+    }, {
+      label: "结束时间",
+      error: false,
+      errMsg: "",
+      type: "date",
+      value: '',
+      placeholder: "请选择结束时间",
+      valueName: "enddate",
+      required: true,
+    }, {
+      label: "任务名称",
+      error: false,
+      errMsg: "",
+      type: "textarea",
+      value: "",
+      placeholder: "任务名称",
+      valueName: "title",
+      required: true,
+      checking: "base"
+    }, {
+      label: "措施",
+      error: false,
+      errMsg: "",
+      type: "textarea",
+      value: "",
+      placeholder: "措施",
+      valueName: "measure",
+      required: true,
+      checking: "base"
+    }],
+    sa_service_improvementid: 0,
+    sa_service_improvement_planid: 0
+  },
+  onLoad(options) {
+    console.log("options", options)
+    getApp().globalData.Language.getLanguagePackage(this, '方案任务');
+    let form = this.data.form;
+    form[0].params.content.departmentids = [options.departmentid]
+    if (options.data) {
+      let data = JSON.parse(options.data);
+      data.userid_charge = [data.name, [data.userid_charge]]
+      this.setData({
+        sa_service_improvement_planid: data.sa_service_improvement_planid
+      })
+      form = form.map(v => {
+        switch (v.valueName) {
+          default:
+            v.value = data[v.valueName]
+            break;
+        }
+        return v
+      })
+    }
+    this.setData({
+      form,
+      sa_service_improvementid: options.id
+    })
+    this.selectComponent("#Form").confirm()
+    try {
+      if (data.attinfos.length) this.selectComponent("#Yl_Files").handleFiles(data.attinfos);
+    } catch (error) {
+
+    }
+  },
+  submit() {
+    this.setData({
+      loading: true
+    })
+    let content = {
+      sa_service_improvementid: this.data.sa_service_improvementid,
+      sa_service_improvement_planid: this.data.sa_service_improvement_planid,
+      ...this.selectComponent("#Form").submit()
+    };
+    content.userid_charge = content.userid_charge[1][0];
+    _Http.basic({
+      "id": 2026020210233202,
+      content
+    }).then(res => {
+      this.setData({
+        loading: false
+      })
+      console.log("方案", res)
+      if (res.code == 1) {
+        if (res.msg != '成功') return;
+        getCurrentPages().find(v => v.__route__ == 'E-service/serviceImprovement/detail').selectComponent("#Scheme").getList("", true)
+
+        wx.navigateBack({
+          success() {
+            wx.showToast({
+              title: getApp().globalData.Language.getMapText('保存成功'),
+              icon: "none",
+              mask: true
+            })
+          }
+        });
+      } else {
+        wx.showToast({
+          title: res.code != '1' ? res.msg : getApp().globalData.Language.getMapText('保存成功'),
+          icon: "none",
+          mask: true
+        })
+      }
+    })
+  },
+  // 是否显示全部
+  onChange({
+    detail
+  }) {
+    this.setData({
+      showAll: detail
+    })
+  },
+  /* 表单必填项是否完成 */
+  onConfirm({
+    detail
+  }) {
+    this.setData({
+      disabled: detail
+    })
+  },
+  onUnload() {}
+})

+ 3 - 0
E-service/serviceImprovement/scheme/insert.json

@@ -0,0 +1,3 @@
+{
+  "usingComponents": {}
+}

+ 63 - 0
E-service/serviceImprovement/scheme/insert.scss

@@ -0,0 +1,63 @@
+.box {
+	width: 100vw;
+	box-sizing: border-box;
+	margin-top: 20rpx;
+	background-color: #fff;
+
+	.content {
+			border-radius: 8rpx;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+
+			.upload {
+					display: flex;
+					align-items: center;
+					width: 100%;
+					height: 88rpx;
+					box-sizing: border-box;
+
+					.title {
+							flex: 1;
+							font-size: 28rpx;
+							font-family: PingFang SC-Regular, PingFang SC;
+							color: #333333;
+							font-weight: bold;
+					}
+
+					navigator {
+							width: 100rpx;
+							height: 80rpx;
+							line-height: 80rpx;
+							text-align: center;
+							padding: 0;
+					}
+			}
+
+	}
+}
+
+
+.new-footer {
+	display: flex;
+	align-items: center;
+	justify-content: flex-end;
+	position: fixed;
+	width: 100vw;
+	height: 130rpx;
+	background: #FFFFFF;
+	box-shadow: 0px -4rpx 16rpx 2rpx rgba(150, 157, 165, 0.16);
+	bottom: 0;
+	z-index: 9999;
+
+	.new-submit {
+			width: 156rpx;
+			height: 90rpx;
+			background: #3874F6;
+			border-radius: 8rpx;
+			font-size: 28rpx;
+			font-family: PingFang SC-Bold, PingFang SC;
+			font-weight: bold;
+			color: #FFFFFF;
+			margin-right: 30rpx;
+	}
+}

+ 6 - 0
E-service/serviceImprovement/scheme/insert.wxml

@@ -0,0 +1,6 @@
+<Yl_Headline title='基本信息' type='switch' switchLabel='仅显示必填信息' switch='{{showAll}}' bind:callBack='onChange' />
+<Yl_Field id='Form' form='{{form}}' showAll='{{!showAll}}' bind:onConfirm='onConfirm' bind:interrupt="interrupt" />
+<view style="height: 150rpx;" />
+<view class="new-footer">
+    <van-button custom-class='new-submit' disabled='{{disabled || loading}}' loading='{{loading}}' bindclick='submit'>{{language['确定']||'确定'}}</van-button>
+</view>

+ 2 - 1
app.json

@@ -102,7 +102,8 @@
         "serviceBillList/transferWorkOrder/progress",
         "serviceBillList/transferWorkOrder/progress",
         "serviceImprovement/edit",
         "serviceImprovement/edit",
         "workOrder/nodes/work",
         "workOrder/nodes/work",
-        "serviceImprovement/analysis/change"
+        "serviceImprovement/analysis/change",
+        "serviceImprovement/scheme/insert"
       ]
       ]
     },
     },
     {
     {